wangfukang 3 weeks ago
parent
commit
b950fb6085
  1. 13
      package1/buyFood/buyFood.vue
  2. 62
      package1/order/orderDetail.vue
  3. 44
      package1/order/orderList.vue

13
package1/buyFood/buyFood.vue

@ -145,7 +145,7 @@
<view class="radio-no-check" @tap="checkVoucher('zhiding')" v-else></view>
指定配送员
</view>
<view class="worker-entry" @tap="goDetail">
<view class="worker-entry" @tap.stop="goDetail">
{{ assignedWorker ? assignedWorker.workerName + ' ' + assignedWorker.mobile : '配送员' }}
<uni-icons type="right" size="12"></uni-icons>
</view>
@ -601,7 +601,8 @@
addressBookVisible: false,
freeOrderEffectVisible: false,
freeOrderAmount: '0.00',
navigatingFromPayPopup: false
navigatingFromPayPopup: false,
isNavigatingToWorkerList: false
}
},
components: {
@ -772,6 +773,7 @@
},
watch: {},
onShow() {
this.isNavigatingToWorkerList = false;
this.menuButtonInfo = uni.getMenuButtonBoundingClientRect()
this.initAddress()
this.updateImmediateTimeStr();
@ -1027,6 +1029,7 @@
this.submitOrderToBackend();
},
goDetail() {
if (this.isNavigatingToWorkerList) return;
let shopArea = this.shopItem.shopArea || '';
let putArea = this.formData.address ? this.formData.address.areaId : '';
if(shopArea == '' || putArea == ''){
@ -1036,8 +1039,12 @@
})
return;
}
this.isNavigatingToWorkerList = true;
uni.navigateTo({
url: `/package1/index/deliveryPersonList?orderType=0&shopAreaId=${shopArea}&putAreaId=${putArea}`
url: `/package1/index/deliveryPersonList?orderType=0&shopAreaId=${shopArea}&putAreaId=${putArea}`,
fail: () => {
this.isNavigatingToWorkerList = false;
}
})
},
openCouponPopup() {

62
package1/order/orderDetail.vue

@ -826,11 +826,7 @@
<text style="font-size: 60rpx;">{{payAmountText}}</text>
</view>
</view>
<view class="btn"
style="background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1));width: 90%;height: 100rpx;border-radius: 100rpx;text-align: center;font-size: 28rpx;font-weight: 700;line-height: 100rpx;margin: 40rpx auto;"
@tap="wxPayment">
确认付款
</view>
<view class="box1" style="display: flex;padding: 40rpx;">
<view style="flex: 1;">
<view style="height: 42rpx;line-height: 42rpx;display: flex;">
@ -847,6 +843,11 @@
alt="" style="width: 36rpx;height: 36rpx;" />
</view>
</view>
<view class="btn"
style="background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1));width: 90%;height: 100rpx;border-radius: 100rpx;text-align: center;font-size: 28rpx;font-weight: 700;line-height: 100rpx;margin: 40rpx auto;"
@tap="wxPayment">
确认付款
</view>
</view>
</view>
</uni-popup>
@ -1423,24 +1424,67 @@
}
return false;
},
returnPopupProp(item) {
shouldCheckCancelOrderLatest(item) {
return item && item.deliveryType == 1 && item.status == 2;
},
getOrderDetailForCancelCheck(id) {
return this.tui.request("/mall/order/detail/" + id, "GET", {}, false, true, true).then((res) => {
if (res.code == 200) {
return res.result;
}
this.tui.toast(res.message || "订单状态校验失败");
return null;
}).catch(() => {
this.tui.toast("订单状态校验失败");
return null;
});
},
async returnPopupProp(item) {
let latestItem = item;
this.payData = item;
if (item.status == 0) {
this.cancelUnpaidOrder(item);
return;
}
if (this.isNoResponsibilityCancel(item)) {
if (this.shouldCheckCancelOrderLatest(item)) {
let latestDetail = await this.getOrderDetailForCancelCheck(item.id);
if (!latestDetail) {
return;
}
let isNoResponsibility = this.isNoResponsibilityCancel(latestDetail);
if (!isNoResponsibility && latestDetail.status != item.status) {
this.getOrderDetail(latestDetail.id);
uni.showModal({
title: '提示',
content: '订单状态已发生变化,请确认是否取消订单',
confirmText: '继续退款',
success: (res) => {
if (res.confirm) {
this.openResponsibilityCancelPopup(latestDetail);
}
}
});
return;
}
latestItem = latestDetail;
this.payData = latestDetail;
}
if (this.isNoResponsibilityCancel(latestItem)) {
this.$refs.noResponsibilityCancelPopup.open('center');
return;
}
this.openResponsibilityCancelPopup(latestItem);
},
openResponsibilityCancelPopup(item) {
this.payData = item;
if (this.payData.otherOrder == 1) {
this.refundType = 3
this.refundTypeStatus = 2
this.sellTime = 3
}
if(this.orderDetail.deliveryInfo && this.orderDetail.deliveryInfo.arriveTime){
this.arriveTime = this.orderDetail.deliveryInfo.arriveTime ? this.formatTimeText(this.orderDetail.deliveryInfo.arriveTime) : '未到店'
if(this.payData.deliveryInfo && this.payData.deliveryInfo.arriveTime){
this.arriveTime = this.payData.deliveryInfo.arriveTime ? this.formatTimeText(this.payData.deliveryInfo.arriveTime) : '未到店'
}
if (this.payData.shopMakeTime != null && this.payData.deliveryInfo && this.payData.deliveryInfo.acceptTime) {
const date1 = new Date(this.payData.deliveryInfo.acceptTime);

44
package1/order/orderList.vue

@ -128,21 +128,21 @@
</view>
{{item.otherOrder == 1 ? '快递/跑腿' : item.otherOrder == 3 ? '鱼塘订单' : item.shopName}}
</view>
<view v-if="item.otherOrder == 1" @tap.stop="orderDetail(item.id)" style="display: flex;padding: 20rpx;background: rgba(247, 248, 248, 0.6);border-radius: 20rpx;">
<view v-if="item.otherOrder == 1" class="errand-goods-card" @tap.stop="orderDetail(item.id)" style="display: flex;padding: 20rpx;background: rgba(247, 248, 248, 0.6);border-radius: 20rpx;">
<view class="goods-img">
<img src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/4130b6a412584c71949b3a03e5834453.png" alt="">
<!-- <view class="jiaobiao">
快递
</view> -->
</view>
<view class="goods-content">
<view class="goods-name" style="font-size: 24rpx;line-height: 50rpx;display: flex;">
<img src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/1f77398a73454a6595c12a3c18731599.png" alt="" style="width: 50rpx;height: 50rpx;" />
{{item.shopAddress}}
<view class="goods-content errand-goods-content">
<view class="goods-name errand-address-row" style="font-size: 24rpx;line-height: 50rpx;display: flex;">
<img class="errand-address-icon" src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/1f77398a73454a6595c12a3c18731599.png" alt="" style="width: 50rpx;height: 50rpx;" />
<text class="errand-address-text">{{item.shopAddress}}</text>
</view>
<view class="goods-name" style="font-size: 24rpx;line-height: 50rpx;display: flex;margin-top: 14rpx;">
<img src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/d0764fb4138747769538cf1cafa3b017.png" alt="" style="width: 50rpx;height: 50rpx;" />
{{item.receiverAddress}}
<view class="goods-name errand-address-row" style="font-size: 24rpx;line-height: 50rpx;display: flex;margin-top: 14rpx;">
<img class="errand-address-icon" src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/d0764fb4138747769538cf1cafa3b017.png" alt="" style="width: 50rpx;height: 50rpx;" />
<text class="errand-address-text">{{item.receiverAddress}}</text>
</view>
<view class="goods-content-bottom">
下单时间{{item.createTime | formatTime}}
@ -950,6 +950,7 @@
.goods-img {
width: 160rpx;
height: 160rpx;
flex-shrink: 0;
position: relative;
background: #fff;
border-radius: 24rpx;
@ -962,7 +963,34 @@
height: 100%;
border-radius: 24rpx;
display: block;
object-fit: cover;
}
}
.errand-goods-card {
align-items: flex-start;
box-sizing: border-box;
}
.errand-goods-content {
flex: 1;
min-width: 0;
text-align: left;
}
.errand-address-row {
align-items: flex-start;
}
.errand-address-icon {
flex: 0 0 50rpx;
}
.errand-address-text {
flex: 1;
min-width: 0;
word-break: break-all;
white-space: normal;
}
.goods-card {

Loading…
Cancel
Save