需求代码提交

test
zhangdi 1 year ago
parent a11ebb9826
commit 31cbed6d6c
  1. 12
      api/api.js
  2. 58
      config/status.js
  3. 11
      pages/submission/evaluate.vue
  4. 52
      pages/submission/records.vue
  5. 16
      pages/submission/recordsdetails.vue
  6. 110
      pages/submission/sendOrders.vue

@ -44,7 +44,7 @@ const install = (Vue, vm) => {
isparams: true isparams: true
}) })
// 获取设备列表 // 获取设备列表
let getDeviceList = (params) => http.get('/device/list', { ...params }, { let getDeviceList = (params) => http.get('/device/list', params, {
authorizations: true, authorizations: true,
isparams: true isparams: true
}) })
@ -128,7 +128,7 @@ const install = (Vue, vm) => {
authorizations: true, authorizations: true,
isparams: true isparams: true
}) })
// 客服关闭接口 / // 关闭接口 /
let cloneOrder = (params) => http.post('/lab-ops/work-order/service-close', params, { let cloneOrder = (params) => http.post('/lab-ops/work-order/service-close', params, {
authorizations: true, authorizations: true,
isparams: false isparams: false
@ -384,8 +384,14 @@ const install = (Vue, vm) => {
authorizations: true, authorizations: true,
isparams: false isparams: false
}) })
// 客服关闭
let closeService = (params) => http.post('/lab-ops/work-order/service-repair-submit', params, {
authorizations: true,
isparams: false
})
// 将各个定义的接口名称,统一放进对象挂载到vm.$u.api(因为vm就是this,也即this.$u.api)下 // 将各个定义的接口名称,统一放进对象挂载到vm.$u.api(因为vm就是this,也即this.$u.api)下
vm.$u.api = { getTenantInfo, login, logout, registerUser, getworkbench, getLoginRecords, getEditRecords, subEditRecords, getChildList, getDeviceList, workOrderSave, getWorkOrderRecords, getBreakdownInfo, workOrderupdate, evaluateSign, getRepairPersons, getGoodsList, getDictionaryList, getUserList, workList, deviceList, upkeepStat, pieStat, getUserInfo, overview, sendOrders, cloneOrder, editData, repairReject, applySave, sendVerify, serviceman, servicemanReceive, servicemanSubmit, supervisorReject, supervisorconfirm, customerConfirm, customerReject, servicemanRepairSubmit, evaluateRepairReject, getDeviceDetail, getTaskPage, getTaskDetail, taskSupervisorconfirm, taskServicemanreceive, updateCoordinate, taskServicemanUpdateTime, getPlanDetail, getRepairPage, updateDetaile, taskServicemanSubmit, taskCustomerConfirm, taskCustomerRefuse, taskSolutionSave, taskSolutionSubmit, repairSolutionSupervisor, repairSolutionRefuse, repairSolutionCustomer, repairCustomerRefuse, repairServicemanSubmit,repairConfirmFinish,repairRefuseFinish ,confirmPayment,getPosition,getRepairDetail,updatePosition,resetPwd,getNoticeList,updateSign,getMesseageList,getMesseageAll,updateMesseageStatus,getMesseageTotal}; vm.$u.api = { getTenantInfo, login, logout, registerUser, getworkbench, getLoginRecords, getEditRecords, subEditRecords, getChildList, getDeviceList, workOrderSave, getWorkOrderRecords, getBreakdownInfo, workOrderupdate, evaluateSign, getRepairPersons, getGoodsList, getDictionaryList, getUserList, workList, deviceList, upkeepStat, pieStat, getUserInfo, overview, sendOrders, cloneOrder, editData, repairReject, applySave, sendVerify, serviceman, servicemanReceive, servicemanSubmit, supervisorReject, supervisorconfirm, customerConfirm, customerReject, servicemanRepairSubmit, evaluateRepairReject, getDeviceDetail, getTaskPage, getTaskDetail, taskSupervisorconfirm, taskServicemanreceive, updateCoordinate, taskServicemanUpdateTime, getPlanDetail, getRepairPage, updateDetaile, taskServicemanSubmit, taskCustomerConfirm, taskCustomerRefuse, taskSolutionSave, taskSolutionSubmit, repairSolutionSupervisor, repairSolutionRefuse, repairSolutionCustomer, repairCustomerRefuse, repairServicemanSubmit,repairConfirmFinish,repairRefuseFinish ,confirmPayment,getPosition,getRepairDetail,updatePosition,resetPwd,getNoticeList,updateSign,getMesseageList,getMesseageAll,updateMesseageStatus,getMesseageTotal,closeService};
} }
export default { export default {

@ -7,40 +7,40 @@ export const tabList = {
}, },
{ {
name: "待提报", name: "待提报",
key: "-1", key: "100",
}, },
{ {
name: "待接单", name: "待接单",
key: "0", key: "101",
}, },
{ {
name: "待维修", name: "待维修",
key: "1,2,3", key: "201,401,402",
}, },
{ {
name: "已驳回", name: "已驳回",
key: "100,101,102", key: "102,300,400",
}, },
{ {
name: "确认方案", name: "确认方案",
key: "4", key: "301",
}, },
{ {
name: "维修中", name: "维修中",
key: "5", key: "103",
}, },
{ {
name: "待评价", name: "待评价",
key: "6,20", key: "403,202",
}, },
{ {
name: "待付款", name: "待付款",
key: "7", key: "104",
}, },
{ {
name: "已完成", name: "已完成",
key: "8,9", key: "202,203,204",
}, },
], ],
'2': [ '2': [
@ -50,31 +50,31 @@ export const tabList = {
}, },
{ {
name: "待接单", name: "待接单",
key: "0", key: "101",
}, },
{ {
name: "待维修", name: "待维修",
key: "1,2,3,4", key: "201,401,402,301",
}, },
{ {
name: "已驳回", name: "已驳回",
key: "100,101,102", key: "102,300,400",
}, },
{ {
name: "维修中", name: "维修中",
key: "5", key: "103",
}, },
{ {
name: "维修完成", name: "维修完成",
key: "6,20", key: "403,202",
}, },
{ {
name: "待付款", name: "待付款",
key: "7", key: "104",
}, },
{ {
name: "已完成", name: "已完成",
key: "8,9", key: "202,203,204",
}, },
], ],
'3': [ '3': [
@ -84,31 +84,31 @@ export const tabList = {
}, },
{ {
name: "待审批", name: "待审批",
key: "3", key: "402",
}, },
{ {
name: "维修中", name: "维修中",
key: "5", key: "103",
}, },
{ {
name: "已通过", name: "已通过",
key: "4", key: "301",
}, },
{ {
name: "已驳回", name: "已驳回",
key: "100,101,102", key: "102,300,400",
}, },
{ {
name: "维修完成", name: "维修完成",
key: "6,20", key: "403,202",
}, },
{ {
name: "待付款", name: "待付款",
key: "7", key: "104",
}, },
{ {
name: "已完成", name: "已完成",
key: "8,9", key: "203,204",
}, },
], ],
@ -119,27 +119,27 @@ export const tabList = {
}, },
{ {
name: "待确认", name: "待确认",
key: "1", key: "201",
}, },
{ {
name: "待提交", name: "待提交",
key: "2", key: "401",
}, },
{ {
name: "待审批", name: "待审批",
key: "3,4", key: "402,301",
}, },
{ {
name: "已驳回", name: "已驳回",
key: "100,101,102", key: "102,300,400",
}, },
{ {
name: "维修中", name: "维修中",
key: "5", key: "103",
}, },
{ {
name: "维修完成", name: "维修完成",
key: "6,7,8,9,20", key: "403,104,202,203,204",
}, },
] ]
} }

