需求大厅展示字段补充

This commit is contained in:
donqi 2022-09-22 01:13:05 +08:00
parent af069b0d4b
commit 27a49359ec
5 changed files with 163 additions and 18 deletions

View File

@ -13,8 +13,8 @@ export default {
}) })
let userInfo = _this.getCurUserInfo(); let userInfo = _this.getCurUserInfo();
// request 触发前拼接 url // request 触发前拼接 url
// args.url = 'https://www.opsoul.com' + args.url; args.url = 'https://www.opsoul.com' + args.url;
args.url = 'http://127.0.0.1:80' + args.url; // args.url = 'http://127.0.0.1:80' + args.url;
// args.url = 'http://192.168.2.42:80' + args.url; // args.url = 'http://192.168.2.42:80' + args.url;
if (!args.data) { if (!args.data) {

View File

@ -79,6 +79,11 @@
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-timefill"></text></text> <text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-timefill"></text></text>
<text>{{task.expectTimeStart + '~' + task.expectTimeEnd}}</text> <text>{{task.expectTimeStart + '~' + task.expectTimeEnd}}</text>
</view> </view>
<view class="margin-top-sm">
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-phone"></text></text>
<text class="margin-right-xs">{{task.customerName}}</text>
<text>{{task.customerPhone}}</text>
</view>
<view class="padding-top-sm flex justify-end"> <view class="padding-top-sm flex justify-end">
<button class="cu-btn bg-main-color margin-right-xs shadow-blur" data-modal="showForwardModal" <button class="cu-btn bg-main-color margin-right-xs shadow-blur" data-modal="showForwardModal"
@click="showModal($event, task)">转发</button> @click="showModal($event, task)">转发</button>

View File

@ -3,7 +3,7 @@
<view class="cu-modal" :class="show?'show':''"> <view class="cu-modal" :class="show?'show':''">
<view class="cu-dialog"> <view class="cu-dialog">
<view class="cu-bar bg-white justify-end solid-bottom"> <view class="cu-bar bg-white justify-end solid-bottom">
<view class="content">报价/客户支</view> <view class="content">到付款单/二维码收</view>
<view class="action" data-modal="showNewServPriceModal" @click="hideModal"> <view class="action" data-modal="showNewServPriceModal" @click="hideModal">
<text class="cuIcon-close text-red"></text> <text class="cuIcon-close text-red"></text>
</view> </view>

View File

@ -0,0 +1,94 @@
<template>
<!-- 报价/客户支付模态框 -->
<view class="cu-modal" :class="show?'show':''">
<view class="cu-dialog">
<view class="cu-bar bg-white justify-end solid-bottom">
<view class="content">上门报价与加单</view>
<view class="action" data-modal="showNewServPriceModal" @click="hideModal">
<text class="cuIcon-close text-red"></text>
</view>
</view>
<view class="padding padding-lr-xl bg-white text-left">
<view class="text-lg">上门后新增的报价</view>
<radio-group class="padding-tb-sm">
<view class="padding-tb-sm" @click="chooseCompanySize(0)">
<radio style="transform:scale(0.7)" class="main-color"
:checked="payAction === 0"></radio>
<text class="margin-left">无报价直接拍照完单</text>
</view>
<view class="padding-tb-sm flex justify-start align-start" @click="chooseCompanySize(0)">
<radio style="transform:scale(0.7)" class="main-color"
:checked="payAction === 1"></radio>
<view class="margin-left">
<view>上门有加单请客户支付</view>
<view class="flex justify-start margin-top-sm align-center">
<text>加单总额</text>
<input class="radius-input inline-input" v-model="newPrice"></input>
<text class="margin-left-xs"></text>
<view class="cu-btn line-main-color sm margin-left">修改报价</view>
</view>
</view>
</view>
<view class="padding-tb-sm flex justify-start align-start" @click="chooseCompanySize(0)">
<radio style="transform:scale(0.7)" class="main-color"
:checked="payAction === 2"></radio>
<view class="margin-left">
<view>上门报价类给下单方报价</view>
<view class="flex justify-start margin-top-sm align-center">
<text>报价总额</text>
<input class="radius-input inline-input" v-model="newPrice"></input>
<text class="margin-left-xs"></text>
<view class="cu-btn line-main-color sm margin-left">修改报价</view>
</view>
</view>
</view>
</radio-group>
</view>
<view class="cu-bar bg-white solid-top">
<view class="action margin-0 flex-sub text-black" data-modal="showNewServPriceOnlineModal"
@click="newServPrice">退出</view>
<view class="action margin-0 flex-sub text-main-color solid-left" data-modal="showNewServPriceOnlineModal"
@click="letCustomerPay">去完单</view>
</view>
</view>
</view>
</template>
<script>
export default {
nama: 'new-serv-price',
props: {
show: {
type: Boolean,
default: false
},
data: {
type: Object,
default: {}
}
},
data() {
return {
payAction: 0,
newPrice: ''
}
},
methods: {
hideModal(e) {
uni.$emit(this.$globalFun.HIDE_MODAL, e);
},
newServPrice(e) {
uni.$emit(this.$globalFun.NEW_SERV_PRICE, e)
},
letCustomerPay(e) {
uni.$emit(this.$globalFun.LET_CUSTOMER_PAY, e)
}
}
}
</script>
<style scoped>
.inline-input {
flex-basis: 25%;
}
</style>

View File

@ -40,6 +40,10 @@
<view class="cu-item" :class="index==stateCur?'bg-main-color light cur':''" v-for="(item,index) in stateList" :key="index" :data-id="index" @tap="statusSelect"> <view class="cu-item" :class="index==stateCur?'bg-main-color light cur':''" v-for="(item,index) in stateList" :key="index" :data-id="index" @tap="statusSelect">
<view class="margin-bottom-xs">{{item.name}}</view> <view class="margin-bottom-xs">{{item.name}}</view>
<view v-if="item.code === 0">({{orderStatistics.newOrderNum}})</view> <view v-if="item.code === 0">({{orderStatistics.newOrderNum}})</view>
<!-- <view v-else-if="item.code === 100">{{orderStatistics.}}</view> -->
<view v-else-if="item.code === 101">({{orderStatistics.tomorrowOrderNum}})</view>
<view v-else-if="item.code === 102">({{orderStatistics.todayOrderNum}})</view>
<view v-else-if="item.code === 103">({{orderStatistics.overTimeOrderNum}})</view>
<view v-else>(0)</view> <view v-else>(0)</view>
</view> </view>
<!-- <view class="cu-item" :class="stateCur === 0 ? 'bg-main-color light' : ''" :data-id="0" @tap="statusSelect"> <!-- <view class="cu-item" :class="stateCur === 0 ? 'bg-main-color light' : ''" :data-id="0" @tap="statusSelect">
@ -67,7 +71,13 @@
<scroll-view scroll-x class="bg-white nav text-center" :scroll-with-animation="true" :scroll-left="scrollLeft"> <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" <view class="cu-item" :class="index==tabCur?'text-main-color cur':''" v-for="(item,index) in subStateList"
:key="index" @tap="tabSelect" :data-id="index"> :key="index" @tap="tabSelect" :data-id="index">
{{item.name}} <text class="margin-right-xs">{{item.name}}</text>
<text v-if="item.code === 1">({{orderStatistics.planOrderNum}})</text>
<text v-else-if="item.code === 2">({{orderStatistics.waitServOrderNum}})</text>
<text v-else-if="item.code === 3">({{orderStatistics.servingOrderNum}})</text>
<text v-else-if="item.code === 4">({{orderStatistics.waitSureOrderNum}})</text>
<text v-else-if="item.code === 5"></text>
<text v-else>(0)</text>
</view> </view>
</scroll-view> </scroll-view>
</view> </view>
@ -83,11 +93,21 @@
<view v-else-if="order.orderStatus === 4" class="right-tag padding-lr-sm padding-tb-xs bg-orange"></view> <view v-else-if="order.orderStatus === 4" class="right-tag padding-lr-sm padding-tb-xs bg-orange"></view>
<view v-else-if="order.orderStatus === 5" class="right-tag padding-lr-sm padding-tb-xs bg-green"></view> <view v-else-if="order.orderStatus === 5" class="right-tag padding-lr-sm padding-tb-xs bg-green"></view>
</view> </view>
<view v-if="order.isOverTime"> <view>
<view v-if="order.orderStatus === 1" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未预约</view> <view v-if="order.isOverTime" class="float-left">
<view v-if="order.orderStatus === 0" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未接单</view>
<view v-else-if="order.orderStatus === 1" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未预约</view>
<view v-else-if="order.orderStatus === 2" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未上门</view> <view v-else-if="order.orderStatus === 2" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未上门</view>
<view v-else-if="order.orderStatus === 3" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未完单</view> <view v-else-if="order.orderStatus === 3" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未完单</view>
</view> </view>
<view class="float-left" v-if="order.orderTimeoutRecords" v-for="(timeoutRecord, recordIndex) in order.orderTimeoutRecords">
<view v-if="timeoutRecord.orderStatus === 0" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未接单</view>
<view v-else-if="timeoutRecord.orderStatus === 1" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未预约</view>
<view v-else-if="timeoutRecord.orderStatus === 2" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未上门</view>
<view v-else-if="timeoutRecord.orderStatus === 3" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未完单</view>
</view>
</view>
<view class="float-clear"></view>
<view class="margin-top-sm"> <view class="margin-top-sm">
<text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-people"></text></text> <text class="text-main-color text-lg margin-right-xs"><text class="cuIcon-people"></text></text>
<text>姓名{{order.customerName}}</text> <text>姓名{{order.customerName}}</text>
@ -154,7 +174,8 @@
</view> </view>
<view v-if="order.orderStatus === 3"> <view v-if="order.orderStatus === 3">
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @click="showServOrderDetail(order)">查看</button> <button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @click="showServOrderDetail(order)">查看</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showNewServPriceModal" @tap="showModal($event, order)" v-show="order.orderDetailId != null">改价</button> <button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showNewServPriceOfflineModal" @tap="showModal($event, order)" v-show="order.orderDetailId != null && order.payStatus === 0">报价/完单</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showNewServPriceOnlineModal" @tap="showModal($event, order)" v-show="order.orderDetailId != null && order.payStatus === 1">报价/完单</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="makePhoneCall(order.customerPhone)">联系客户</button> <button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="makePhoneCall(order.customerPhone)">联系客户</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showEditTimeArrangeModal" @tap="showModal($event, order)" v-show="order.orderDetailId != null">重新排期</button> <button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" data-modal="showEditTimeArrangeModal" @tap="showModal($event, order)" v-show="order.orderDetailId != null">重新排期</button>
<button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="finishOrder(order)" v-if="order.payStatus === 1" v-show="order.orderDetailId != null">发起完单</button> <button class="cu-btn bg-main-color margin-right-xs shadow-blur margin-top-sm" @tap="finishOrder(order)" v-if="order.payStatus === 1" v-show="order.orderDetailId != null">发起完单</button>
@ -225,7 +246,8 @@
<!-- 模态框 --> <!-- 模态框 -->
<time-arrange :show="showTimeArrangeModal" :data="curOrder" :curDate="curDate" @showArrangeFailTime="showArrangeFailTime" @editServTime="editServTime"></time-arrange> <time-arrange :show="showTimeArrangeModal" :data="curOrder" :curDate="curDate" @showArrangeFailTime="showArrangeFailTime" @editServTime="editServTime"></time-arrange>
<time-arrange-fail :show="showArrangeFailTimeModal" :data="curOrder"></time-arrange-fail> <time-arrange-fail :show="showArrangeFailTimeModal" :data="curOrder"></time-arrange-fail>
<new-serv-price :show="showNewServPriceModal" :data="curOrder"></new-serv-price> <new-serv-price-online :show="showNewServPriceOnlineModal" :data="curOrder"></new-serv-price-online>
<new-serv-price-offline :show="showNewServPriceOfflineModal" :data="curOrder"></new-serv-price-offline>
<pay-qrcode ref="payQrcode" :show="showPayQrcodeModal" :data="curOrder" @finishQrPay="finishQrPay"></pay-qrcode> <pay-qrcode ref="payQrcode" :show="showPayQrcodeModal" :data="curOrder" @finishQrPay="finishQrPay"></pay-qrcode>
<edit-time-arrange :show="showEditTimeArrangeModal" :data="curOrder" :curDate="curDate" @showArrangeFailTime="showArrangeFailTime" @editServTime="editServTime" :ifRollback2WS="true"></edit-time-arrange> <edit-time-arrange :show="showEditTimeArrangeModal" :data="curOrder" :curDate="curDate" @showArrangeFailTime="showArrangeFailTime" @editServTime="editServTime" :ifRollback2WS="true"></edit-time-arrange>
<urgent-msg :show="sendUrgentMsgModal" @hideModal="hideModal"></urgent-msg> <urgent-msg :show="sendUrgentMsgModal" @hideModal="hideModal"></urgent-msg>
@ -253,7 +275,8 @@
import timeArrangeFail from '@/pages/order-manage/modal/time-arrange-fail.vue'; import timeArrangeFail from '@/pages/order-manage/modal/time-arrange-fail.vue';
import editTimeArrange from '@/pages/order-manage/modal/edit-time-arrange.vue'; import editTimeArrange from '@/pages/order-manage/modal/edit-time-arrange.vue';
import dispatchOrder from '@/pages/order-manage/dispatch-order.vue'; import dispatchOrder from '@/pages/order-manage/dispatch-order.vue';
import newServPrice from '@/pages/order-manage/modal/new-serv-price.vue'; import newServPriceOnline from '@/pages/order-manage/modal/new-serv-price-online.vue';
import newServPriceOffline from '@/pages/order-manage/modal/new-serv-price-online.vue';
import payQrcode from '@/pages/order-manage/modal/pay-qrcode.vue'; import payQrcode from '@/pages/order-manage/modal/pay-qrcode.vue';
import urgentMsg from '@/pages/order-manage/modal/urgent-msg.vue'; import urgentMsg from '@/pages/order-manage/modal/urgent-msg.vue';
import picModal from '@/components/modal/pic-modal.vue'; import picModal from '@/components/modal/pic-modal.vue';
@ -266,7 +289,8 @@
timeArrangeFail, timeArrangeFail,
editTimeArrange, editTimeArrange,
dispatchOrder, dispatchOrder,
newServPrice, newServPriceOnline,
newServPriceOffline,
payQrcode, payQrcode,
urgentMsg, urgentMsg,
picModal, picModal,
@ -284,16 +308,16 @@
categoryList: [], categoryList: [],
categoryMultiIndex: [0, 0, 0], categoryMultiIndex: [0, 0, 0],
stateList: [{ stateList: [{
code: -1, code: 103,
name: '超时单' name: '超时单'
}, { }, {
code: -1, code: 102,
name: '今日单' name: '今日单'
}, { }, {
code: -1, code: 101,
name: '明日单' name: '明日单'
}, { }, {
code: -1, code: 100,
name: '急报单' name: '急报单'
}, { }, {
code: 0, code: 0,
@ -333,7 +357,8 @@
stateCur: null, stateCur: null,
showTimeArrangeModal: false, showTimeArrangeModal: false,
showArrangeFailTimeModal: false, showArrangeFailTimeModal: false,
showNewServPriceModal: false, showNewServPriceOnlineModal: false,
showNewServPriceOfflineModal: false,
showPayQrcodeModal: false, showPayQrcodeModal: false,
showEditTimeArrangeModal: false, showEditTimeArrangeModal: false,
sendUrgentMsgModal: false, sendUrgentMsgModal: false,
@ -405,10 +430,26 @@
} else if (this.stateCur != null) { } else if (this.stateCur != null) {
params.orderStatus = this.stateList[this.stateCur].code; params.orderStatus = this.stateList[this.stateCur].code;
} }
let date = new Date();
if (this.stateCur === 1) {
//
params.pageSize = 999;
params.pageNum = 1;
params.orderStatus = 2;
params.expectTimeStart = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + " 00:00:00",
params.expectTimeEnd = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + date.getDate() + " 23:59:59"
} else if (this.stateCur === 2) {
//
params.pageSize = 999;
params.pageNum = 1;
params.orderStatus = 2;
params.expectTimeStart = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + (date.getDate() + 1) + " 00:00:00",
params.expectTimeEnd = date.getFullYear() + '-' + (date.getMonth() + 1) + '-' + (date.getDate() + 1) + " 23:59:59"
}
try { try {
let res = null; let res = null;
// //
if (this.tabCur === 4) { if (this.tabCur === 4 || this.stateCur === 1 || this.stateCur === 2) {
// //
this.$refs.loadStatusBar.showLoading(); this.$refs.loadStatusBar.showLoading();
res = await this.$request.qryDetailOrderPage(params); res = await this.$request.qryDetailOrderPage(params);
@ -426,6 +467,11 @@
this.$refs.loadStatusBar.showLoadOver(); this.$refs.loadStatusBar.showLoadOver();
} else { } else {
// //
if (this.stateCur === 0) {
//
params.orderStatus = null;
params.isOverTime = true;
}
res = await this.$request.qryMixOrderList(params); res = await this.$request.qryMixOrderList(params);
if (res && res.data) { if (res && res.data) {
this.orderList = res.data; this.orderList = res.data;