gcz 4 سال پیش
والد
کامیت
e7b24f6d6b

+ 10 - 7
pages/confirmorder/confirmorder.vue

@@ -115,7 +115,7 @@
 				}).catch(err =>{
 					console.log('err',err)
 				});
-				console.log('param',param);
+				// console.log('param',param);
 			},
 			pay(orderId,payType){
 				
@@ -130,17 +130,20 @@
 						console.log('payres',res);
 						if(res.code == 0){
 							uni.reLaunch({
-								url: '/pages/buySuccess/buySuccess?orderId=' + params.orderId
+								url: '/pages/usercenter/myorder/myorder'
 							})
 						}else if(res.code == 1){
 							uni.navigateTo({
-								url: '/pages/userCenter/myOrder/myOrder'
+								url: '/pages/usercenter/myorder/myorder'
 							})
 						}else if(res.code == 2){
 							this.$api.msg("支付失败,请检查!")
 							setTimeout(()=>{
 								uni.navigateTo({
-									url: '/pages/userCenter/myOrder/myOrder'
+									url: '/pages/usercenter/myorder/myorder',
+									fail:function(err){
+										console.log(err)
+									}
 								});
 							},1000)
 						}else{
@@ -171,12 +174,12 @@
 				// console.log('this.token',this.token);
 				let thetoken = 'Bearer ' + this.token;
 				this.$api.http.get(this.config.apiBaseurl + '/member/address/list',{header: {Authorization:thetoken}}).then(res => {
-					console.log('getAddrList', res.data.data);
+					// console.log('getAddrList', res.data.data);
 					this.addrsList = res.data.data;
 					if(res.data.data.length>0){
 						this.memberReceiveAddressId = res.data.data[0].id;
 						this.theAddr = res.data.data[0].detailAddress;
-						console.log('this.memberReceiveAddressId',this.memberReceiveAddressId);
+						// console.log('this.memberReceiveAddressId',this.memberReceiveAddressId);
 					}else{
 						this.theAddr = '您还没有设置收货地址,请到个人中心页面设置!';
 					}
@@ -188,7 +191,7 @@
 				console.log(this.addrsList[e.target.value]);
 				this.memberReceiveAddressId = this.addrsList[e.target.value].id;
 				this.theAddr = this.addrsList[e.target.value].detailAddress;
-				console.log('this.memberReceiveAddressId',this.memberReceiveAddressId);
+				// console.log('this.memberReceiveAddressId',this.memberReceiveAddressId);
 			}
 
 		}

+ 2 - 2
pages/usercenter/myorder/myorder.css

@@ -12,9 +12,9 @@ page{background-color: #FBFBFC;}
 .order-info-img{width: 100%;height: 100%;}
 .order-info-text{flex: 1;}
 .order-info-title{font-size: 30rpx;color: #333;line-height: 42rpx;margin-bottom: 20rpx;}
-.order-info-num{display: flex;justify-content: flex-end;color: #999;}
+.order-info-num{display: flex;justify-content: flex-end;color: #999;align-items: flex-end;}
 .order-info-bynum{margin-right: 24rpx;}
-.order-info-bynum .bynum{margin-left: 12rpx;line-height: 50rpx;}
+.order-info-bynum .bynum{margin-left: 12rpx;}
 .order-info-amount .rmb{margin-left: 12rpx;font-size: 28rpx;color: #FF5030;line-height: 40rpx;}
 .order-info-amount .amount{margin-left: 8rpx;font-size: 36rpx;color: #FF5030;font-weight: bold;}
 .order-tool{display: flex;justify-content: flex-end;padding-top: 24rpx;border-top: 1px solid #eee;}

+ 41 - 17
pages/usercenter/myorder/myorder.vue

@@ -33,7 +33,7 @@
 						</view>
 					</view>
 					<!-- order-info end -->
-					<view class="order-tool" v-if="item.status == 0">
+					<view class="order-tool" v-if="item.status == 0 || item.status == 2">
 						<!-- <view class="order-tool-more">
 							<svg class="icon" aria-hidden="true">
 							    <use xlink:href="#iconfengyunbang"></use>
@@ -43,6 +43,7 @@
 						<!-- <button type="default" class="btn" v-if="item.status != 0" @click="delOrder">删除订单</button> -->
 						<button type="default" class="btn" v-if="item.status == 0" @click.stop="cancelOrder(item)">取消订单</button>
 						<button type="default" class="btn" v-if="item.status == 0" @click.stop="pay(item)">我要付款</button>
+						<button type="default" class="btn" v-if="item.status == 2" @click.stop="received(item)">确认收货</button>
 					</view>
 				</view>
 				<!-- order-item end -->
@@ -50,7 +51,7 @@
 			<!-- order end -->
 		</mescroll-body>
 		<uni-popup ref="popup" type="dialog">
-		    <uni-popup-dialog type="info"  content="确认取消此订单吗?" :duration="2000" :before-close="true" @close="closepopup" @confirm="confirmpopup"></uni-popup-dialog>
+		    <uni-popup-dialog type="info"  :content="popupContent" :duration="2000" :before-close="true" @close="closepopup" @confirm="confirmpopup"></uni-popup-dialog>
 		</uni-popup>
 	</view>
 </template>
@@ -82,7 +83,7 @@
 					page: {
 						size: 10 // 每页数据的数量,默认10
 					},
-					noMoreSize: 4, // 配置列表的总数量要大于等于5条才显示'-- END --'的提示
+					noMoreSize: 3, // 配置列表的总数量要大于等于5条才显示'-- END --'的提示
 					empty: {
 						tip: '暂无相关数据'
 					}
@@ -96,6 +97,9 @@
 				},
 				orderlist:[],
 				cancelId:null,
+				receiveId:null,
+				popupContent:'',
+				popupType:'',
 				
 			}
 		},
@@ -189,23 +193,45 @@
 				console.log(JSON.parse(JSON.stringify(item)));
 				this.cancelId = item.id;
 				this.$refs.popup.open();
-				
+				this.popupContent = '确认取消此订单吗?';
+				this.popupType = 'cancel';				
+			},
+			received(item){
+				this.receiveId = item.id;
+				this.$refs.popup.open();
+				this.popupContent = '确认收货?';
+				this.popupType = 'received';
 			},
 			closepopup(done){
 				done()
 			},
 			confirmpopup(done,value){
-				this.$api.http.post(this.config.apiBaseurl + '/order/cancelUserOrder/?orderId='+this.cancelId,{},{
-					header: {
-					Accept:'application/json',
-					Authorization: 'Bearer '+ this.token, //注意Bearer后面有一空格
-				},
-				}).then(res => {
-					this.downCallback();
-					// console.log('res',res)
-				}).catch(err =>{
-					console.log('err',err)
-				});
+				if(this.popupType == 'cancel'){
+					this.$api.http.post(this.config.apiBaseurl + '/order/cancelUserOrder/?orderId='+this.cancelId,{},{
+						header: {
+						Accept:'application/json',
+						Authorization: 'Bearer '+ this.token, //注意Bearer后面有一空格
+					},
+					}).then(res => {
+						this.downCallback();
+						// console.log('res',res)
+					}).catch(err =>{
+						console.log('err',err)
+					});
+				}else if(this.popupType == 'received'){
+					this.$api.http.post(this.config.apiBaseurl + '/order/confirmReceiveOrder/?orderId='+this.receiveId,{},{
+						header: {
+						Accept:'application/json',
+						Authorization: 'Bearer '+ this.token, //注意Bearer后面有一空格
+					},
+					}).then(res => {
+						this.downCallback();
+						// console.log('res',res)
+					}).catch(err =>{
+						console.log('err',err)
+					});
+				}
+				
 				done()
 			},
 			changestatus(status){
@@ -231,8 +257,6 @@
 						// console.log('payres',res);
 					}).catch(err =>{console.log('err',err);});
 			},
-			
-			
 
 		}
 	}

+ 19 - 0
pages/usercenter/myorder/orderdetails/orderdetails.vue

@@ -202,6 +202,7 @@
 					},
 					}).then(res => {
 						this.getdetails();
+						this.goOrderList(res.data.message);
 						// console.log('res',res)
 					}).catch(err =>{
 						console.log('err',err)
@@ -214,6 +215,7 @@
 					},
 					}).then(res => {
 						this.getdetails();
+						this.goOrderList(res.data.message);
 						// console.log('res',res)
 					}).catch(err =>{
 						console.log('err',err)
@@ -232,6 +234,7 @@
 					}
 					this.$pay.wxPay(params).then(res =>{
 						this.getdetails();
+						this.goOrderList(res.data.message);
 						// console.log('payres',res);
 					}).catch(err =>{console.log('err',err);});
 			},
