wangfukang 4 days ago
parent
commit
8f85c863a6
  1. 25
      package1/buyFood/buyFood.vue
  2. 4
      package1/index/deliveryPersonList.vue
  3. 1
      package1/myCenter/partTimeJobRegister.vue
  4. 56
      package1/order/orderDetail.vue
  5. 19
      package1/order/orderList.vue
  6. 881
      package1/runErrand/runErrand.vue

25
package1/buyFood/buyFood.vue

@ -126,6 +126,11 @@
<uni-icons type="right" size="12"></uni-icons>
</view>
</view>
<view v-if="highFloorFeeCalc > 0" style="margin-top: 20rpx; color: #ff5722; font-size: 24rpx; background: #fff5f5; padding: 10rpx 20rpx; border-radius: 10rpx;">
<uni-icons type="info" size="14" color="#ff5722"></uni-icons>
因您的收货楼层在3楼以上将额外收取配送费 ¥{{highFloorFeeCalc}}
</view>
</view>
</view>
<view class="box1">
@ -452,6 +457,15 @@
return this.cartItems.reduce((acc, curr) => acc + (curr.quantity * parseFloat(curr.price)), 0);
}
},
highFloorFeeCalc() {
if (this.selected === 'zhiding' && this.assignedWorker) {
let hFee = parseFloat(this.assignedWorker.highFloorFee || 0);
if (hFee > 0 && this.formData.address && parseInt(this.formData.address.floor) > 3) {
return hFee;
}
}
return 0;
},
packageFee() {
if (this.totalPackageFee > 0) return this.totalPackageFee;
let fee = 0;
@ -486,12 +500,12 @@
let members = parseInt(this.groupItem.groupRule.groupCount) || 1;
if (this.selected === 'zhiding') {
let extra = members > 2 ? (members - 2) * 0.5 : 0;
return Math.ceil(((commission + extra) / members) * 100) / 100;
return Math.ceil(((commission + this.highFloorFeeCalc + extra) / members) * 100) / 100;
} else {
return Math.ceil((commission / members) * 100) / 100;
return Math.ceil(((commission + this.highFloorFeeCalc) / members) * 100) / 100;
}
}
return commission;
return commission + this.highFloorFeeCalc;
},
totalAmountCalc() {
if(this.isPaotui==true){
@ -541,6 +555,7 @@
},
onUnload() {
uni.$off('updateDeliveryWorker');
uni.removeStorageSync('pendingAssignWorker');
},
methods: {
initAddress() {
@ -609,7 +624,7 @@
let shopArea = this.shopItem.shopArea || '';
let putArea = this.formData.address ? this.formData.address.areaId : '';
uni.navigateTo({
url: `/package1/index/deliveryPersonList?shopAreaId=${shopArea}&putAreaId=${putArea}`
url: `/package1/index/deliveryPersonList?orderType=0&shopAreaId=${shopArea}&putAreaId=${putArea}`
})
},
openAddressBook() {
@ -845,7 +860,7 @@
payload.workerParam = {
workerId: this.assignedWorker.workerId,
workerName: this.assignedWorker.workerName,
orderBkge: parseFloat(this.assignedWorker.orderBkge || 0)
orderBkge: parseFloat(this.assignedWorker.orderBkge || 0) + this.highFloorFeeCalc
};
} else if (this.selected === 'buzhiding') {
payload.workerParam = {

4
package1/index/deliveryPersonList.vue

@ -107,12 +107,14 @@
shopAreaId: '',
putAreaId: '',
workerList: [],
orderType:null,
keyword: ''
}
},
onLoad(option) {
this.shopAreaId = option.shopAreaId || '';
this.putAreaId = option.putAreaId || '';
this.orderType = option.orderType || 0;
this.getShopList();
},
onShow() {
@ -123,7 +125,7 @@
// Fake request to our new endpoint
let payload = {
shopAreaId: this.shopAreaId,
orderType: 0,
orderType: this.orderType,
putAreaId: this.putAreaId,
baozhang: this.baozhang,
xiangtong: this.xiangtong,

1
package1/myCenter/partTimeJobRegister.vue

@ -269,7 +269,6 @@
for(let m = 0;m<res.result.length;m++){
that.shopArea.push(res.result[m])
}
console.log(that.shopArea)
}
} else {
that.tui.toast(res.message)

56
package1/order/orderDetail.vue

@ -119,7 +119,6 @@
<text v-if="orderDetail.status == 8">订单已退款</text>
<text v-if="orderDetail.status == 11">售后中</text>
<text v-if="orderDetail.status == 12">订单已售后</text>
<text v-if="orderDetail.status != 5 && orderDetail.status != 8 && orderDetail.status != 12 && orderDetail.returnStatus == 1">(商家拒绝退款)</text>
</view>
<view class="status-fu" v-if="orderDetail.deliveryInfo">
<view class="">预计<text>{{orderDetail.deliveryInfo.mustFinishTime | formatHourMinute }}</text>送达</view>
@ -156,7 +155,7 @@
增加配送佣金
</view>
<view class="btn" style="width: 40%;" v-if="orderDetail.status == 2" @tap="goAssignWorker">
派配送员
派配送员
</view>
<!-- <view class="btn">
再来一单
@ -235,7 +234,7 @@
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;">
<view style="flex: 1;color: #777;font-weight: 700;">
退款类型
退款/售后类型
</view>
<view style="color: #000;font-weight:700;">
{{item2.refundType == 1 ? '退商品' : item2.refundType == 2 ? '退配送费' : '全额退款' }}
@ -246,7 +245,7 @@
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;">
<view style="flex: 1;color: #777;font-weight: 700;">
退款状态
退款/售后状态
</view>
<view style="color: #000;font-weight:700;">
{{item2.status == 0 ? '处理退款中' : item2.status == 1 ? '同意退款' : item2.status == 2 ? '拒绝退款' : item2.status == 3 ? '处理售后中' : item2.status == 4 ? '同意售后' : '拒绝售后' }}
@ -266,7 +265,7 @@
</view>
<view class="box1">
<view style="width: 100%;line-height: 70rpx;font-size: 28rpx;font-weight: 700;">
<view style="width: 100%;line-height: 70rpx;font-size: 28rpx;font-weight: 700;" v-if="orderDetail.shopName != null">
{{orderDetail.shopName}}
<img @tap="makeCall(orderDetail.shopPhone)"
src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/869a7af6a1c24bf3a0d523c4a18b55c6.png"
@ -334,14 +333,38 @@
<view class="box1">
<view>
<!-- <view style="height: 80rpx;line-height: 80rpx;display: flex;">
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.otherOrder == 1">
<view style="flex: 1;color: #777;font-weight: 700;">
取件地址
</view>
<view style="color: #000;font-weight: 700;">
{{orderDetail.shopAddress}}
</view>
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.otherOrder == 1">
<view style="flex: 1;color: #777;font-weight: 700;">
收件地址
</view>
<view style="color: #000;font-weight: 700;">
北校区1号宿舍楼5楼512(0702)
{{orderDetail.receiverAddress}}
</view>
</view> -->
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.otherOrder == 1">
<view style="flex: 1;color: #777;font-weight: 700;">
件数
</view>
<view style="color: #000;font-weight: 700;">
{{orderDetail.deliveryInfo.allCount}}
</view>
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.otherOrder == 1">
<view style="flex: 1;color: #777;font-weight: 700;">
服务类型
</view>
<view style="color: #000;font-weight: 700;">
快递/跑腿
</view>
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.numberCode != null">
<view style="flex: 1;color: #777;font-weight: 700;">
订单号
@ -380,7 +403,7 @@
{{orderDetail.deliveryInfo.acceptTime | formatTime}}
</view>
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.deliveryType == 1">
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.deliveryType == 1 && orderDetail.otherOrder == null">
<view style="flex: 1;color: #777;font-weight: 700;">
商家出餐时间
</view>
@ -388,7 +411,7 @@
{{orderDetail.shopMakeTime ? orderDetail.shopMakeTime : '' | formatTime}}
</view>
</view>
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.deliveryInfo && orderDetail.deliveryType == 1 && orderDetail.deliveryInfo.workerId != ''">
<view style="height: 80rpx;line-height: 80rpx;display: flex;" v-if="orderDetail.deliveryInfo && orderDetail.deliveryType == 1 && orderDetail.deliveryInfo.workerId != '' && orderDetail.otherOrder == null">
<view style="flex: 1;color: #777;font-weight: 700;">
配送员到店时间
</view>
@ -425,7 +448,7 @@
</uni-popup>
<uni-popup ref="returnPopup" background-color="#fff" style="height: 1600rpx !important;">
<view class="car-content" v-if="orderDetail.deliveryType == 1 && orderDetail.status != 10">
<view class="car-content" v-if="orderDetail.deliveryType == 1 && orderDetail.status != 10 && orderDetail.otherOrder != 1">
<view class="car-close">
<uni-icons type="close" size="30" color="#fff"></uni-icons>
</view>
@ -450,10 +473,10 @@
<view class="guize-list">
<view style="height: 80rpx;line-height: 80rpx;font-size: 36rpx;font-weight: 700;text-align: center;">
确定要取消订单吗
<text v-if="((payData.orderType == 2 || payData.orderType == 3) && payData.status == 2) || ((payData.orderType == 2 || payData.orderType == 3) && payData.status == 3) || (payData.deliveryType == 1 && payData.status == 3) || payData.status == 4">取消订单需要商家同意</text>
<text v-if="(((payData.orderType == 2 || payData.orderType == 3) && payData.status == 2) || ((payData.orderType == 2 || payData.orderType == 3) && payData.status == 3) || (payData.deliveryType == 1 && payData.status == 3) || payData.status == 4) && payData.otherOrder == null">取消订单需要商家同意</text>
<view v-if="(payData.status == 3 && payData.deliveryType ==1) || payData.status == 4">
<text v-if="payData.shopMakeTime == null">商家还未出餐</text>
<text v-else>本单商家备餐时长共计{{shopTime}} 配送员配送时长共计{{peisongTime}}</text>
<text v-if="payData.shopMakeTime == null && payData.otherOrder == null">商家还未出餐</text>
<text v-if="payData.shopMakeTime != null && payData.otherOrder == null">本单商家备餐时长共计{{shopTime}} 配送员配送时长共计{{peisongTime}}</text>
</view>
</view>
<view class="btn" @tap="returnOrder()">
@ -652,6 +675,11 @@
},
returnPopupProp(item){
this.payData = item;
if(this.payData.otherOrder == 1){
this.refundType = 3
this.refundTypeStatus = 2
}
if(this.payData.shopMakeTime != null){
const date1 = new Date(this.payData.deliveryInfo.acceptTime);
const date2 = new Date(this.payData.shopMakeTime);

19
package1/order/orderList.vue

@ -126,16 +126,13 @@
</view>
<view style="width: 100%;line-height: 70rpx;font-size: 28rpx;font-weight: 700;display: flex;">
<view style="height: 40rpx;line-height: 40rpx;background: linear-gradient(90deg, rgba(255, 77, 0, 1), rgba(255, 184, 84, 1));padding: 0 16rpx;border-radius: 40rpx;color: #fff;margin: 14rpx 20rpx 0 0;">
{{item.orderType == 4 ? '快递' : item.orderType == 5 ? '跑腿' : item.orderType == 6 ? '二手':"饭团"}}
{{item.otherOrder == 1 ? '快递/跑腿' : item.otherOrder == 2 ? '二手' :"饭团"}}
</view>
{{item.orderType == 4 ? '快递代取' : item.orderType == 5 ? '跑腿帮送' : item.orderType == 6 ? '二手物品': item.shopName}}
{{item.otherOrder == 1 ? '快递/跑腿' : item.otherOrder == 2 ? '二手物品': item.shopName}}
</view>
<view v-if="item.orderType == 4 || item.orderType == 5" style="display: flex;padding: 20rpx;background: #F5F5F5;border-radius: 20rpx;">
<view v-if="item.otherOrder == 1 || item.otherOrder == 2" style="display: flex;padding: 20rpx;background: #F5F5F5;border-radius: 20rpx;">
<view class="goods-img">
<img src="https://jewel-shop.oss-cn-beijing.aliyuncs.com/4130b6a412584c71949b3a03e5834453.png" alt="">
<view class="jiaobiao">
3
</view>
<!-- <view class="jiaobiao">
快递
</view> -->
@ -143,14 +140,14 @@
<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;" />
沁园春第三食堂A20窗口
{{item.shopAddress}}
</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;" />
11号宿舍楼610
{{item.receiverAddress}}
</view>
<view class="goods-content-bottom">
下单时间2026-02-25 16:34
下单时间{{item.createTime | formatTime}}
</view>
</view>
</view>
@ -181,12 +178,16 @@
<view style="font-size: 24rpx;font-weight: 700;">
实付<text v-if="tab1Checked == 'fantuan'" style="font-size: 20rpx;color: #777;">含包装/配送费</text> <text
style="color: red;">{{item.totalAmount}}</text>
<text class="goods-content-bottom" style="float: right;" v-if="item.otherOrder == null">
下单时间{{item.createTime | formatTime}}
</text>
</view>
</view>
<view class="bottom-btn">
<!-- <view class="btn1" v-if="orderStatus(item)" @tap="returnPopupProp(item)">
取消订单
</view> -->
<view class="btn1" v-if="item.status == 0" @tap="payAgain(item)"
style="background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1));color: #000;">
去支付

881
package1/runErrand/runErrand.vue

File diff suppressed because it is too large
Loading…
Cancel
Save