2022-09-26 23:52:16 +08:00
< template >
2022-06-06 22:09:43 +08:00
< page -meta :page-style ="'overflow:'+(ifShowPageMeta?'hidden':'visible')" > < / p a g e - m e t a >
2026-03-13 14:26:44 +08:00
< view style = "overflow: hidden;" >
2022-04-23 23:13:29 +08:00
<!-- 顶部操作条 -- >
< cu -custom :bgColor ="'bg-main-color'" :isBack ="true" >
< block slot = "backText" > 返回 < / block >
2026-03-13 14:26:44 +08:00
< block slot = "content" > { { order . orderType === 1 ? '商品订单详情' : '服务订单详情' } } < / block >
2022-04-23 23:13:29 +08:00
< / c u - c u s t o m >
<!-- 任务进度跟踪 -- >
2022-06-18 02:03:35 +08:00
< view v-if ="servDetail.orderStatus === 3" class="bg-white margin-lr-sm padding-lr padding-bottom margin-top-sm" >
2022-04-23 23:13:29 +08:00
< uni -collapse v-model ="value" >
< uni -collapse -item :open ="true" >
< template v -slot : title >
< view class = "cu-bar" >
< view class = "action bar-first-action" >
< text class = "cuIcon-titles text-main-color" > < / text > 任务进度跟踪
< / view >
< / view >
< / template >
< view class = "cu-timeline" >
2026-03-13 14:26:44 +08:00
< view class = "cu-item text-main-color" v-for ="(item, index) in servDetail.taskTraceLine" :key ="index" >
2022-04-23 23:13:29 +08:00
< view class = "content shadow-blur" : class = "index === 0 ? 'bg-main-color light' : 'bg-gray'" >
< text class = "margin-right" > { { item . time } } < / text >
< text > { { item . action } } < / text >
< / view >
< / view >
< / view >
< / u n i - c o l l a p s e - i t e m >
< / u n i - c o l l a p s e >
< / view >
<!-- 服务单概况 -- >
< view class = "bg-white margin-lr-sm margin-top-sm padding" >
2022-09-26 23:52:16 +08:00
< view class = "flex align-center" >
< text class = "text-xl margin-right" > { { servDetail . goodsName } } < / text >
2026-03-13 14:26:44 +08:00
< view class = 'cu-tag bg-purple radius light margin-right-sm' v-if ="servDetail.orderStatus === 3" >
{ { order . orderType === 1 ? '待收货' : '服务中' } }
2022-09-26 23:52:16 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view class = 'cu-tag bg-purple radius light margin-right-sm' v-if ="servDetail.orderStatus === 2" >
{ { order . orderType === 1 ? '待发货' : '待服务' } }
2022-09-26 23:52:16 +08:00
< / view >
< view class = 'cu-tag bg-grey radius light margin-right-sm' v-if ="servDetail.orderStatus === 6" > 已取消 < / view >
2022-04-23 23:13:29 +08:00
< / view >
2022-06-18 02:03:35 +08:00
<!-- < view class = "margin-top-sm" >
2022-04-23 23:13:29 +08:00
< view v -for = " ( item , index ) in servDetail.mainServOrder.orderTag " class = 'cu-tag radius margin-right-sm' >
{ { item } } < / view >
2022-06-18 02:03:35 +08:00
< / view > -- >
2022-09-26 23:52:16 +08:00
< view class = "margin-top-sm" >
< text class = "cuIcon-location text-main-color margin-right-xs" > < / text >
2026-03-13 14:26:44 +08:00
< text > 地址 : { { servDetail . provinceName + servDetail . cityName + servDetail . countryName + servDetail . streetName + servDetail . address } } < / text >
2023-03-18 23:58:52 +08:00
< text class = "margin-left-sm text-xl text-main-color" @click ="showAddress2Choose" > < text class = "cuIcon-edit" > < / text > < / text >
2022-09-26 23:52:16 +08:00
< / view >
< view class = "margin-top-sm" >
< text class = "cuIcon-people text-main-color margin-right-xs" > < / text >
2026-03-13 14:26:44 +08:00
< text class = "margin-right-sm" > 客户 : { { servDetail . customerName } } < / text >
< text > { { servDetail . customerPhone } } < / text >
< text class = "margin-left-sm text-xl text-main-color" @click ="makePhoneCall(servDetail.customerPhone)" > < text class = "cuIcon-phone" > < / text > < / text >
< / 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" > < text class = "labels" > 派单公司 : < / text > { { servDetail . masterCompanyName } } < / text >
< text class = "margin-right-xs" > { { servDetail . masterWorkerPhone } } < / text >
< button class = "cu-btn line-main-color sm" @click ="makePhoneCall(servDetail.masterWorkerPhone)" > 拨打 < / button >
2022-09-26 23:52:16 +08:00
< / view >
< view class = "margin-top-sm" >
< text class = "cuIcon-time text-main-color margin-right-xs" > < / text >
2022-10-27 00:45:08 +08:00
< text v-if ="servDetail.expectTimeEndFront" > 预约时间 : {{ servDetail.expectTimeStartFront + ' ~ ' + servDetail.expectTimeEndFront }} < / text >
< text v-else > 预约时间 : {{ servDetail.expectTimeStartFront }} < / text >
2022-04-23 23:13:29 +08:00
< / view >
2022-06-18 02:03:35 +08:00
<!-- < view class = "margin-top-sm" >
2022-04-23 23:13:29 +08:00
< text class = "cuIcon-time text-main-color margin-right-xs" > < / text >
< text > 排单时间 : { { servDetail . mainServOrder . boodTime } } < / text >
2022-06-18 02:03:35 +08:00
< / view > -- >
2022-09-26 23:52:16 +08:00
<!-- < view class = "margin-top-sm" v-if ="servDetail.orderStatus === 3" >
< text class = "cuIcon-time text-main-color margin-right-xs" > < / text >
< text > 上门时间 : { { servDetail . workBeginTime } } < / text >
< / view > -- >
< view class = "margin-top-sm" >
< text class = "cuIcon-moneybag text-main-color margin-right-xs" > < / text >
2022-10-06 18:30:50 +08:00
< text > 订单金额 : < / text >
2022-09-26 23:52:16 +08:00
< text class = "text-price" > { { servDetail . payMoney } } < / 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 >
2026-03-13 14:26:44 +08:00
< / view >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="servDetail.orderImages" >
< view class = "bg-img" v-for ="(imgUrl, index) in servDetail.orderImages.split(',')" :key ="index" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" >
< / image >
< / view >
2022-04-23 23:13:29 +08:00
< / view >
2022-06-18 02:03:35 +08:00
<!-- < view class = "margin-top-xs text-sm text-gray"
2022-04-23 23:13:29 +08:00
v - for = "(item, index) in servDetail.mainServOrder.gratuityRecord" >
追加费用 : < text class = "text-price" > { { item . price } } < / text > [ { { item . type } } ]
2022-06-18 02:03:35 +08:00
< / view > -- >
2022-04-23 23:13:29 +08:00
< / view >
<!-- 待服务列 -- >
2022-09-26 23:52:16 +08:00
< view class = "bg-white margin-lr-sm padding-lr padding-bottom margin-top-sm" >
< view class = "cu-bar solid-bottom" >
< view class = "action bar-first-action" >
< text class = "cuIcon-titles text-main-color" > < / text > 商品信息
< / view >
2022-04-23 23:13:29 +08:00
< / view >
2022-09-26 23:52:16 +08:00
< view class = "margin-top-sm" >
< simple -product -picked :product ="servDetail" :pickedList ="servDetail.standardList"
: columnTitleArr = "servingColumnHeaders" : valFieldArr = "servingValFields" > < / s i m p l e - p r o d u c t - p i c k e d >
< / view >
2026-03-13 14:26:44 +08:00
< / view >
< view class = "bg-white margin-lr-sm padding-lr margin-top-sm padding" v-if ="servDetail.serviceShop" >
< template v-if ="servDetail.serviceCancelled != 1" >
< view class = "text-black text-bold flex justify-between" >
< text > 安装 / 服务 / 施工门店 < / text >
<!-- < text @click ="goChooseShop" > 更多 > < / text > -- >
< / view >
< view class = "flex-sub flex margin-top-sm" @click ="openShopLocation(servDetail.serviceShop)" >
< view style = "width: 150rpx;height: 150rpx;margin-right:10px;" >
< image style = "width: 100%;height: 100%;" :src ="servDetail.serviceShop.imageUrl" mode = "aspectFill" > < / image >
< / view >
< view class = "flex-sub" >
< view class = "text-bold" style = "text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 1;" >
现已选中 : { { servDetail . serviceShop . shopName } }
< / view >
< view class = "padding-tb-xs" style = "position: relative;" >
< view class = "margin-lr-sm" style = "display: inline-block;" v-if ="servDetail.serviceShop.distance" >
< view class = "cu-tag bg-red" style = "padding: 0 2px;height: auto;" > 距离您 < / view >
< text class = "text-gray" style = "vertical-align: middle;" > { { servDetail . serviceShop . distance } } < / text >
< / view >
< image src = "/static/navigation.png" style = "width: 50rpx;height: 50rpx;display: inline-block;position: absolute;top: 5px;right: -10px;" > < / image >
< / view >
< view > { { servDetail . serviceShop . provinceName + servDetail . serviceShop . cityName + servDetail . serviceShop . countryName + servDetail . serviceShop . streetName + servDetail . serviceShop . address } } < / view >
< view class = "flex justify-between align-center margin-bottom-xs padding-top" >
< view >
< text class = "text-bold text-lg margin-lr-xs" > 店长 : { { servDetail . serviceShop . phone } } < / text >
< / view >
< button class = "cu-btn line-main-color" @click.stop ="makePhoneCall(servDetail.serviceShop.phone)" > 拨打 < / button >
< / view >
< / view >
< / view >
< / template >
< / view >
< view class = "bg-white margin-lr-sm padding-lr margin-top-sm padding" v -else -if = " servDetail.shop " >
< view class = "text-black text-bold flex justify-between" >
< text > 安装 / 服务 / 施工门店 < / text >
<!-- < text @click ="goChooseShop" > 更多 > < / text > -- >
< / view >
< view class = "flex-sub flex margin-top-sm" @click ="openShopLocation(servDetail.shop)" >
< view style = "width: 150rpx;height: 150rpx;margin-right:10px;" >
< image style = "width: 100%;height: 100%;" :src ="servDetail.shop.imageUrl" mode = "aspectFill" > < / image >
< / view >
< view class = "flex-sub" >
< view class = "text-bold" style = "text-overflow: ellipsis;overflow: hidden;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 1;" >
现已选中 : { { servDetail . shop . shopName } }
< / view >
< view class = "padding-tb-xs" style = "position: relative;" >
< view class = "margin-lr-sm" style = "display: inline-block;" v-if ="servDetail.shop.distance" >
< view class = "cu-tag bg-red" style = "padding: 0 2px;height: auto;" > 距离您 < / view >
< text class = "text-gray" style = "vertical-align: middle;" > { { servDetail . shop . distance } } < / text >
< / view >
< image src = "/static/navigation.png" style = "width: 50rpx;height: 50rpx;display: inline-block;position: absolute;top: 5px;right: -10px;" > < / image >
< / view >
< view > { { servDetail . shop . provinceName + servDetail . shop . cityName + servDetail . shop . countryName + servDetail . shop . streetName + servDetail . shop . address } } < / view >
< view class = "flex justify-between align-center margin-bottom-xs padding-top" >
< view >
< text class = "text-bold text-lg margin-lr-xs" > 店长 : { { servDetail . shop . phone } } < / text >
< / view >
< button class = "cu-btn line-main-color" @click.stop ="makePhoneCall(servDetail.shop.phone)" > 拨打 < / button >
< / view >
< / view >
< / view >
< / view >
2022-09-26 23:52:16 +08:00
<!-- 子单完成记录 -- >
< view class = "bg-white margin-lr-sm padding-lr padding-bottom margin-top-sm"
2026-03-13 14:26:44 +08:00
v - for = "(item, index) in servDetail.orderStandardDetailList" : key = "index" >
2022-09-26 23:52:16 +08:00
< view class = "cu-bar solid-bottom" >
< view class = "action bar-first-action" >
2026-03-13 14:26:44 +08:00
< text class = "cuIcon-titles text-main-color" > < / text > { { order . orderType === 1 ? '发货记录' : '服务记录' } }
2022-10-17 01:15:23 +08:00
< / view >
< view class = 'cu-tag bg-gray radius light' v-if ="item.orderStatus == 6" > 已取消 < / view >
2022-09-26 23:52:16 +08:00
< view class = 'cu-tag bg-purple radius light margin-right-sm' > 编码 : { { item . orderDetailCode } } < / view >
< / view >
< view class = "margin-top-sm" >
2026-03-13 14:26:44 +08:00
< view > { { order . orderType == 1 ? '商家' : '师傅' } } : { { item . workerName } } < / view >
2023-03-18 23:58:52 +08:00
< view class = "margin-top-sm" > 联系方式 : { { item . workerPhone } } < text class = "margin-left-sm text-xl text-main-color" @click ="makePhoneCall(item.workerPhone)" > < text class = "cuIcon-phone" > < / text > < / text > < / view >
2022-10-30 15:36:30 +08:00
< view class = "margin-top-sm" v-if ="item.expectTimeEndFront" > 预约时间 : {{ item.expectTimeStartFront + ' ~ ' + item.expectTimeEndFront }} < / view >
2026-03-13 14:26:44 +08:00
< view class = "margin-top-sm" v-else > 预约时间 : {{ item.expectTimeStartFront }} < / view >
< template v-if ="order.orderType === 0" >
< view class = "margin-top-sm" v-if ="servDetail.orderStatus >= 3" > 上门时间 : {{ item.workBeginTime }} < / view >
< view class = "margin-top-sm" v-if ="servDetail.orderStatus >= 4" > 完成时间 : {{ item.workFinishTime }} < / view >
< / template >
< template v-else >
< view class = "margin-top-sm" v-if ="servDetail.orderStatus >= 3" > 发货时间 : {{ item.workBeginTime }} < / view >
< / template >
2022-09-26 23:52:16 +08:00
< simple -product -picked :pickedList ="item.orderStandardList" :columnTitleArr ="servedColumnHeaders"
: valFieldArr = "servedValFields" > < / s i m p l e - p r o d u c t - p i c k e d >
2022-10-06 17:50:56 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view v-if ="item.financialChangeRecord && item.financialChangeRecord.length > 0" class="bg-white" v-for="addRecord in item.financialChangeRecord" :key="addRecord.id" >
2022-10-06 17:50:56 +08:00
< view class = "cu-bar solid-bottom" >
< view class = "action bar-first-action" >
< text class = "cuIcon-title text-main-color" > < / text > 加价记录
< / view >
< / view >
2026-03-13 14:26:44 +08:00
< view class = "padding-tb-sm add-price" >
2022-10-06 17:50:56 +08:00
< view >
< text > 加价金额 : < / text >
2026-03-13 14:26:44 +08:00
< text > { { addRecord . changeMoney + ( addRecord . attachmentMoney || 0 ) } } < / text >
2022-10-06 17:50:56 +08:00
< / view >
2026-03-13 14:26:44 +08:00
<!-- < view v-if ="addRecord.reason && addRecord.reason.indexOf('含') > -1" >
< text > { { addRecord . reason . split ( '含' ) [ 1 ] } } : < / text >
< text > { { addRecord . changeMoney } } < / text >
< / view > -- >
2022-10-06 17:50:56 +08:00
< view >
< text > 加价备注 : < / text >
2026-03-13 14:26:44 +08:00
< text > { { addRecord . remark || '' } } < / text >
2022-10-06 17:50:56 +08:00
< / view >
2026-03-13 14:26:44 +08:00
<!-- < view v-if ="addRecord.urls" >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" >
< view class = "bg-img" v-for ="imgUrl in addRecord.urls.split(',')" :key ="imgUrl" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" >
< / image >
< / view >
< / view >
< / view > -- >
< view class = "text-main-color" @click ="changeOrderPrice(item.orderDetailId)" v-if ="addRecord.payStatus === 0" > 清空加价 < / view >
2022-10-06 17:50:56 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< / view >
< view class = "bg-white margin-top-sm" v-if ="item.deliveryType" >
< view v-if ="item.deliveryType" >
发货方式 :
< text v-if ="item.deliveryType == 1" > 发快递 / 物流 < / text >
< text v-if ="item.deliveryType == 2" > 送货上门 < / text >
< text v-if ="item.deliveryType == 3" > 客户自提 < / text >
< / view >
< view class = "margin-top-xs" v-if ="item.deliveryImages" >
< view class = "grid col-3 grid-square flex-sub" >
< view class = "bg-img" v-for ="imgUrl in item.deliveryImages.split(',')" :key ="imgUrl" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" >
< / image >
< / view >
< / view >
< / view >
< view class = "margin-top-xs" v-if ="item.deliveryRemark" > < text > 发货备注 : { { item . deliveryRemark } } < / text > < / view >
< view class = "margin-top-xs" v-if ="item.trackingNumber" >
< text > 快递单号 : { { item . trackingNumber } } < / text >
< text class = "text-main-color margin-left-sm" @click ="getDeliveryFlow(item.trackingNumber)" > 查询 < / text >
< / view >
< / view >
<!-- 交货记录 -- >
< view class = "bg-white margin-top-sm" v-if ="item.handoverRemark || item.handoverImages" >
< view > 交货记录 < / view >
< view class = "margin-top-xs" v-if ="item.handoverImages" >
< view class = "grid col-3 grid-square flex-sub" >
< view class = "bg-img" v-for ="imgUrl in item.handoverImages.split(',')" :key ="imgUrl" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" >
< / image >
< / view >
< / view >
< / view >
< view class = "margin-top-xs" v-if ="item.deliveryRemark" > < text > 交货备注 : { { item . handoverRemark } } < / text > < / view >
< / view >
2022-09-26 23:52:16 +08:00
< view v-if ="servDetail.orderStatus > 3 && item.finishImgList && item.finishImgList.length" 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 = "grid col-3 grid-square flex-sub margin-top-sm" >
< view class = "bg-img" v-for ="(imgUrl, index) in item.finishImgList" :key ="index" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" >
< / image >
< / view >
< / view >
< view >
< text > 备注 : { { item . remark } } < / text >
< / view >
< / view >
< view v-if ="item.afterServiceRecordList && item.afterServiceRecordList.length" class="bg-white" >
< view class = "cu-bar" >
< view class = "action bar-first-action" >
< text class = "cuIcon-title text-main-color" > < / text >
{ { item . afterServiceRecordList [ 0 ] . operType === 1 ? '退款记录' : '售后记录' } }
< / view >
< / view >
2026-03-13 14:26:44 +08:00
< view v-for ="(afterServiceRecord, afterServiceRecordIndex) in item.afterServiceRecordList" :key ="afterServiceRecordIndex" >
2022-10-06 17:50:56 +08:00
< view v-if ="afterServiceRecord.createBy == 1" class="padding-tb-sm solid-top" >
2022-10-06 23:42:02 +08:00
< view class = 'cu-tag bg-main-color radius light' > 售后发起中 < / view >
2022-10-06 03:06:21 +08:00
< view v-if ="afterServiceRecord.operType === 1" >
2026-03-13 14:26:44 +08:00
< view class = "text-gray text-sm margin-bottom-xs" v-if ="order.orderType === 1" > 等待商家操作 , 24小时未操作将自动同意 ! < / view >
< view class = "text-gray text-sm margin-bottom-xs" v-else > 待师傅操作反馈 , 24小时内不操作自动同意 ! < / view >
2022-09-26 23:52:16 +08:00
< view class = "flex justify-start align-end" >
< text > 退款申请 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< view >
< text > 退款金额 : < / text >
< text > { { afterServiceRecord . refund } } < / text >
2023-05-07 23:06:56 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view v-if ="order.orderType === 1" >
< text > 售后类型 : < / text >
< text v-if ="afterServiceRecord.afterServiceType === 1" > 未收到货 , 我要退单退款 ! < / text >
< text v -else -if = " afterServiceRecord.afterServiceType = = = 2 " > 未收到货 ( 发货在途 ) , 我要退款 ! < / text >
< text v -else -if = " afterServiceRecord.afterServiceType = = = 3 " > 已收到货 , 我要退款退货 ! < / text >
< / view >
2023-05-07 23:06:56 +08:00
< view >
< text > 退款原因 : < / text >
2026-03-13 14:26:44 +08:00
< template v-if ="order.orderType === 1" >
< text v-if ="afterServiceRecord.customerReasonType === 1" > 不想要了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 2 " > 买错型号尺寸了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 3 " > 材质与商品描述不符 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 4 " > 大小尺寸与商品描述不符 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 5 " > 颜色 、 款式 、 型号与描述不符 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 6 " > 出现质量问题 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 7 " > 收到商品少件 ( 少配件 ) < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 8 " > 商家发错货 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 9 " > 商品破损或污渍 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 10 " > 未按承诺时间发货 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 11 " > 未见快递 / 物流有信息 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 12 " > 其它原因 < / text >
< / template >
< template v-else >
< text v-if ="afterServiceRecord.customerReasonType === 1" > 上门 / 服务不守时 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 2 " > 态度不友好 , 无法继续 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 3 " > 服务效果差 , 未达到合格 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 4 " > 技能水平问题 , 未妥善完成 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 5 " > 要求加费用 , 费用不合理 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 6 " > 订单拖太久了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 7 " > 超了些服务内容 , 师傅不接受 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 8 " > 客户 / 我时间不方便了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 9 " > 客户 / 我已让别的师傅服务了 < / text >
< / template >
2022-09-26 23:52:16 +08:00
< / view >
< view >
2023-05-07 23:06:56 +08:00
< text > 具体原因 : < / text >
< text v-if ="afterServiceRecord.customerReason" > {{ afterServiceRecord.customerReason }} < / text >
2022-09-26 23:52:16 +08:00
< / view >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" >
< view class = "bg-img" v -for = " ( imgObj , imgIndex ) in afterServiceRecord.imgsList "
: key = "imgIndex" v - if = "imgObj.imgUploadBy === 1" >
< image :src ="imgObj.imgUrl" @ tap = "viewImage($event, [imgObj.imgUrl])"
: data - url = "imgObj.imgUrl" mode = "aspectFill" > < / image >
< / view >
< / view >
< / view >
2022-10-06 03:06:21 +08:00
< view v -else -if = " afterServiceRecord.operType = = = 2 " >
< view class = "text-gray text-sm margin-bottom-xs" > 售后已提交至商家 , 其最大时限24小时内需完成操作 ! < / view >
2022-09-26 23:52:16 +08:00
< view class = "flex justify-start align-end" >
< text > 待处理售后 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.createTime, 24)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
2026-03-13 14:26:44 +08:00
< view v-if ="order.orderType === 1" >
< text > 售后类型 : < / text >
< text v-if ="afterServiceRecord.afterServiceType === 1" > 未收到货 , 我要退单退款 ! < / text >
< text v -else -if = " afterServiceRecord.afterServiceType = = = 2 " > 未收到货 ( 发货在途 ) , 我要退款 ! < / text >
< text v -else -if = " afterServiceRecord.afterServiceType = = = 3 " > 已收到货 , 我要退款退货 ! < / text >
< / view >
< view >
< text > 退款原因 : < / text >
< template v-if ="order.orderType === 1" >
< text v-if ="afterServiceRecord.customerReasonType === 1" > 不想要了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 2 " > 买错型号尺寸了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 3 " > 材质与商品描述不符 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 4 " > 大小尺寸与商品描述不符 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 5 " > 颜色 、 款式 、 型号与描述不符 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 6 " > 出现质量问题 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 7 " > 收到商品少件 ( 少配件 ) < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 8 " > 商家发错货 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 9 " > 商品破损或污渍 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 10 " > 未按承诺时间发货 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 11 " > 未见快递 / 物流有信息 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 12 " > 其它原因 < / text >
< / template >
< template v-else >
< text v-if ="afterServiceRecord.customerReasonType === 1" > 上门 / 服务不守时 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 2 " > 态度不友好 , 无法继续 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 3 " > 服务效果差 , 未达到合格 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 4 " > 技能水平问题 , 未妥善完成 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 5 " > 要求加费用 , 费用不合理 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 6 " > 订单拖太久了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 7 " > 超了些服务内容 , 师傅不接受 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 8 " > 客户 / 我时间不方便了 < / text >
< text v -else -if = " afterServiceRecord.customerReasonType = = = 9 " > 客户 / 我已让别的师傅服务了 < / text >
< / template >
2023-05-07 23:06:56 +08:00
< / view >
< view >
< text > 具体原因 : < / text >
< text v-if ="afterServiceRecord.customerReason" > {{ afterServiceRecord.customerReason }} < / text >
2022-09-26 23:52:16 +08:00
< / view >
< view >
< text > 完成操作 : 点击 “ 处理完成 ” 提交由客服回访 ! < / text >
< / view >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" >
< view class = "bg-img" v -for = " ( imgObj , imgIndex ) in afterServiceRecord.imgsList "
: key = "imgIndex" v - if = "imgObj.imgUploadBy === 1" >
< image :src ="imgObj.imgUrl" @ tap = "viewImage($event, [imgObj.imgUrl])"
: data - url = "imgObj.imgUrl" mode = "aspectFill" > < / image >
< / view >
< / view >
2022-10-06 17:50:56 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view class = "flex justify-end align-end margin-tb-sm" v-if ="item.afterPlatformServiceStatus === 0 || item.afterPlatformServiceStatus == 1" >
2022-10-06 17:50:56 +08:00
< button class = "cu-btn sm bg-yellow margin-left" v -show = " afterServiceRecord.customerFinalCheck ! = = 1 "
2026-03-13 14:26:44 +08:00
@ click = "cancelAfterService(afterServiceRecord)" > 撤销 < / button >
2022-09-26 23:52:16 +08:00
< / view >
< / view >
2026-03-13 14:26:44 +08:00
< view v-if ="afterServiceRecord.updateBy != 1 && afterServiceRecord.workerFeedbackResult !== null" class="padding-tb-sm solid-top" >
< view class = 'cu-tag bg-main-color radius light' > { { order . orderType == 1 ? '商家' : '师傅' } } 反馈 < / view >
2022-09-26 23:52:16 +08:00
< view v-if ="afterServiceRecord.operType === 1" >
< view class = "margin-top-xs" >
2026-03-13 14:26:44 +08:00
< text > { { order . orderType == 1 ? '商家' : '师傅' } } 反馈结果 : < / text >
2023-04-19 23:40:44 +08:00
< text v-if ="afterServiceRecord.workerFeedbackResult === 0" > 拒绝 < / text >
< text v -else -if = " afterServiceRecord.workerFeedbackResult = = = 1 " > 同意 < / text >
2026-03-13 14:26:44 +08:00
< text v -else -if = " afterServiceRecord.workerFeedbackResult = = = 2 | | afterServiceRecord.workerFeedbackResult = = = 3 " > { { order . orderType == 1 ? '重发/补发商品' : '上门重做/补做' } } < / text >
< / view >
< view v-if ="(afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3) && afterServiceRecord.workerResendPlan" >
< text v-if ="afterServiceRecord.workerResendPlan == 1" > 重发 / 补发 , 您无需退货 < / text >
< text v-if ="afterServiceRecord.workerResendPlan == 2" > 重发 / 补发前 , 您需先退货 < / text >
< text v-if ="afterServiceRecord.workerResendPlan == 3" > 请您退回商品 , 给你换货 < / text >
< text v-if ="afterServiceRecord.workerResendPlan == 4" > 请退回商品 , 为您售后换货 < / text >
2022-09-26 23:52:16 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view v-if ="afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3" > {{ order.orderType = = 1 ? ' 客户同意则本次退款金额为0元 ' : ' 同意重做 / 补做 , 退款金额0 ' }} < / view >
<!-- < view v-if ="afterServiceRecord.workerFeedbackResult === 1" >
2022-09-26 23:52:16 +08:00
< text > 同意退款金额 : < / text >
2022-10-06 23:42:02 +08:00
< text > { { afterServiceRecord . agreedRefund ? afterServiceRecord . agreedRefund : afterServiceRecord . refund } } < / text >
2026-03-13 14:26:44 +08:00
< / view > -- >
< template v-if ="afterServiceRecord.workerFeedbackResult === 1" >
< view >
< text > 同意退款金额 : < / text >
< text > { { afterServiceRecord . agreedRefund ? afterServiceRecord . agreedRefund : afterServiceRecord . refund } } < / text >
< / view >
< view v-if ="afterServiceRecord.workerReceiveStatus" >
< text > 收货状态 : < / text >
< text v-if ="afterServiceRecord.workerReceiveStatus == 1" > 未发货 < / text >
< text v -else -if = " afterServiceRecord.workerReceiveStatus = = 2 " > 已发货在途 < / text >
< text v -else -if = " afterServiceRecord.workerReceiveStatus = = 3 " > 已收货 < / text >
< text v -else -if = " afterServiceRecord.workerReceiveStatus = = 4 " > 售后保障期 < / text >
< / view >
< view v-if ="afterServiceRecord.workerAgreeType" >
< text > 同意选项 : < / text >
< text v-if ="afterServiceRecord.workerAgreeType == 1" > 同意即时退单退款 < / text >
< text v -else -if = " afterServiceRecord.workerAgreeType = = 2 " > 同意货物拦截后退单退款 < / text >
< text v -else -if = " afterServiceRecord.workerAgreeType = = 3 " > 同意快递返回货物后退单退款 < / text >
< text v -else -if = " afterServiceRecord.workerAgreeType = = 4 " > 同意您退回货物后退单退款 < / text >
< / view >
< / template >
< view v-if ="afterServiceRecord.workerFeedbackResult !== 2 && afterServiceRecord.workerFeedbackResult !== 3" >
< text > { { order . orderType == 1 ? '商家' : '师傅' } } 反馈 : < / text >
2022-09-26 23:52:16 +08:00
< text v-if ="afterServiceRecord.workerFeedbackReasonType === 1" > 客户原因 < / text >
< text v -else -if = " afterServiceRecord.workerFeedbackReasonType = = = 2 " > 师傅原因 < / text >
< text v-else > 其他 < / text >
2026-03-13 14:26:44 +08:00
< text v-if ="afterServiceRecord.workerFeedbackReason" > {{ " , " + afterServiceRecord.workerFeedbackReason }} < / text >
2022-09-26 23:52:16 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="afterServiceRecord.workerFeedbackImages" >
< view class = "bg-img" v-for ="(imgUrl, imgIndex) in afterServiceRecord.workerFeedbackImages.split(',')" :key ="imgIndex" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" > < / image >
< / view >
2022-09-26 23:52:16 +08:00
< / view >
< / view >
< view v -else -if = " afterServiceRecord.operType = = = 2 " >
< view class = "margin-top-xs" >
2026-03-13 14:26:44 +08:00
< text > { { order . orderType == 1 ? '商家' : '师傅' } } 反馈结果 : < / text >
2023-04-19 23:40:44 +08:00
< text v-if ="afterServiceRecord.workerFeedbackResult === 0" > 拒绝 < / text >
< text v -else -if = " afterServiceRecord.workerFeedbackResult = = = 1 " > 同意 < / text >
2026-03-13 14:26:44 +08:00
< text v -else -if = " afterServiceRecord.workerFeedbackResult = = = 2 | | afterServiceRecord.workerFeedbackResult = = = 3 " > { { order . orderType == 1 ? '重发/补发商品' : '上门重做/补做' } } < / text >
< / view >
< view v-if ="(afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3) && afterServiceRecord.workerResendPlan" >
< text v-if ="afterServiceRecord.workerResendPlan == 1" > 重发 / 补发 , 您无需退货 < / text >
< text v-if ="afterServiceRecord.workerResendPlan == 2" > 重发 / 补发前 , 您需先退货 < / text >
< text v-if ="afterServiceRecord.workerResendPlan == 3" > 请您退回商品 , 给你换货 < / text >
< text v-if ="afterServiceRecord.workerResendPlan == 4" > 请退回商品 , 为您售后换货 < / text >
< / view >
< view style = "padding-left: 196upx;" v-if ="afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3" > {{ order.orderType = = 1 ? ' 客户同意则本次退款金额为0元 ' : ' 同意重做 / 补做 , 退款金额0 ' }} < / view >
< view v-if ="afterServiceRecord.workerFeedbackResult !== 2 && afterServiceRecord.workerFeedbackResult !== 3" >
< text > { { order . orderType == 1 ? '商家' : '师傅' } } 反馈 : < / text >
2022-09-26 23:52:16 +08:00
< text v-if ="afterServiceRecord.workerFeedbackReasonType === 1" > 客户原因 < / text >
< text v -else -if = " afterServiceRecord.workerFeedbackReasonType = = = 2 " > 师傅原因 < / text >
< text v-else > 其他 < / text >
< text
v - if = "afterServiceRecord.workerFeedbackReason" > { { ", " + afterServiceRecord . workerFeedbackReason } } < / text >
< / view >
2026-03-13 14:26:44 +08:00
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="afterServiceRecord.workerFeedbackImages" >
< view class = "bg-img" v-for ="(imgUrl, imgIndex) in afterServiceRecord.workerFeedbackImages.split(',')" :key ="imgIndex" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" > < / image >
< / view >
2022-09-26 23:52:16 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< / view >
< view class = "text-right margin-top-sm margin-bottom-sm" >
< view class = 'cu-tag bg-yellow radius light' v-if ="afterServiceRecord.customerAgreeRedo === 1" >
< text v-if ="(afterServiceRecord.workerFeedbackResult === 1 && (afterServiceRecord.workerAgreeType == 2 || afterServiceRecord.workerAgreeType == 3 || afterServiceRecord.workerAgreeType == 4)) || ((afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3) && (afterServiceRecord.workerResendPlan === 2 || afterServiceRecord.workerResendPlan === 3 || afterServiceRecord.workerResendPlan === 4))" > 等待商家收货 / 验货 < / text >
< text v-else > 已同意方案 < / text >
< / view >
< template v-if ="afterServiceRecord.returnStatus > 3 && order.orderType == 1" >
< view class = 'cu-tag bg-yellow radius light' v-if ="afterServiceRecord.returnStatus == 3" > 等待商家收货 < / view >
< view class = 'cu-tag bg-yellow radius light' v-if ="afterServiceRecord.returnStatus == 4" > 商家已收货 < / view >
< / template >
< / view >
< template v-if ="afterServiceRecord.returnType" >
< view class = "margin-top-xs" >
< text > 客户已退货 : < / text >
< / view >
< view class = "flex justify-between align-center" >
< text > 发货方式 : { { afterServiceRecord . returnType == 1 ? '发快递/物流' : ( afterServiceRecord . returnType == 2 ? '送货上门' : '客户自提' ) } } < / text >
< text v-if ="afterServiceRecord.returnType == 1" @click="copyData(afterServiceRecord.returnTrackingNumber)">{{afterServiceRecord.returnTrackingNumber}}<text class="cuIcon-copy" > < / text > < / text >
< / view >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="afterServiceRecord.returnImages" >
< view class = "bg-img" v-for ="(imgUrl, imgIndex) in afterServiceRecord.returnImages.split(',')" :key ="imgIndex" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" > < / image >
< / view >
< / view >
< view class = "margin-bottom-xs" v-if ="afterServiceRecord.returnRemark" >
< text > 发货备注 : { { afterServiceRecord . returnRemark } } < / text >
< / view >
< / template >
< template v-if ="afterServiceRecord.workerFeedbackResult === 3" >
< template v-if ="order.orderType == 1" >
< template v-if ="afterServiceRecord.workerResendType" >
< view class = "margin-top-xs" >
< text > 商家重发 / 补发提交 : < / text >
< / view >
< view class = "flex justify-between align-center" >
< text > 发货方式 : { { afterServiceRecord . workerResendType == 1 ? '发快递/物流' : ( afterServiceRecord . workerResendType == 2 ? '送货上门' : '客户自提' ) } } < / text >
< text v-if ="afterServiceRecord.workerResendType == 1" @click="copyData(afterServiceRecord.workerResendTrackingNumber)">{{afterServiceRecord.workerResendTrackingNumber}}<text class="cuIcon-copy"></text><text class="text-main-color margin-left-sm" @click.stop="getDeliveryFlow(afterServiceRecord.workerResendTrackingNumber)" > 查询 < / text > < / text >
< / view >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="afterServiceRecord.workerResendImages" >
< view class = "bg-img" v-for ="(imgUrl, imgIndex) in afterServiceRecord.workerResendImages.split(',')" :key ="imgIndex" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" > < / image >
< / view >
< / view >
< view class = "margin-bottom-xs" v-if ="afterServiceRecord.workerResendRemark" >
< text > 发货备注 : { { afterServiceRecord . workerResendRemark } } < / text >
< / view >
< view style = "border-top: 1px solid gainsboro;padding-top: 10upx;" v-if ="afterServiceRecord.customerFinalCheck == null && afterServiceRecord.workerResendType" >
< view v-if ="afterServiceRecord.workerResendType == 1" >
< text class = "text-gray" style = "font-size: 20upx;" > 您需验收或审核 , 4 天内未操作将自动完成本次售后 ! < / text >
< view class = "flex align-center margin-top-sm" >
< text > 操作时限 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.workerResendTime, 4)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.workerResendTime, 4)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.workerResendTime, 4)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.workerResendTime, 4)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< / view >
< view v-else >
< text class = "text-gray" style = "font-size: 20upx;" > 您需验收或审核 , 24 小时未操作将自动完成本售后 ! < / text >
< view class = "flex align-center margin-top-sm" >
< text > 操作时限 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendTime, 24)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendTime, 24)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendTime, 24)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendTime, 24)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< / view >
< / view >
< / template >
< / template >
< template v-else >
< view class = "margin-top-xs" >
< text > 师傅重做 / 补做提交 : < / text >
< / view >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="afterServiceRecord.redoCompleteImages" >
< view class = "bg-img" v-for ="(imgUrl, imgIndex) in afterServiceRecord.redoCompleteImages.split(',')" :key ="imgIndex" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" > < / image >
< / view >
< / view >
< view class = "margin-bottom-xs" >
< text > { { afterServiceRecord . redoCompleteRemark } } < / text >
< / view >
< / template >
< / template >
<!-- < view v-if ="afterServiceRecord.workerFeedbackResult === 3 && order.orderType === 1" >
< text class = "text-gray" style = "font-size: 20upx;" > 您需验收或审核 , 4 天内未操作将自动完成本次售后 ! < / text >
< view class = "flex align-center margin-top-sm" >
< text > 工单时限 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< / view > -- >
< view style = "border-top: 1px solid gainsboro;padding-top: 10upx;" v-if ="afterServiceRecord.customerFinalCheck == null && (afterServiceRecord.workerFeedbackResult === 0 || afterServiceRecord.workerFeedbackResult === 1 || afterServiceRecord.workerFeedbackResult === 3 || (afterServiceRecord.workerFeedbackResult === 2 && (afterServiceRecord.workerResendPlan === 2 || afterServiceRecord.workerResendPlan === 3)))" >
< template v-if ="afterServiceRecord.workerFeedbackResult === 1 && afterServiceRecord.customerOperationTime" >
< text class = "text-gray" style = "font-size: 20upx;" > 商家收货验货后退款 , 未操作的6天内自动完成 ! < / text >
< view class = "flex align-center margin-top-sm" >
< text > 工单时限 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addDays(afterServiceRecord.customerOperationTime, 6)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< / template >
< template v-if ="afterServiceRecord.workerFeedbackResult === 2 && afterServiceRecord.workerResendPlanTime" >
< text class = "text-gray" style = "font-size: 20upx;" > 请按下方按键操作 , 36 小时未操作将自动取消本售后 ! < / text >
< view class = "flex align-center margin-top-sm" >
< text > 工单时限 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendPlanTime, 36)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendPlanTime, 36)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendPlanTime, 36)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.workerResendPlanTime, 36)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< / template >
< template v -else -if = " afterServiceRecord.redoCompleteTime " >
< text class = "text-gray" style = "font-size: 20upx;" > { { afterServiceRecord . workerFeedbackResult === 3 ? '您需验收或审核, 36小时未操作自动完成' : '请按下方按键操作, 36小时未操作将自动取消本售后! ' } } < / text >
< view class = "flex align-center margin-top-sm" >
< text > 工单时限 : < / text >
< uni -countdown :show-colon ="false" :backgroundColor ="'#eee'"
: day = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.redoCompleteTime, 36)).day"
: hour = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.redoCompleteTime, 36)).hour"
: minute = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.redoCompleteTime, 36)).min"
: second = "$dateUtil.countDownDiff($dateUtil.addHours(afterServiceRecord.redoCompleteTime, 36)).seconds" >
< / u n i - c o u n t d o w n >
< / view >
< / template >
2022-09-26 23:52:16 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view class = "flex justify-end align-end margin-tb-sm" v-if ="order.orderType === 1" >
< template v-if ="afterServiceRecord.customerFinalCheck == null && afterServiceRecord.returnStatus <= 3" >
< template v-if ="afterServiceRecord.customerFinalCheck != 1" >
< template v-if ="afterServiceRecord.returnStatus < 3" >
< button v-if ="(afterServiceRecord.workerResendPlan != null && afterServiceRecord.workerResendPlan != 1) || (afterServiceRecord.workerAgreeType == 2 || afterServiceRecord.workerAgreeType == 3 || afterServiceRecord.workerAgreeType == 4)" class="cu-btn sm bg-yellow margin-right-sm" @click="showDeliverGoods = true;currentChooseAfterService = afterServiceRecord;" > 去退货 < / button >
< / template >
< template v-if ="(afterServiceRecord.workerFeedbackResult === 2 || (afterServiceRecord.workerFeedbackResult === 1 && afterServiceRecord.workerAgreeType !== 1))" >
< button class = "cu-btn sm bg-yellow margin-right-sm" v-if ="(afterServiceRecord.customerAgreeRedo === 0 || afterServiceRecord.customerAgreeRedo === null )" @click="afterServiceAgreeRedo(afterServiceRecord.id, 1)" > {{ ( afterServiceRecord.workerFeedbackResult = = = 1 & & ( afterServiceRecord.workerAgreeType = = 2 | | afterServiceRecord.workerAgreeType = = 3 | | afterServiceRecord.workerAgreeType = = 4 ) ) | | ( ( afterServiceRecord.workerFeedbackResult = = = 2 | | afterServiceRecord.workerFeedbackResult = = = 3 ) & & ( afterServiceRecord.workerResendPlan ! = null & & afterServiceRecord.workerResendPlan ! = 1 ) ) ? ' 未收货 , 货在途 ' : ' 同意方案 ' }} < / button >
< button class = "cu-btn sm bg-yellow margin-right-sm" v -if = " afterServiceRecord.customerFinalCheck = = null "
@ click = "tapToShowRejectPlan(afterServiceRecord.id)" > 不同意 < / button >
< / template >
< template v -else -if = " afterServiceRecord.workerFeedbackResult ! = = 2 | | ( afterServiceRecord.workerFeedbackResult = = = 1 & & afterServiceRecord.workerAgreeType = = = 1 ) " >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "showNotice(item, afterServiceRecord)" > 同意 < / button >
< button class = "cu-btn sm bg-yellow margin-right-sm" v -if = " afterServiceRecord.customerFinalCheck = = null "
@ click = "tapToShowRejectPlan(afterServiceRecord.id)" > 不同意 < / button >
< / template >
< / template >
< / template >
< template v-if ="afterServiceRecord.returnStatus == 4" >
< button class = "cu-btn sm bg-yellow margin-right-sm" @click ="finishAfterService(afterServiceRecord.id)" > 货已收到 , 结单 < / button >
< / template >
< template v -else -if = " ( afterServiceRecord.customerFinalCheck = = 0 ) & & ( item.afterPlatformServiceStatus = = = 0 | | item.afterPlatformServiceStatus = = 1 ) " >
< template v-if ="afterServiceRecord.customerFinalCheck === 0" >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "showNotice(item, afterServiceRecord)" v-if ="(afterServiceRecord.workerFeedbackResult === 3 || afterServiceRecord.workerFeedbackResult === 0) && afterServiceRecord.workerResendPlan !== 1 && afterServiceRecord.returnShipTime" > 同意 < / button >
< button v-if ="(afterServiceRecord.workerResendPlan != null && afterServiceRecord.workerResendPlan != 1) || (afterServiceRecord.workerAgreeType == 2 || afterServiceRecord.workerAgreeType == 3 || afterServiceRecord.workerAgreeType == 4)" class="cu-btn sm bg-yellow margin-right-sm" @click="showDeliverGoods = true;currentChooseAfterService = afterServiceRecord;" > 去退货 < / button >
< button v -else -if = " afterServiceRecord.workerFeedbackResult ! = = 2 " class = "cu-btn sm bg-yellow margin-right-sm" @ click = "showNotice(item, afterServiceRecord)" > 同意 < / button >
< template v-if ="(afterServiceRecord.workerFeedbackResult === 1 && (afterServiceRecord.workerAgreeType == 2 || afterServiceRecord.workerAgreeType == 3 || afterServiceRecord.workerAgreeType == 4)) || ((afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3) && (afterServiceRecord.workerResendPlan != null)) && (afterServiceRecord.customerAgreeRedo === null || afterServiceRecord.customerAgreeRedo === 0)" >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "afterServiceAgreeRedo(afterServiceRecord.id, 1)" > { { afterServiceRecord . workerResendPlan != 1 ? '未收货,货在途' : '同意方案' } } < / button >
< / template >
< button class = "cu-btn sm bg-yellow margin-right-sm text-white" > 已申请平台介入 < / button >
< / template >
< / template >
< / view >
< view class = "flex justify-end align-end margin-tb-sm" v-else >
< template v-if ="afterServiceRecord.customerFinalCheck == null" >
< template v-if ="afterServiceRecord.customerFinalCheck != 1" >
< template v-if ="afterServiceRecord.workerFeedbackResult === 2" >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "afterServiceAgreeRedo(afterServiceRecord.id, 1)" v-if ="afterServiceRecord.customerAgreeRedo === 0 || afterServiceRecord.customerAgreeRedo === null" > 同意方案 < / button >
< button class = "cu-btn sm bg-yellow margin-right-sm" v -if = " afterServiceRecord.customerFinalCheck = = null "
@ click = "tapToShowRejectPlan(afterServiceRecord.id)" > 不同意 < / button >
< / template >
< template v -else -if = " afterServiceRecord.workerFeedbackResult ! = = 2 " >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "showNotice(item, afterServiceRecord)" > 同意 < / button >
< button class = "cu-btn sm bg-yellow margin-right-sm" v -if = " afterServiceRecord.customerFinalCheck = = null "
@ click = "tapToShowRejectPlan(afterServiceRecord.id)" > 不同意 < / button >
< / template >
< / template >
< / template >
< template v -else -if = " afterServiceRecord.customerFinalCheck = = 0 & & ( item.afterPlatformServiceStatus = = = 0 | | item.afterPlatformServiceStatus = = 1 ) " >
< template v-if ="(afterServiceRecord.workerFeedbackResult === 2 || afterServiceRecord.workerFeedbackResult === 3) && (afterServiceRecord.customerAgreeRedo === null || afterServiceRecord.customerAgreeRedo === 0)" >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "afterServiceAgreeRedo(afterServiceRecord.id, 1)" > 同意方案 < / button >
< / template >
< button class = "cu-btn sm bg-yellow margin-right-sm" @ click = "showNotice(item, afterServiceRecord)" v-if ="afterServiceRecord.workerFeedbackResult !== 2" > 同意 < / button >
< button class = "cu-btn sm bg-yellow margin-right-sm text-white" v-if ="afterServiceRecord.customerFinalCheck === 0" > 已申请平台介入 < / button >
< / template >
2022-09-26 23:52:16 +08:00
< / view >
< / view >
2026-03-13 14:26:44 +08:00
< view v-if ="afterServiceRecord.customerFinalCheck != null" class="padding-tb-sm solid-top" >
< template v-if ="item.afterPlatformServiceStatus === 0 || item.afterPlatformServiceStatus == 1" >
< view class = 'cu-tag bg-main-color radius light' > { { afterServiceRecord . workerReceiveConfirm === 1 ? '商家确认' : '客户最终确认' } } < / view >
< view class = "margin-top-xs" v-if ="afterServiceRecord.workerReceiveConfirm === 1" >
< view > 已收货 , 结单 < / view >
< view > 本单已退货并结束售后 ! < / view >
< / view >
< template v-else >
< view class = "margin-top-xs" v-if ="afterServiceRecord.customerFinalCheck === 2" >
取消
< text v-if ="afterServiceRecord.isAutoProcessed == 1" > ( 超时系统自动取消 ) < / text >
< / view >
< view class = "margin-top-xs" v-else >
{ { afterServiceRecord . customerFinalCheck === 1 ? '同意' : '不同意' } }
< text v-if ="afterServiceRecord.isAutoProcessed == 1 && afterServiceRecord.customerFinalCheck === 1" > ( 超时系统自动同意 ) < / text >
2022-10-19 00:51:26 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< / template >
< view v-if ="afterServiceRecord.customerFinalCheck === 0" >
< view class = "grid col-3 grid-square flex-sub margin-top-sm" v-if ="afterServiceRecord.customerDisagreeImages" >
< view class = "bg-img" v-for ="imgUrl in afterServiceRecord.customerDisagreeImages.split(',')" :key ="imgUrl" >
< image :src ="imgUrl" @ tap = "viewImage($event, [imgUrl])" :data-url ="imgUrl" mode = "aspectFill" > < / image >
< / view >
< / view >
< view class = "margin-bottom-xs" v-if ="afterServiceRecord.customerDisagreeReason" >
< text > 不同意理由 : { { afterServiceRecord . customerDisagreeReason } } < / text >
< / view >
< view class = "text-red" v-if ="afterServiceRecord.customerFinalCheck === 0" > 订单交由平台协商处理 < / view >
2022-10-17 01:15:23 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< view v -else -if = " afterServiceRecord.customerFinalCheck = = = 1 " >
< template v-if ="afterServiceRecord.workerFeedbackResult !== 0" >
< view v-if ="(afterServiceRecord.agreedRefund > 0 || afterServiceRecord.originalRefund > 0) && order.refundPayStatus == 1" >
< view >
< text > 本单退款 , 系统已发起原路退回 < / text >
< text class = "text-red" > { { afterServiceRecord . originalRefund || afterServiceRecord . agreedRefund } } < / text >
< text > 元 , 有其余部分的以双方沟通操作为准 ( 注 : 银行按工作日到帐 , 节假日顺延到账 ) 。 < / text >
< / view >
< view > 支付时间 : { { afterServiceRecord . refundApplyTime } } < / view >
< / view >
< view v -else -if = " order.refundPayStatus = = 0 " >
< text v-if ="afterServiceRecord.workerFeedbackResult === 3" > 本次售后已重新补做并验收完成 ( 退款额为0 ) 。 < / text >
< text v-else > 本单已退款 < text class = "text-red" > { { afterServiceRecord . originalRefund || afterServiceRecord . agreedRefund || 0 } } < / text > 元 , 因未实际支付 , 实退为0元 。 未退部分继续完成订单及正常支付 ! < / text >
< / view >
< / template >
< view v-else >
< text > 本次售后已操作完毕 , 售后申请已结束 ! < / text >
< / view >
2022-10-17 01:15:23 +08:00
< / view >
2026-03-13 14:26:44 +08:00
< / template >
< template v -else -if = " item.afterPlatformServiceStatus = = = 2 | | item.afterPlatformServiceStatus = = = 3 " >
< view class = 'cu-tag bg-main-color radius light' > 客户最终确认 < / view >
< view class = "margin-top-xs" >
{ { item . afterPlatformServiceStatus === 2 ? '同意' : '取消售后' } }
( 平台操作 )
< / view >
< view v-if ="afterServiceRecord.platformHandleReason" >
< text > 平台意见 : { { afterServiceRecord . platformHandleReason } } < / text >
< / view >
< view v-if ="item.afterPlatformServiceStatus === 3" >
< text > 本次售后已操作完毕 , 售后申请已结束 ! < / text >
< / view >
< template v-else >
< view v-if ="(afterServiceRecord.platformRefund || afterServiceRecord.agreedRefund) && order.refundPayStatus == 1" >
< view >
< text > 本单退款 , 系统已发起原路退回 < / text >
< text class = "text-red" > { { afterServiceRecord . platformRefund || afterServiceRecord . agreedRefund } } < / text >
< text > 元 , 有其余部分的以双方沟通操作为准 ( 注 : 银行按工作日到帐 , 节假日顺延到账 ) 。 < / text >
< / view >
< view > 支付时间 : { { afterServiceRecord . refundApplyTime } } < / view >
< / view >
< view v -else -if = " order.refundPayStatus = = 0 " >
< text > 本单已退款 < text class = "text-red" > { { afterServiceRecord . platformRefund || afterServiceRecord . agreedRefund || 0 } } < / text > 元 , 因未实际支付 , 实退为0元 。 未退部分继续完成订单及正常支付 ! < / text >
< / view >
< / template >
< / template >
< / view >
<!-- < view v-if ="afterServiceRecord.afterServiceStatus == 2" >
< view > 售后已撤销 < / view >
< view style = "color: red;font-size: 20upx;" > 由于您最终未做出同意与不同意的操作 , 系统默认撤消此单 , 如您需要可另行申请 ! < / view >
< / view > -- >
2022-09-26 23:52:16 +08:00
< / view >
< / view >
< / view >
<!-- 订单编码和时间 -- >
2026-03-13 14:26:44 +08:00
< view class = "bg-white margin-top-sm padding margin-lr-sm margin-bottom-with-bar" >
2022-09-26 23:52:16 +08:00
< view > 订单编码 : { { servDetail . orderMasterCode } } < / view >
< view class = "margin-top-xs" > 订单时间 : { { servDetail . createTime } } < / view >
< / view >
<!-- 底部操作栏 -- >
< view class = "cu-bar tabbar margin-bottom-xl bg-white fixed-bottom-bar" >
< view class = "action" data -popup = " orderManage " @click ="togglePopup" >
< view class = "cuIcon-list" > < / view > 订单管理
< / view >
< view class = "action" data -modal = " sendUrgentMsgModal " @click ="showModal" >
< view class = "cuIcon-mail" >
< view class = "cu-tag badge" v-if ="servDetail.talkMsgNum > 0" > {{ servDetail.talkMsgNum }} < / view >
< / view >
发送急报
< / view >
<!-- < view class = "bg-main-color submit" > 立即上门 < / view > -- >
< / view >
< uni -popup ref = "orderManage" type = "bottom" @change ="changePopupState" >
2022-10-06 03:06:21 +08:00
< view class = "bg-white text-center tabbar" style = "z-index: 99;" >
< view v-if ="servDetail.orderStatus < 2" class="padding solid-bottom" @click="decideIfCancelOrder" style="z-index: 99;" >
取消订单
< / view >
< view v-if ="servDetail.orderStatus < 3" class="padding solid-bottom" @click="applyAfterService" style="z-index: 99;" >
发起投诉
< / view >
< view v-if ="servDetail.orderStatus >= 3" class="padding solid-bottom" @click="applyAfterService" style="z-index: 99;" >
发起投诉 / 售后
< / view >
< view v -if = " servDetail.orderStatus > = 2 || servDetail . orderStatus < 5 " class=" padding solid - bottom " style=" z - index : 99 ; "
@ click = "applyForRefund" >
退单退款
2024-03-04 10:03:26 +08:00
< / view >
< view v-if ="[0,1,2,3].includes(servDetail.orderStatus) && servDetail.workerPhone" class="padding solid-bottom" style="z-index: 99;" @click="sendUrgeOrderModal = true" >
催单约单
2022-10-06 03:06:21 +08:00
< / view >
< / view >
< view class = "fixed-bottom-bar cu-bar bg-white" style = "z-index: 98;" > < / view >
2022-09-26 23:52:16 +08:00
< / u n i - p o p u p >
<!-- 模态框 -- >
2024-03-04 10:03:26 +08:00
< urgent -msg :show ="sendUrgentMsgModal" @hideModal ="hideModal" > < / urgent -msg >
< urge -order :show ="sendUrgeOrderModal" @hideModal ="hideModal" @confirm ="urgeOrderOpration" > < / urge -order >
2022-06-06 22:09:43 +08:00
< confirm -modal ref = "confirmModal" :content ="'是否确定取消订单?'" @confirm ="cancelOrder" > < / confirm -modal >
2022-09-26 23:52:16 +08:00
< apply -after -service ref = "applyAfterService" :data ="servDetail"
2023-05-07 23:06:56 +08:00
@ confirmFeedback = "loadData(servDetail.orderMasterId)" @ cancel = "blurCurOrder" > < / a p p l y - a f t e r - s e r v i c e >
2026-03-13 14:26:44 +08:00
< apply -after -service -goods ref = "applyAfterServiceGoods" :data ="servDetail" @confirmFeedback ="loadData(servDetail.orderMasterId)" @cancel ="blurCurOrder" > < / apply -after -service -goods >
< confirm -modal ref = "notice" :content ="'银联实时动态:本单已划款,师傅/服务人员已到帐或即将到帐。双方达成退款的,请对方线下支付后点“对方已退款”。'" :confirmMsg ="'对方已退款'" @ confirm = "afterServiceFinalCheck(curDetailOrder.afterServiceRecordList[0].id, 1)" @cancel ="noticeCancel" > < / confirm -modal >
< afterserviceDisagree v-if ="showAfterserviceDisagree" :show="showAfterserviceDisagree" :orderAfterId="orderAfterId" @close="showAfterserviceDisagree = false" @confirmFeedback="showAfterserviceDisagree = false;loadData(servDetail.orderMasterId);" > < / afterserviceDisagree >
< deliverGoods v-if ="showDeliverGoods" :show="showDeliverGoods" :data="currentChooseAfterService" @close="showDeliverGoods = false;currentChooseAfterService = null;" @confirmFeedback="showDeliverGoods = false;currentChooseAfterService = null;loadData(servDetail.orderMasterId)" > < / deliverGoods >
< deliveryFlowDetail :show ="showDeliveryFlow" :trackingNumber ="showDeliveryFlowTrackingNumber" @ close = "showDeliveryFlow = false" > < / deliveryFlowDetail >
2022-04-23 23:13:29 +08:00
< / view >
< / template >
2022-09-26 23:52:16 +08:00
< script >
import simpleProductPicked from '@/components/goods-card/simple-product-picked.vue' ;
import urgentMsg from '@/pages/my/components/modal/urgent-msg.vue' ;
2024-03-04 10:03:26 +08:00
import urgeOrder from '@/pages/my/components/modal/urge_order.vue' ;
2026-03-13 14:26:44 +08:00
import applyAfterService from '@/pages/my/components/modal/apply-after-service.vue' ;
import applyAfterServiceGoods from '@/pages/my/components/modal/apply-after-service-goods.vue' ;
import afterserviceDisagree from '@/pages/my/components/modal/afterservice-disagree.vue' ;
import deliverGoods from '@/pages/my/components/modal/deliver-goods.vue' ;
import deliveryFlowDetail from '@/pages/my/components/modal/delivery_flow_detail.vue' ;
2022-09-26 23:52:16 +08:00
2022-04-23 23:13:29 +08:00
export default {
2022-09-26 23:52:16 +08:00
components : {
simpleProductPicked ,
urgentMsg ,
2024-03-04 10:03:26 +08:00
applyAfterService ,
2026-03-13 14:26:44 +08:00
urgeOrder ,
afterserviceDisagree ,
applyAfterServiceGoods ,
deliverGoods ,
deliveryFlowDetail
2022-04-23 23:13:29 +08:00
} ,
data ( ) {
return {
2022-09-26 23:52:16 +08:00
value : [ '0' ] ,
2022-06-18 02:03:35 +08:00
order : { } ,
2022-09-26 23:52:16 +08:00
servDetail : { } ,
finishRecord4Show : [ ] ,
servingColumnHeaders : [ '购买型号' , '购买量' , '待服务' ] ,
2022-12-03 22:12:42 +08:00
servedColumnHeaders : [ '购买型号' , '派单量' , '已服务' ] ,
2022-09-26 23:52:16 +08:00
servingValFields : [ 'standardName' , 'standardNum' , 'waitServerNum' ] ,
servedValFields : [ 'standardName' , 'standardNum' , 'serverNum' ] ,
process : '' ,
ifShowPageMeta : false ,
2023-05-07 23:06:56 +08:00
sendUrgentMsgModal : false ,
2024-03-04 10:03:26 +08:00
sendUrgeOrderModal : false ,
2026-03-13 14:26:44 +08:00
curDetailOrder : null ,
showAfterserviceDisagree : false ,
orderAfterId : null ,
showDeliverGoods : false ,
showDeliveryFlow : false ,
showDeliveryFlowTrackingNumber : '' ,
currentChooseAfterService : null
2022-04-23 23:13:29 +08:00
}
} ,
2022-06-18 02:03:35 +08:00
onLoad ( options ) {
2022-09-26 23:52:16 +08:00
if ( options && options . order ) {
this . order = JSON . parse ( decodeURIComponent ( options . order ) ) ;
}
2023-03-18 23:58:52 +08:00
this . loadData ( this . order . orderMasterId ) ;
2026-03-13 14:26:44 +08:00
this . bindEvent ( ) ;
if ( this . order . orderType === 1 ) {
this . servingColumnHeaders = [ '购买型号' , '购买量' , '待发货' ]
this . servedColumnHeaders = [ '购买型号' , '购买量' , '已发货' ]
}
2023-03-18 23:58:52 +08:00
} ,
onUnload ( ) {
this . offBindEvent ( ) ;
2022-04-23 23:13:29 +08:00
} ,
2023-03-18 23:58:52 +08:00
methods : {
2026-03-13 14:26:44 +08:00
openShopLocation ( item ) {
// const gcj02Coord = wgs84ToGcj02(item.shop.longitude, item.shop.latitude)
// const gcj02Coord = wgs84ToGcj02(102.80154676649306, 24.969456922743056)
// const gcj02Coord = [102.82868680950929, 24.864792838337802]
const gcj02Coord = [ item . longitude , item . latitude ]
wx . openLocation ( {
latitude : gcj02Coord [ 1 ] ,
longitude : gcj02Coord [ 0 ] ,
scale : 18 ,
name : item . shopName ,
address : ` ${ item . provinceName } ${ item . cityName } ${ item . countryName } ${ item . streetName } ${ item . address } `
} )
} ,
2023-03-18 23:58:52 +08:00
bindEvent ( ) {
uni . $on ( this . $globalFun . CHOOSE _ADDRESS , this . editAddress ) ;
} ,
offBindEvent ( ) {
uni . $off ( this . $globalFun . CHOOSE _ADDRESS ) ;
} ,
2022-06-18 02:03:35 +08:00
async loadData ( orderMasterId ) {
2022-09-26 23:52:16 +08:00
// this.servDetail = await this.$api.data('servDetail');
// this.finishList4Show = this.servDetail.finishRecord;
// for (let i = 0; i < this.finishList4Show.length; i++) {
// let finishList = this.finishList4Show[i].finishList;
// for (let j = 0; j < finishList.length; j++) {
// finishList[j].secondColumnNum = finishList[j].servedNum;
// }
// this.finishList4Show[i].finishList = finishList;
// }
let servDetailRes = await this . $request . getOrderMasterDetail ( {
id : orderMasterId
2026-03-13 14:26:44 +08:00
} ) ;
servDetailRes . data . orderType = this . order . orderType
2022-06-18 02:03:35 +08:00
this . servDetail = servDetailRes . data ;
2026-03-13 14:26:44 +08:00
} ,
copyData ( data ) {
uni . setClipboardData ( {
data : data ,
success ( ) {
uni . showToast ( {
title : '复制成功'
} )
}
} ) ;
2022-09-26 23:52:16 +08:00
} ,
changePopupState ( e ) {
this . ifShowPageMeta = e . show ;
} ,
togglePopup ( e ) {
let targetPopup = null ;
if ( typeof e === 'string' ) {
targetPopup = e ;
} else {
targetPopup = e . currentTarget . dataset . popup ;
}
if ( this . ifShowPageMeta ) {
this . $refs [ targetPopup ] . close ( ) ;
} else {
this . $refs [ targetPopup ] . open ( ) ;
}
} ,
showModal ( e ) {
this [ e . currentTarget . dataset . modal ] = true ;
} ,
hideModal ( e ) {
this [ e . currentTarget . dataset . modal ] = false ;
} ,
decideIfCancelOrder ( ) {
this . $refs . confirmModal . showModal ( ) ;
} ,
viewImage ( e , imgList ) {
uni . previewImage ( {
urls : imgList ,
current : e . currentTarget . dataset . url
} ) ;
} ,
async cancelOrder ( e ) {
let res = await this . $request . cancelMasterOrder ( {
orderMasterId : this . servDetail . orderMasterId
} ) ;
if ( res && res . code === 0 ) {
this . togglePopup ( 'orderManage' ) ;
this . loadData ( this . servDetail . orderMasterId ) ;
uni . showToast ( {
title : '取消成功' ,
icon : 'success' ,
duration : 2000
} )
} else {
uni . showToast ( {
title : '取消失败' ,
icon : 'error'
} )
}
2024-03-04 10:03:26 +08:00
} ,
async urgeOrderOpration ( params ) {
const res = await this . $request . addWarnRecord ( {
orderId : this . servDetail . orderMasterId ,
orderType : '01' ,
... params
} )
if ( res . code != 0 ) return
uni . showToast ( {
title : params . type == 2 ? '约单成功' : '催单成功' ,
icon : 'success' ,
duration : 2000
} )
this . sendUrgeOrderModal = false
this . togglePopup ( 'orderManage' ) ;
2022-09-26 23:52:16 +08:00
} ,
async afterServiceFinalCheck ( id , agreeStatus ) {
let res = await this . $request . editAfterServiceRecord ( {
id : id ,
customerFinalCheck : agreeStatus
} ) ;
2022-10-15 01:43:07 +08:00
if ( res && res . code === 0 ) {
2022-10-06 03:06:21 +08:00
this . loadData ( this . servDetail . orderMasterId ) ;
2022-10-06 23:42:02 +08:00
if ( agreeStatus == 1 ) {
uni . showToast ( {
icon : 'none' ,
2022-10-15 01:43:07 +08:00
duration : 3000 ,
2022-10-06 23:42:02 +08:00
title : '涉及退款部分将按付款原路退回,请留意'
} )
}
2022-09-26 23:52:16 +08:00
return ;
2022-10-15 01:43:07 +08:00
}
if ( res && res . msg ) {
uni . showToast ( {
icon : 'none' ,
duration : 3000 ,
title : res . msg
} )
} else {
uni . showToast ( {
icon : 'error' ,
duration : 1000
} )
2022-09-26 23:52:16 +08:00
}
2026-03-13 14:26:44 +08:00
} ,
async afterServiceAgreeRedo ( id , customerAgreeRedo ) {
let res
if ( this . order . orderType === 1 ) {
res = await this . $request . editAfterServiceGoodsRecord ( {
id : id ,
customerAgreeRedo
} ) ;
} else {
res = await this . $request . editAfterServiceRecord ( {
id : id ,
customerAgreeRedo
} ) ;
}
if ( res && res . code === 0 ) {
this . loadData ( this . servDetail . orderMasterId ) ;
}
if ( res && res . msg ) {
uni . showToast ( {
icon : 'none' ,
duration : 3000 ,
title : res . msg
} )
}
} ,
tapToShowRejectPlan ( id ) {
this . orderAfterId = id ;
this . showAfterserviceDisagree = true ;
2022-09-26 23:52:16 +08:00
} ,
applyAfterService ( ) {
2026-03-13 14:26:44 +08:00
this . showModalByRef ( this . order . orderType === 1 ? 'applyAfterServiceGoods' : 'applyAfterService' , this . servDetail , {
2022-09-26 23:52:16 +08:00
afterServiceType : 2 ,
toUpdateStatus : false
} )
} ,
applyForRefund ( ) {
2026-03-13 14:26:44 +08:00
this . showModalByRef ( this . order . orderType === 1 ? 'applyAfterServiceGoods' : 'applyAfterService' , this . servDetail , {
2022-09-26 23:52:16 +08:00
afterServiceType : 1 ,
toUpdateStatus : false
} )
} ,
showModalByRef ( refName , curOrder , params ) {
this . $refs [ refName ] . showModal ( curOrder , params ) ;
2022-10-06 03:06:21 +08:00
} ,
2026-03-13 14:26:44 +08:00
async cancelAfterService ( afterServiceRecord ) {
if ( afterServiceRecord . workerFeedbackResult == 3 && this . order . orderType == 1 ) {
uni . showToast ( {
icon : 'none' ,
title : '重发/补发中,不能撤消售后单!' ,
duration : 1000
} )
return
}
let res = await this . $request . delAfterServiceRecord ( afterServiceRecord . id ) ;
2022-10-06 03:06:21 +08:00
if ( res && res . code === 0 ) {
this . loadData ( this . servDetail . orderMasterId ) ;
uni . showToast ( {
icon : 'success' ,
title : '撤销成功' ,
duration : 1000
} )
} else {
uni . showToast ( {
icon : 'error' ,
title : '撤销失败' ,
duration : 1000
} )
}
2023-03-18 23:58:52 +08:00
} ,
showAddress2Choose ( ) {
2025-05-07 09:44:27 +08:00
const { provinceId , provinceName , cityId , cityName , countryId , countryName , address , name , streetId , streetName , phone } = this . servDetail
let newAddr = address
if ( newAddr . indexOf ( provinceName ) > - 1 ) {
newAddr = newAddr . replace ( provinceName , "" )
}
if ( newAddr . indexOf ( cityName ) > - 1 ) {
newAddr = newAddr . replace ( cityName , "" )
}
if ( newAddr . indexOf ( countryName ) > - 1 ) {
newAddr = newAddr . replace ( countryName , "" )
}
if ( newAddr . indexOf ( streetName ) > - 1 ) {
newAddr = newAddr . replace ( streetName , "" )
}
const addressInfo = {
provinceId ,
provinceName ,
cityId ,
cityName ,
countryId ,
countryName ,
address : newAddr ,
streetId ,
streetName ,
phone ,
name
}
2023-03-18 23:58:52 +08:00
uni . navigateTo ( {
2025-05-07 09:44:27 +08:00
url : '/pages/my/edit-service-address?params=' + encodeURIComponent ( JSON . stringify ( addressInfo ) )
2023-03-18 23:58:52 +08:00
} )
} ,
2025-05-07 09:44:27 +08:00
async editAddress ( addressInfo ) {
2023-03-18 23:58:52 +08:00
console . log ( addressInfo )
2025-05-07 09:44:27 +08:00
const { provinceId , provinceName , cityId , cityName , countryId , countryName , address , name , streetId , streetName , phone } = addressInfo
let res = await this . $request . updateMasterAddress ( {
id : this . servDetail . orderMasterId ,
provinceId ,
provinceName ,
cityId ,
cityName ,
countryId ,
countryName ,
address ,
streetId ,
streetName ,
phone ,
name
} ) ;
if ( res && res . code === 0 ) {
this . loadData ( this . order . orderMasterId ) ;
setTimeout ( ( ) => {
uni . showToast ( {
icon : 'success' ,
title : '修改成功'
} )
} , 1000 )
}
2023-03-18 23:58:52 +08:00
} ,
makePhoneCall ( phoneNum ) {
uni . makePhoneCall ( {
phoneNumber : phoneNum
} )
2023-05-07 23:06:56 +08:00
} ,
2026-03-13 14:26:44 +08:00
showNotice ( detailOrder , afterServiceRecord ) {
2023-05-07 23:06:56 +08:00
if ( detailOrder . drawCashStatus != null && detailOrder . drawCashStatus >= 1 ) {
this . curDetailOrder = detailOrder ;
this . $refs . notice . showModal ( ) ;
} else {
2026-03-13 14:26:44 +08:00
if ( this . order . orderType === 1 && afterServiceRecord . workerFeedbackResult != 0 ) {
let notificationContent = '建议收到货后再确认同意!' ;
if ( afterServiceRecord . workerFeedbackResult === 1 && afterServiceRecord . operType === 1 ) {
notificationContent = '同意后结束售后,商家同意退款的将发起退款!'
}
uni . showModal ( {
title : '提示' ,
content : notificationContent ,
confirmText : '仍然同意' ,
success : ( res ) => {
if ( res . confirm ) {
this . afterServiceFinalCheck ( afterServiceRecord . id , 1 )
}
}
} )
} else {
this . afterServiceFinalCheck ( afterServiceRecord . id , 1 )
}
2023-05-07 23:06:56 +08:00
}
} ,
noticeCancel ( ) {
this . curDetailOrder = null ;
2026-03-13 14:26:44 +08:00
} ,
async changeOrderPrice ( orderDetailId ) {
await this . $request . deleteAttachPrice ( {
orderDetailId : orderDetailId
} )
let res = await this . $request . changeOrderPrice ( {
orderDetailId : orderDetailId ,
changeMoney : 0 ,
type : 1 ,
remark : '客户清空加价'
} ) ;
if ( res && res . code === 0 ) {
uni . showToast ( {
icon : 'success' ,
title : '操作成功'
} )
setTimeout ( ( ) => {
this . loadData ( this . servDetail . orderMasterId ) ;
} , 1500 ) ;
}
} ,
async finishAfterService ( id ) {
let res = await this . $request . workerConfirmReceive ( {
id : id
} ) ;
if ( res && res . code === 0 ) {
uni . showToast ( {
icon : 'success' ,
title : '操作成功'
} )
setTimeout ( ( ) => {
this . loadData ( this . servDetail . orderMasterId ) ;
} , 1500 ) ;
}
} ,
// 获取物流信息
getDeliveryFlow ( numerStr ) {
this . showDeliveryFlowTrackingNumber = numerStr ;
this . $nextTick ( ( ) => {
this . showDeliveryFlow = true ;
} )
}
2022-04-23 23:13:29 +08:00
}
}
< / script >
< style scoped >
. bar - first - action {
margin - left : unset ! important ;
font - size : 30 rpx ! important ;
2022-09-26 23:52:16 +08:00
}
. cu - bar . tabbar . action {
font - size : 22 rpx ;
position : relative ;
flex : 1 ;
text - align : center ;
padding : 0 ;
display : block ;
height : auto ;
line - height : 1 ;
margin : 0 ;
background - color : inherit ;
overflow : initial ;
z - index : 99 ;
2024-03-04 10:03:26 +08:00
}
2026-03-13 14:26:44 +08:00
. add - price {
position : relative ;
}
. add - price . text - main - color {
position : absolute ;
top : 20 rpx ;
right : 10 rpx ;
}
2024-03-04 10:03:26 +08:00
2022-04-23 23:13:29 +08:00
< / style >