|
|
@ -16,6 +16,14 @@ |
|
|
<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;"> |
|
|
{{orderDetail.shopName}} |
|
|
{{orderDetail.shopName}} |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
<view v-if="orderDetail.payTime != null" style="height: 64rpx;line-height: 64rpx;display: flex;"> |
|
|
|
|
|
<view style="flex: 1;color: #777;font-weight: 700;"> |
|
|
|
|
|
支付时间 |
|
|
|
|
|
</view> |
|
|
|
|
|
<view style="color: #000;font-weight: 700;"> |
|
|
|
|
|
{{orderDetail.payTime | formatTime}} |
|
|
|
|
|
</view> |
|
|
|
|
|
</view> |
|
|
<view class="pintuan-goods-card" v-for="(item1,index1) in orderDetail.goodsList" :key="index1" |
|
|
<view class="pintuan-goods-card" v-for="(item1,index1) in orderDetail.goodsList" :key="index1" |
|
|
v-if="orderDetail.goodsList != null && orderDetail.goodsList.length > 0"> |
|
|
v-if="orderDetail.goodsList != null && orderDetail.goodsList.length > 0"> |
|
|
<view class="goods-img1"> |
|
|
<view class="goods-img1"> |
|
|
@ -74,8 +82,7 @@ |
|
|
</view> |
|
|
</view> |
|
|
<view class="pintuan-actions"> |
|
|
<view class="pintuan-actions"> |
|
|
<view class="kaituan41 kaituan41-share"> |
|
|
<view class="kaituan41 kaituan41-share"> |
|
|
<button open-type="share" class="share-btn" |
|
|
<button open-type="share" class="share-btn"> |
|
|
style="background:transparent;border:none;color:inherit;font-size:inherit;display:inline-flex;align-items:center;"> |
|
|
|
|
|
分享至微信 <uni-icons type="weixin" size="15"></uni-icons> |
|
|
分享至微信 <uni-icons type="weixin" size="15"></uni-icons> |
|
|
</button> |
|
|
</button> |
|
|
</view> |
|
|
</view> |
|
|
@ -145,7 +152,11 @@ |
|
|
<text v-if="orderDetail.status == 11">售后中</text> |
|
|
<text v-if="orderDetail.status == 11">售后中</text> |
|
|
<text v-if="orderDetail.status == 12">订单已售后</text> |
|
|
<text v-if="orderDetail.status == 12">订单已售后</text> |
|
|
</view> |
|
|
</view> |
|
|
<view class="status-fu" v-if="orderDetail.deliveryInfo"> |
|
|
<view class="status-fu" v-if="orderDetail.status == 0"> |
|
|
|
|
|
<view class=""> |
|
|
|
|
|
创建时间 <text style="color:red;font-weight: 700;">{{orderDetail.createTime | formatTime}}</text></view> |
|
|
|
|
|
</view> |
|
|
|
|
|
<view class="status-fu" v-else-if="orderDetail.deliveryInfo"> |
|
|
<view class=""> |
|
|
<view class=""> |
|
|
预计<text style="color:red;font-weight: 700;">{{orderDetail.deliveryInfo.mustFinishTime | formatHourMinute }}</text>送达</view> |
|
|
预计<text style="color:red;font-weight: 700;">{{orderDetail.deliveryInfo.mustFinishTime | formatHourMinute }}</text>送达</view> |
|
|
<!-- <view class="">超过15分钟未支付,订单自动取消</view> |
|
|
<!-- <view class="">超过15分钟未支付,订单自动取消</view> |
|
|
@ -154,7 +165,8 @@ |
|
|
<view class="">商家已拒绝取消订单,将会继续为您配送</view> --> |
|
|
<view class="">商家已拒绝取消订单,将会继续为您配送</view> --> |
|
|
</view> |
|
|
</view> |
|
|
<view class="status-address" v-if="orderDetail.deliveryInfo"> |
|
|
<view class="status-address" v-if="orderDetail.deliveryInfo"> |
|
|
送至 <text>{{orderDetail.deliveryInfo.receiverAddress}}</text> |
|
|
<text class="status-address-label">送至</text> |
|
|
|
|
|
<text class="status-address-text">{{orderDetail.deliveryInfo.receiverAddress}}</text> |
|
|
</view> |
|
|
</view> |
|
|
<view class="status-btn" style="top: 0;" v-if="orderStatus(orderDetail)" |
|
|
<view class="status-btn" style="top: 0;" v-if="orderStatus(orderDetail)" |
|
|
@tap="returnPopupProp(orderDetail)"> |
|
|
@tap="returnPopupProp(orderDetail)"> |
|
|
@ -175,7 +187,7 @@ |
|
|
<view class="order-flow"> |
|
|
<view class="order-flow"> |
|
|
<view class="flow-item active"> |
|
|
<view class="flow-item active"> |
|
|
<view class="flow-dot"></view> |
|
|
<view class="flow-dot"></view> |
|
|
<view class="flow-name">已下单</view> |
|
|
<view class="flow-name">{{orderDetail.status == 0 ? '待支付' : '已下单'}}</view> |
|
|
</view> |
|
|
</view> |
|
|
<view class="flow-line" :class="{'active': orderDetail.status >= 3 || orderDetail.status == 5}"></view> |
|
|
<view class="flow-line" :class="{'active': orderDetail.status >= 3 || orderDetail.status == 5}"></view> |
|
|
<view class="flow-item" :class="{'active': orderDetail.status >= 3 || orderDetail.status == 5}"> |
|
|
<view class="flow-item" :class="{'active': orderDetail.status >= 3 || orderDetail.status == 5}"> |
|
|
@ -461,6 +473,15 @@ |
|
|
{{orderDetail.createTime | formatTime}} |
|
|
{{orderDetail.createTime | formatTime}} |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
<view style="height: 80rpx;line-height: 80rpx;display: flex;" |
|
|
|
|
|
v-if="orderDetail.payTime != null"> |
|
|
|
|
|
<view style="flex: 1;color: #777;font-weight: 700;"> |
|
|
|
|
|
支付时间 |
|
|
|
|
|
</view> |
|
|
|
|
|
<view style="color: #000;font-weight: 700;"> |
|
|
|
|
|
{{orderDetail.payTime | formatTime}} |
|
|
|
|
|
</view> |
|
|
|
|
|
</view> |
|
|
<view style="height: 80rpx;line-height: 80rpx;display: flex;" |
|
|
<view style="height: 80rpx;line-height: 80rpx;display: flex;" |
|
|
v-if="orderDetail.deliveryType == 1"> |
|
|
v-if="orderDetail.deliveryType == 1"> |
|
|
<view style="flex: 1;color: #777;font-weight: 700;"> |
|
|
<view style="flex: 1;color: #777;font-weight: 700;"> |
|
|
@ -647,7 +668,7 @@ |
|
|
</uni-popup> |
|
|
</uni-popup> |
|
|
|
|
|
|
|
|
<uni-popup ref="returnPopup" background-color="#fff" @change="onCancelPopupChange"> |
|
|
<uni-popup ref="returnPopup" background-color="#fff" @change="onCancelPopupChange"> |
|
|
<view class="car-content cancel-popup" v-if="orderDetail.status != 10"> |
|
|
<view class="car-content cancel-popup"> |
|
|
<view class="car-close" @tap="$refs.returnPopup.close()"> |
|
|
<view class="car-close" @tap="$refs.returnPopup.close()"> |
|
|
<uni-icons type="close" size="30" color="#fff"></uni-icons> |
|
|
<uni-icons type="close" size="30" color="#fff"></uni-icons> |
|
|
</view> |
|
|
</view> |
|
|
@ -744,8 +765,8 @@ |
|
|
|
|
|
|
|
|
<!-- 待支付订单支付弹出层 --> |
|
|
<!-- 待支付订单支付弹出层 --> |
|
|
<uni-popup ref="payPopup" background-color="#fff"> |
|
|
<uni-popup ref="payPopup" background-color="#fff"> |
|
|
<view class="pay-popup" style="height: 580rpx;background: #fff;border-radius: 40rpx 40rpx 0 0;"> |
|
|
<view class="pay-popup"> |
|
|
<view class="content" style="height: 100%;margin-top:0;top:0"> |
|
|
<view class="pay-popup-content"> |
|
|
<view class="box1"> |
|
|
<view class="box1"> |
|
|
<view style="height: 70rpx;line-height: 70rpx;text-align: center;"> |
|
|
<view style="height: 70rpx;line-height: 70rpx;text-align: center;"> |
|
|
微信支付 |
|
|
微信支付 |
|
|
@ -780,18 +801,19 @@ |
|
|
</view> |
|
|
</view> |
|
|
</uni-popup> |
|
|
</uni-popup> |
|
|
|
|
|
|
|
|
<uni-popup ref="returnPopupBuy" background-color="#fff" style="height: 1600rpx !important;"> |
|
|
<uni-popup ref="returnPopupBuy" background-color="#fff"> |
|
|
|
|
|
<view class="group-buy-cancel-popup"> |
|
|
<view class="guize-list" style="height: 600rpx;width:300rpx;padding: 20rpx;background: #fff;"> |
|
|
<view class="group-buy-cancel-title"> |
|
|
<view style="height: 80rpx;line-height: 80rpx;font-size: 36rpx;font-weight: 700;text-align: center;"> |
|
|
{{groupBuyCancelPopupType == 'cancel' ? '确定取消拼团订单吗?' : '确定要取消拼团吗'}} |
|
|
确定要取消拼团吗 |
|
|
|
|
|
</view> |
|
|
</view> |
|
|
|
|
|
<view class="group-buy-cancel-desc" v-if="groupBuyCancelPopupType != 'cancel'"> |
|
|
<view style="display:flex;margin-top:80px;"> |
|
|
取消后将转为直接购买,并跳转至普通订单结算 |
|
|
<view class="btn" @tap="returnOrderBuy()" style="background: #777;color:#eee;"> |
|
|
</view> |
|
|
|
|
|
<view class="group-buy-cancel-actions"> |
|
|
|
|
|
<view class="group-buy-cancel-btn group-buy-cancel-btn-muted" @tap="$refs.returnPopupBuy.close()"> |
|
|
取消 |
|
|
取消 |
|
|
</view> |
|
|
</view> |
|
|
<view class="btn" @tap="returnOrderBuy()"> |
|
|
<view class="group-buy-cancel-btn group-buy-cancel-btn-confirm" @tap="confirmGroupBuyCancelPopup()"> |
|
|
确认 |
|
|
确认 |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
@ -801,7 +823,7 @@ |
|
|
<uni-popup ref="addFeePopup" type="center" background-color="transparent"> |
|
|
<uni-popup ref="addFeePopup" type="center" background-color="transparent"> |
|
|
<view class="commission-popup"> |
|
|
<view class="commission-popup"> |
|
|
<view class="commission-popup-title">增加配送佣金</view> |
|
|
<view class="commission-popup-title">增加配送佣金</view> |
|
|
<view class="commission-popup-desc">最低 0.1 元,最多输入 2 位小数</view> |
|
|
<view class="commission-popup-desc">最低 0.1 元,最高 200 元,最多输入 2 位小数</view> |
|
|
<view class="commission-popup-input"> |
|
|
<view class="commission-popup-input"> |
|
|
<text>¥</text> |
|
|
<text>¥</text> |
|
|
<input type="digit" :value="additionalFee" placeholder="请输入金额" |
|
|
<input type="digit" :value="additionalFee" placeholder="请输入金额" |
|
|
@ -816,8 +838,8 @@ |
|
|
|
|
|
|
|
|
<!-- 增加佣金支付弹出层 --> |
|
|
<!-- 增加佣金支付弹出层 --> |
|
|
<uni-popup ref="addFeePayPopup" background-color="#fff"> |
|
|
<uni-popup ref="addFeePayPopup" background-color="#fff"> |
|
|
<view class="pay-popup" style="height: 580rpx;background: #fff;border-radius: 40rpx 40rpx 0 0;"> |
|
|
<view class="pay-popup"> |
|
|
<view class="content" style="height: 100%;margin-top:0"> |
|
|
<view class="pay-popup-content"> |
|
|
<view class="box1"> |
|
|
<view class="box1"> |
|
|
<view style="height: 70rpx;line-height: 70rpx;text-align: center;"> |
|
|
<view style="height: 70rpx;line-height: 70rpx;text-align: center;"> |
|
|
增加配送佣金 |
|
|
增加配送佣金 |
|
|
@ -885,7 +907,10 @@ |
|
|
codeImg: 'https://jewel-shop.oss-cn-beijing.aliyuncs.com/3a4e68eb14d7417cbb4f15fa85907c64.jpg', |
|
|
codeImg: 'https://jewel-shop.oss-cn-beijing.aliyuncs.com/3a4e68eb14d7417cbb4f15fa85907c64.jpg', |
|
|
additionalFee: '', |
|
|
additionalFee: '', |
|
|
addFeeTradeNo: '', |
|
|
addFeeTradeNo: '', |
|
|
isRefreshing: false |
|
|
isRefreshing: false, |
|
|
|
|
|
groupBuyCancelPopupType: 'buy', |
|
|
|
|
|
assignWorkerModalVisible: false, |
|
|
|
|
|
assignWorkerSelectionKey: '' |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
computed: { |
|
|
computed: { |
|
|
@ -962,7 +987,6 @@ |
|
|
onLoad(option) { |
|
|
onLoad(option) { |
|
|
if (option.id) { |
|
|
if (option.id) { |
|
|
this.orderId = option.id |
|
|
this.orderId = option.id |
|
|
this.getOrderDetail(this.orderId) |
|
|
|
|
|
} |
|
|
} |
|
|
// 监听配送员选择事件(在onLoad中注册一次,确保事件不会丢失) |
|
|
// 监听配送员选择事件(在onLoad中注册一次,确保事件不会丢失) |
|
|
uni.$on('updateDeliveryWorker', (worker) => { |
|
|
uni.$on('updateDeliveryWorker', (worker) => { |
|
|
@ -977,6 +1001,9 @@ |
|
|
uni.removeStorageSync('pendingAssignWorker'); |
|
|
uni.removeStorageSync('pendingAssignWorker'); |
|
|
this.handleWorkerSelected(pendingWorker); |
|
|
this.handleWorkerSelected(pendingWorker); |
|
|
} |
|
|
} |
|
|
|
|
|
if (this.orderId) { |
|
|
|
|
|
this.getOrderDetail(this.orderId); |
|
|
|
|
|
} |
|
|
}, |
|
|
}, |
|
|
onShareAppMessage(res) { |
|
|
onShareAppMessage(res) { |
|
|
let that = this |
|
|
let that = this |
|
|
@ -1173,6 +1200,10 @@ |
|
|
}, |
|
|
}, |
|
|
returnPopupProp(item) { |
|
|
returnPopupProp(item) { |
|
|
this.payData = item; |
|
|
this.payData = item; |
|
|
|
|
|
if (item.status == 0) { |
|
|
|
|
|
this.cancelUnpaidOrder(item); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
if (this.payData.otherOrder == 1) { |
|
|
if (this.payData.otherOrder == 1) { |
|
|
this.refundType = 3 |
|
|
this.refundType = 3 |
|
|
@ -1213,15 +1244,35 @@ |
|
|
|
|
|
|
|
|
this.peisongTime = `${fmt(hours1)}时${fmt(minutes1)}分${fmt(seconds1)}秒`; |
|
|
this.peisongTime = `${fmt(hours1)}时${fmt(minutes1)}分${fmt(seconds1)}秒`; |
|
|
} |
|
|
} |
|
|
if(this.orderDetail.status != 10){ |
|
|
if (item.status == 10) { |
|
|
|
|
|
this.groupBuyCancelPopupType = 'cancel'; |
|
|
|
|
|
this.$refs.returnPopupBuy.open('bottom'); |
|
|
|
|
|
} else { |
|
|
this.$refs.returnPopup.open('bottom'); |
|
|
this.$refs.returnPopup.open('bottom'); |
|
|
}else{ |
|
|
|
|
|
this.$refs.returnPopupBuy.open() |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
|
|
|
cancelUnpaidOrder(item) { |
|
|
|
|
|
let that = this; |
|
|
|
|
|
that.tui.request("/mall/order/cancel", "POST", { |
|
|
|
|
|
refundType: 3, |
|
|
|
|
|
refundTypeStatus: 1, |
|
|
|
|
|
orderId: item.id, |
|
|
|
|
|
userId: uni.getStorageSync('id') |
|
|
|
|
|
}, false, true).then((res) => { |
|
|
|
|
|
uni.hideLoading(); |
|
|
|
|
|
if (res.code == 200) { |
|
|
|
|
|
that.tui.toast("操作成功"); |
|
|
|
|
|
that.getOrderDetail(item.id); |
|
|
|
|
|
that.$forceUpdate(); |
|
|
|
|
|
} else { |
|
|
|
|
|
that.tui.toast(res.message, 2000); |
|
|
|
|
|
} |
|
|
|
|
|
}).catch((res) => {}); |
|
|
|
|
|
}, |
|
|
returnPopupPropBuy(item) { |
|
|
returnPopupPropBuy(item) { |
|
|
this.payData = item; |
|
|
this.payData = item; |
|
|
|
|
|
this.groupBuyCancelPopupType = 'buy'; |
|
|
if (this.payData.shopMakeTime != null) { |
|
|
if (this.payData.shopMakeTime != null) { |
|
|
const date1 = new Date(this.payData.deliveryInfo.acceptTime); |
|
|
const date1 = new Date(this.payData.deliveryInfo.acceptTime); |
|
|
const date2 = new Date(this.payData.shopMakeTime); |
|
|
const date2 = new Date(this.payData.shopMakeTime); |
|
|
@ -1286,6 +1337,33 @@ |
|
|
|
|
|
|
|
|
}).catch((res) => {}); |
|
|
}).catch((res) => {}); |
|
|
}, |
|
|
}, |
|
|
|
|
|
confirmGroupBuyCancelPopup() { |
|
|
|
|
|
if (this.groupBuyCancelPopupType == 'cancel') { |
|
|
|
|
|
this.returnGroupOrder(); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
this.returnOrderBuy(); |
|
|
|
|
|
}, |
|
|
|
|
|
returnGroupOrder() { |
|
|
|
|
|
this.$refs.returnPopupBuy.close(); |
|
|
|
|
|
let item = this.payData; |
|
|
|
|
|
let that = this; |
|
|
|
|
|
that.tui.request("/mall/order/cancel", "POST", { |
|
|
|
|
|
refundType: 3, |
|
|
|
|
|
refundTypeStatus: 1, |
|
|
|
|
|
orderId: item.id, |
|
|
|
|
|
userId: uni.getStorageSync('id') |
|
|
|
|
|
}, false, true).then((res) => { |
|
|
|
|
|
uni.hideLoading(); |
|
|
|
|
|
if (res.code == 200) { |
|
|
|
|
|
that.tui.toast("操作成功"); |
|
|
|
|
|
that.getOrderDetail(item.id); |
|
|
|
|
|
that.$forceUpdate(); |
|
|
|
|
|
} else { |
|
|
|
|
|
that.tui.toast(res.message, 2000); |
|
|
|
|
|
} |
|
|
|
|
|
}).catch((res) => {}); |
|
|
|
|
|
}, |
|
|
returnOrderBuy() { |
|
|
returnOrderBuy() { |
|
|
this.$refs.returnPopupBuy.close(); |
|
|
this.$refs.returnPopupBuy.close(); |
|
|
let item = this.payData |
|
|
let item = this.payData |
|
|
@ -1431,13 +1509,25 @@ |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
goAssignWorker() { |
|
|
goAssignWorker() { |
|
|
let shopAreaId = this.orderDetail.getAreaId || ''; |
|
|
let deliveryInfo = this.orderDetail.deliveryInfo || {}; |
|
|
let putAreaId = this.orderDetail.putAreaId || ''; |
|
|
let shopAreaId = deliveryInfo.getAreaId || this.orderDetail.getAreaId || ''; |
|
|
|
|
|
let putAreaId = deliveryInfo.putAreaId || this.orderDetail.putAreaId || ''; |
|
|
|
|
|
let commissionAmount = deliveryInfo.deliveryFee != null |
|
|
|
|
|
? deliveryInfo.deliveryFee |
|
|
|
|
|
: ''; |
|
|
uni.navigateTo({ |
|
|
uni.navigateTo({ |
|
|
url: `/package1/index/deliveryPersonList?shopAreaId=${shopAreaId}&putAreaId=${putAreaId}` |
|
|
url: `/package1/index/deliveryPersonList?shopAreaId=${shopAreaId}&putAreaId=${putAreaId}&commissionAmount=${commissionAmount}` |
|
|
}); |
|
|
}); |
|
|
}, |
|
|
}, |
|
|
handleWorkerSelected(worker) { |
|
|
handleWorkerSelected(worker) { |
|
|
|
|
|
if (!worker) return; |
|
|
|
|
|
uni.removeStorageSync('pendingAssignWorker'); |
|
|
|
|
|
let workerKey = this.getWorkerSelectionKey(worker); |
|
|
|
|
|
if (this.assignWorkerModalVisible && workerKey == this.assignWorkerSelectionKey) { |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
this.assignWorkerModalVisible = true; |
|
|
|
|
|
this.assignWorkerSelectionKey = workerKey; |
|
|
let that = this; |
|
|
let that = this; |
|
|
uni.showModal({ |
|
|
uni.showModal({ |
|
|
title: '指派配送员', |
|
|
title: '指派配送员', |
|
|
@ -1446,9 +1536,15 @@ |
|
|
if (res.confirm) { |
|
|
if (res.confirm) { |
|
|
that.reassignWorker(worker); |
|
|
that.reassignWorker(worker); |
|
|
} |
|
|
} |
|
|
|
|
|
}, |
|
|
|
|
|
complete: function() { |
|
|
|
|
|
that.assignWorkerModalVisible = false; |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
}, |
|
|
}, |
|
|
|
|
|
getWorkerSelectionKey(worker) { |
|
|
|
|
|
return String(worker.workerId || worker.id || worker.mobile || worker.workerName || ''); |
|
|
|
|
|
}, |
|
|
reassignWorker(worker) { |
|
|
reassignWorker(worker) { |
|
|
let that = this; |
|
|
let that = this; |
|
|
let deliveryId = ''; |
|
|
let deliveryId = ''; |
|
|
@ -1570,6 +1666,10 @@ |
|
|
this.tui.toast('请输入有效的金额'); |
|
|
this.tui.toast('请输入有效的金额'); |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
if (fee > 200) { |
|
|
|
|
|
this.tui.toast('增加配送佣金不得超过200元'); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
// 关闭输入弹窗,生成随机订单号,打开支付弹窗 |
|
|
// 关闭输入弹窗,生成随机订单号,打开支付弹窗 |
|
|
this.$refs.addFeePopup.close(); |
|
|
this.$refs.addFeePopup.close(); |
|
|
const now = Date.now(); // 获取当前时间戳 (13位) |
|
|
const now = Date.now(); // 获取当前时间戳 (13位) |
|
|
@ -1584,6 +1684,10 @@ |
|
|
this.additionalFee = this.formatAdditionalFee(this.additionalFee); |
|
|
this.additionalFee = this.formatAdditionalFee(this.additionalFee); |
|
|
let fee = parseFloat(this.additionalFee); |
|
|
let fee = parseFloat(this.additionalFee); |
|
|
if (!fee || fee < 0.1) return; |
|
|
if (!fee || fee < 0.1) return; |
|
|
|
|
|
if (fee > 200) { |
|
|
|
|
|
this.tui.toast('增加配送佣金不得超过200元'); |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
let amountInCents = Math.round(fee * 100); |
|
|
let amountInCents = Math.round(fee * 100); |
|
|
|
|
|
|
|
|
this.tui.request("/api/wechat/pay/unified-order", "POST", { |
|
|
this.tui.request("/api/wechat/pay/unified-order", "POST", { |
|
|
@ -1916,8 +2020,11 @@ |
|
|
|
|
|
|
|
|
.status-text { |
|
|
.status-text { |
|
|
flex: 1; |
|
|
flex: 1; |
|
|
|
|
|
min-width: 0; |
|
|
position: relative; |
|
|
position: relative; |
|
|
padding-left: 20rpx; |
|
|
padding-left: 20rpx; |
|
|
|
|
|
padding-right: 160rpx; |
|
|
|
|
|
box-sizing: border-box; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.status-zhu { |
|
|
.status-zhu { |
|
|
@ -1933,8 +2040,24 @@ |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.status-address { |
|
|
.status-address { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: flex-start; |
|
|
font-weight: 700; |
|
|
font-weight: 700; |
|
|
color: #243f38; |
|
|
color: #243f38; |
|
|
|
|
|
line-height: 40rpx; |
|
|
|
|
|
word-break: break-all; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.status-address-label { |
|
|
|
|
|
flex-shrink: 0; |
|
|
|
|
|
margin-right: 8rpx; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.status-address-text { |
|
|
|
|
|
flex: 1; |
|
|
|
|
|
min-width: 0; |
|
|
|
|
|
word-break: break-all; |
|
|
|
|
|
overflow-wrap: break-word; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.status-btn { |
|
|
.status-btn { |
|
|
@ -2069,11 +2192,81 @@ |
|
|
.evaluate-content, |
|
|
.evaluate-content, |
|
|
.car-content, |
|
|
.car-content, |
|
|
.guize-list, |
|
|
.guize-list, |
|
|
|
|
|
.group-buy-cancel-popup, |
|
|
.pay-popup { |
|
|
.pay-popup { |
|
|
border-radius: 36rpx 36rpx 0 0 !important; |
|
|
border-radius: 36rpx 36rpx 0 0 !important; |
|
|
box-shadow: 0 -18rpx 44rpx rgba(0, 35, 28, 0.12); |
|
|
box-shadow: 0 -18rpx 44rpx rgba(0, 35, 28, 0.12); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.pay-popup { |
|
|
|
|
|
width: 100vw; |
|
|
|
|
|
min-height: 580rpx; |
|
|
|
|
|
padding: 30rpx 0 calc(28rpx + env(safe-area-inset-bottom)); |
|
|
|
|
|
box-sizing: border-box; |
|
|
|
|
|
background: #fff; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.pay-popup-content { |
|
|
|
|
|
position: relative; |
|
|
|
|
|
width: 100%; |
|
|
|
|
|
height: auto; |
|
|
|
|
|
margin-top: 0; |
|
|
|
|
|
top: auto; |
|
|
|
|
|
padding-bottom: 1rpx; |
|
|
|
|
|
box-sizing: border-box; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-popup { |
|
|
|
|
|
width: 100vw; |
|
|
|
|
|
padding: 46rpx 42rpx calc(42rpx + env(safe-area-inset-bottom)); |
|
|
|
|
|
box-sizing: border-box; |
|
|
|
|
|
background: #fff; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-title { |
|
|
|
|
|
color: #243f38; |
|
|
|
|
|
font-size: 36rpx; |
|
|
|
|
|
font-weight: 900; |
|
|
|
|
|
line-height: 52rpx; |
|
|
|
|
|
text-align: center; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-desc { |
|
|
|
|
|
margin-top: 16rpx; |
|
|
|
|
|
color: #7b8883; |
|
|
|
|
|
font-size: 26rpx; |
|
|
|
|
|
font-weight: 700; |
|
|
|
|
|
line-height: 38rpx; |
|
|
|
|
|
text-align: center; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-actions { |
|
|
|
|
|
display: flex; |
|
|
|
|
|
gap: 22rpx; |
|
|
|
|
|
margin-top: 52rpx; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-btn { |
|
|
|
|
|
flex: 1; |
|
|
|
|
|
height: 88rpx; |
|
|
|
|
|
border-radius: 999rpx; |
|
|
|
|
|
font-size: 28rpx; |
|
|
|
|
|
font-weight: 900; |
|
|
|
|
|
line-height: 88rpx; |
|
|
|
|
|
text-align: center; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-btn-muted { |
|
|
|
|
|
background: #f0f2f1; |
|
|
|
|
|
color: #7b8883; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.group-buy-cancel-btn-confirm { |
|
|
|
|
|
background: linear-gradient(90deg, rgba(227, 255, 150, 1), rgba(166, 255, 234, 1)); |
|
|
|
|
|
color: #00231C; |
|
|
|
|
|
box-shadow: 0 14rpx 28rpx rgba(0, 191, 160, 0.12); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
.cancel-popup { |
|
|
.cancel-popup { |
|
|
max-height: 86vh; |
|
|
max-height: 86vh; |
|
|
padding: 20rpx 20rpx 0 !important; |
|
|
padding: 20rpx 20rpx 0 !important; |
|
|
@ -2577,9 +2770,20 @@ |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.share-btn { |
|
|
.share-btn { |
|
|
|
|
|
width: 100%; |
|
|
|
|
|
height: 100%; |
|
|
margin: 0; |
|
|
margin: 0; |
|
|
padding: 0; |
|
|
padding: 0; |
|
|
|
|
|
background: transparent; |
|
|
|
|
|
border: none; |
|
|
|
|
|
color: inherit; |
|
|
|
|
|
font-size: inherit; |
|
|
|
|
|
font-weight: inherit; |
|
|
line-height: 88rpx; |
|
|
line-height: 88rpx; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
justify-content: center; |
|
|
|
|
|
border-radius: inherit; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.evaluate-list { |
|
|
.evaluate-list { |
|
|
|