This commit is contained in:
messi
2024-08-19 17:17:46 +08:00
parent 23d6b5d848
commit 4810dc79e3
528 changed files with 213 additions and 125 deletions

175
pages/order/index.vue Executable file → Normal file
View File

@@ -14,12 +14,17 @@
</view>
<view class="item-top-right">
<text class="state-text" v-if="item.payStatus == 10">待支付</text>
<text class="state-text" v-if="item.payStatus == 20 && item.deliveryStatus <= 20 && item.receiptStatus == 10">待收货</text>
<text class="state-text" v-if="item.payStatus == 20 && item.deliveryStatus == 20 && item.receiptStatus == 20">绑定</text>
<text class="state-text"
v-if="item.payStatus == 20 && item.deliveryStatus <= 20 && item.receiptStatus == 10">收货</text>
<text class="state-text"
v-if="item.payStatus == 20 && item.deliveryStatus == 20 && item.receiptStatus == 20">待绑定</text>
<!-- <text class="state-text" v-else-if="item.receiptStatus == 21">进行中</text> -->
<text class="state-text" v-if="item.payStatus == 20 && item.deliveryStatus == 40 && item.receiptStatus == 20">进行中</text>
<text class="state-text" v-else-if="item.payStatus == 20 && item.receiptStatus == 21">退租</text>
<text class="state-text" v-else-if="item.payStatus == 20 && item.orderStatus == 40">已完成</text>
<text class="state-text"
v-if="item.payStatus == 20 && item.deliveryStatus == 40 && item.receiptStatus == 20">进行</text>
<text class="state-text"
v-else-if="item.payStatus == 20 && item.receiptStatus == 21">退租中</text>
<text class="state-text"
v-else-if="item.payStatus == 20 && item.orderStatus == 40">已完成</text>
</view>
</view>
<!-- 商品列表 -->
@@ -45,21 +50,25 @@
<text class="twoline-hide"
v-if="item.orderStatus == 30">到期时间{{ item.expirationTime }}</text>
<text class="twoline-hide" v-else>下单时间{{ item.payTime }}</text>
<text class="twoline-hide">设备编号{{ item.equipment.equipmentCode ? item.equipment.equipmentCode : ''}}</text>
<text
class="twoline-hide">设备编号{{ item.equipment.equipmentCode ? item.equipment.equipmentCode : ''}}</text>
<text class="twoline-hide">设备名称{{ item.equipmentGoods.goodsName }}</text>
<text class="twoline-hide">设备型号{{ item.equipmentGoods.batteryModel }}</text>
<text class="twoline-hide">下单用户{{ item.nickname }}</text>
<text class="twoline-hide yuqi-text" v-if="item.payStatus == 10 && item.expirationDay < 0">逾期状态:
<text class="twoline-hide yuqi-text"
v-if="item.payStatus == 10 && item.expirationDay < 0">逾期状态:
(已逾期{{ Math.abs(item.expirationDay) }})</text>
<text class="twoline-hide yuqi-text"
v-if="item.payStatus == 10 && item.expirationDay < 7 && item.expirationDay > 0">逾期状态: 即将过期</text>
v-if="item.payStatus == 10 && item.expirationDay < 7 && item.expirationDay > 0">逾期状态:
即将过期</text>
<!-- <view class="order-total">
<text>合计:</text>
<text class="unit" style="color: #ff0000;"></text>
<text class="money">{{ item.totalPrice }}</text>
</view> -->
<!-- <text class="twoline-hide">合计{{ item.equipmentGoods.batteryModel }}</text> -->
<text class="twoline-hide" style="padding-left: 52rpx;">合计<span style="color: #ff0000;">{{ item.totalPrice }}</span></text>
<text class="twoline-hide" style="padding-left: 52rpx;">合计<span
style="color: #ff0000;">{{ item.totalPrice }}</span></text>
</view>
</view>
<!-- 交易信息 -->
@@ -75,19 +84,23 @@
</view>
</view>
<!-- 订单合计 -->
<!-- 订单操作 -->
<view v-if="item.orderStatus != OrderStatusEnum.CANCELLED.value" class="order-handle">
<view class="btn-group clearfix">
<view class="btn-item active" v-if="item.receiptStatus==10" @click="onBind(item)">绑定设备</view>
<view
class="btn-item active" v-if="item.receiptStatus==20&&item.idCode==null" @click="onReceipt(item.orderId)">确认身份</view>
<!-- 未支付取消订单 -->
<block v-if="item.payStatus == PayStatusEnum.PENDING.value">
<block v-if="item.payStatus == PayStatusEnum.PENDING.value&&item.receiptStatus==20&&item.idCode">
<view class="btn-item active" @click="onPay(item.orderId)">去支付</view>
<view class="btn-item" @click="onCancel(item.orderId)">取消</view>
</block>
<!-- 已支付进行中的订单 -->
<block v-if="item.orderStatus != OrderStatusEnum.APPLY_CANCEL.value">
<!-- 订单核销码 -->
<block v-if="item.payStatus == PayStatusEnum.SUCCESS.value && item.deliveryType == DeliveryTypeEnum.EXTRACT.value && item.deliveryStatus == DeliveryStatusEnum.NOT_DELIVERED.value">
<block
v-if="item.payStatus == PayStatusEnum.SUCCESS.value && item.deliveryType == DeliveryTypeEnum.EXTRACT.value && item.deliveryStatus == DeliveryStatusEnum.NOT_DELIVERED.value">
<view class="btn-item active" @click="onExtractQRCode(item.orderId)">
<text class="iconfont icon-qr-extract"></text>
<text class="m-l-10">核销码</text>
@@ -98,28 +111,34 @@
<view v-else class="f-28 col-8">取消申请中</view>
<!-- 确认收货 -->
<block v-if="item.payStatus == PayStatusEnum.SUCCESS.value">
<view v-if="item.deliveryStatus <= 20 && item.receiptStatus == 10" class="btn-item active" @click="onReceipt(item.orderId)">确认收货</view>
<view v-else-if="item.orderStatus == 30 && item.deliveryStatus == 20 && item.receiptStatus == 20" class="btn-item active" @click="onBind(item)">绑定设备</view>
<view class="btn-item" @click="handleRentingOut(item)"
v-if="item.equipmentGoods.equipmentCategory != '10' && item.receiptStatus != 21 && item.receiptStatus != 30">我要退租</view>
<view class="btn-item" @click="handleRentingOutCancel(item)"
v-if="item.equipmentGoods.equipmentCategory != '10' && item.receiptStatus == 21">取消退租</view>
<view class="btn-item" @click="handleHireEquipment(item.orderId)"
v-if="item.equipmentGoods.equipmentCategory != '10' && item.receiptStatus != 30 && item.receiptStatus != 21 && item.orderId >= 28804 && item.deliveryStatus == 40">我要续费</view>
<block v-if="item.orderStatus == OrderStatusEnum.COMPLETED.value && item.isComment == 0">
<view class="btn-item" v-if="item.equipmentGoods.equipmentCategory == '40' && item.deliveryStatus == DeliveryStatusEnum.ACCEPT.value"
@click="handleChangeEquipment(item.orderId,item.equipment.equipmentId)">换电</view>
<view class="btn-item" @click="handleRentingOut(item)"
v-if="item.equipmentGoods.equipmentCategory != '10' && item.receiptStatus != 21 && item.receiptStatus != 30">
我要退租</view>
<view class="btn-item" @click="handleRentingOutCancel(item)"
v-if="item.equipmentGoods.equipmentCategory != '10' && item.receiptStatus == 21">
取消退租</view>
<view class="btn-item" @click="handleHireEquipment(item.orderId)"
v-if="item.equipmentGoods.equipmentCategory != '10' && item.receiptStatus != 30 && item.receiptStatus != 21 && item.orderId >= 28804 && item.deliveryStatus == 40">
我要续费</view>
<block
v-if="item.orderStatus == OrderStatusEnum.COMPLETED.value && item.isComment == 0">
<view class="btn-item"
v-if="item.equipmentGoods.equipmentCategory == '40' && item.deliveryStatus == DeliveryStatusEnum.ACCEPT.value"
@click="handleChangeEquipment(item.orderId,item.equipment.equipmentId)">换电
</view>
<!-- <view class="btn-item" v-if="item.equipmentGoods.equipmentCategory == '锂电池租赁' || item.equipmentGoods.equipmentCategory == '电动车租赁'" @click="handleTargetDetail(item.orderId)">续费</view> -->
</block>
</block>
<!-- 订单评价 -->
<view class="btn-item" @click="handleTargetDetail(item.orderId)">详情</view>
</view>
</view>
</view>
@@ -158,6 +177,7 @@
<view class="submit">
<u-button type="error" @click="doEquipment(true)">确定更换电池</u-button>
</view>
<view class="scan" @click="scan"><u-icon name="scan" color="#cecece" size="28"></u-icon>扫码</view>
</view>
</u-popup>
</view>
@@ -314,7 +334,21 @@
},
methods: {
scan() {
const app = this
my.ap.openAlipayApp({
appCode: 'alipayScan',
success: res => {
console.log('openAlipayApp success', res);
},
fail: err => {
console.log('openAlipayApp fail', err);
}
});
},
// 初始化当前选中的标签
initCurTab(options) {
const app = this
@@ -456,24 +490,28 @@
// 确认收货
onReceipt(orderId) {
const app = this
uni.showModal({
title: '友情提示',
content: '确认收到商品了吗?',
success(o) {
if (o.confirm) {
// OrderApi.receipt(orderId)
// .then(result => {
// // 显示成功信息
// app.$success(result.message)
// // 刷新订单列表
// app.onRefreshList()
// })
app.$navTo('pages/order/delivery', {
orderId
})
}
}
});
app.$navTo('pages/order/delivery', {
orderId
})
// uni.showModal({
// title: '友情提示',
// content: '确认收到商品了吗?',
// success(o) {
// if (o.confirm) {
// // OrderApi.receipt(orderId)
// // .then(result => {
// // // 显示成功信息
// // app.$success(result.message)
// // // 刷新订单列表
// // app.onRefreshList()
// // })
// app.$navTo('pages/order/delivery', {
// orderId
// })
// }
// }
// });
},
// 上传图片
chooseImage(orderId) {
@@ -565,7 +603,7 @@
app.showQRCodePopup = true
})
},
handleRentingOut(order) {
const app = this
uni.showModal({
@@ -589,7 +627,7 @@
}
})
},
handleRentingOutCancel(order) {
const app = this
uni.showModal({
@@ -618,29 +656,28 @@
onPay(orderId) {
const app = this
getOrderPayByOrderId(orderId).then(res => {
if(res.data.isRenew == 0 && res.data.hasFreeze == 0){
if (res.data.isRenew == 0 && res.data.hasFreeze == 0) {
if (res.data.equipmentCategory != 10 && res.data.orderStr) {
my.tradePay({
orderStr: res.data.orderStr, // 完整的支付参数拼接成的字符串,从服务端获取
success: (res) => {
},
fail: (res) => {
},
fail: (res) => {},
complete: () => {
checkFreeze(orderId).then((r) => {
if(r.code == 0){
if (r.code == 0) {
// app.$success("押金校验成功!")
setTimeout(() => {
// uni.redirectTo({
// url: '/pages/order/index'
// })
this.$navTo('pages/checkout/cashier/index', {
orderId: r.data.id
})
this.$navTo(
'pages/checkout/cashier/index', {
orderId: r.data.id
})
}, 500)
}
else {
} else {
app.$error(r.message)
app.onRefreshList()
}
@@ -649,7 +686,7 @@
});
} else {
checkFreeze(orderId).then((r) => {
if(r.code == 0){
if (r.code == 0) {
app.$success("押金校验成功")
setTimeout(() => {
// uni.redirectTo({
@@ -660,8 +697,7 @@
orderId: r.data.id
})
}, 500)
}
else {
} else {
app.$error(r.message)
app.onRefreshList()
}
@@ -672,7 +708,7 @@
orderId: res.data.id
})
}
})
},
@@ -696,7 +732,7 @@
app.equipmentId = equipmentId
app.showQRCodeBindChange = true
},
// 续费
handleHireEquipment(orderId) {
getOrderPayByOrderId(orderId).then(res => {
@@ -704,7 +740,7 @@
orderId: res.data.id
})
})
},
// 换电
doEquipment(canReset = false) {
@@ -736,6 +772,15 @@
</script>
<style lang="scss" scoped>
.scan {
display: flex;
justify-content: center;
align-items: center;
margin-top: 30rpx;
font-size: 24rpx;
color: #cecece;
}
// 项目内容
.order-item {
margin: 20rpx auto 20rpx auto;
@@ -914,7 +959,7 @@
// 弹出层 - 绑定设备码
.qrcode-bind {
width: 550rpx;
height: 300rpx;
padding: 36rpx 30rpx;
.title {