From 51a9e70b6b28493279b4f9ad7d89deed5998ae77 Mon Sep 17 00:00:00 2001 From: xzg <4727863@qq.com> Date: Tue, 16 Jan 2024 20:55:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=89=B9=E9=87=8F=E7=A1=AE?= =?UTF-8?q?=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/aftersales/aftersalesWorkOrder.vue | 272 +++++++++++++------ 1 file changed, 194 insertions(+), 78 deletions(-) diff --git a/src/views/aftersales/aftersalesWorkOrder.vue b/src/views/aftersales/aftersalesWorkOrder.vue index 9a1619e4..340c7b5e 100644 --- a/src/views/aftersales/aftersalesWorkOrder.vue +++ b/src/views/aftersales/aftersalesWorkOrder.vue @@ -83,8 +83,6 @@
- - 新 增 @@ -92,42 +90,50 @@ 批量删除 --> - - 批量打回 - - - 工单指派 - - + 批量确定 + + 工单指派 + 客服介入 - 钉钉号填写 + 钉钉号填写 - - - 批量完结 - 批量删除 - - + > --> + 申诉 @@ -177,11 +183,7 @@
- 查看 + 查看 @@ -193,11 +195,15 @@ >确定 确定 - + 编辑 编辑 @@ -285,12 +299,11 @@ >申诉 --> 修改金额 + v-if="TabPermissions == 7" + @click="BtnModifyAmount(slotProps.scope)" + >修改金额
-
@@ -718,6 +731,23 @@ console.log(accessControl, '权限按钮'); // arbitration_completed;//仲裁完结 // information_editing;//信息编辑 console.log(accessControl.workAdd, '新增按钮权限'); +// const PermissionButton = computed(() => { +// return { +// workAdd: accessControl.workAdd, //新增 +// batch_return: accessControl.batch_return, //批量打回 +// assign: accessControl.assign, //工单指派 +// apply_arbitration: accessControl.apply_arbitration, //申请仲裁 +// batch_completion: accessControl.batch_completion, //批量完结 +// representations: accessControl.representations, //申诉 +// reply: accessControl.reply, //回复 +// processing_completed: accessControl.processing_completed, //处理完结 +// work_order_completion: accessControl.work_order_completion, //完结 +// repulse: accessControl.repulse, //打回 +// arbitration_completed: accessControl.arbitration_completed, //仲裁完结 +// information_editing: accessControl.information_editing, //信息编辑 +// }; +// }); + const PermissionButton = computed(() => { return { workAdd: accessControl.workAdd, //新增 @@ -734,6 +764,7 @@ const PermissionButton = computed(() => { information_editing: accessControl.information_editing, //信息编辑 }; }); + const DingTalkfilling = ref({}); //钉钉号表单 const dialogDingTalk = ref(false); //钉钉号弹窗 const tabValue = ref(0); //侧边栏激活状态 @@ -1017,11 +1048,20 @@ const ButtonPermissions = computed(() => { switch (TabPermissions.value) { case 0: //全部 return { + // add: true, //新增按钮 + // batchReject: true, //批量打回 + // assignment: true, //工单指派 + // applyArbitration:true, //客服介入 + // DingTalkNumber:true,//钉钉号填写 + // batchFinish:true, //批量完结 + // appeal: true, //申诉 + add: UserPermissions.value == '仓库客服', //新增按钮 - batchReject: UserPermissions.value == '职能客服', //批量打回 - assignment: UserPermissions.value == '客服经理', //工单指派 - applyArbitration: UserPermissions.value == '仓库客服', //申请仲裁 - batchFinish: UserPermissions.value == '职能客服' || UserPermissions.value == '客服经理', //批量完结 + batchReject: UserPermissions.value != '仓库客服', //批量打回 + assignment: UserPermissions.value == '总部客服经理', //工单指派 + applyArbitration: UserPermissions.value == '仓库客服', //客服介入 + DingTalkNumber: UserPermissions.value == '总部客服经理', //钉钉号填写 + batchFinish: UserPermissions.value != '仓库客服', //批量完结 appeal: false, //申诉 }; case 1: //处理中 @@ -1029,8 +1069,9 @@ const ButtonPermissions = computed(() => { add: false, //新增按钮 batchReject: UserPermissions.value == '职能客服' || UserPermissions.value == '客服经理', //批量打回 assignment: false, //工单指派 - applyArbitration: UserPermissions.value == '仓库客服', //申请仲裁 + applyArbitration: UserPermissions.value == '仓库客服', //客服介入 batchFinish: UserPermissions.value != '仓库客服', //批量完结 + Batchdetermination: false, //批量确定 appeal: false, //申诉 }; case 2: //处理完毕 @@ -1038,54 +1079,70 @@ const ButtonPermissions = computed(() => { add: false, //新增按钮 batchReject: false, //批量打回 assignment: false, //工单指派 - applyArbitration: false, //申请仲裁 + applyArbitration: false, //客服介入 batchFinish: false, //批量完结 appeal: UserPermissions.value == '仓库客服' && AppealStatusT.value, //申诉 + Batchdetermination: UserPermissions.value == '仓库客服', //批量确定 }; case 3: //待处理 return { add: false, //新增按钮 - batchReject: UserPermissions.value == '职能客服', //批量打回 - assignment: UserPermissions.value == '客服经理', //工单指派 - applyArbitration: false, //申请仲裁 + batchReject: UserPermissions.value == '总部客服', //批量打回 + assignment: UserPermissions.value == '总部客服经理', //工单指派 + applyArbitration: true, //客服介入 batchFinish: false, //批量完结 appeal: false, //申诉 + Batchdetermination: false, //批量确定 }; case 4: //理赔金额未出 return { add: false, //新增按钮 batchReject: false, //批量打回 assignment: false, //工单指派 - applyArbitration: false, //申请仲裁 + applyArbitration: false, //客服介入 batchFinish: false, //批量完结 appeal: false, //申诉 + Batchdetermination: false, //批量确定 }; case 5: //仲裁中 return { add: false, //新增按钮 batchReject: false, //批量打回 assignment: false, //工单指派 - applyArbitration: false, //申请仲裁 + applyArbitration: false, //客服介入 batchFinish: false, //批量完结 appeal: false, //申诉 + Batchdetermination: false, //批量确定 }; case 6: //完结 return { add: false, //新增按钮 batchReject: false, //批量打回 assignment: false, //工单指派 - applyArbitration: false, //申请仲裁 - batchFinish: false, //批量完结 + applyArbitration: false, //客服介入 + batchFinish: UserPermissions.value != '仓库客服', //批量完结 appeal: true, //申诉 + Batchdetermination: false, //批量确定 }; case 7: //超时未处理 return { add: false, //新增按钮 batchReject: false, //批量打回 assignment: false, //工单指派 - applyArbitration: false, //申请仲裁 + applyArbitration: false, //客服介入 + batchFinish: false, //批量完结 + appeal: false, //申诉 + Batchdetermination: false, //批量确定 + }; + case 8: //待回复 + return { + add: false, //新增按钮 + batchReject: false, //批量打回 + assignment: false, //工单指派 + applyArbitration: true, //客服介入 batchFinish: false, //批量完结 appeal: false, //申诉 + Batchdetermination: false, //批量确定 }; // 其他任何情况下的默认情况 default: @@ -1096,6 +1153,7 @@ const ButtonPermissions = computed(() => { applyArbitration: false, batchFinish: false, appeal: false, + Batchdetermination: false, //批量确定 }; } }); @@ -1417,7 +1475,7 @@ const InformationViewing = val => { RouteIndexs: TabPermissions.value, //当前记录参数 Routstate: 'appeal', //申诉列表 AppealReview: val.row.typesOf == '0' ? 'true' : 'false', //当前只能查看申诉详情信息 - workOrderStatus:val.row.workOrderStatus,//工单状态 + workOrderStatus: val.row.workOrderStatus, //工单状态 }, }); return; @@ -1453,7 +1511,7 @@ const InformationViewing = val => { businessId: val.row.businessId, ProcessType: TabPermissions.value == 2 ? '2' : TabPermissions.value == 3 ? '1' : '', //类型 1 待处理 2 已处理 RouteIndexs: TabPermissions.value, //当前记录参数 - workOrderStatus:val.row.workOrderStatus,//工单状态 + workOrderStatus: val.row.workOrderStatus, //工单状态 }, }); }; @@ -1476,7 +1534,7 @@ const view = val => { RouteIndexs: TabPermissions.value, //当前菜单 Routstate: 'appeal', //申诉列表 AppealReview: val.row.typesOf == '0' ? 'true' : 'false', //当前只能查看申诉详情信息 - workOrderStatus:val.row.workOrderStatus,//当前工单状态 + workOrderStatus: val.row.workOrderStatus, //当前工单状态 }, }); return; @@ -1778,7 +1836,7 @@ const ProcessedResultediting = val => { }; // 完结菜单的编辑 -const CompletedEditing=(val)=>{ +const CompletedEditing = val => { $router.push({ path: '/aftersales/aftersalesWorkOrdermodify', query: { @@ -1788,13 +1846,13 @@ const CompletedEditing=(val)=>{ warehouseId: val.row.warehouseId, workOrderNumber: val.row.workOrderNumber, RouterState: 'Kfend', - CompletedEditing:'true',//完结信息编辑 + CompletedEditing: 'true', //完结信息编辑 Appealeditor: 'appeal', //只是编辑完结 Processed: 'true', index: '1', }, }); -} +}; // 工单申诉确认按钮 const Appealbutton = state => { if (UserPermissions.value == '仓库客服') { @@ -2348,7 +2406,6 @@ function getWinHight() { // }; // 查询超时记录 const TimeoutHandling = val => { - timeoutList[3].checkarr = []; //异常类型名称 timeoutList[4].checkarr = []; //发现环节 ClaimStatus.value = false; //关闭理赔查询状态 @@ -2817,9 +2874,26 @@ const DetermineStorage = val => { let data = { assignList: [], }; - let ID = {}; - ID = val.row.id; - data['assignList'].push(ID); + let ConfirmStatus = false; //批量确认状态 + if (!val.row) { + // 说明点击的批量确定 + console.log('当前点击的批量确定'); + if (!details.selectionList.length) { + ElMessage({ + message: '请勾选要处理的数据数据', + type: 'warning', + }); + return; + } else { + ConfirmStatus = true; //说明走的是批量 + data['assignList'] = details.selectionList.map(item => item.id); + console.log(data['assignList'], '批量确定处理好的参数'); + } + } else { + let ID = {}; + ID = val.row.id; + data['assignList'].push(ID); + } details.loadingObj.list = true; //开启加载效果 if (UserPermissions.value == '总部客服经理' && TabPermissions.value == '1') { // 完结结果确定 @@ -2842,31 +2916,73 @@ const DetermineStorage = val => { return; } +}; +// 处理完毕里面确定 + +const ResultConfirmation = (val) => { + let data = { + assignList: [], + }; + let ConfirmStatus = false; //批量确认状态 + if (!val.row) { + // 说明点击的批量确定 + console.log('当前点击的批量确定'); + if (!details.selectionList.length) { + ElMessage({ + message: '请勾选要处理的数据数据', + type: 'warning', + }); + return; + } else { + ConfirmStatus = true; //说明走的是批量 + data['assignList'] = details.selectionList.map(item => item.id); + console.log(data['assignList'], '批量确定处理好的参数'); + } + } else { + let ID = {}; + ID = val.row.id; + data['assignList'].push(ID); + } + + // 仓库客服 - if ( - TabPermissions.value == '2' && - UserPermissions.value == '仓库客服' && - val.row.workOrderStatus != '30' - ) { - // 处理结果确定 - console.log(data, '处理好的数据'); - $_updateWorkOrderStatus(data) - .then(res => { - console.log(res, '确定提交存储'); - if (res.data.code == 200) { - ElMessage({ - message: res.data.msg, - type: 'success', - }); - } - tabChenge(TabPermissions.value); - }) - .catch(res => { - details.loadingObj.list = false; //关闭加载效果 + + if (ConfirmStatus) { + // 走的批量确认 + let state = details.selectionList.every(item => item.workOrderStatus !== '30'); + if (!state) { + ElMessage({ + message: '批量确认中有状态不符合的必须为处理结果已提交', + type: 'warning', }); + return; + } + }else{ + if(val.workOrderStatus !== '30'){ + ElMessage({ + message: '状态错误,已经确认过', + type: 'warning', + }); + return + } } + details.loadingObj.list = true; //开启加载效果 + console.log(data, '处理好的数据'); + $_updateWorkOrderStatus(data) + .then(res => { + console.log(res, '确定提交存储'); + if (res.data.code == 200) { + ElMessage({ + message: res.data.msg, + type: 'success', + }); + } + tabChenge(TabPermissions.value); + }) + .catch(res => { + details.loadingObj.list = false; //关闭加载效果 + }); }; - // 批量打回 const BatchReturn = () => { BatchFrom.value.businessDepartment = [];