@@ -265,6 +268,22 @@
 					data: id
 				});
 				window.location.assign('https://m.kuaidi100.com/');
+			},
+			// 跳转到订单列表
+			goOrderList(msg){
+				uni.showToast({
+					icon:"none",
+					title:msg,
+					duration: 2000
+				});	
+				setTimeout(()=>{
+					uni.navigateTo({
+						url: '/pages/usercenter/myorder/myorder',
+						fail:function(err){
+							console.log(err)
+						}
+					});
+				},1000)
 			}
 
 		}

+ 1 - 1
pages/usercenter/usercenter.vue

@@ -57,7 +57,7 @@
 			<navigator url="/pages/usercenter/addrs/addrs">
 				<view class="select-bar">
 					<svg class="icon select-bar-icon" aria-hidden="true">
-						<use xlink:href="#icondizhi"></use>
+						<use xlink:href="#icondizhi1"></use>
 					</svg>
 					<view class="select-bar-text">收货地址</view>
 					<view class="select-bar-arrow"></view>

+ 8 - 1
pay.js

@@ -23,7 +23,7 @@ export default {
 					Authorization: 'Bearer '+ token, //注意Bearer后面有一空格
 				},
 			}).then(res=>{
-				console.log('res',res);
+				// console.log('res',res);
 					//#ifdef H5
 					$wxApi.JSAPI(res.data.data).then(r);
 					//#endif
@@ -34,6 +34,13 @@ export default {
 	//支付错误处理
 	payError(res){
 		uni.hideLoading();
+		// uni.navigateTo({
+		// 	url: '/pages/usercenter/myorder/myorder',
+		// 	fail:function(err){
+		// 		console.log(err)
+		// 	}
+		// });
+		// console.log('1',res);
 		if(res.code == 623){
 			setTimeout(i=>{
 				new Vue().$api.goto("/pages/userCenter/myorder/myorder");