售后流程中的文案修改及文案展示与否的判断;主单区分展示服务金额和订单金额

This commit is contained in:
donqi 2022-10-30 15:33:49 +08:00
parent 957381e361
commit dbb4dd13a3
8 changed files with 113 additions and 64 deletions

View File

@ -11,5 +11,30 @@ export default {
'16:00-18:00',
'18:00-19:00'
],
timeList: [
'08:00-08:30',
'08:30-09:00',
'09:00-09:30',
'09:30-10:00',
'10:00-10:30',
'10:30-11:00',
'11:00-11:30',
'11:30-12:00',
'12:00-12:30',
'12:30-13:00',
'13:00-13:30',
'13:30-14:00',
'14:30-15:00',
'15:00-15:30',
'15:30-16:00',
'16:00-16:30',
'16:30-17:00',
'17:00-17:30',
'17:30-18:00',
'18:00-18:30',
'18:30-19:00',
'19:00-19:30',
'19:30-20:00'
],
timeRangeSplit: '-'
}

View File

@ -1,7 +1,7 @@
import globalData from '@/common/js/globalData.js';
export default {
address: 'https://www.opsoul.com',
address: 'https://www.opsoul.com:8881',
// 异步接口拦截
addInterceptor() {
let _this = this;
@ -13,8 +13,8 @@ export default {
})
let userInfo = _this.getCurUserInfo();
// request 触发前拼接 url
args.url = 'https://www.opsoul.com:8881' + args.url;
// args.url = 'http://127.0.0.1:80' + args.url;
// args.url = 'https://www.opsoul.com:8881' + args.url;
args.url = 'http://127.0.0.1:80' + args.url;
// args.url = 'http://192.168.2.50:80' + args.url;
if (!args.data) {

View File

@ -12,7 +12,9 @@
<text>退款金额</text>
<text class="text-price text-red">{{data.afterServiceRecordList[0].refund ? data.afterServiceRecordList[0].refund : data.payMoney}}</text>
</view>
<view v-if="data.afterServiceRecordList[0].refund && data.payMoney < data.afterServiceRecordList[0].refund" class="padding-top text-red">警报该单关联其它订单客户申请的退款金额有效具体操作请沟通派单处</view>
<view v-if="!data.isOnlyServ && data.afterServiceRecordList[0].refund && data.payMoney < data.afterServiceRecordList[0].refund" class="padding-top text-red">
警报该单关联其它订单客户申请的退款金额有效有疑问可先沟通派单公司详情处电话如确认同意最大退款额以本单接单额原路退回其余需退的或你仍有收益则由派单公司处理如更改退单额需先协商一致余额部分完单后计入你账户
</view>
<view class="text-lg padding-top flex justify-start align-center">
<text>更改退款金额</text>
<input class="radius-input inline-input" v-model="agreedRefund"></input>
@ -39,7 +41,7 @@
<view class="margin-top">
<textarea style="width: 100%; height: 200rpx;" class="solid radius text-left padding-sm"
v-model="remark" maxlength="-1"
placeholder="请输入具体原因或直接同意,更改到帐金额需与客户协商一致,否则可能被拒绝或引起客诉升级"></textarea>
placeholder="请输入同意原因或更改金额原因(更改退单金额需与客户协商一致,或请订单详情处“派单公司”介入,否则可能被拒绝或引起客诉升级)"></textarea>
</view>
</view>
</view>

View File

@ -30,7 +30,7 @@
<view>
<view class="margin-bottom-xs">选择时间</view>
<view class="flex justify-start align-center">
<picker class="relative-view" :class="disableTime ? 'readonlyPicker' : ''" mode="time" :value="''" :start="'08:00'" :end="'19:00'"
<picker class="relative-view" :class="disableTime ? 'readonlyPicker' : ''" mode="selector" :value="timeIndex" :range="timeList"
@change="timeChange" @click="showTime">
<input class="custom-input radius-input" v-model="time" disabled>
<view class="text-lg input-arrow"><text class="cuIcon-triangledownfill"></text></view>
@ -62,8 +62,8 @@
</radio-group>
</view>
<view class="margin-top">
<textarea class="solid padding-sm" maxlength="-1" @input="inputSpecificReason"
placeholder="具体情况(选填)" />
<textarea style="width: 100%; height: 300rpx;" class="solid padding-sm" maxlength="-1" @input="inputSpecificReason"
placeholder="具体情况(选填)"></textarea>
</view>
</view>
</view>
@ -100,10 +100,12 @@
},
data() {
return {
date: '',
time: '',
date: null,
time: null,
timeList: [],
timeIndex: 0,
timeRangeList: [],
timeRange: '',
timeRange: null,
timeRangeIndex: 0,
expectTimeStart: null,
expectTimeEnd: null,
@ -116,6 +118,7 @@
methods: {
async loadData() {
this.timeRangeList = this.$globalData.timeRangeList;
this.timeList = this.$globalData.timeList;
},
resetData() {
this.date = null;
@ -136,11 +139,8 @@
this.disableTime = true;
},
timeChange(e) {
let time = e.detail.value;
if (time === '00:00') {
time = '08:00';
}
this.time = time;
this.timeIndex = e.detail.value;
this.time = this.timeList[this.timeIndex];
this.timeRange = null;
this.changeExpectTime();
},
@ -151,12 +151,10 @@
this.changeExpectTime();
},
changeExpectTime() {
if (this.time) {
this.expectTimeStart = this.date + ' ' + this.time + ':00';
this.expectTimeEnd = null;
} else if (this.timeRange) {
let time = this.time != null ? this.time : this.timeRange;
if (time != null) {
let timeRangeSplit = this.$globalData.timeRangeSplit;
let timeArr = this.timeRange.split(timeRangeSplit);
let timeArr = time.split(timeRangeSplit);
this.expectTimeStart = this.date + ' ' + timeArr[0] + ':00';
this.expectTimeEnd = this.date + ' ' + timeArr[1] + ':00';
}

View File

@ -39,9 +39,9 @@
</label>
</radio-group>
</view>
<view class="margin-top uni-textarea">
<textarea class="solid padding-sm" maxlength="-1" @input="inputSpecificReason"
placeholder="具体情况(选填)" />
<view class="margin-top">
<textarea style="width: 100%; height: 300rpx;" class="solid padding-sm" maxlength="-1" @input="inputSpecificReason"
placeholder="具体情况(选填)"></textarea>
</view>
</view>
</view>

View File

@ -30,7 +30,7 @@
<view>
<view class="margin-bottom-xs">选择时间</view>
<view class="flex justify-start align-center">
<picker class="relative-view" :class="disableTime ? 'readonlyPicker' : ''" mode="time" :value="''" :start="'08:00'" :end="'19:00'"
<picker class="relative-view" :class="disableTime ? 'readonlyPicker' : ''" mode="selector" :value="timeIndex" :range="timeList"
@change="timeChange" @click="showTime">
<input class="custom-input radius-input" v-model="time" disabled>
<view class="text-lg input-arrow"><text class="cuIcon-triangledownfill"></text></view>
@ -80,6 +80,8 @@
return {
date: null,
time: null,
timeList: [],
timeIndex: 0,
timeRangeList: [],
timeRange: null,
timeRangeIndex: 0,
@ -94,6 +96,7 @@
methods: {
async loadData() {
this.timeRangeList = this.$globalData.timeRangeList;
this.timeList = this.$globalData.timeList;
},
resetData() {
this.date = null;
@ -114,11 +117,8 @@
this.disableTime = true;
},
timeChange(e) {
let time = e.detail.value;
if (time === '00:00') {
time = '08:00';
}
this.time = time;
this.timeIndex = e.detail.value;
this.time = this.timeList[this.timeIndex];
this.timeRange = null;
this.changeExpectTime();
},
@ -129,12 +129,10 @@
this.changeExpectTime();
},
changeExpectTime() {
if (this.time) {
this.expectTimeStart = this.date + ' ' + this.time + ':00';
this.expectTimeEnd = null;
} else if (this.timeRange) {
let time = this.time != null ? this.time : this.timeRange;
if (time != null) {
let timeRangeSplit = this.$globalData.timeRangeSplit;
let timeArr = this.timeRange.split(timeRangeSplit);
let timeArr = time.split(timeRangeSplit);
this.expectTimeStart = this.date + ' ' + timeArr[0] + ':00';
this.expectTimeEnd = this.date + ' ' + timeArr[1] + ':00';
}

View File

@ -321,11 +321,11 @@
<view v-else-if="afterServiceRecord.customerFinalCheck === 1">
<view v-if="afterServiceRecord.originalRefund > 0">
<view>
<text>本单退款系统已发起原路退回</text>
<text>本单退款系统已发起按客户支付的帐户原路退回</text>
<text class="text-red">{{afterServiceRecord.originalRefund}}</text>
<text>有其余部分的以双方沟通操作为准银行按工作日到帐节假日顺延到账</text>
<text>银行按工作日退款节假日顺延到帐遇客户问询请其耐心等待到账时会在客户端客户最终确认处有到账时间</text>
</view>
<view>支付时间{{afterServiceRecord.refundApplyTime}}</view>
<view>退款支付到账{{afterServiceRecord.refundApplyTime}}</view>
</view>
<view v-else-if="afterServiceRecord.originalRefund == 0 && order.payStatus == 0">
<text>本单未支付实际退回0.00</text>

View File

@ -54,7 +54,7 @@
</view>
<view class="margin-top-sm" v-if="servDetail.orderDetailId">
<text class="cuIcon-friendfamous text-main-color margin-right-xs"></text>
<text class="margin-right-sm">派单师傅{{servDetail.masterWorkerName}}</text>
<text class="margin-right-sm">派单公司{{servDetail.masterCompanyName}}</text>
<text class="margin-right-xs">{{servDetail.masterWorkerPhone}}</text>
<button class="cu-btn line-main-color sm" @click="makePhoneCall(servDetail.masterWorkerPhone)">拨打</button>
</view>
@ -71,18 +71,25 @@
<text class="cuIcon-time text-main-color margin-right-xs"></text>
<text>上门时间{{servDetail.workBeginTime}}</text>
</view>
<view class="margin-top-sm" v-if="servDetail.orderDetailId == null">
<text class="cuIcon-moneybag text-main-color margin-right-xs"></text>
<text>订单金额</text>
<text class="text-price">{{servDetail.totalMoney}}</text>
</view>
<view class="margin-top-sm">
<text class="cuIcon-moneybag text-main-color margin-right-xs"></text>
<text>任务金额</text>
<text class="text-price">{{servDetail.payMoney}}</text>
<text>服务金额</text>
<text class="text-price" v-if="servDetail.orderDetailId != null">{{servDetail.payMoney}}</text>
<text class="text-price" v-else-if="servDetail.orderDetailId == null && servDetail.payMoney == 0">0</text>
<text class="text-price" v-else>{{servDetail.finalRecvMoney}}</text>
</view>
<view class="margin-top-sm" v-if="servDetail.customerRemark">
<text class="cuIcon-message text-main-color margin-right-xs"></text>
<text>备注{{servDetail.customerRemark}}</text>
</view>
<!-- <view class="margin-top-xs text-sm text-gray"
v-for="(item, index) in servDetail.mainServOrder.gratuityRecord">
追加费用<text class="text-price">{{item.price}}</text>[{{item.type}}]
v-for="(item, index) in servDetail.orderTimeoutRecords">
超时扣款<text class="text-price">{{item.price}}</text>
</view> -->
</view>
<!-- 待服务列 -->
@ -116,17 +123,33 @@
<view v-if="servDetail.orderDetailId == null" class="bg-white margin-lr-sm padding-lr padding-bottom margin-top-sm" v-for="(item, index) in servDetail.orderStandardDetailList">
<view class="cu-bar solid-bottom">
<view class="action bar-first-action">
<text class="cuIcon-titles text-main-color"></text> 完成记录
<text class="cuIcon-titles text-main-color"></text> 服务记录
</view>
<view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus > 3">{{item.workFinishTime}}</view>
<view>
<view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus === 5">已完成</view>
<view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus === 4">待确认</view>
<view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus === 3">服务中</view>
<view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus === 2">待上门</view>
<view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus === 1">未约/未排</view>
</view>
<!-- <view class='cu-tag bg-purple radius light margin-right-sm' v-if="item.orderStatus > 3">{{item.workFinishTime}}</view> -->
</view>
<view class="margin-top-sm" v-for="(afterServiceRecord, afterServiceRecordIndex) in item.afterServiceRecordList">
<view v-if="afterServiceRecord.createBy && !afterServiceRecord.updateBy" class='cu-tag margin-right-xs radius line-red margin-top-xs'>售后发起中</view>
<view v-if="afterServiceRecord.workerFeedbackResult == 1 && afterServiceRecord.customerFinalCheck == null" class='cu-tag margin-right-xs radius line-main-color margin-top-xs'>售后已同意</view>
<view v-if="afterServiceRecord.workerFeedbackResult == 0 && afterServiceRecord.customerFinalCheck == null" class='cu-tag margin-right-xs radius line-red margin-top-xs'>售后已拒绝</view>
<view v-if="afterServiceRecord.customerFinalCheck == 0" class='cu-tag margin-right-xs radius line-red margin-top-xs'>售后纠纷中</view>
<view v-if="afterServiceRecord.customerFinalCheck == 1" class='cu-tag margin-right-xs radius line-main-color margin-top-xs'>售后已完成</view>
<view class="margin-top-sm">
<view class="float-left" v-for="(afterServiceRecord, afterServiceRecordIndex) in item.afterServiceRecordList">
<view v-if="afterServiceRecord.createBy && !afterServiceRecord.updateBy" class='cu-tag margin-right-xs radius line-red margin-top-xs'>售后发起中</view>
<view v-if="afterServiceRecord.workerFeedbackResult == 1 && afterServiceRecord.customerFinalCheck == null" class='cu-tag margin-right-xs radius line-main-color margin-top-xs'>售后已同意</view>
<view v-if="afterServiceRecord.workerFeedbackResult == 0 && afterServiceRecord.customerFinalCheck == null" class='cu-tag margin-right-xs radius line-red margin-top-xs'>售后已拒绝</view>
<view v-if="afterServiceRecord.customerFinalCheck == 0" class='cu-tag margin-right-xs radius line-red margin-top-xs'>售后纠纷中</view>
<view v-if="afterServiceRecord.customerFinalCheck == 1" class='cu-tag margin-right-xs radius line-main-color margin-top-xs'>售后已完成</view>
</view>
<view v-if="item.isOverTime" class="float-left">
<view v-if="item.orderStatus === 0" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未接单</view>
<view v-else-if="item.orderStatus === 1" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未预约</view>
<view v-else-if="item.orderStatus === 2" class='cu-tag margin-right-xs radius line-red margin-top-xs'>超时未上门</view>
<view v-else-if="item.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">师傅{{item.workerName}}</view>
<view class="margin-top-sm">
<text class="margin-right-xs">联系方式{{item.workerPhone}}</text>
@ -139,20 +162,20 @@
<view class="margin-top-sm">
<product-picked :pickedList="item.orderStandardList" :columnTitleArr="servedColumnHeaders" :valFieldArr="servedValFields"></product-picked>
</view>
<view v-if="item.financialChangeRecord" class="bg-white">
<view v-if="item.financialChangeRecord && item.financialChangeRecord.length > 0" class="bg-white">
<view class="cu-bar solid-bottom">
<view class="action bar-first-action">
<text class="cuIcon-title text-main-color"></text> 加价记录
</view>
</view>
<view class="padding-tb-sm">
<view class="padding-tb-sm" v-for="(changeRecord, changeRecordIndex) in item.financialChangeRecord">
<view>
<text>加价金额</text>
<text>{{item.financialChangeRecord.changeMoney}}</text>
<text>{{changeRecord.changeMoney}}</text>
</view>
<view>
<text>加价备注</text>
<text>{{item.financialChangeRecord.remark}}</text>
<text>{{changeRecord.remark}}</text>
</view>
</view>
</view>
@ -197,9 +220,6 @@
<text>退款金额</text>
<text>{{afterServiceRecord.refund}}</text>
</view>
<view>
<text class="text-red" v-if="item.payMoney < afterServiceRecord.refund">警告退单金额大于该师傅接单金额但客户发起的退款金额有效您需介入处理如让接单师傅系统上操作同意退款系统最大按该单派单额退回客户其余需人工处理如属于师傅责任引起的退单建议重做重做后让客户撤消退单</text>
</view>
<view>
<text>退款原因</text>
<text>{{afterServiceRecord.customerReason}}</text>
@ -211,6 +231,9 @@
:data-url="imgObj.imgUrl" mode="aspectFill"></image>
</view>
</view>
<view>
<text class="text-red" v-if="!item.isOnlyServ && item.payMoney < afterServiceRecord.refund">警报退单金额大于该师傅接单金额但客户发起的退款金额有效您需介入处理如让接单师傅系统上操作同意退款系统最大按该单派单额退回客户其余需人工处理如属于师傅责任引起的退单建议重做重做后让客户撤消退单</text>
</view>
</view>
<view v-else-if="afterServiceRecord.operType === 2">
<view class="text-gray text-sm margin-bottom-xs">售后已提交至商家其最大时限24小时内需完成操作</view>
@ -292,9 +315,12 @@
<view class="text-red" v-if="afterServiceRecord.customerFinalCheck === 0">订单交由平台协商处理</view>
<view v-else-if="afterServiceRecord.customerFinalCheck === 1">
<view v-if="afterServiceRecord.originalRefund > 0">
<text>本单退款系统已发起原路退回</text>
<text class="text-red">{{afterServiceRecord.originalRefund}}</text>
<text>有其余部分的以双方沟通操作为准银行按工作日到帐节假日顺延到账</text>
<view>
<text>本单退款系统已发起按客户支付的帐户原路退回</text>
<text class="text-red">{{afterServiceRecord.originalRefund}}</text>
<text>银行按工作日退款节假日顺延到帐遇客户问询请其耐心等待到账时会在客户端客户最终确认处有到账时间</text>
</view>
<view>退款支付到账{{afterServiceRecord.refundApplyTime}}</view>
</view>
<view v-else-if="afterServiceRecord.originalRefund == 0 && servDetail.payStatus == 0">
<text>本单未支付实际退回0.00</text>