dingdong-master/pages/order-manage/order-manage.vue

529 lines
23 KiB
Vue
Raw Normal View History

2022-05-06 23:47:18 +08:00
<template>
<page-meta :page-style="'overflow:'+(ifShowPageMeta?'hidden':'visible')"></page-meta>
<view>
<!-- 顶部操作条 -->
<cu-custom :bgColor="'bg-main-color'" :isBack="true">
<block slot="backText">返回</block>
<block slot="content">接收的任务</block>
</cu-custom>
<view class="sticky-bar" :style="[{top: stickyTop + 'px'}]">
<!-- 条件筛选栏 -->
<view class="padding bg-white solid-bottom">
<view class="flex justify-start align-center">
<text class="margin-right-xs inline-lable">全部</text>
<!-- <my-uni-combox class="inline-combox margin-right-xs" :candidates="stateList" placeholder="请选择"
v-model="formData.state"></my-uni-combox>
<my-uni-combox class="inline-combox" :candidates="subStateList" placeholder="请选择"
v-model="formData.subState"></my-uni-combox> -->
<!-- 区域筛选picker -->
<picker class="inline-combox margin-right-xs" :mode="'multiSelector'" @change="regionChange" :value="areaMultiIndex" :range-key="'name'" :range="areaList">
<input class="radius-input" :value="formData.area ? formData.area[0].name + '-' + formData.area[1].name + '-' + formData.area[2].name : ''"
placeholder="请选择区域"></input>
</picker>
<!-- 品类筛选picker -->
<picker class="inline-combox" :mode="'multiSelector'" @change="categoryChange" :value="categoryMultiIndex" :range-key="'name'" :range="categoryList">
<input class="line-input radius-input" :value="formData.category ? formData.category[0].name + '-' + formData.category[1].name + '-' + formData.category[2].name : ''"
placeholder="请选择品类"></input>
</picker>
</view>
<view class="flex justify-between align-center margin-top-xs">
<input class="line-input radius-input margin-right-sm" v-model="formData.orderKeywords"
placeholder="请输入订单关键字"></input>
<view class="text-xl text-bold">
<text class="cuIcon-search margin-right-sm"></text>
<text class="cuIcon-refresh"></text>
</view>
</view>
</view>
<!-- 状态分类tab -->
<view class="cu-list grid no-border col-5 padding-top-sm bg-white">
<view class="cu-item" :class="stateCur === 0 ? 'bg-main-color light' : ''" :data-id="0" @tap="statusSelect">
<view class="margin-bottom-xs">超时单</view>
<view>({{myOrders.summary.overtimeOrderNum}})</view>
</view>
<view class="cu-item" :class="stateCur === 1 ? 'bg-main-color light' : ''" :data-id="1" @tap="statusSelect">
<view class="margin-bottom-xs">今日单</view>
<view>({{myOrders.summary.todayOrderNum}})</view>
</view>
<view class="cu-item" :class="stateCur === 2 ? 'bg-main-color light' : ''" :data-id="2" @tap="statusSelect">
<view class="margin-bottom-xs">明日单</view>
<view>({{myOrders.summary.tomorrowOrderNum}})</view>
</view>
<view class="cu-item" :class="stateCur === 3 ? 'bg-main-color light' : ''" :data-id="3" @tap="statusSelect">
<view class="margin-bottom-xs">急报单</view>
<view>({{myOrders.summary.urgentMsgOrderNum}})</view>
</view>
<view class="cu-item" :class="stateCur === 4 ? 'bg-main-color light' : ''" :data-id="4" @tap="statusSelect">
<view class="margin-bottom-xs">新订单</view>
<view>({{myOrders.summary.newOrderNum}})</view>
</view>
</view>
<!-- 子状态分类tab -->
<scroll-view scroll-x class="bg-white nav text-center" :scroll-with-animation="true" :scroll-left="scrollLeft">
<view class="cu-item" :class="index==tabCur?'text-main-color cur':''" v-for="(item,index) in subStateList"
:key="index" @tap="tabSelect" :data-id="index">
{{item.name}}
</view>
</scroll-view>
</view>
<!-- tab content -->
<view class="padding bg-white margin-top-sm margin-lr-sm" v-for="(order, index) in orderList">
<view class="flex justify-between">
2022-06-02 17:39:45 +08:00
<view class="text-lg text-bold text-cut">{{order.orderGoods.goodsName}}</view>
2022-05-06 23:47:18 +08:00
<!-- 不同状态订单使用不同角标 -->
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 0" class="right-tag padding-lr-sm padding-tb-xs bg-cyan"></view>
<view v-else-if="order.orderStatus === 1" class="right-tag padding-lr-sm padding-tb-xs bg-main-color"></view>
<view v-else-if="order.orderStatus === 2" class="right-tag padding-lr-sm padding-tb-xs bg-yellow"></view>
<view v-else-if="order.orderStatus === 3 || order.orderStatus === 6" class="right-tag padding-lr-sm padding-tb-xs bg-purple"></view>
<view v-else-if="order.orderStatus === 4" class="right-tag padding-lr-sm padding-tb-xs bg-yellow"></view>
2022-05-06 23:47:18 +08:00
</view>
<view>
<view v-for="(tag, index1) in order.tags" v-if="tag.level === 'error'" class='cu-tag margin-right-xs radius line-red margin-top-xs'>{{tag.content}}</view>
<view v-else-if="tag.level === 'info'" class='cu-tag margin-right-xs radius line-main-color margin-top-xs'>{{tag.content}}</view>
</view>
<view class="margin-top-sm">
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-people"></text></text>
<text>姓名{{order.name}}</text>
</view>
<view class="margin-top-sm">
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-location"></text></text>
<text class="margin-right-xs">{{order.address}}</text>
<text class="text-lg" @tap="copyData(order.address)"><text class="cuIcon-copy"></text></text>
</view>
<view class="margin-top-sm" v-if="Boolean(order.doorTime)">
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-time"></text></text>
<text>上门时间{{order.doorTime}}</text>
</view>
<view class="margin-top-sm" v-else-if="Boolean(order.servTime)">
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-time"></text></text>
<text>服务时间{{order.servTime}}</text>
</view>
2022-06-02 17:39:45 +08:00
<view class="margin-top-sm flex justify-start align-center" v-if="order.orderStatus === 2">
2022-05-06 23:47:18 +08:00
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-repair"></text></text>
<text>距上门</text>
<uni-countdown :show-colon="false" :backgroundColor="'#eee'"
:day="$dateUtil.countDownDiff(order.deadlineDate).day"
:hour="$dateUtil.countDownDiff(order.deadlineDate).hour"
:minute="$dateUtil.countDownDiff(order.deadlineDate).min"
:second="$dateUtil.countDownDiff(order.deadlineDate).seconds">
</uni-countdown>
</view>
2022-06-02 17:39:45 +08:00
<view class="margin-top-sm flex justify-start align-center" v-if="order.subState === 4 && order.chargeReachDate">
2022-05-22 21:52:14 +08:00
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-time"></text></text>
<text>距到帐</text>
<uni-countdown :show-colon="false" :backgroundColor="'#eee'"
:day="$dateUtil.countDownDiff(order.chargeReachDate).day"
:hour="$dateUtil.countDownDiff(order.chargeReachDate).hour"
:minute="$dateUtil.countDownDiff(order.chargeReachDate).min"
:second="$dateUtil.countDownDiff(order.chargeReachDate).seconds">
</uni-countdown>
</view>
2022-05-06 23:47:18 +08:00
<!-- 不同状态订单支持不同操作按钮 -->
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 0">
2022-05-06 23:47:18 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-popup="dispatchOrder" @tap="togglePopup($event, index)">派单</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm">改价</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm">转发</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm">确认接单</button>
</view>
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 1">
2022-05-06 23:47:18 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-popup="dispatchOrder" @tap="togglePopup($event, index)">派单</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showTimeArrangeModal" @tap="showModal($event, index)">预约时间</button>
</view>
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 2">
2022-05-09 10:00:16 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @click="showServOrderDetail('waitToServ')">查看</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="makePhoneCall(order.phoneNum)">联系客户</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showEditTimeArrangeModal" @tap="showModal($event, index)">修改时间</button>
2022-05-06 23:47:18 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm">立即上门</button>
</view>
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 3">
2022-05-09 10:00:16 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @click="showServOrderDetail('waitServing')">查看</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showNewServPriceModal" @tap="showModal($event, index)">改价</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="makePhoneCall(order.phoneNum)">联系客户</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showEditTimeArrangeModal" @tap="showModal($event, index)">修改时间</button>
2022-05-09 14:28:35 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="finishOrder(order)">拍照回单</button>
2022-05-09 10:00:16 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showPayQrcodeModal" @tap="makePayQrcode($event, index)">生成付款码</button>
2022-05-06 23:47:18 +08:00
</view>
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 4">
2022-05-22 21:52:14 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="sendUrgentMsgModal" @tap="showModal($event, index)">师傅急报</button>
</view>
2022-06-02 17:39:45 +08:00
<view v-if="order.orderStatus === 'afterSaleService'">
2022-05-22 21:52:14 +08:00
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="makePhoneCall(order.phoneNum)">联系客户</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showEditTimeArrangeModal" @tap="showModal($event, index)">修改时间</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm">立即上门</button>
</view>
<view class="margin-top-sm solid-top padding-top-sm" v-if="order.afterSaleType === 'finished'">
<view class="flex justify-start align-end">
<text>退单申请</text>
<uni-countdown :show-colon="false" :backgroundColor="'#eee'"
:day="$dateUtil.countDownDiff(order.applyRefundLastTime).day"
:hour="$dateUtil.countDownDiff(order.applyRefundLastTime).hour"
:minute="$dateUtil.countDownDiff(order.applyRefundLastTime).min"
:second="$dateUtil.countDownDiff(order.applyRefundLastTime).seconds">
</uni-countdown>
</view>
<view class="margin-top-xs">
<text>退款金额</text><text class="text-price">{{order.refundAmount}}</text>
<text class="margin-left-sm">到帐金额</text><text class="text-price">{{order.refundReachAmount}}</text>
</view>
<view class="margin-top-xs">
<text>退款原因</text><text>{{order.refundReason}}</text>
</view>
<view class="flex justify-end margin-top-xs">
<button class="cu-btn sm bg-yellow margin-right-sm" @click="showAfterSalePic(index)" @tap="showModalByRef('showPicModal')">查看</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-if="order.refundStatus !== 'rejected'" @click="updateRefundStatus('rejected', index)">拒绝处理</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-else disabled type="">已拒绝</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-if="order.refundStatus !== 'recevied'" @click="updateRefundStatus('recevied', index)">同意退单</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-else disabled type="">已同意</button>
</view>
</view>
<view class="margin-top-sm solid-top padding-top-sm" v-else-if="order.afterSaleType === 'unfinished'">
<view class="flex justify-start align-end">
<text>待处理售后</text>
<uni-countdown :show-colon="false" :backgroundColor="'#eee'"
:day="$dateUtil.countDownDiff(order.waitAfterSaleLastTime).day"
:hour="$dateUtil.countDownDiff(order.waitAfterSaleLastTime).hour"
:minute="$dateUtil.countDownDiff(order.waitAfterSaleLastTime).min"
:second="$dateUtil.countDownDiff(order.waitAfterSaleLastTime).seconds">
</uni-countdown>
</view>
<view class="margin-top-xs">
<text>售后原因</text><text>{{order.afterSaleReason}}</text>
</view>
<view class="margin-top-xs">完成操作点击处理完成提交由客服回访</view>
<view class="flex justify-end align-end margin-top-xs">
<button class="cu-btn sm bg-yellow margin-right-sm" @click="showAfterSalePic(index)" @tap="showModalByRef('showPicModal')">查看</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-if="order.afterSaleDealStatus !== 'rejected'" @click="updateAfterSaleDealStatus('rejected', index)">拒绝处理</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-else disabled type="">已拒绝</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-if="order.afterSaleDealStatus !== 'recevied'" @click="updateAfterSaleDealStatus('recevied', index)">处理完成</button>
<button class="cu-btn sm bg-yellow margin-right-sm" v-else disabled type="">已同意</button>
</view>
</view>
2022-06-02 17:39:45 +08:00
<view class="margin-top-sm solid-top padding-top-sm" v-if="Boolean(order.remark)">
2022-05-06 23:47:18 +08:00
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-comment"></text></text>
2022-06-02 17:39:45 +08:00
<text>备注{{order.remark}}</text>
2022-05-06 23:47:18 +08:00
</view>
</view>
2022-06-02 17:39:45 +08:00
<load-status-bar ref="loadStatusBar"></load-status-bar>
2022-05-06 23:47:18 +08:00
<!-- 模态框 -->
<time-arrange :show="showTimeArrangeModal" :data="curOrder"></time-arrange>
<time-arrange-fail :show="showArrangeFailTimeModal" :data="curOrder"></time-arrange-fail>
2022-05-09 10:00:16 +08:00
<new-serv-price :show="showNewServPriceModal" :data="curOrder"></new-serv-price>
<pay-qrcode ref="payQrcode" :show="showPayQrcodeModal" :data="curOrder"></pay-qrcode>
<edit-time-arrange :show="showEditTimeArrangeModal" :data="curOrder"></edit-time-arrange>
2022-05-22 21:52:14 +08:00
<urgent-msg :show="sendUrgentMsgModal" @hideModal="hideModal"></urgent-msg>
<pic-modal ref="showPicModal" :imgList="picModalImgList"></pic-modal>
2022-05-06 23:47:18 +08:00
<!-- popup -->
<uni-popup ref="dispatchOrder" type="bottom" @change="changePopupState">
<view class="text-bold text-gray text-lg text-center left-top-sm-bar" data-popup="dispatchOrder" @click="togglePopup"><text
class="cuIcon-close"></text></view>
<view class="bg-white padding" style="padding-top: 74rpx;">
<dispatch-order :columnTitleArr="['购买机型', '待派单', '派单量']" :singleServ="curOrder && curOrder.product.pickedList.length === 1 ? true : false"
:product="curOrder.product" :pickedList="curOrder.product.pickedList" :members="myTeamMembers"></dispatch-order>
</view>
<!-- 底部占位 -->
<view class="cu-bar bg-white fixed-bottom-bar"></view>
</uni-popup>
</view>
</template>
<script>
import myUniCombox from '@/components/uni-combox/my-uni-combox.vue';
import timeArrange from '@/pages/order-manage/modal/time-arrange.vue';
import timeArrangeFail from '@/pages/order-manage/modal/time-arrange-fail.vue';
2022-05-09 10:00:16 +08:00
import editTimeArrange from '@/pages/order-manage/modal/edit-time-arrange.vue';
2022-05-06 23:47:18 +08:00
import dispatchOrder from '@/pages/order-manage/dispatch-order.vue';
2022-05-09 10:00:16 +08:00
import newServPrice from '@/pages/order-manage/modal/new-serv-price.vue';
import payQrcode from '@/pages/order-manage/modal/pay-qrcode.vue';
2022-05-22 21:52:14 +08:00
import urgentMsg from '@/pages/order-manage/modal/urgent-msg.vue';
import picModal from '@/components/modal/pic-modal.vue';
2022-06-02 17:39:45 +08:00
import loadStatusBar from '@/components/custom-bar/load-status-bar.vue';
2022-05-06 23:47:18 +08:00
export default {
components: {
myUniCombox,
timeArrange,
timeArrangeFail,
2022-05-09 10:00:16 +08:00
editTimeArrange,
dispatchOrder,
newServPrice,
2022-05-22 21:52:14 +08:00
payQrcode,
urgentMsg,
2022-06-02 17:39:45 +08:00
picModal,
loadStatusBar
2022-05-06 23:47:18 +08:00
},
data() {
return {
formData: {
category: null,
area: null,
orderKeywords: ''
},
areaList: [],
areaMultiIndex: [0, 0, 0],
categoryList: [],
categoryMultiIndex: [0, 0, 0],
// stateList: [{
// code: 1,
// name: '超时单'
// }, {
// code: 2,
// name: '今日单'
// }, {
// code: 3,
// name: '明日单'
// }, {
// code: 4,
// name: '急报单'
// }, {
// code: 5,
// name: '新订单'
// }],
subStateList: [{
code: 1,
name: '未约/未排'
}, {
code: 2,
name: '待上门'
}, {
code: 3,
name: '服务中'
}, {
2022-06-02 17:39:45 +08:00
code: 6,
2022-05-06 23:47:18 +08:00
name: '确认中'
}, {
2022-06-02 17:39:45 +08:00
code: '-',
2022-05-06 23:47:18 +08:00
name: '售后中'
}, {
2022-06-02 17:39:45 +08:00
code: 4,
2022-05-06 23:47:18 +08:00
name: '已完成'
}],
myOrders: {},
orderList: [],
2022-06-02 17:39:45 +08:00
pageParams: [],
2022-05-06 23:47:18 +08:00
curOrder: {},
myTeamMembers: [],
scrollLeft: 0,
stickyTop: this.CustomBar,
tabCur: 0,
stateCur: 0,
showTimeArrangeModal: false,
showArrangeFailTimeModal: false,
2022-05-09 10:00:16 +08:00
showNewServPriceModal: false,
showPayQrcodeModal: false,
showEditTimeArrangeModal: false,
2022-05-22 21:52:14 +08:00
sendUrgentMsgModal: false,
ifShowPageMeta: false,
picModalImgList: []
2022-05-06 23:47:18 +08:00
}
},
onLoad() {
this.loadData();
this.bindEvent();
},
onUnload() {
this.offBindEvent();
},
methods: {
async loadData() {
let myTeamInfo = await this.$api.data('myTeamInfo');
this.myTeamMembers = myTeamInfo.members;
this.myOrders = await this.$api.data('myOrders');
2022-06-02 17:39:45 +08:00
// this.orderList = this.myOrders.orderList;
2022-05-06 23:47:18 +08:00
this.areaList = await this.$api.data('areaList');
2022-06-02 17:39:45 +08:00
this.categoryList = await this.$api.data('categoryList');
for(let i = 0; i < this.subStateList.length; i++) {
this.pageParams.push({
pageNum: 0
});
}
// 初始化订单列表
this.loadMasterOrderPage({
orderStatus: this.subStateList[0].code
});
},
reloadMasterOrderPage(params = {}) {
this.pageParams = [];
for(let i = 0; i < this.subStateList.length; i++) {
this.pageParams.push({
pageNum: 0
});
}
this.orderList = [];
this.$refs.loadStatusBar.showLoadMore();
this.loadMasterOrderPage(params);
},
async loadMasterOrderPage(params = {}) {
params.pageNum = this.pageParams[this.tabCur].pageNum;
params.pageSize = this.$globalData.initPageSize;
this.$refs.loadStatusBar.showLoading();
try {
let res = await this.$request.qryMasterOrderPage(params);
let rowsLength = res.rows.length;
if (rowsLength > 0) {
this.orderList = this.orderList.concat(res.rows);
this.pageParams[this.tabCur].pageNum++;
if (rowsLength === this.pageSize) {
this.$refs.loadStatusBar.showLoadMore();
}
}
this.$refs.loadStatusBar.showLoadOver();
} catch (e) {
console.error(e)
this.$refs.loadStatusBar.showLoadErr();
}
2022-05-06 23:47:18 +08:00
},
bindEvent() {
uni.$on(this.$globalFun.SHOW_ARRANGE_FAIL_TIME, this.showArrangeFailTime);
uni.$on(this.$globalFun.HIDE_MODAL, this.hideModal);
uni.$on(this.$globalFun.SUBMIT_FAIL_REASON, this.submitFailReason);
},
offBindEvent() {
uni.$off(this.$globalFun.SHOW_ARRANGE_FAIL_TIME);
uni.$off(this.$globalFun.HIDE_MODAL);
uni.$off(this.$globalFun.SUBMIT_FAIL_REASON);
},
regionChange(e) {
this.areaMultiIndex = e.detail.value;
let chosenArea = [];
for(let i = 0; i < this.areaList.length; i++) {
chosenArea.push(this.areaList[i][this.areaMultiIndex[i]]);
}
this.formData.area = chosenArea;
},
categoryChange(e) {
this.categoryMultiIndex = e.detail.value;
let chosenCategory = [];
for(let i = 0; i < this.categoryList.length; i++) {
chosenCategory.push(this.categoryList[i][this.categoryMultiIndex[i]]);
}
this.formData.category = chosenCategory;
},
input(e) {
console.log(e)
console.log(this.formData)
},
tabSelect(e) {
this.tabCur = e.currentTarget.dataset.id;
this.scrollLeft = (e.currentTarget.dataset.id - 1) * 60
2022-06-02 17:39:45 +08:00
// this.reloadMasterOrderPage(this.stateCur, this.subStateList[this.tabCur].code);
this.reloadMasterOrderPage({
orderStatus: this.subStateList[this.tabCur].code
});
2022-05-06 23:47:18 +08:00
},
statusSelect(e) {
this.stateCur = e.currentTarget.dataset.id;
this.loadData(this.stateCur, this.subStateList[this.tabCur].code);
},
setCurOrder(orderIndex) {
this.curOrder = this.orderList[orderIndex];
},
showModal(e, orderIndex) {
if (orderIndex != null && orderIndex != undefined) {
this.setCurOrder(orderIndex);
}
this[e.currentTarget.dataset.modal] = true;
},
2022-05-22 21:52:14 +08:00
showModalByRef(refName) {
this.$refs[refName].showModal();
},
2022-05-06 23:47:18 +08:00
hideModal(e) {
this.curOrder = null;
this[e.currentTarget.dataset.modal] = false;
},
copyData(data) {
uni.setClipboardData({
data: data
});
},
showArrangeFailTime(e) {
this.showTimeArrangeModal = false;
this.showArrangeFailTimeModal = true;
},
submitFailReason(e, reasonObj) {
// TODO: 提交内容后隐藏modalcurOrder信息置null
this.hideModal(e);
},
togglePopup(e, orderIndex) {
if (this.ifShowPageMeta) {
this.$refs[e.currentTarget.dataset.popup].close();
let timeout = setTimeout(() => {
this.curOrder = null;
}, 100);
} else {
if (orderIndex != null && orderIndex != undefined) {
this.setCurOrder(orderIndex);
}
this.$refs[e.currentTarget.dataset.popup].open();
}
},
changePopupState(e) {
this.ifShowPageMeta = e.show;
},
makePhoneCall(phoneNum) {
uni.makePhoneCall({
phoneNumber: phoneNum
})
2022-05-09 10:00:16 +08:00
},
makePayQrcode(e, orderIndex) {
this.$refs.payQrcode.showQrcode('http://10.45.81.125:8081/portal/' + Math.random());
this.showModal(e, orderIndex);
},
showServOrderDetail(process) {
uni.navigateTo({
url: '/pages/order-manage/serv-detail?process=' + process
})
2022-05-09 14:28:35 +08:00
},
finishOrder(order) {
uni.navigateTo({
url: '/pages/order-manage/finish-order?order=' + encodeURIComponent(JSON.stringify(order))
})
2022-05-22 21:52:14 +08:00
},
updateRefundStatus(status, index) {
2022-06-02 17:39:45 +08:00
this.orderList[index].refundStatus = status;
2022-05-22 21:52:14 +08:00
},
updateAfterSaleDealStatus(status, index) {
2022-06-02 17:39:45 +08:00
this.orderList[index].afterSaleDealStatus = status;
2022-05-22 21:52:14 +08:00
},
async showAfterSalePic() {
// TODO:查询该售后单中的拒绝原因中上传的截图
this.picModalImgList = await this.$api.data('picImgList');
console.log(this.picModalImgList)
2022-05-09 10:00:16 +08:00
}
2022-05-06 23:47:18 +08:00
}
}
</script>
<style scoped>
.inline-combox {
display: inline-block;
width: calc((90vw - 80rpx)/2);
}
.cu-list.grid.no-border {
padding: unset;
}
.cu-list.grid.no-border>.cu-item {
padding-top: 20rpx;
padding-bottom: 20rpx;
}
.right-tag {
position: relative;
right: -30rpx;
border-radius: 40rpx 0 0 40rpx;
}
.cu-tag+.cu-tag {
margin-left: unset;
}
.left-top-sm-bar {
position: absolute;
right: 25rpx;
top: 25rpx;
z-index: 99;
}
</style>