@ -1,7 +1,7 @@
<template> <template>
<view class="page-css"> <view class="page-css">
<view class="container"> <view class="container">
<view class="question-box"> <view class="question-box" v-if="status!=202">
<betone-header-top :titleMin="'确认维修是否完成?'" /> <betone-header-top :titleMin="'确认维修是否完成?'" />
<view class="btn"> <view class="btn">
<view class="uni-px-5 uni-pb-5"> <view class="uni-px-5 uni-pb-5">
@ -85,15 +85,20 @@ export default {
} }
], ],
istask: null,// istask: null,//
status:'',//
isRepair:'',//
} }
}, },
onLoad(options) { onLoad(options) {
this.id = options.id this.id = options.id
console.log(111111,options.istask == 'true')
if (options.istask == 'true') { if (options.istask == 'true') {
this.istask = options.istask this.istask = options.istask
} }
if(options.status){
this.status = options.status
this.completeValue = 1
}
}, },
onShow() { onShow() {
this.userInfo = uni.getStorageSync('loginInfo') this.userInfo = uni.getStorageSync('loginInfo')

@ -49,27 +49,27 @@
<!-- 工单详情 查看维修详情 --> <!-- 工单详情 查看维修详情 -->
<u-button v-if="item.status == -1" size="mini" :plain="true" style="margin-right:16rpx" <u-button v-if="item.status == 100" size="mini" :plain="true" style="margin-right:16rpx"
:hair-line="true" type="primary" @click="subOrder(item)">提报</u-button> :hair-line="true" type="primary" @click="subOrder(item)">提报</u-button>
<u-button size="mini" v-if="item.status == -1" :plain="true" style="margin-right:16rpx" <u-button size="mini" v-if="item.status == 100" :plain="true" style="margin-right:16rpx"
:hair-line="true" type="primary" @click="orderUpdate(item)">修改</u-button> :hair-line="true" type="primary" @click="orderUpdate(item)">修改</u-button>
<u-button v-if="item.status == 4" size="mini" :plain="true" style="margin-right:16rpx" <u-button v-if="item.status == 301" size="mini" :plain="true" style="margin-right:16rpx"
:hair-line="true" type="primary" @click="orderConfirm(item)">确认方案</u-button> :hair-line="true" type="primary" @click="orderConfirm(item)">确认方案</u-button>
<u-button v-if="item.status == 5" size="mini" :plain="true" style="margin-right:16rpx" <u-button v-if="item.status == 103" size="mini" :plain="true" style="margin-right:16rpx"
:hair-line="true" type="primary" @click="goPageLocation(item)">查看位置</u-button> :hair-line="true" type="primary" @click="goPageLocation(item)">查看位置</u-button>
<u-button v-if="item.status == 6||item.status == 20" size="mini" :plain="true" style="margin-right:16rpx" <u-button v-if="item.status == 403||item.status == 202" size="mini" :plain="true" style="margin-right:16rpx"
:hair-line="true" type="primary" @click="openEvaluate(item)">评价</u-button> :hair-line="true" type="primary" @click="openEvaluate(item)">评价</u-button>
</block> </block>
<!-- 客服 --> <!-- 客服 -->
<block v-if="dataTypes == 2"> <block v-if="dataTypes == 2">
<!-- 查看的提报单 --> <!-- 查看的提报单 -->
<u-button v-if="item.status == 0 || item.status == 100" size="mini" :plain="true" <u-button v-if="item.status == 101 || item.status == 400" size="mini" :plain="true"
style="margin-right:16rpx" @click.stop="sendOrders(item)" type="primary">接单</u-button> style="margin-right:16rpx" @click.stop="sendOrders(item)" type="primary">接单</u-button>
<u-button v-if="item.status == 7" size="mini" :plain="true" style="margin-right:16rpx" <u-button v-if="item.status == 104" size="mini" :plain="true" style="margin-right:16rpx"
@click.stop="openModel(item, 'paymentInfo')" type="primary">确认付款</u-button> @click.stop="openModel(item, 'paymentInfo')" type="primary">确认付款</u-button>
<u-button v-if="item.status == 0" size="mini" plain type="primary" style="margin-right:16rpx" <u-button v-if="item.status == 101" size="mini" plain type="primary" style="margin-right:16rpx"
@click="openModel(item, 'close')">关闭</u-button> @click="openModel(item, 'close')">关闭</u-button>
</block> </block>
@ -78,7 +78,7 @@
<block v-if="dataTypes == 3"> <block v-if="dataTypes == 3">
<!-- 查看维修详情 --> <!-- 查看维修详情 -->
<u-button v-if="item.status == 3 || item.status == 102" size="mini" :plain="true" <u-button v-if="item.status == 402 || item.status == 300" size="mini" :plain="true"
style="margin-right:16rpx" :hair-line="true" type="primary" style="margin-right:16rpx" :hair-line="true" type="primary"
@click="orderConfirm(item)">审批</u-button> @click="orderConfirm(item)">审批</u-button>
@ -86,13 +86,13 @@
<!-- 维修人员 --> <!-- 维修人员 -->
<block v-if="dataTypes == 4"> <block v-if="dataTypes == 4">
<!-- 查看维修详情 --> <!-- 查看维修详情 -->
<u-button v-if="item.status == 1" size="mini" :plain="true" style="margin-right:16rpx" type="primary" <u-button v-if="item.status == 201" size="mini" :plain="true" style="margin-right:16rpx" type="primary"
@click="orderConfirm(item)">确认</u-button> @click="orderConfirm(item)">确认</u-button>
<u-button v-if="item.status == 1" size="mini" :plain="true" style="margin-right:16rpx" type="primary" <u-button v-if="item.status == 201" size="mini" :plain="true" style="margin-right:16rpx" type="primary"
@click="openModel(item, 'turn')">驳回</u-button> @click="openModel(item, 'turn')">驳回</u-button>
<u-button v-if="item.status == 2 || item.status == 101" size="mini" :plain="true" <u-button v-if="item.status == 401 || item.status == 300" size="mini" :plain="true"
style="margin-right:16rpx" type="primary" @click="orderConfirm(item)">提交</u-button> style="margin-right:16rpx" type="primary" @click="orderConfirm(item)">提交</u-button>
<u-button v-if="item.status == 5" size="mini" :plain="true" style="margin-right:16rpx" type="primary" <u-button v-if="item.status == 103||item.status == 401" size="mini" :plain="true" style="margin-right:16rpx" type="primary"
@click="openModel(item, 'repair')">维修完成</u-button> @click="openModel(item, 'repair')">维修完成</u-button>
</block> </block>
@ -121,9 +121,12 @@
<!-- 维修人员 确认 维修完成 --> <!-- 维修人员 确认 维修完成 -->
<betone-modal v-model="repairShow" :title="'提示'" @confirm="repairFn" @cancel="repairShow = false"> <betone-modal v-model="repairShow" :title="'提示'" @confirm="repairFn" @cancel="repairShow = false">
<view class="modal-text"> <view class="modal-text" v-if="rowInfo.status == 103">
请确认维修是否已经完成 请确认维修是否已经完成
</view> </view>
<view class="modal-text" v-if="rowInfo.status == 401">
<u-input :border="true" v-model="repairInfo.closeReason" placeholder="请输入" style="margin-bottom: 32rpx" />
</view>
</betone-modal> </betone-modal>
<!-- 客服确认付款 --> <!-- 客服确认付款 -->
@ -192,6 +195,10 @@ export default {
repairShow: false,// repairShow: false,//
repairInfo:{
closeReason:''
},
paymentShow: false,// paymentShow: false,//
submitOrderShow: false,// submitOrderShow: false,//
@ -314,10 +321,10 @@ export default {
return sta.includes(item + '') return sta.includes(item + '')
}) })
if (this.dataTypes == 2 || this.dataTypes == 3 || this.dataTypes == 4) { if (this.dataTypes == 2 || this.dataTypes == 3 || this.dataTypes == 4) {
if (item == 100) { if (item == 400) {
return '维修驳回' return '维修驳回'
} }
if (item == 101) { if (item == 300) {
return '主管驳回' return '主管驳回'
} }
if (item == 102) { if (item == 102) {
@ -400,6 +407,7 @@ export default {
this.rowInfo = item this.rowInfo = item
}, },
//
confirmCloseSub() { confirmCloseSub() {
if (this.closeReason == '') { if (this.closeReason == '') {
uni.showToast({ title: "请填写关闭原因", icon: "none" }); uni.showToast({ title: "请填写关闭原因", icon: "none" });
@ -411,7 +419,7 @@ export default {
} }
// this.BetLoading.show(); // this.BetLoading.show();
this.$u.api.cloneOrder(query).then(res => { this.$u.api.closeService(query).then(res => {
this.cloneVisible = false this.cloneVisible = false
// this.BetLoading.hide(); // this.BetLoading.hide();
if (res.code == 200) { if (res.code == 200) {
@ -463,6 +471,14 @@ export default {
let query = { let query = {
id: this.rowInfo.id, id: this.rowInfo.id,
} }
if(this.rowInfo.status==401){
if(this.repairInfo.closeReason==''){
uni.showToast({ title: "请输入关闭原因", icon: "none" });
return false
}
query.closeReason = this.repairInfo.closeReason
}
this.$u.api.servicemanRepairSubmit(query).then(res => { this.$u.api.servicemanRepairSubmit(query).then(res => {
if (res.code == 200) { if (res.code == 200) {
this.repairShow = false this.repairShow = false
@ -475,6 +491,8 @@ export default {
openEvaluate(item) { openEvaluate(item) {
let param = { let param = {
id: item.id, id: item.id,
status:item.status,
isRepair:1
} }
uni.navigateTo({ uni.navigateTo({
url: `/pages/submission/evaluate${this.$u.queryParams(param)}`, url: `/pages/submission/evaluate${this.$u.queryParams(param)}`,

@ -1,6 +1,6 @@
<template> <template>
<view class="page-css" <view class="page-css"
:style="{ 'padding-bottom': (detailForm.status == 5 && dataTypes == 1) ? '180rpx' : '20rpx' }"> :style="{ 'padding-bottom': (detailForm.status == 103 && dataTypes == 1) ? '180rpx' : '20rpx' }">
<view class=""> <view class="">
<view class="repair_detail"> <view class="repair_detail">
<view class="repair_title">{{ dataTypes == 1 ? '故障信息' : '故障详情' }}</view> <view class="repair_title">{{ dataTypes == 1 ? '故障信息' : '故障详情' }}</view>
@ -40,7 +40,7 @@
</view> </view>
<!-- 维修详情 --> <!-- 维修详情 -->
<view class="repair_detail" <view class="repair_detail"
v-if="!(detailForm.status == -1 || detailForm.status == 0 || detailForm.status == 1 || detailForm.status == 2)"> v-if="!(detailForm.status == 101||detailForm.status == 100 || detailForm.status == 103 || detailForm.status == 201 || detailForm.status == 401)">
<view class="repair_title">维修详情</view> <view class="repair_title">维修详情</view>
<view class="detail_item"> <view class="detail_item">
<text class="item_left_txt">维修人</text> <text class="item_left_txt">维修人</text>
@ -86,7 +86,7 @@
</view> </view>
<!-- 客服查看派单详情 --> <!-- 客服查看派单详情 -->
<view class="repair_detail" <view class="repair_detail"
v-if="((detailForm.status != 0) && dataTypes == 2) || (dataTypes == 1 && !(detailForm.status == 0 || detailForm.status == -1)) || dataTypes == 4"> v-if="!(detailForm.status == 101||detailForm.status == 100)">
<view class="repair_title">处理情况</view> <view class="repair_title">处理情况</view>
<view class="detail_item"> <view class="detail_item">
<text class="item_left_txt">接单时间</text> <text class="item_left_txt">接单时间</text>
@ -118,7 +118,7 @@
</view> </view>
</view> </view>
<view class="repair_detail" v-if="detailForm.status != -1"> <view class="repair_detail" v-if="detailForm.status != 100">
<view class="repair_title">其他信息</view> <view class="repair_title">其他信息</view>
<view class="detail_item"> <view class="detail_item">
<text class="item_left_txt">提报人</text> <text class="item_left_txt">提报人</text>
@ -139,7 +139,8 @@
</view> </view>
<!-- 满意度查看 --> <!-- 满意度查看 -->
<view class="repair_detail" v-if="detailForm.status == 7||detailForm.status == 8||detailForm.status == 9"> <view class="repair_detail"
v-if="detailForm.status == 104 || detailForm.status == 203 || detailForm.status == 204">
<view class="repair_title">满意度</view> <view class="repair_title">满意度</view>
<view v-for="(item, index) in questionList" :key="index" class="question-box"> <view v-for="(item, index) in questionList" :key="index" class="question-box">
<view class="title">{{ index + 1 }}.{{ item.title }}</view> <view class="title">{{ index + 1 }}.{{ item.title }}</view>
@ -153,8 +154,8 @@
<view class="detail_item"> <view class="detail_item">
<text class="item_left_txt">签字</text> <text class="item_left_txt">签字</text>
<view class="item_right_txt video"> <view class="item_right_txt video">
<image style="width: 130rpx;height: 140rpx;margin-bottom: 10rpx;" <image style="width: 130rpx;height: 140rpx;margin-bottom: 10rpx;" :src="detailForm.signatureUrl"
:src="detailForm.signatureUrl" alt="" /> alt="" />
</view> </view>
</view> </view>
</view> </view>
@ -614,6 +615,7 @@ export default {
margin-bottom: 32rpx; margin-bottom: 32rpx;
padding-left: 32rpx; padding-left: 32rpx;
padding-right: 32rpx; padding-right: 32rpx;
.title { .title {
line-height: 60rpx; line-height: 60rpx;
color: rgba(108, 108, 108, 1); color: rgba(108, 108, 108, 1);

@ -2,6 +2,8 @@
<view class="page-css"> <view class="page-css">
<view class="repair_detail"> <view class="repair_detail">
<view class="repair_title">提报信息</view> <view class="repair_title">提报信息</view>
<!-- <iframe src="http://111.34.85.148:9008/jeewms/loginController.do?login" frameborder="0" ref="refed" width="100%" height="500px"></iframe> -->
<u-form labelPosition="left" :rules="rules" ref="repairDetailsForm" :model="repairDetails" <u-form labelPosition="left" :rules="rules" ref="repairDetailsForm" :model="repairDetails"
:label-width="200" class="repair_form"> :label-width="200" class="repair_form">
<u-form-item label="需求单号:" prop="requirementCode" :border-bottom="false"> <u-form-item label="需求单号:" prop="requirementCode" :border-bottom="false">
@ -34,7 +36,7 @@
</view> </view>
<!-- 维修人员 接单展示--> <!-- 维修人员 接单展示-->
<view class="repair_detail" <view class="repair_detail"
v-if="(dataTypes == 4 || dataTypes == 2) && (detailForm.status == 1 || detailForm.status == 0 || detailForm.status == 100)"> v-if="(dataTypes == 4 || dataTypes == 2) && (detailForm.status == 201 || detailForm.status == 101 || detailForm.status == 400)">
<view class="repair_title">派单信息</view> <view class="repair_title">派单信息</view>
<u-form labelPosition="left" :rules="sendRules" ref="sendOrderForm" :model="sendOrder" :label-width="200" <u-form labelPosition="left" :rules="sendRules" ref="sendOrderForm" :model="sendOrder" :label-width="200"
class="repair_form"> class="repair_form">
@ -63,7 +65,7 @@
</view> </view>
<!-- 维修人员 待提交维修方案 --> <!-- 维修人员 待提交维修方案 -->
<view class="repair_detail" v-if="dataTypes == 4 && (detailForm.status == 2 || detailForm.status == 101)"> <view class="repair_detail" v-if="dataTypes == 4 && (detailForm.status == 201 || detailForm.status == 300)">
<view class="repair_title">处理情况</view> <view class="repair_title">处理情况</view>
<u-form labelPosition="left" ref="sendOrderForm" :model="detailForm" :label-width="200" class="repair_form"> <u-form labelPosition="left" ref="sendOrderForm" :model="detailForm" :label-width="200" class="repair_form">
<u-form-item label="接单时间:" prop="dispatchTime" :border-bottom="false"> <u-form-item label="接单时间:" prop="dispatchTime" :border-bottom="false">
@ -81,19 +83,25 @@
</u-form-item> </u-form-item>
</u-form> </u-form>
</view> </view>
<view class="repair_detail" v-if="detailForm.status == 100 || detailForm.status == 101 || detailForm.status == 102"> <view class="repair_detail" v-if="detailForm.status == 400 || detailForm.status == 300 || detailForm.status == 102">
<view class="repair_title" v-if="detailForm.status == 100">维修人员驳回</view> <view class="repair_title" v-if="detailForm.status == 400">维修人员驳回</view>
<view class="repair_title" v-if="detailForm.status == 101">主管驳回</view> <view class="repair_title" v-if="detailForm.status == 300">主管驳回</view>
<view class="repair_title" v-if="detailForm.status == 102">客户驳回</view> <view class="repair_title" v-if="detailForm.status == 102">客户驳回</view>
<u-form labelPosition="left" ref="sendOrderForm" :model="detailForm" :label-width="200" class="repair_form"> <u-form labelPosition="left" ref="sendOrderForm" :model="detailForm" :label-width="200" class="repair_form">
<u-form-item label="驳回原因:" prop="customerOpinion" :border-bottom="false"> <u-form-item v-if="detailForm.status == 400" label="驳回原因:" prop="customerOpinion" :border-bottom="false">
<view>{{ detailForm.repaiRejectReason }}</view>
</u-form-item>
<u-form-item v-else label="驳回原因:" prop="customerOpinion" :border-bottom="false">
<view>{{ detailForm.approveRemark }}</view> <view>{{ detailForm.approveRemark }}</view>
</u-form-item> </u-form-item>
<!-- repaiRejectReason -->
</u-form> </u-form>
</view> </view>
<!-- 维修详情 待提交维修方案 展示 --> <!-- 维修详情 待提交维修方案 展示 -->
<view class="repair_detail" <view class="repair_detail"
v-if="(dataTypes == 4 && (detailForm.status == 2||detailForm.status == 101)) || (dataTypes == 3 && (detailForm.status == 3||detailForm.status == 102)) || (dataTypes == 1 && detailForm.status == 4)"> v-if="(dataTypes == 4 && (detailForm.status == 401||detailForm.status == 300)) || (dataTypes == 3 && (detailForm.status == 402||detailForm.status == 102)) || (dataTypes == 1 && detailForm.status == 301)">
<view class="repair_title">维修详情</view> <view class="repair_title">维修详情</view>
<u-form labelPosition="left" :rules="repairInfoRules" ref="repairInfoForm" :model="repairInfo" <u-form labelPosition="left" :rules="repairInfoRules" ref="repairInfoForm" :model="repairInfo"
:label-width="140" class="repair_form"> :label-width="140" class="repair_form">
@ -102,9 +110,8 @@
<u-input v-model="detailForm.repairPersonName" :border="true" placeholder="" :disabled="true" <u-input v-model="detailForm.repairPersonName" :border="true" placeholder="" :disabled="true"
class="sp-new-input-diabled" /> class="sp-new-input-diabled" />
</u-form-item> </u-form-item>
<u-form-item label="设备名称:" prop="deviceName" :border-bottom="false"> <u-form-item label="设备名称:" prop="deviceName" :border-bottom="false" :required="true">
<u-input v-model="detailForm.deviceName" :border="true" placeholder="" :disabled="true" <u-input v-model="deviceData.name" :border="true" placeholder="" :disabled="optionDisabled" :class="optionDisabled ? 'sp-new-input-diabled' : ''" type="select" @click="deviceShow = true" />
class="sp-new-input-diabled" />
</u-form-item> </u-form-item>
<u-form-item label="故障原因:" prop="faultReason" :border-bottom="false" :required="true"> <u-form-item label="故障原因:" prop="faultReason" :border-bottom="false" :required="true">
<u-input v-model="repairInfo.faultReason" :border="true" placeholder="请输入" type="textarea" <u-input v-model="repairInfo.faultReason" :border="true" placeholder="请输入" type="textarea"
@ -143,15 +150,15 @@
</view> </view>
</view> </view>
<block <block
v-if="(dataTypes == 3 && (detailForm.status == 3||detailForm.status == 102)) || (dataTypes == 1 && detailForm.status == 4) && repairInfo.isMaterial == 1"> v-if="(dataTypes == 3 && (detailForm.status == 402||detailForm.status == 102)) || (dataTypes == 1 && detailForm.status == 301) && repairInfo.isMaterial == 1">
<u-form-item label="总价:" prop="reportPeople" :border-bottom="false"> <u-form-item label="总价:" prop="reportPeople" :border-bottom="false">
<view>{{ approveInfo.totalPrice }}</view> <view>{{ approveInfo.totalPrice }}</view>
</u-form-item> </u-form-item>
<u-form-item label="折扣:" prop="reportPeople" :border-bottom="false"> <u-form-item label="折扣:" prop="reportPeople" :border-bottom="false">
<!-- <betone-new-input label="" v-model="approveInfo.discount" placeholder="" type="number" <!-- <betone-new-input label="" v-model="approveInfo.discount" placeholder="" type="number"
@changevalue="changDiscount" /> --> @changevalue="changDiscount" /> -->
<u-input v-model="approveInfo.discount" :border="true" placeholder="" :disabled="true" <u-input v-model="approveInfo.discount" :border="true" placeholder="" :disabled="optionPiceDisabled"
:class="optionDisabled ? 'sp-new-input-diabled' : ''" /> :class="optionPiceDisabled ? 'sp-new-input-diabled' : ''" @input="changDiscount" type="number"/>
</u-form-item> </u-form-item>
<u-form-item label="折扣后的金额:" prop="reportPeople" :border-bottom="false" :label-width="240"> <u-form-item label="折扣后的金额:" prop="reportPeople" :border-bottom="false" :label-width="240">
<view>{{ approveInfo.discountPrice }}</view> <view>{{ approveInfo.discountPrice }}</view>
@ -161,7 +168,7 @@
</view> </view>
<!-- 维修负责人 审批 --> <!-- 维修负责人 审批 -->
<view class="repair_detail" v-if="dataTypes == 3 && (detailForm.status == 3||detailForm.status == 102)"> <view class="repair_detail" v-if="dataTypes == 3 && (detailForm.status == 402||detailForm.status == 102)">
<view class="repair_title">主管审批</view> <view class="repair_title">主管审批</view>
<u-form labelPosition="left" ref="repairInfoForm" :model="approveInfo" :label-width="140" <u-form labelPosition="left" ref="repairInfoForm" :model="approveInfo" :label-width="140"
class="repair_form"> class="repair_form">
@ -179,13 +186,13 @@
</view> </view>
<!-- 维修人员接单确认--> <!-- 维修人员接单确认-->
<view class="repair-4-btn" style="margin-right: 32rpx;width:100%" <view class="repair-4-btn" style="margin-right: 32rpx;width:100%"
v-if="dataTypes == 4 && detailForm.status == 1"> v-if="dataTypes == 4 && detailForm.status == 201">
<u-button size="medium" @click="endOrderCancel()">取消</u-button> <u-button size="medium" @click="endOrderCancel()">取消</u-button>
<u-button size="medium" @click="turnShow = true">驳回</u-button> <u-button size="medium" @click="turnShow = true">驳回</u-button>
<u-button size="medium" type="primary" @click="repairOrderSubmit()">确认接单</u-button> <u-button size="medium" type="primary" @click="repairOrderSubmit()">确认接单</u-button>
</view> </view>
<!-- 客户 审批 确认维修方案 --> <!-- 客户 审批 确认维修方案 -->
<view class="repair_detail" v-if="dataTypes == 1 && detailForm.status == 4"> <view class="repair_detail" v-if="dataTypes == 1 && detailForm.status == 301">
<view class="repair_title">客户审批</view> <view class="repair_title">客户审批</view>
<u-form labelPosition="left" ref="repairInfoForm" :model="clientInfo" :label-width="140" <u-form labelPosition="left" ref="repairInfoForm" :model="clientInfo" :label-width="140"
class="repair_form"> class="repair_form">
@ -203,22 +210,22 @@
</view> </view>
<!-- 客服派单--> <!-- 客服派单-->
<view class="repair-btn" style="margin-right: 32rpx;width:100%" <view class="repair-btn" style="margin-right: 32rpx;width:100%"
v-if="dataTypes == 2 && (detailForm.status == 0 || detailForm.status == 100)"> v-if="dataTypes == 2 && (detailForm.status == 101 || detailForm.status == 400)">
<u-button size="medium" @click="endOrderCancel()">取消</u-button> <u-button size="medium" @click="endOrderCancel()">取消</u-button>
<u-button size="medium" type="primary" @click="sendOrderSubmit()">确定派单</u-button> <u-button size="medium" type="primary" @click="sendOrderSubmit()">确定派单</u-button>
</view> </view>
<!-- 维修人员 提交维修方案 --> <!-- 维修人员 提交维修方案 -->
<view class="repair-btn" style="margin-right: 32rpx;width:100%" v-if="dataTypes == 4 && (detailForm.status == 2||detailForm.status == 101)"> <view class="repair-btn" style="margin-right: 32rpx;width:100%" v-if="dataTypes == 4 && (detailForm.status == 401||detailForm.status == 300)">
<u-button size="medium" @click="endOrderCancel()">取消</u-button> <u-button size="medium" @click="endOrderCancel()">取消</u-button>
<u-button size="medium" type="primary" @click="servicemanSubmit()">提交</u-button> <u-button size="medium" type="primary" @click="servicemanSubmit()">提交</u-button>
</view> </view>
<!-- 维修负责人 审批 --> <!-- 维修负责人 审批 -->
<view class="repair-btn" style="margin-right: 32rpx;width:100%" v-if="dataTypes == 3 && detailForm.status == 102"> <view class="repair-btn" style="margin-right: 32rpx;width:100%" v-if="dataTypes == 3 && (detailForm.status == 102||detailForm.status == 402)">
<u-button size="medium" @click="endOrderCancel()">取消</u-button> <u-button size="medium" @click="endOrderCancel()">取消</u-button>
<u-button size="medium" type="primary" @click="approveSubmit()">提交</u-button> <u-button size="medium" type="primary" @click="approveSubmit()">提交</u-button>
</view> </view>
<!-- 客户确认维修方案 --> <!-- 客户确认维修方案 -->
<view class="repair-btn" style="margin-right: 32rpx;width:100%" v-if="dataTypes == 1 && detailForm.status == 4"> <view class="repair-btn" style="margin-right: 32rpx;width:100%" v-if="dataTypes == 1 && detailForm.status == 301">
<u-button size="medium" @click="endOrderCancel()">取消</u-button> <u-button size="medium" @click="endOrderCancel()">取消</u-button>
<u-button size="medium" type="primary" @click="customerSubmit()">提交</u-button> <u-button size="medium" type="primary" @click="customerSubmit()">提交</u-button>
</view> </view>
@ -278,6 +285,9 @@
请确认是否进行接单确认 请确认是否进行接单确认
</view> </view>
</betone-modal> </betone-modal>
<!-- 选择设备 -->
<u-select v-model="deviceShow" :list="deviceList" @confirm="deviceConfirm" :isShowsearch="true"
value-name="id" title="选择设备"></u-select>
<betone-loading ref="BetLoading" /> <betone-loading ref="BetLoading" />
</view> </view>
</template> </template>
@ -293,8 +303,11 @@ export default {
return this.$store.state.dataType == 2 ? false : true return this.$store.state.dataType == 2 ? false : true
}, },
optionDisabled() { optionDisabled() {
return (this.$store.state.dataType == 3 && (this.detailForm.status == 3||this.detailForm.status == 102)) || (this.$store.state.dataType == 1 && this.detailForm.status == 4) ? true : false return (this.$store.state.dataType == 3 && (this.detailForm.status == 402||this.detailForm.status == 102)) || (this.$store.state.dataType == 1 && this.detailForm.status == 301) ? true : false
}, },
optionPiceDisabled(){
return (this.$store.state.dataType == 3 && (this.detailForm.status == 402||this.detailForm.status == 102)) ? false : true
}
}, },
data() { data() {
@ -414,6 +427,13 @@ export default {
}, },
submitOrderShow: false,// submitOrderShow: false,//
deviceShow:false,//
deviceData:{
repairPerson: '',// id
name: '',//
},
deviceList:[],//
} }
}, },
onReady() { onReady() {
@ -421,6 +441,7 @@ export default {
}, },
onShow() { onShow() {
this.getRepairPersons()// this.getRepairPersons()//
this.getDeviceList()
this.orderId = this.$route.query.id this.orderId = this.$route.query.id
this.getDtails() this.getDtails()
this.userInfo = uni.getStorageSync("userinfo"); this.userInfo = uni.getStorageSync("userinfo");
@ -459,12 +480,20 @@ export default {
item.goodsNum = item.materialCount item.goodsNum = item.materialCount
item.name = item.materialName item.name = item.materialName
}) })
} }
this.approveInfo.discount =
// //
this.approveInfo.totalPrice = data this.approveInfo.totalPrice = data
this.approveInfo.discount = this.detailForm.discount this.approveInfo.discount = this.detailForm.discount<0?null:this.detailForm.discount
this.approveInfo.discountPrice = this.detailForm.discountPrice this.approveInfo.discountPrice = this.detailForm.discountPrice<0?null:this.detailForm.discountPrice
//
if(this.detailForm.status != 201){
this.deviceData.repairPerson = this.detailForm.deviceId
this.deviceData.name = this.detailForm.deviceName
}
} }
}) })
@ -655,6 +684,10 @@ export default {
uni.showToast({ title: "申领数量不能为0", icon: "none" }); uni.showToast({ title: "申领数量不能为0", icon: "none" });
return false return false
} }
if(this.deviceData.name==''){
uni.showToast({ title: "请选择设备", icon: "none" });
return false
}
let data = [] let data = []
if (this.repairInfo.isMaterial == 1) { if (this.repairInfo.isMaterial == 1) {
this.sendOrder.materialsData.map(item => { this.sendOrder.materialsData.map(item => {
@ -675,13 +708,16 @@ export default {
faultCause: this.repairInfo.faultReason, faultCause: this.repairInfo.faultReason,
processMethod: this.repairInfo.dealMethods, processMethod: this.repairInfo.dealMethods,
isNeedMaterial: this.repairInfo.isMaterial, isNeedMaterial: this.repairInfo.isMaterial,
materials: data materials: data,
} }
this.$u.api.workOrderupdate(query).then(res => { this.$u.api.workOrderupdate(query).then(res => {
if (res.code == 200) { if (res.code == 200) {
let query1 = { let query1 = {
id: this.detailForm.id id: this.detailForm.id,
deviceId:this.deviceData.repairPerson,
deviceName:this.deviceData.name
} }
this.$u.api.servicemanSubmit(query1).then(res => { this.$u.api.servicemanSubmit(query1).then(res => {
if (res.code == 200) { if (res.code == 200) {
@ -702,7 +738,7 @@ export default {
}, },
// //
changDiscount(e) { changDiscount(e) {
this.approveInfo.discountPrice = (e / 10) * this.approveInfo.totalPrice this.approveInfo.discountPrice = ((e / 10) * this.approveInfo.totalPrice).toFixed(2)
}, },
changeApproveResult(e) { changeApproveResult(e) {
this.approveInfo.approveText = this.approveType[e].text this.approveInfo.approveText = this.approveType[e].text
@ -852,6 +888,26 @@ export default {
}, },
repairOrderSubmit() { repairOrderSubmit() {
this.submitOrderShow = true this.submitOrderShow = true
},
//
getDeviceList() {
let query={
current:1,
size:9999,
}
this.$u.api.getDeviceList(query).then(res => {
if (res.code == 200) {
let data_ = res.data.records
data_.forEach(i => {
this.deviceList.push({ ...i, label: i.name })
})
}
})
},
//
deviceConfirm(e){
this.deviceData.name = e[0].label
this.deviceData.repairPerson = e[0].value
} }
} }

Loading…
Cancel
Save