Administrator 4 år sedan
förälder
incheckning
12a31de3c8

+ 7 - 2
components/cm-module/orderDetails/goodsList.vue

@@ -10,7 +10,7 @@
 					<view class="title-text">{{item.shopName}}</view> 
 				</view>
 				<view class="productlist" v-for="(pros,idx) in item.orderProductList" :key="idx">
-					<view class="goods-pros-t ">
+					<view class="goods-pros-t " @click="details(pros.productID)">
 						<view class="pros-left">
 							<view class="pros-img">
 								<image :src="pros.productImage" alt="" />
@@ -118,6 +118,9 @@
 		
 		},
 		methods:{
+			details(id){
+				this.$api.navigateTo(`/pages/goods/product?id=${id}`)
+			},
 			clickPopupShow(pros){
 				console.log(pros)
 				this.$emit('popupClick',pros)
@@ -199,6 +202,8 @@
 			.productlist{
 				width: 100%;
 				height: auto;
+				border-bottom: 2rpx solid #e1e1e1;
+				padding: 10rpx;
 			}	
 			.goods-pros-t{
 				display: flex;
@@ -238,7 +243,7 @@
 				}
 			}
 			.product-info{
-				border-top: 2rpx solid #e1e1e1;
+				// border-top: 2rpx solid #e1e1e1;
 				padding: 10rpx 0;
 				.product-view{
 					font-size:$font-size-24;

+ 7 - 5
components/cm-module/orderDetails/orderButton.vue

@@ -136,7 +136,7 @@
 			.btn{
 				width: 160rpx;
 				height:  64rpx;
-				margin:22rpx;
+				margin:22rpx 22rpx 22rpx 0;
 				line-height: 64rpx;
 				font-size:$font-size-26;
 				color: #666666;
@@ -179,8 +179,8 @@
 			.btn-cancel{
 				// background:#FFFFFF;
 				// color: #999999;
-				float: left;
-				margin: 22rpx 0;
+				// float: left;
+				// margin: 22rpx 0;
 				// text-align: left;
 			}
 			// .btn-delete{
@@ -195,10 +195,12 @@
 			.btn-pay{
 				background:#f94b4b;
 				margin-right: 0;
+				border: 2rpx solid #f94b4b;
+				color: #fff;
 			}
 			.btn-share{
-				background:linear-gradient(315deg,rgba(0,212,150,1) 0%,rgba(126,243,174,1) 100%);
-				position: relative;
+				// background:linear-gradient(315deg,rgba(0,212,150,1) 0%,rgba(126,243,174,1) 100%);
+				// position: relative;
 				.tips{
 					width: 160rpx;
 					height: 34rpx;

+ 5 - 3
components/cm-module/orderDetails/orderInformation.vue

@@ -39,14 +39,16 @@
 				<view class="view-num" v-if="orderData.freePostFlag == '-1'">运费:<label class="label">到付</label></view>
 				<view class="view-num" v-if="orderData.freePostFlag == '1'">运费:<label class="label">¥{{ orderData.freight | NumFormat}}</label></view>
 			</view>
-			<view class="information-view">
-				<view class="view-num">经理折扣:<label class="label">¥{{ orderData.discountFee =='undefined' ? '' : orderData.discountFee | NumFormat}}</label></view>
-				<view class="view-man" v-show="orderData.promotionFullReduction>0">促销满减:<label class="label">¥{{ orderData.promotionFullReduction | NumFormat}}</label></view>
+			<view class="information-view" v-show="orderData.promotionFullReduction>0">
+				<view class="view-man" >促销满减:<label class="label">¥{{ orderData.promotionFullReduction | NumFormat}}</label></view>
 			</view>
 			<view class="information-view same">
 				<view class="view-man">赠品总数:<label class="label">{{ orderData.presentCount + orderData.promotionalGiftsCount}}</label></view>
 			</view>
 			<view class="information-view">
+				<view class="view-num">经理折扣:<label class="label">¥{{ orderData.discountFee =='undefined' ? '' : orderData.discountFee | NumFormat}}</label></view>
+			</view>
+			<view class="information-view same">
 				<view class="view-num">已支付:<label class="red">¥{{ orderData.receiptAmount == null ? '0.00' : orderData.receiptAmount | NumFormat }}</label></view>
 				<view class="view-man"></text></view>
 			</view>

+ 16 - 5
components/cm-module/orderDetails/orderListButton.vue

@@ -2,6 +2,7 @@
 	<view class="button-template">
 		<!-- 底部按钮 -->
 		<view class="button-content">
+			<view class="btn btn-payment" v-if="order.affirmPaymentFlag=='0'" @click.stop="btnConfirm('payment',order)">确认打款<text>供应商</text></view>
 			<view class="btn btn-pay" v-if="btnState.isPay" @click.stop="btnConfirm('pay',order)">付款</view>
 			<view class="btn btn-share"  @click.stop="onShareCode(order.orderID)">分享订单</view>
 			<view class="btn btn-confirm" v-if="btnState.isConfirmation" @click.stop="btnConfirm('confirmation',order)">确认订单</view>
@@ -128,9 +129,9 @@
 				top: 24rpx;
 			}
 			.btn{
-				width: 160rpx;
+				width: 150rpx;
 				height:  64rpx;
-				margin:22rpx;
+				margin: 22rpx 0 20rpx 20rpx;
 				line-height: 64rpx;
 				font-size:$font-size-26;
 				color: #999999;
@@ -139,16 +140,27 @@
 				float: right;
 				border-radius: 32rpx;
 				border: 2rpx solid #999999;
+				&.btn-payment{
+					line-height: 38rpx;
+					font-size: 24rpx;
+					background: #f9a94b;
+					color: #fff;
+					border: 2rpx solid #f9a94b;
+					text{
+						display: block;
+						line-height: 15rpx;
+					}
+				}
 			}
 			.btn-color{
 				background: $btn-confirm;
-				margin: 22rpx 0 22rpx 22rpx;
+				// margin: 22rpx 0 22rpx 22rpx;
 			}
 			.btn-cancel{
 				// background:#FFFFFF;
 				// color: #999999;
 				// float: left;
-				margin: 22rpx 0;
+				// margin: 22rpx 0;
 				text-align: center;
 			}
 			// .btn-delete{
@@ -164,7 +176,6 @@
 			}
 			.btn-pay{
 				background:#f94b4b;
-				margin-right: 0;
 				color: #FFFFFF;
 				border: 2rpx solid #f94b4b;
 			}

+ 1 - 1
pages.json

@@ -162,7 +162,7 @@
 				"navigationBarTitleText": "隐私权政策"
 			}
 		},{
-			"path": "pages/service/sellConten",
+			"path": "pages/service/sellconten",
 			"style": {
 				"navigationBarTitleText": "条款内容"
 			}

+ 55 - 42
pages/tabBar/cart/cart.vue

@@ -13,7 +13,7 @@
 							<view class="shoptitle">
 								<!--选择商店的全部商品"-->
 								<view class="checkbox-box" @click.stop="checkShop(item)">
-									<view class="checkbox iconfont" :class="[item.checked ?'icon-gouxuanl':'icon-weigouxuan']"></view>
+									<view class="checkbox iconfont" :class="[item.checked ?'icon-yixuanze':'icon-weixuanze']"></view>
 								</view>
 								<view v-if="item.promotions" class="floor-item-act">
 									<view class="floor-tags" @click.stop="clickPopupShow(item,2)">{{item.promotions.name}}</view>	
@@ -25,7 +25,7 @@
 									<view class="goods-pros-t">
 										<!--选择商品-->
 										<view class="checkbox-box" @click.stop="ischeck(item,pros)">
-											<view class="checkbox iconfont" :class="[pros.productsChecked ? 'icon-gouxuanl':'icon-weigouxuan']"></view>
+											<view class="checkbox iconfont" :class="[pros.productsChecked ? 'icon-yixuanze':'icon-weixuanze']"></view>
 										</view>
 										<view class="pros-img" @click.stop="navToListPage(pros.productId)"	><image :src="pros.image ? pros.image:''" alt="" /></view>
 										<view class="pros-product">
@@ -84,12 +84,12 @@
 									<!--选择商品-->
 									<view class="checkbox-box" @click.stop="ischeckFailure(failure)" v-if="isshowDelbtn">
 										<button class="checkbox iconfont" 
-												:class="[ failure.productsChecked ? 'icon-gouxuanl':'icon-weigouxuan']">
+												:class="[ failure.productsChecked ? 'icon-yixuanze':'icon-weixuanze']">
 										</button>
 									</view>
+									<text class="img-tip">失效</text>
 									<view class="pros-img">
 										<image :src="failure.image ? failure.image:''" alt="" />
-										<text class="img-tip">失效</text>
 									</view>
 									<view class="pros-product">
 										<view class="producttitle">{{failure.name}}</view>
@@ -106,7 +106,7 @@
 				<view class="footer">
 					<view class="footer-le">
 						<view class="foot-check checkbox-box" @tap.stop="checkAll()">
-							<button class="checkbox iconfont" :class="[isCheckAll?'icon-gouxuan':'icon-weigouxuan']"></button> 
+							<button class="checkbox iconfont" :class="[isCheckAll?'icon-yixuanze':'icon-weixuanze']"></button> 
 							<view class="text">全选</view>
 						</view>
 	
@@ -874,11 +874,10 @@
 			font-size: $font-size-26;
 			height: 50rpx;
 			line-height: 50rpx;
-			color: $text-color;
+			color:#666666;
 			float: left;
 			padding-left: 10rpx;
 			text{
-				color: $color-system;
 				margin: 0 6rpx;
 			}
 		}
@@ -891,7 +890,7 @@
 			line-height: 50rpx;
 			border-radius: 30rpx;
 			background:#FFFFFF;
-			border: 1px solid #C9C9C9;
+			border: 1px solid #e15616;
 			color: #E15616;
 			float: right;
 			text-align: center;
@@ -906,7 +905,7 @@
 		.checkbox{
 			display: flex;
 			margin: 0;
-			padding: 0;
+			padding: 5rpx;
 			display: flex;
 			flex-direction: column;
 			align-items: center;
@@ -918,7 +917,10 @@
 			overflow: hidden;
 			background-color:#FFFFFF;
 			font-size: 36rpx;
-			color:$color-system;
+			color:#999999;
+			&.icon-yixuanze{
+				color: $color-system;
+			}
 		}
 		&.disabled{
 			.checkbox{
@@ -984,6 +986,7 @@
 		.goods-pros{
 			width: 100%;
 			height: auto;
+			margin-bottom: 20rpx;
 		}	
 		.goods-pros-t{
 			display: flex;
@@ -1047,15 +1050,16 @@
 			.sum{
 				width: 100%;
 				height: 40rpx;
-				font-size: $font-size-28;
+				font-size: $font-size-26;
 				line-height: 40rpx;
 				color: $text-color;
 				float: left;
 				display: flex;
 				justify-content: flex-end;
+				font-weight: bold;
 				.money{
 					color: #FF2A2A;
-					font-size: $font-size-28;
+					font-size: $font-size-26;
 				}
 				.money-sign{
 					font-size: $font-size-24;
@@ -1064,7 +1068,7 @@
 			}
 		}
 		.pros-product{
-			width: 402rpx;
+			width: 416rpx;
 			height: 100%;
 			line-height: 36rpx;
 			font-size: $font-size-28;	
@@ -1079,7 +1083,7 @@
 				-webkit-box-orient: vertical;
 				-webkit-line-clamp: 2;
 				overflow: hidden;
-				margin-bottom: 8rpx;
+				margin-bottom: 15rpx;
 				.no-text{
 					display: inline-block;
 					height:36rpx;
@@ -1101,13 +1105,14 @@
 			.productprice{
 				width: 100%;
 				height: 48rpx;
-				margin: 10rpx 0 0 0;
+				margin: 30rpx 0 0 0;
 				.price{
 					line-height: 48rpx;
-					font-size: $font-size-28;
+					font-size: $font-size-26;
 					width: 48%;
 					color: #FF2A2A;
 					float: left;
+					font-weight: bold;
 					&.disabled{
 						color: #999999;
 						text-decoration: line-through;
@@ -1162,22 +1167,26 @@
 						display: flex;
 						justify-content: center;
 						align-items: center;
+						border: 2rpx solid #ffe6dc;
 						.iconfont{
 							font-size: $font-size-24;
 							padding:0 20rpx;
-							color: $text-color;
+							color: #999999;
 							text-align: center;
 							line-height: 48rpx;
 							font-weight: bold;
+							background: #fef6f3;
+
 						}
 						.btn-input{
 							width: 62rpx;
 							height: 48rpx;
 							line-height: 48rpx;
-							background: #F8F8F8;
+							background: #fff;
 							border-radius: 4rpx;
 							text-align: center;
 							font-size: $font-size-24;
+							
 						}
 					}
 					.uni-numbox{
@@ -1226,13 +1235,13 @@
 		background: #FFFFFF;
 		.failure-title{
 			width: 100%;
-			height: 80rpx;
-			line-height: 80rpx;
+			height: 82rpx;
+			line-height: 82rpx;
 			font-size: $font-size-28;
 			border-bottom: 1px solid #EBEBEB;
 			.title-txt{
 				float: left;
-				color: $text-color;
+				color:#666666;
 				text-align: left;
 			}
 			.title-btn{
@@ -1248,8 +1257,8 @@
 					line-height: 50rpx;
 					border-radius: 30rpx;
 					background:#FFFFFF;
-					border: 1px solid #C9C9C9;
-					color: #999999;
+					// border: 1px solid #C9C9C9;
+					// color: #999999;
 					margin-top: 15rpx;
 				}
 			}
@@ -1267,30 +1276,30 @@
 				width: 100%;
 				height: 210rpx;
 				position: relative;
+				.img-tip{
+					display: block;
+					width: 72rpx;
+					height: 36rpx;
+					line-height: 36rpx;
+					font-size: $font-size-24;
+					text-align: center;
+					color: #FFFFFF;
+					border-radius: 24rpx;
+					background:rgba(51,51,51,0.3);
+					// position: absolute;
+					// left: 0;
+					// top: 0;
+				}
 				.checkbox-box{
 					padding: 10rpx;
 				}
 				.pros-img{
-					width: 210rpx;
+					width: 180rpx;
 					height: 100%;
 					border-radius: 10rpx;
 					margin:0 20rpx;
 					border:1px solid #f3f3f3;
 					position: relative;
-					.img-tip{
-						display: block;
-						width: 72rpx;
-						height: 36rpx;
-						line-height: 36rpx;
-						font-size: $font-size-24;
-						text-align: center;
-						color: #FFFFFF;
-						border-radius: 10rpx 0 10rpx 0;
-						background:linear-gradient(34deg,rgba(255,149,42,1) 0%,rgba(225,86,22,1) 100%);
-						position: absolute;
-						left: 0;
-						top: 0;
-					}
 					image{
 						width: 100%;
 						height: 100%;
@@ -1368,6 +1377,7 @@
 					height: 36rpx;
 					color: #999999;
 					font-size: $font-size-26;
+					margin-top: 20rpx;
 				}
 				.productstate{
 					font-size: $font-size-28;
@@ -1388,7 +1398,7 @@
 		bottom: 0rpx;
 		z-index: 100;
 		.footer-le{
-			width: 520rpx;
+			width: 472rpx;
 			height: 100%;
 			padding:0 24rpx;
 			float: left;
@@ -1407,7 +1417,7 @@
 				}
 			}
 			.sum{
-				width: 380rpx;
+				width: 350rpx;
 				height: 110rpx;
 				float: right;
 				box-sizing: border-box;
@@ -1459,14 +1469,17 @@
 			}
 		}
 		.footer-ri{
-			width: 180rpx;
-			height: 100%;
+			width: 210rpx;
+			height: 84rpx;
 			background:linear-gradient(135deg,rgba(242,143,49,1) 0%,rgba(225,86,22,1) 100%);
 			float: right;
 			display: flex;
 			justify-content: space-between;
 			align-items: center;
 			z-index: 999;
+			margin-right: 20rpx;
+			border-radius: 49rpx;
+			margin-top: 14rpx;
 			&.none{
 				display: none;
 			}

+ 1 - 1
pages/user/order/order-details.vue

@@ -17,7 +17,7 @@
 			<!-- 发票信息 -->
 			<invoice-tent ref="invoice" v-if="isRequest" :orderInvoice="orderInvoice"></invoice-tent>
 			<!-- 转账信息 -->
-			<transfe-record ref="transfe" v-if="receiptAmount == 0 || onlinePayFlag == '1'"></transfe-record>
+			<!-- <transfe-record ref="transfe" v-if="receiptAmount == 0 || onlinePayFlag == '1'"></transfe-record> -->
 			<!-- 支付记录 -->
 			<payment-record ref="payment" v-if="isRequest" :discernReceiptList="discernReceiptList" :receiptAmount="receiptAmount"></payment-record>
 			<!-- 退款记录 -->

+ 15 - 0
pages/user/order/order-list.vue

@@ -348,6 +348,9 @@
 					case 'confirmation':
 						this.handOrderConfirmation(data.orderId);
 						break
+					case 'payment':
+						this.hanldConfirmFn(data.orderId);
+						break	
 				}
 			},
 			getOrderPaymentValidation(data){//监听根据付款状态做操作
@@ -401,6 +404,18 @@
 					this.$api.navigateTo(`/pages/user/order/order-payment?type=payfirm&orderID=${data.orderId}`)
 				}
 			},
+			hanldConfirmFn (orderId){//确认打款供应商
+				this.$util.modal('提示','确定委托采美平台打款给供应商吗?确定之前请务必确保货品完好?','确定','取消',true,() =>{
+					this.OrderService.confirmpayment({orderID:orderId,userId:this.userID}).then(response =>{
+						this.$util.msg('确认成功',2000,true,'success');
+						setTimeout(() => {
+							this.getOrderDatainit(this.currentTab)
+						},2000)
+					}).catch(error =>{
+						this.$util.msg(error.msg,2000)
+					})
+				})
+			},
 			handOrderConfirm (id){//确认收货
 				this.$util.modal('提示','是否确认收货','确定','取消',true,() =>{
 					confirmReceipt({orderID:id}).then(response =>{

+ 28 - 24
second/pages/form/form.vue

@@ -33,7 +33,7 @@
 					 <view class="row">
 						<view class="label">商品品牌</view>
 						<view class="select spacing"  @click="hanldOperationConfim">
-							 <view class="placeholder">{{brandname}}</view>
+							 <view class="placeholder":style="brandname=='请选择品牌名称'?'':'color:#333333'">{{brandname}}</view>
 							 	 <text class="iconfont icon-xiayibu"></text>
 						 </view>
 						<!-- 品牌弹窗 -->
@@ -99,13 +99,13 @@
 					 <view class="row" v-show="secondParams.secondHandType==2">
 						 <view class="label">市场价</view>
 						 <view class="spacing">
-							  <input type="text"  v-model="secondParams.normalPrice" maxlength="30" oninput="value=value.replace(/[^\d]/g, '')"   placeholder="请输入市场价" placeholder-class="placeholder">
+							  <input type="text"  v-model="secondParams.normalPrice" maxlength="30" placeholder="请输入市场价" placeholder-class="placeholder">
 						 </view>
 					 </view>
 					 <view class="row"  v-show="secondParams.secondHandType==2">
 						 <view class="label second">采购价/原价</view>
 						 <view class="spacing second">
-							  <input type="text"  v-model="secondParams.originalPrice" maxlength="30" oninput="value=value.replace(/[^\d]/g, '')" placeholder="请输入采购价/原价" placeholder-class="placeholder"/>
+							  <input type="text"  v-model="secondParams.originalPrice" maxlength="30" placeholder="请输入采购价/原价" placeholder-class="placeholder"/>
 						 </view>
 					 </view>
 					 <view class="row" v-show="secondParams.secondHandType==2">
@@ -225,6 +225,7 @@
 	import paymentRecord from '@/components/cm-module/orderDetails/paymentRecord'
 	import { uploadFileImage } from "@/api/utils.js"
 	import authorize from '@/common/config/authorize.js'
+	import $reg from '@/common/config/common.js'
 	import { mapState,mapMutations } from 'vuex';
 	export default{
 		name:'secondHandrelease',
@@ -301,6 +302,7 @@
 				this.BrandList.forEach((item,index)=>{
 					if(item.id==this.secondParams.brandID){
 						this.brandname = item.name;
+						this.popupShow = false;
 					}
 				})
 			},
@@ -314,7 +316,6 @@
 				this.addressData.cityID = e.cityCode;
 				this.addressData.provinceID = e.provinceCode;
 				this.secondParams.townId = this.addressData.townID;
-				this.secondParams.address = this.addressData.address;
 			},
 			hanldOperationConfim(){
 				this.popupShow = true;
@@ -374,29 +375,32 @@
 					return
 			 }
 			 if(this.secondParams.secondHandType ==2) {
-			 if (this.secondParams.normalPrice == '') {
-					 this.$util.msg('请输入市场价',2000);
-					 return
-				 }
-				 if (this.secondParams.maturityYears == '') {
+				if (this.secondParams.maturityYears=='') {
 					 this.$util.msg('请输入产品到期日',2000);
 					 return
-				 }
+				} 
 			 }
-			 if(this.secondParams.price1 == ''){
-					  this.$util.msg('请输入交易价',2000);
-						return
-				 }
-			 if(this.secondParams.secondHandType ==2){
-				 if(this.secondParams.originalPrice == ''){
-				  this.$util.msg('请输入采购价/原价',2000);
+			 if(!this.$api.isNumber(this.secondParams.price1)){
+				  this.$util.msg('请输入交易价',2000);
 					return
-			   }
-			 if(this.secondParams.stock == ''){
-				  this.$util.msg('请输入数量',2000);
-					return
-				}
 			 }
+			 if(this.secondParams.secondHandType ==2) {
+			 if (!this.$api.isNumber(this.secondParams.normalPrice)) {
+					 this.$util.msg('请输入市场价',2000);
+					 return
+				 }
+				 if(!this.$api.isNumber(this.secondParams.originalPrice)){
+					  this.$util.msg('请输入采购价/原价',2000);
+						return
+				   }
+				 if(!this.$api.isNumber(this.secondParams.stock)){
+					  this.$util.msg('请输入数量',2000);
+						return
+					}
+			 }
+			 // if(this.secondParams.secondHandType ==2){
+				 
+			 // }
 			 if(this.secondParams.productQuality == ''){
 				  this.$util.msg('请输入商品成色',2000);
 					return
@@ -410,7 +414,7 @@
 				  this.$util.msg('请输入联系方式',2000);
 					return
 			 }
-			 if(this.secondParams.contactMobile.length !=11){
+			 if(!$reg.isMobile(this.secondParams.contactMobile)){
 				  this.$util.msg('联系方式格式不正确',2000);
 					 return
 			  }
@@ -605,7 +609,7 @@
 		.textarea-wrapper {
 		    letter-spacing: 2rpx;
 		    line-height: 48rpx;
-		    color: #b2b2b2;
+		    color: #333333;
 		    position: relative;
 		    font-size: 28rpx;
 		    border: 2rpx solid #b2b2b2;

+ 1 - 1
seller/pages/order/order-details.vue

@@ -12,7 +12,7 @@
 			<!-- 发票信息 -->
 			<invoice-tent ref="invoice" v-if="isRequest" :orderInvoice="orderInvoice"></invoice-tent>
 			<!-- 转账信息 -->
-			<transfe-record ref="transfe" v-if="isRequest"></transfe-record>
+			<!-- <transfe-record ref="transfe" v-if="isRequest"></transfe-record> -->
 			<!-- 支付记录 -->
 			<payment-record ref="payment" v-if="isRequest" :discernReceiptList="discernReceiptList" :receiptAmount="receiptAmount"></payment-record>
 			<!-- 退款记录 -->

+ 4 - 0
services/order.service.js

@@ -55,4 +55,8 @@ export default class OrderService {
 	OrderCommodityData (data = {}) {
 		return this.AjaxService.get({ url:'/order/commodityData', data, isLoading: true })
 	}
+	/*二手订单 打款供应商 */
+	confirmpayment (data = {}) {
+		return this.AjaxService.post({ url:'/order/affirm/payment', data, isLoading: true })
+	}
 }