qb 10 months ago
parent
commit
e06ab161dc
  1. 9
      src/api/aftersales/aftersalesWorkOrder.js
  2. 6
      src/api/basicdata/basicClient.js
  3. 12
      src/api/basicdata/basicStorageServices.js
  4. 29
      src/router/views/index.js
  5. 548
      src/views/aftersales/aftersalesWorkOrder.vue
  6. 12
      src/views/aftersales/aftersalesWorkOrderAdd.vue
  7. 2
      src/views/aftersales/aftersalesWorkOrderAddTemp.vue
  8. 514
      src/views/aftersales/aftersalesWorkOrderInfo.vue
  9. 429
      src/views/aftersales/aftersalesWorkOrderend.vue
  10. 5353
      src/views/aftersales/aftersalesWorkOrdermodify.vue
  11. 5037
      src/views/aftersales/aftersalesWorkOrdermodifyTemp.vue
  12. 119
      src/views/basicdata/brand/basicClient.vue
  13. 22
      src/views/basicdata/brand/basicStorageServices.vue
  14. 5
      src/views/basicdata/brand/basicStoreContact.vue
  15. 2
      src/views/basicdata/brand/basicdataStoreBrand.vue
  16. 2
      src/views/basicdata/brand/basicdataTripartiteMall.vue
  17. 8
      src/views/distribution/deliverylist/distributionDeliveryListedt.vue
  18. 140
      src/views/distribution/inventory/distrilbutionBillLading.vue
  19. 41
      src/views/distribution/inventory/distrilbutionBillLadingView.vue

9
src/api/aftersales/aftersalesWorkOrder.js

@ -155,7 +155,6 @@ export const $_addSubmit = (data) => {
data data
}) })
} }
// 批量打回 // 批量打回
export const $_batchReturn = (data) => { export const $_batchReturn = (data) => {
return request({ return request({
@ -164,6 +163,14 @@ export const $_batchReturn = (data) => {
data data
}) })
} }
// 经理批量打回
export const $_batchRepulseCompleted = (data) => {
return request({
url: '/api/logpm-aftersales/aftersalesReturnRecord/batchRepulseCompleted',
method: 'post',
data
})
}
// 工单指派接口 // 工单指派接口
export const $_assignCustomerService = (data) => { export const $_assignCustomerService = (data) => {

6
src/api/basicdata/basicClient.js

@ -14,11 +14,9 @@ export const getList = (current, size, params) => {
export const getListCode = (params) => { export const getListCode = (params) => {
return request({ return request({
url: '/api/logpm-basicdata/basicdataClient/listCode', url: '/api/logpm-basicdata/basicdataClient/getFinallyClientCode',
method: 'get', method: 'get',
params: { params
...params,
}
}) })
} }

12
src/api/basicdata/basicStorageServices.js

@ -12,23 +12,19 @@ export const getList = (current, size, params) => {
}) })
} }
export const getDetail = (id) => { export const getDetail = (params) => {
return request({ return request({
url: '/api/logpm-basicdata/basicdataStorageServices/detail', url: '/api/logpm-basicdata/basicdataStorageServices/detail',
method: 'get', method: 'get',
params: { params
id
}
}) })
} }
export const remove = (ids) => { export const remove = (params) => {
return request({ return request({
url: '/api/logpm-basicdata/basicdataStorageServices/remove', url: '/api/logpm-basicdata/basicdataStorageServices/remove',
method: 'post', method: 'post',
params: { params
ids,
}
}) })
} }

29
src/router/views/index.js

@ -1436,24 +1436,24 @@ export default [
keepAlive: false, keepAlive: false,
}, },
path: '/aftersales/aftersalesWorkOrdermodifyTemp', path: '/aftersales/aftersalesWorkOrdermodifyTemp',
name: '重构详情', name: '修改旧页面',
component: () => import('@/views/aftersales/aftersalesWorkOrdermodifyTemp.vue'), component: () => import('@/views/aftersales/aftersalesWorkOrdermodifyTemp.vue'),
}, },
], ],
}, },
{ {
path: '/aftersales/aftersalesWorkOrdermodifyTemp', path: '/aftersales/aftersalesWorkOrdermodify',
component: Layout, component: Layout,
redirect: '/aftersales/aftersalesWorkOrdermodifyTemp', redirect: '/aftersales/aftersalesWorkOrdermodify',
children: [ children: [
{ {
meta: { meta: {
i18n: 'dict', i18n: 'dict',
keepAlive: false, keepAlive: false,
}, },
path: '/aftersales/aftersalesWorkOrdermodifyTemp', path: '/aftersales/aftersalesWorkOrdermodify',
name: '编辑重构', name: '工单修改',
component: () => import('@/views/aftersales/aftersalesWorkOrdermodifyTemp.vue'), component: () => import('@/views/aftersales/aftersalesWorkOrdermodify.vue'),
}, },
], ],
}, },
@ -1523,22 +1523,7 @@ export default [
}, },
], ],
}, },
{
path: '/aftersales/aftersalesWorkOrdermodify',
component: Layout,
redirect: '/aftersales/aftersalesWorkOrdermodify',
children: [
{
meta: {
i18n: 'dict',
keepAlive: false,
},
path: '/aftersales/aftersalesWorkOrdermodify',
name: '信息编辑',
component: () => import('@/views/aftersales/aftersalesWorkOrdermodify.vue'),
},
],
},
{ {
path: '/aftersales/DataSynchronization', path: '/aftersales/DataSynchronization',

548
src/views/aftersales/aftersalesWorkOrder.vue

@ -288,12 +288,7 @@
>确定</el-button >确定</el-button
> --> > -->
<el-button <el-button
v-if=" v-if=" TabPermissions == '6' && !AppealStatusT && UserPermissions == '仓库客服' && slotProps.scope.row.workOrderStatus == '80' && slotProps.scope.row.canRepresentations"
TabPermissions == '6' &&
!AppealStatusT &&
UserPermissions == '仓库客服' &&
slotProps.scope.row.workOrderStatus != '100'
"
@click="appeal(slotProps.scope, false)" @click="appeal(slotProps.scope, false)"
>申诉</el-button >申诉</el-button
> >
@ -662,27 +657,27 @@
</el-form-item> </el-form-item>
<el-form-item label="申诉原因"> <el-form-item label="申诉原因">
<el-input <el-input
v-model="Reasonforappeal" v-model="Reasonforappeal"
:rows="4" :rows="4"
type="textarea" type="textarea"
placeholder="请输入申诉原因" placeholder="请输入申诉原因"
/> />
</el-form-item> </el-form-item>
<el-form-item label="`照片"> <el-form-item label="`照片">
<el-upload <el-upload
v-model:file-list="AppealAttachment" v-model:file-list="AppealAttachment"
list-type="picture-card" list-type="picture-card"
:on-preview="AppealAttachmentpictureList" :on-preview="AppealAttachmentpictureList"
:on-remove="AppealAttachmentImgListRemove" :on-remove="AppealAttachmentImgListRemove"
:action="doubledCount" :action="doubledCount"
:on-success="AppealAttachmentImgSuccess" :on-success="AppealAttachmentImgSuccess"
:before-upload="beforeAvatarUpload" :before-upload="beforeAvatarUpload"
:headers="headers" :headers="headers"
multiple multiple
drag drag
> >
<el-icon><Plus /></el-icon> <el-icon><Plus /></el-icon>
</el-upload> </el-upload>
</el-form-item> </el-form-item>
<span class="el_sdialog-footer"> <span class="el_sdialog-footer">
@ -1085,7 +1080,7 @@ import {
MallassignmentColumnList, MallassignmentColumnList,
customerserviceColumnList, customerserviceColumnList,
} from '@/option/aftersales/vueTvemp.js'; } from '@/option/aftersales/vueTvemp.js';
import { processRowProperty, isNumber, computeNumber,setNodeHeight } from '@/utils/util'; import { processRowProperty, isNumber, computeNumber, setNodeHeight } from '@/utils/util';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { downloadXls, deepClone } from '@/utils/util'; import { downloadXls, deepClone } from '@/utils/util';
import dayjs from 'dayjs'; import dayjs from 'dayjs';
@ -1094,8 +1089,8 @@ const $useStore = useStore();
const $route = useRoute(); const $route = useRoute();
/** vuex */ /** vuex */
const customerData = ref([]); // const customerData = ref([]); //
const pageLoad=ref(false) const pageLoad = ref(false);
console.log($useStore,'$useStore'); console.log($useStore, '$useStore');
const accessControl = $useStore.getters.permission; const accessControl = $useStore.getters.permission;
console.log(accessControl, '权限按钮'); console.log(accessControl, '权限按钮');
const loadingFinancial = ref(false); const loadingFinancial = ref(false);
@ -1259,12 +1254,11 @@ const TabList = ref([
{ name: 4, label: '理赔金额未出', state: true, request: true, DataList: [], total: '' }, { name: 4, label: '理赔金额未出', state: true, request: true, DataList: [], total: '' },
{ name: 2, label: '处理完毕', state: true, request: true, DataList: [], total: '' }, { name: 2, label: '处理完毕', state: true, request: true, DataList: [], total: '' },
{ name: 5, label: '客服介入', state: true, request: true, DataList: [], total: '' }, { name: 5, label: '客服介入', state: true, request: true, DataList: [], total: '' },
{ name: 6, label: '完结', state: true, request: true, DataList: [], total: '' },
{ name: 9, label: '待审核', state: true, request: true, DataList: [], total: '' }, { name: 9, label: '待审核', state: true, request: true, DataList: [], total: '' },
{ name: 6, label: '完结', state: true, request: true, DataList: [], total: '' },
{ name: 7, label: '超时未处理', state: true, request: true, DataList: [], total: '' }, { name: 7, label: '超时未处理', state: true, request: true, DataList: [], total: '' },
]); // ]); //
const DeliveryDriver = ref([]); const DeliveryDriver = ref([]);
const CompensationParty = ref([ const CompensationParty = ref([
{ name: '', state: 0, num: null, reason: '', cld: 1, warehouseId: '', personResponsibleName: '' }, // { name: '', state: 0, num: null, reason: '', cld: 1, warehouseId: '', personResponsibleName: '' }, //
@ -1468,7 +1462,7 @@ const ButtonPermissions = computed(() => {
// batchFinish:true, // // batchFinish:true, //
// appeal: true, // // appeal: true, //
add: true, // add: true, //
batchReject: UserPermissions.value != '仓库客服', // batchReject:false, //
assignment: false, // assignment: false, //
applyArbitration: false, // applyArbitration: false, //
DingTalkNumber: false, // DingTalkNumber: false, //
@ -1484,7 +1478,7 @@ const ButtonPermissions = computed(() => {
case 1: // case 1: //
return { return {
add: false, // add: false, //
batchReject: UserPermissions.value == '职能客服' || UserPermissions.value == '客服经理', // batchReject:false, //
assignment: false, // assignment: false, //
applyArbitration: UserPermissions.value == '仓库客服', // applyArbitration: UserPermissions.value == '仓库客服', //
DingTalkNumber: false, // DingTalkNumber: false, //
@ -1501,7 +1495,7 @@ const ButtonPermissions = computed(() => {
case 2: // case 2: //
return { return {
add: false, // add: false, //
batchReject: false, // batchReject: UserPermissions.value =='总部客服', //
assignment: false, // assignment: false, //
applyArbitration: false, // applyArbitration: false, //
DingTalkNumber: false, // DingTalkNumber: false, //
@ -1518,7 +1512,7 @@ const ButtonPermissions = computed(() => {
case 3: // case 3: //
return { return {
add: false, // add: false, //
batchReject: UserPermissions.value == '总部客服', // batchReject: false, //
assignment: false, // assignment: false, //
applyArbitration: false, // applyArbitration: false, //
batchFinish: false, // batchFinish: false, //
@ -1618,7 +1612,7 @@ const ButtonPermissions = computed(() => {
case 9: // case 9: //
return { return {
add: false, // add: false, //
batchReject: false, // batchReject:false, //
assignment: UserPermissions.value == '总部客服经理', // assignment: UserPermissions.value == '总部客服经理', //
applyArbitration: false, // applyArbitration: false, //
batchFinish: UserPermissions.value != '仓库客服', // batchFinish: UserPermissions.value != '仓库客服', //
@ -1751,9 +1745,9 @@ const Statusprocessing = val => {
item.workOrderStatusNameS = columnList[10].checkarr[8].label; // item.workOrderStatusNameS = columnList[10].checkarr[8].label; //
} else if (item.workOrderStatus == 21) { } else if (item.workOrderStatus == 21) {
item.workOrderStatusNameS = columnList[10].checkarr[9].label; // item.workOrderStatusNameS = columnList[10].checkarr[9].label; //
}else if(item.workOrderStatus == 100){ } else if (item.workOrderStatus == 100) {
item.workOrderStatusNameS = columnList[10].checkarr[10].label; // item.workOrderStatusNameS = columnList[10].checkarr[10].label; //
}else if(item.workOrderStatus == 110){ } else if (item.workOrderStatus == 110) {
item.workOrderStatusNameS = columnList[10].checkarr[11].label; // item.workOrderStatusNameS = columnList[10].checkarr[11].label; //
} }
// } else if (item.workOrderStatus == 100) { // } else if (item.workOrderStatus == 100) {
@ -1782,7 +1776,7 @@ const IndexTable = (val, Refresh) => {
TimeoutStatus.value = false; // TimeoutStatus.value = false; //
// ProcessingPartyState.value = false; // // ProcessingPartyState.value = false; //
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
columnList[2].checkarr = []; // columnList[2].checkarr = []; //
columnList[3].checkarr = []; columnList[3].checkarr = [];
columnList[10].checkarr = []; columnList[10].checkarr = [];
@ -1829,7 +1823,7 @@ const IndexTable = (val, Refresh) => {
Tableheaderswitching(columnList); Tableheaderswitching(columnList);
console.log(res, '初始化返回值'); console.log(res, '初始化返回值');
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
if (res.data.data) { if (res.data.data) {
console.log(res.data.data, '初始化返回值===>'); console.log(res.data.data, '初始化返回值===>');
// page.value.total = res.data.data.total; // // page.value.total = res.data.data.total; //
@ -1905,23 +1899,26 @@ const OnLoad = () => {
}; };
OnLoad(); OnLoad();
// //
watch(() => $route.path, (newPath, oldPath) => { watch(
if ($useStore.state.isRefresh.refreshObj.aftersalesWorkOrder) { () => $route.path,
TabPermissions.value = $useStore.state.Customer.Customerobj (newPath, oldPath) => {
console.log(TabPermissions.value,'当前TabPermissions.value'); if ($useStore.state.isRefresh.refreshObj.aftersalesWorkOrder) {
console.log( tabValue.value,'当前 tabValue.value'); TabPermissions.value = $useStore.state.Customer.Customerobj;
tabValue.value=$useStore.state.Customer.Customerobj;// console.log(TabPermissions.value, '当前TabPermissions.value');
if([0,2,3,4,6].includes(TabPermissions.value)){ console.log(tabValue.value, '当前 tabValue.value');
tabValue.value = $useStore.state.Customer.Customerobj; //
if ([0,1,2,3,4,5,6,7,8,9].includes(TabPermissions.value)) {
//0. //0.
//4. //4.
tabChenge(TabPermissions.value,null,true) tabChenge(TabPermissions.value, null, true);
$useStore.commit('Customer_Menu',0);// $useStore.commit('Customer_Menu', 0); //
} }
// //
$useStore.commit('EDIT_REFRESHITEM', { title: 'aftersalesWorkOrder', status: false }); $useStore.commit('EDIT_REFRESHITEM', { title: 'aftersalesWorkOrder', status: false });
}
} }
}); );
// onActivated(() => { // onActivated(() => {
// console.log(''); // console.log('');
// if ($useStore.state.isRefresh.refreshObj.aftersalesWorkOrder) { // if ($useStore.state.isRefresh.refreshObj.aftersalesWorkOrder) {
@ -2034,13 +2031,13 @@ const InformationViewing = val => {
id: val.row.workOrderId, id: val.row.workOrderId,
appealID: val.row.id, // appealID: val.row.id, //
name: val.row.workOrderNumber + '-信息查看', name: val.row.workOrderNumber + '-信息查看',
typesOf: val.row.typesOf, //0:1:,2:
warehouseId: val.row.warehouseId, warehouseId: val.row.warehouseId,
workOrderNumber: val.row.workOrderNumber, // workOrderNumber: val.row.workOrderNumber, //
businessId: val.row.businessId, businessId: val.row.businessId,
ProcessType: TabPermissions.value == 2 ? '2' : TabPermissions.value == 3 ? '1' : '', // 1 2 ProcessType: TabPermissions.value == 2 ? '2' : TabPermissions.value == 3 ? '1' : '', // 1 2
RouteIndexs: TabPermissions.value, // RouteIndexs: TabPermissions.value, //
Routstate: 'appeal', // Routstate: 'appeal', //
AppealReview: val.row.typesOf == '0' ? 'true' : 'false', //
workOrderStatus: val.row.workOrderStatus, // workOrderStatus: val.row.workOrderStatus, //
}, },
}); });
@ -2092,7 +2089,6 @@ const InformationViewing = val => {
warehouseId: val.row.warehouseId, warehouseId: val.row.warehouseId,
workOrderNumber: val.row.workOrderNumber, // workOrderNumber: val.row.workOrderNumber, //
businessId: val.row.businessId, businessId: val.row.businessId,
ProcessType: TabPermissions.value == 2 ? '2' : TabPermissions.value == 3 ? '1' : '', // 1 2
RouteIndexs: TabPermissions.value, // RouteIndexs: TabPermissions.value, //
workOrderStatus: val.row.workOrderStatus, // workOrderStatus: val.row.workOrderStatus, //
}, },
@ -2100,27 +2096,27 @@ const InformationViewing = val => {
}; };
// //
const view = val => { const view = val => {
console.log(val.row); console.log(val.row, '申诉查看');
if (AppealStatusT.value) { if (AppealStatusT.value) {
console.log('当前是申诉');
// //
$router.push({ $router.push({
// AppealStatusT // AppealStatusT
path: '/aftersales/aftersalesWorkOrderInfo', path: '/aftersales/aftersalesWorkOrderInfo',
query: { query: {
id: val.row.workOrderId, id: val.row.workOrderId,
typesOf: val.row.typesOf, //0:1:,2:
appealID: val.row.id, // appealID: val.row.id, //
name: val.row.workOrderNumber + '-信息查看', name: val.row.workOrderNumber + '-信息查看',
warehouseId: val.row.warehouseId, warehouseId: val.row.warehouseId,
workOrderNumber: val.row.workOrderNumber, // workOrderNumber: val.row.workOrderNumber, //
businessId: val.row.businessId, businessId: val.row.businessId,
ProcessType: TabPermissions.value == 2 ? '2' : TabPermissions.value == 3 ? '1' : '', // 1 2
RouteIndexs: TabPermissions.value, // RouteIndexs: TabPermissions.value, //
Routstate: 'appeal', // Routstate: 'appeal', //
AppealReview: val.row.typesOf == '0' ? 'true' : 'false', //
workOrderStatus: val.row.workOrderStatus, // workOrderStatus: val.row.workOrderStatus, //
}, },
}); });
return; return
} }
// //
@ -2162,6 +2158,7 @@ const view = val => {
return; return;
} }
console.log(AppealStatusT.value,'AppealStatusT.value');
$router.push({ $router.push({
// AppealStatusT // AppealStatusT
path: '/aftersales/aftersalesWorkOrderInfo', path: '/aftersales/aftersalesWorkOrderInfo',
@ -2290,22 +2287,30 @@ const AppealAttachmentImgSuccess = val => {
// //
const CancelappealFn = val => { const CancelappealFn = val => {
let data = { ElMessageBox.confirm('是否取消申诉?', '提示', {
id: val.row.id, //ID confirmButtonText: '确定',
typesOf: '3', // cancelButtonText: '取消',
workOrderId: val.row.workOrderId, //ID type: 'warning',
}; })
.then(() => {
let data = {
id: val.row.id, //ID
typesOf: '3', //
workOrderId: val.row.workOrderId, //ID
};
$_Cancelappeal(data).then(res => { $_Cancelappeal(data).then(res => {
console.log(res, '取消申诉返回值'); console.log(res, '取消申诉返回值');
if (res.data.code == 200) { if (res.data.code == 200) {
appealFn(details.query); appealFn(details.query);
ElMessage({ ElMessage({
message: '取消申诉成功', message: '取消申诉成功',
type: 'success', type: 'success',
});
}
}); });
} })
}); .catch(() => {});
}; };
// //
@ -2323,7 +2328,6 @@ const appeal = (val, state) => {
if (val.row) { if (val.row) {
selectList.value.push(val.row); selectList.value.push(val.row);
} }
let data = { let data = {
id: val.row.id, id: val.row.id,
}; };
@ -2381,37 +2385,33 @@ const appealAll = () => {
}; };
// //
const DetermineClaims = val => { const DetermineClaims = val => {
ElMessageBox.confirm( ElMessageBox.confirm('是否确认理赔金额?', '提示', {
'是否确认理赔金额?', confirmButtonText: '确定',
'提示', cancelButtonText: '取消',
{ type: 'warning',
confirmButtonText: '确定', })
cancelButtonText: '取消',
type: 'warning',
}
)
.then(() => { .then(() => {
console.log(val.row); console.log(val.row);
let data = { let data = {
id: val.row.lawoId, id: val.row.lawoId,
workOrderStatus: 30, workOrderStatus: 30,
}; };
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
console.log(data, '处理好的值'); console.log(data, '处理好的值');
$_settlementUpdate(data) $_settlementUpdate(data)
.then(res => { .then(res => {
console.log(res); console.log(res);
if (res.data.code == 200) { if (res.data.code == 200) {
tabChenge(TabPermissions.value, {}, true); tabChenge(TabPermissions.value, {}, true);
} }
}) })
.catch(res => { .catch(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}) })
.catch(() => {}) .catch(() => {});
}; };
// //
const Resultediting = val => { const Resultediting = val => {
@ -2419,7 +2419,7 @@ const Resultediting = val => {
// return // return
console.log(val.row, '理赔金额未出'); console.log(val.row, '理赔金额未出');
$router.push({ $router.push({
path: '/aftersales/aftersalesWorkOrdermodify', path: '/aftersales/aftersalesWorkOrderend',
query: { query: {
id: val.row.lawoId, id: val.row.lawoId,
subId: val.row.laprId, subId: val.row.laprId,
@ -2427,10 +2427,8 @@ const Resultediting = val => {
businessId: val.row.businessId, businessId: val.row.businessId,
warehouseId: val.row.warehouseId, warehouseId: val.row.warehouseId,
workOrderNumber: val.row.workOrderNumber, workOrderNumber: val.row.workOrderNumber,
RouterState: 'Kfend', workOrderStatus: val.row.workOrderStatus, //
Processingresults: true, // RouteIndexs: TabPermissions.value, //
Resultediting: true, //
index: '1',
}, },
}); });
}; };
@ -2449,8 +2447,22 @@ const ProcessedResultediting = val => {
RouterState: 'Kfend', RouterState: 'Kfend',
Processingresults: true, // Processingresults: true, //
Resultediting: true, // Resultediting: true, //
Processed: 'true', workOrderStatus: val.row.workOrderStatus, //
index: '1', RouteIndexs: TabPermissions.value, //
},
});
};
//
const MessageReply = val => {
$router.push({
path: '/aftersales/aftersalesWorkOrderend',
query: {
id: val.row.id,
name: val.row.workOrderNumber + '-消息回复',
businessId: val.row.businessId,
RouterState: 'determine',
workOrderStatus: val.row.workOrderStatus, //
RouteIndexs: TabPermissions.value, //
}, },
}); });
}; };
@ -2476,109 +2488,102 @@ const CompletedEditing = val => {
}; };
// //
const Appealbutton = state => { const Appealbutton = state => {
ElMessageBox.confirm( ElMessageBox.confirm('是否确认发起工单申诉?', '提示', {
'是否确认发起工单申诉?', confirmButtonText: '确定',
'提示', cancelButtonText: '取消',
{ type: 'warning',
confirmButtonText: '确定', })
cancelButtonText: '取消',
type: 'warning',
}
)
.then(() => { .then(() => {
if (UserPermissions.value == '仓库客服') { if (UserPermissions.value == '仓库客服') {
if (AppealAttachment.value.length > 1) { if (AppealAttachment.value.length > 1) {
ElMessage({
message: '只能上传一张图片',
type: 'warning',
});
return;
}
// appealData.value
console.log(details.selectionList, '当前申诉的东西');
loadingappeal.value = true; //
console.log(Appealselection.value, '当前选择的责任人');
console.log(warehouseData.value, '要循环处理的参数');
let data = {
peopleEntityList: [], //
imagePath: '', //
workOrderId: selectList.value[0], //ID
};
if (AppealeditorState.value) {
data.workOrderId = details.selectionList[0].workOrderId;
} else {
data.workOrderId = details.selectionList[0].id;
}
data.reason = Reasonforappeal.value;
data.appealPeopleName = warehouseData.value
.filter(item => Appealselection.value.includes(item.value))
.map(item => item.label)
.join(','); //
//ID
console.log(AppealeditorState.value, '申诉状态');
if (AppealeditorState.value) {
data.id = details.selectionList[0].id;
}
console.log(details.selectionList, '准备处理的数据');
//
Appealselection.value.forEach(item => {
console.log(item, '循环的值');
data['peopleEntityList'].push({
workOrderId: details.selectionList[0].id, //ID
reason: Reasonforappeal.value, //
claimant: userInfo.value.content.user_name, //
actualPersonId: warehouseData.value.find(res => res.value == item).value, //ID
actualPersonName: warehouseData.value.find(res => res.value == item).label, //
});
});
if (AppealAttachment.value.length) {
console.log(AppealAttachment.value, '图片');
if (AppealAttachment.value[0].response) {
data.imagePath = AppealAttachment.value[0].response.data.link; //
} else {
data.imagePath = AppealAttachment.value[0].url; //
}
}
console.log(data, '处理好的值');
$_appealSubmit(data)
.then(res => {
if (res.data.code == 200) {
ElMessage({ ElMessage({
message: res.data.msg, message: '只能上传一张图片',
type: 'success', type: 'warning',
}); });
DataRendering(TabPermissions.value, details.query, true); return;
} }
}) // appealData.value
.finally(res => { console.log(details.selectionList, '当前申诉的东西');
dialogappeal.value = false; // loadingappeal.value = true; //
loadingappeal.value = false; // console.log(Appealselection.value, '当前选择的责任人');
console.log(res, '功返回值'); console.log(warehouseData.value, '要循环处理的参数');
ProcessingPartyState.value = false; // let data = {
ArbitrationStatus.value = false; // peopleEntityList: [], //
AppealeditorState.value = false; // imagePath: '', //
appealData.value = {}; // workOrderId: selectList.value[0], //ID
if (AppealStatusT.value) { };
Tableheaderswitching(AppealList); // if (AppealeditorState.value) {
appealFn(); // data.workOrderId = details.selectionList[0].workOrderId;
} else { } else {
data.workOrderStatus = 80; data.workOrderId = details.selectionList[0].id;
details.query.workOrderStatus = 80;
tabValue.value = 6;
IndexTable({ workOrderStatus: 80 });
} }
ElMessage({ data.reason = Reasonforappeal.value;
message: res.data.msg, data.appealPeopleName = warehouseData.value
type: 'success', .filter(item => Appealselection.value.includes(item.value))
.map(item => item.label)
.join(','); //
//ID
console.log(AppealeditorState.value, '申诉状态');
if (AppealeditorState.value) {
data.id = details.selectionList[0].id;
}
console.log(details.selectionList, '准备处理的数据');
//
Appealselection.value.forEach(item => {
console.log(item, '循环的值');
data['peopleEntityList'].push({
workOrderId: details.selectionList[0].id, //ID
reason: Reasonforappeal.value, //
claimant: userInfo.value.content.user_name, //
actualPersonId: warehouseData.value.find(res => res.value == item).value, //ID
actualPersonName: warehouseData.value.find(res => res.value == item).label, //
});
}); });
}); if (AppealAttachment.value.length) {
} console.log(AppealAttachment.value, '图片');
}) if (AppealAttachment.value[0].response) {
.catch(() => {}) data.imagePath = AppealAttachment.value[0].response.data.link; //
} else {
data.imagePath = AppealAttachment.value[0].url; //
}
}
console.log(data, '处理好的值');
$_appealSubmit(data)
.then(res => {
if (res.data.code == 200) {
ElMessage({
message: res.data.msg,
type: 'success',
});
DataRendering(TabPermissions.value, details.query, true);
}
})
.finally(res => {
dialogappeal.value = false; //
loadingappeal.value = false; //
console.log(res, '功返回值');
ProcessingPartyState.value = false; //
ArbitrationStatus.value = false; //
AppealeditorState.value = false; //
appealData.value = {}; //
if (AppealStatusT.value) {
Tableheaderswitching(AppealList); //
appealFn(); //
} else {
data.workOrderStatus = 80;
details.query.workOrderStatus = 80;
tabValue.value = 6;
IndexTable({ workOrderStatus: 80 });
}
ElMessage({
message: res.data.msg,
type: 'success',
});
});
}
})
.catch(() => {});
}; };
/** 表格表头输入框搜索 */ /** 表格表头输入框搜索 */
@ -2781,7 +2786,7 @@ const settlementclaim = (val, Refresh) => {
return; return;
} }
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
console.log(Claimsfield, '理赔数据'); console.log(Claimsfield, '理赔数据');
ClaimStatus.value = true; // ClaimStatus.value = true; //
AppealStatus.value = false; // AppealStatus.value = false; //
@ -2828,7 +2833,7 @@ const settlementclaim = (val, Refresh) => {
$_listSettlement(data) $_listSettlement(data)
.then(res => { .then(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
console.log(res, '查询理赔数据'); console.log(res, '查询理赔数据');
if (res.data.data) { if (res.data.data) {
if (res.data.data.records.length) { if (res.data.data.records.length) {
@ -2849,13 +2854,13 @@ const settlementclaim = (val, Refresh) => {
}) })
.catch(res => { .catch(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}; };
// //
const appealFn = val => { const appealFn = val => {
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
AppealStatus.value = true; // AppealStatus.value = true; //
TimeoutStatus.value = false; // TimeoutStatus.value = false; //
ClaimStatus.value = false; // ClaimStatus.value = false; //
@ -2876,7 +2881,7 @@ const appealFn = val => {
$_listAppeal(data) $_listAppeal(data)
.then(res => { .then(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
console.log(res, '申诉列表返回值'); console.log(res, '申诉列表返回值');
if (res.data.data.records.length) { if (res.data.data.records.length) {
// details.data = res.data.data.records; // details.data = res.data.data.records;
@ -2895,7 +2900,7 @@ const appealFn = val => {
}) })
.catch(res => { .catch(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}; };
@ -3009,7 +3014,7 @@ const TimeoutHandling = (val, Refresh) => {
AppealStatus.value = false; // AppealStatus.value = false; //
TimeoutStatus.value = true; // TimeoutStatus.value = true; //
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
updateDictionary(timeoutList[3].checkarr, 'pc_work_order'); // updateDictionary(timeoutList[3].checkarr, 'pc_work_order'); //
updateDictionary(timeoutList[4].checkarr, 'pc_discovery_node'); // updateDictionary(timeoutList[4].checkarr, 'pc_discovery_node'); //
let data = { let data = {
@ -3020,7 +3025,7 @@ const TimeoutHandling = (val, Refresh) => {
$_listOwn(data) $_listOwn(data)
.then(res => { .then(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
console.log(res, '超时记录'); console.log(res, '超时记录');
if (res.data.data.records.length) { if (res.data.data.records.length) {
@ -3041,7 +3046,7 @@ const TimeoutHandling = (val, Refresh) => {
}) })
.catch(res => { .catch(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}; };
@ -3237,7 +3242,7 @@ const ProcessingPartyFun = (val, Refresh) => {
AppealStatus.value = false; // AppealStatus.value = false; //
// details.query.workOrderStatus = null; // details.query.workOrderStatus = null;
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
let data = { let data = {
...val, ...val,
}; };
@ -3251,7 +3256,7 @@ const ProcessingPartyFun = (val, Refresh) => {
$_getProcessor(data) $_getProcessor(data)
.then(res => { .then(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
// page.value.total = res.data.data.total; // // page.value.total = res.data.data.total; //
if (res.data.data.records.length) { if (res.data.data.records.length) {
Statusprocessing(res.data.data.records); Statusprocessing(res.data.data.records);
@ -3397,44 +3402,40 @@ const DetermineStorage = val => {
}); });
return; return;
} }
ElMessageBox.confirm( ElMessageBox.confirm('是否确定确定批量审核?', '提示', {
'是否确定确定批量审核?', confirmButtonText: '确定',
'提示', cancelButtonText: '取消',
{ type: 'warning',
confirmButtonText: '确定', })
cancelButtonText: '取消',
type: 'warning',
}
)
.then(() => { .then(() => {
let data = { let data = {
assignList: [], assignList: [],
}; };
data['assignList'] = details.selectionList.map(item => item.id); data['assignList'] = details.selectionList.map(item => item.id);
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
// //
console.log(data, '处理好的值'); console.log(data, '处理好的值');
$_updateManagerConfirmed(data) $_updateManagerConfirmed(data)
.then(res => { .then(res => {
if (res.data.code == 200) { if (res.data.code == 200) {
ElMessage({ ElMessage({
message: res.data.msg, message: res.data.msg,
type: 'success', type: 'success',
});
}
console.log(res, '处理完毕确定');
tabChenge(TabPermissions.value, {}, true);
})
.catch(res => {
console.log(res, '错误信息');
})
.finally(res => {
details.loadingObj.list = false; //
pageLoad.value = false;
}); });
}
console.log(res, '处理完毕确定');
tabChenge(TabPermissions.value, {}, true);
})
.catch(res => {
console.log(res, '错误信息');
})
.finally(res => {
details.loadingObj.list = false; //
pageLoad.value=false
});
}) })
.catch(() => { }) .catch(() => {});
}; };
// //
@ -3444,7 +3445,7 @@ const EndArbitration = val => {
assignList: [val.row.id], assignList: [val.row.id],
}; };
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
$_updateArbitrateStatu(data) $_updateArbitrateStatu(data)
.then(res => { .then(res => {
console.log(res, '处理成功'); console.log(res, '处理成功');
@ -3461,7 +3462,7 @@ const EndArbitration = val => {
}) })
.finally(() => { .finally(() => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}; };
// //
@ -3496,7 +3497,7 @@ const AllEndArbitration = () => {
.finally(() => { .finally(() => {
details.selectionList = []; // details.selectionList = []; //
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}; };
// //
@ -3533,7 +3534,7 @@ const ResultConfirmation = val => {
if (ConfirmStatus) { if (ConfirmStatus) {
// //
let state = details.selectionList.every(item => item.workOrderStatus == '21'); let state = details.selectionList.every(item => item.workOrderStatus == '21');
console.log(state,'state'); console.log(state, 'state');
if (!state) { if (!state) {
ElMessage({ ElMessage({
message: '勾选单子中有已经确认的请取消勾选!', message: '勾选单子中有已经确认的请取消勾选!',
@ -3557,7 +3558,7 @@ const ResultConfirmation = val => {
}) })
.then(() => { .then(() => {
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
console.log(data, '处理好的数据'); console.log(data, '处理好的数据');
$_updateWorkOrderStatus(data) $_updateWorkOrderStatus(data)
.then(res => { .then(res => {
@ -3575,7 +3576,7 @@ const ResultConfirmation = val => {
}) })
.finally(() => { .finally(() => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
}) })
.catch(() => { .catch(() => {
@ -3635,7 +3636,7 @@ const ResultConfirmation = val => {
}) })
.then(() => { .then(() => {
details.loadingObj.list = true; // details.loadingObj.list = true; //
pageLoad.value=true pageLoad.value = true;
// //
$_updateManagerConfirmed(data) $_updateManagerConfirmed(data)
.then(res => { .then(res => {
@ -3653,7 +3654,7 @@ const ResultConfirmation = val => {
}) })
.finally(res => { .finally(res => {
details.loadingObj.list = false; // details.loadingObj.list = false; //
pageLoad.value=false pageLoad.value = false;
}); });
// //
console.log(data, '处理好的值'); console.log(data, '处理好的值');
@ -3670,8 +3671,8 @@ const ResultConfirmation = val => {
// //
const findingAudit = () => {}; const findingAudit = () => {};
// //
const BatchReturn = () => { const BatchReturn = () => {
BatchFrom.value.businessDepartment = []; BatchFrom.value.businessDepartment =[];
BatchFrom.value.txt = null; BatchFrom.value.txt = null;
if (!details.selectionList.length) { if (!details.selectionList.length) {
ElMessage({ ElMessage({
@ -3690,7 +3691,8 @@ const ConfirmReturn = () => {
processorList: [], processorList: [],
}; };
// //
let foundObjs = warehouseData.value.filter(obj => if(BatchFrom.value.businessDepartment.length){
let foundObjs = warehouseData.value.filter(obj =>
BatchFrom.value.businessDepartment.includes(obj.value) BatchFrom.value.businessDepartment.includes(obj.value)
); );
data['businessId'] = foundObjs.map(item => item.value).join(','); data['businessId'] = foundObjs.map(item => item.value).join(',');
@ -3699,10 +3701,13 @@ const ConfirmReturn = () => {
foundObjs.forEach(item => { foundObjs.forEach(item => {
data['processorList'].push({ id: item.value, name: item.label }); data['processorList'].push({ id: item.value, name: item.label });
}); });
}
data.reasonReturn = BatchFrom.value.txt; // data.reasonReturn = BatchFrom.value.txt; //
// data.warehouseId = details.selectionList.map(item=>item.warehouseId); //ID // data.warehouseId = details.selectionList.map(item=>item.warehouseId); //ID
data.workOrderIds = details.selectionList.map(item => item.id); //ID data.workOrderIds = details.selectionList.map(item => item.id); //ID
console.log(data, '处理好的值'); console.log(data, '处理好的值');
data.typesOf='1';//
$_batchReturn(data) $_batchReturn(data)
.then(res => { .then(res => {
repulse.value = false; // repulse.value = false; //
@ -3714,6 +3719,7 @@ const ConfirmReturn = () => {
message: res.data.msg, message: res.data.msg,
type: 'success', type: 'success',
}); });
DataRendering(TabPermissions.value, details.query, true);
} }
}) })
.catch(error => { .catch(error => {
@ -3973,7 +3979,7 @@ const Financialfilling = () => {
dialogFinancialaccounting.value = false; // dialogFinancialaccounting.value = false; //
DataRendering(TabPermissions.value, details.query, true); DataRendering(TabPermissions.value, details.query, true);
} }
AppealListFn(); // AppealListFn();
}) })
.catch(res => { .catch(res => {
console.log(res, '财务入账成功返回值'); console.log(res, '财务入账成功返回值');
@ -4125,19 +4131,6 @@ const Deleteappeal = val => {
}); });
}; };
//
const MessageReply = val => {
$router.push({
path: '/aftersales/aftersalesWorkOrderend',
query: {
id: val.row.id,
name: val.row.workOrderNumber + '-消息回复',
businessId: val.row.businessId,
RouterState: 'determine',
index: '0',
},
});
};
// //
const exportReport = () => { const exportReport = () => {
@ -4269,13 +4262,6 @@ const setAsdefault = val => {
// //
const CreateAdditions = () => { const CreateAdditions = () => {
// Malldropdown.value
let a = [
{ a: 1, disabled: false },
{ a: 2, disabled: false },
{ a: 3, disabled: false },
];
let tab = [{}];
if (AssignmentType.value == '2') { if (AssignmentType.value == '2') {
$_basicdataTripartiteMall({}).then(res => { $_basicdataTripartiteMall({}).then(res => {
console.log(res, '商场指派列表'); console.log(res, '商场指派列表');
@ -4885,10 +4871,10 @@ const AssignSubmission = () => {
width: 100% !important; width: 100% !important;
margin-bottom: 10px; margin-bottom: 10px;
} }
:deep(.el-form-item){ :deep(.el-form-item) {
flex-direction: column; flex-direction: column;
align-items: flex-start; align-items: flex-start;
.el-form-item__content{ .el-form-item__content {
width: 100% !important; width: 100% !important;
} }
} }

12
src/views/aftersales/aftersalesWorkOrderAdd.vue

@ -1138,6 +1138,7 @@ const Totalamount = () => {
}; };
const Claimssettlement = value => { const Claimssettlement = value => {
form.value.Claimamount = [];
if (value.length) { if (value.length) {
let data = []; let data = [];
value.forEach(item => { value.forEach(item => {
@ -1146,7 +1147,6 @@ const Claimssettlement = value => {
data.push(_data); data.push(_data);
} }
}); });
form.value.Claimamount = [];
if (data && data.length) { if (data && data.length) {
data.forEach(item => { data.forEach(item => {
form.value.Claimamount.push({ form.value.Claimamount.push({
@ -1508,10 +1508,9 @@ const onSubmit = () => {
// //
submitData.waybillNumber = form.value.PackageList[0].waybillNumber; submitData.waybillNumber = form.value.PackageList[0].waybillNumber;
} }
submitData.processorEntityList = [];
// //
if (form.value.basis.processor.length) { if (form.value.basis.processor.length) {
submitData.processorEntityList = [];
form.value.basis.processor.forEach(item => { form.value.basis.processor.forEach(item => {
submitData['processorEntityList'].push({ submitData['processorEntityList'].push({
businessName: Processingoptions.value.find(res => res.value == item).label, // businessName: Processingoptions.value.find(res => res.value == item).label, //
@ -1525,8 +1524,9 @@ const onSubmit = () => {
// //
if (form.value.groundlineType == '1') { if (form.value.groundlineType == '1') {
form.value.responsibilitiesList.forEach(item => { form.value.responsibilitiesList.forEach(item => {
let businesTemp = item.Responsibleoptions.find(res => res.value == item.businessId); //
submitData['processorEntityList'].push({ submitData['processorEntityList'].push({
businessName: item.Responsibleoptions.find(res => res.value == item.businessId).label, // businessName:businesTemp?businesTemp.label:item.businessId, //
businessId: item.businessId, //ID businessId: item.businessId, //ID
conditions: 1, // conditions: 1, //
typesOf: 1, //1 2 typesOf: 1, //1 2
@ -1602,7 +1602,7 @@ const onSubmit = () => {
submitData['decreaseImageEntityList'].push({ submitData['decreaseImageEntityList'].push({
imageName: item.response.data.originalName, // imageName: item.response.data.originalName, //
imagePath: item.response.data.link, // imagePath: item.response.data.link, //
imageType: form.value.groundlineType == 1 ? 10 : 20, // imageType: form.value.basis.workOrderType == 1 ? 10 : 20, //
}); });
} }
}); });
@ -1657,7 +1657,7 @@ const onSubmit = () => {
} }
form.value.Pageloading = true; // form.value.Pageloading = true; //
// //()
if (form.value.Processed) { if (form.value.Processed) {
submitData.workOrderStatus = 30; submitData.workOrderStatus = 30;
} }

2
src/views/aftersales/aftersalesWorkOrderAddTemp.vue

@ -516,7 +516,7 @@
<div class="Transport_damage_photos" v-if="SelectType == 1 || SelectType == 3"> <div class="Transport_damage_photos" v-if="SelectType == 1 || SelectType == 3">
<span class="title">{{ <span class="title">{{
SelectType == 1 ? '运损照片' : SelectType == 3 ? '窜货照片' : '照片' SelectType == 1 ? '货损照片(2张)' : SelectType == 3 ? '窜货照片(1张)' : '照片'
}}</span> }}</span>
<el-upload <el-upload
v-model:file-list="Indexform.packList" v-model:file-list="Indexform.packList"

514
src/views/aftersales/aftersalesWorkOrderInfo.vue

@ -329,6 +329,7 @@
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
</el-form> </el-form>
<el-tabs <el-tabs
type="border-card" type="border-card"
class="el_Processingresults" class="el_Processingresults"
@ -568,9 +569,13 @@
<!-- <el-button type="primary" v-if="PermissionButton.Confirm_review" @click="ConfirmReview" <!-- <el-button type="primary" v-if="PermissionButton.Confirm_review" @click="ConfirmReview"
>确定审核 >确定审核
</el-button> --> </el-button> -->
<el-button type="primary" v-if="PermissionButton.result_returned" @click="resultreturnedFun"
>结果打回</el-button
>
<el-button type="primary" v-if="PermissionButton.work_order_completion" @click="EndJump" <el-button type="primary" v-if="PermissionButton.work_order_completion" @click="EndJump"
>完结工单</el-button >完结工单</el-button
> >
<el-button type="primary" v-if="PermissionButton.repulse" @click="BatchReturn" <el-button type="primary" v-if="PermissionButton.repulse" @click="BatchReturn"
>打回</el-button >打回</el-button
> >
@ -607,7 +612,7 @@
type="primary" type="primary"
v-if="PermissionButton.Result_determination" v-if="PermissionButton.Result_determination"
@click="ResultDetermination" @click="ResultDetermination"
>确定</el-button >处理结果确定</el-button
> >
</div> </div>
</el-card> </el-card>
@ -734,6 +739,49 @@
</div> </div>
</el-affix> </el-affix>
</div> </div>
<!-- 结果打回弹窗 -->
<el-dialog v-model="dialogReturn" title="结果打回" width="40%" draggable class="plAllret">
<el-form
v-loading="repulse"
element-loading-text="正在打回中..."
label-position="top"
label-width="100px"
:model="BatchFrom"
>
<el-form-item label="打回原因">
<el-input v-model="BatchFrom.txt" type="textarea" :rows="4" />
</el-form-item>
<el-form-item label="流转营业部">
<el-select
v-model="BatchFrom.businessDepartment"
multiple
filterable
default-first-option
:reserve-keyword="false"
placeholder="请选择活动区域"
>
<el-option
v-for="item in warehouseData"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</el-form>
<template #footer>
<span class="dialog-footer">
<el-button @click="dialogReturn = false">取消</el-button>
<el-button type="primary" @click="ConfirmReturn" :disabled="repulse">
确定
</el-button>
</span>
</template>
</el-dialog>
</template> </template>
<script setup> <script setup>
@ -751,9 +799,11 @@ import {
$_Cancelappeal, $_Cancelappeal,
$_updateWorkOrderStatus, $_updateWorkOrderStatus,
$_updateManagerConfirmed, $_updateManagerConfirmed,
$_batchRepulseCompleted,
} from '@/api/aftersales/aftersalesWorkOrder'; } from '@/api/aftersales/aftersalesWorkOrder';
import { ref, reactive, computed, onMounted } from 'vue'; import { ref, reactive, computed, onMounted } from 'vue';
import { getToken } from '@/utils/auth'; import { getToken } from '@/utils/auth';
import {AddressClosed, deepClone } from '@/utils/util';
const $router = useRouter(); const $router = useRouter();
const $route = useRoute(); const $route = useRoute();
const Indexform = ref({ const Indexform = ref({
@ -892,71 +942,78 @@ onMounted(() => {
}, 0); }, 0);
}); });
//
const PermissionButton = computed(() => { // //
// if(appeal.value)return false // const PermissionButton = computed(() => {
// else if ( $route.query.workOrderStatus != '21')return false
// return true // return {
return { // reply:true, //
// Processing_results:
// !appeal.value && // !appeal.value &&
// $route.query.workOrderStatus != '80' && // (($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '10') ||
// $route.query.workOrderStatus != '30' && // ($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '10') ||
// $route.query.workOrderStatus != '20' && // ($route.query.RouteIndexs == '3' && $ route.query.workOrderStatus == '20') ||
// $route.query.workOrderStatus != '40' && // ($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '20') ||
// $route.query.workOrderStatus != '100' && // ($route.query.RouteIndexs == '1' && $route.query.workOrderStatus == '20')), //10 20 21
// $route.query.workOrderStatus != '110' // work_order_completion:
reply:true, // // (!appeal.value &&
Processing_results: // ($route.query.RouteIndexs == '0' || $route.query.RouteIndexs == '3') &&
!appeal.value && // $route.query.workOrderStatus != '80' &&
(($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '10') || // UserPermissions.value != '' &&
($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '10') || // $route.query.workOrderStatus != '20') ||
($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '20') || // ($route.query.RouteIndexs == '2' && UserPermissions.value != ''), //
($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '20') || // repulse:
($route.query.RouteIndexs == '1' && $route.query.workOrderStatus == '20')), //10 20 21 // !appeal.value &&
work_order_completion: // (($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '10') ||
(!appeal.value && // ($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '10')) &&
($route.query.RouteIndexs == '0' || $route.query.RouteIndexs == '3') && // UserPermissions.value != '', //
$route.query.workOrderStatus != '80' && // apply_arbitration:
UserPermissions.value != '仓库客服' && // !appeal.value &&
$route.query.workOrderStatus != '20') || // (($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '70') ||
($route.query.RouteIndexs == '2' && UserPermissions.value != '仓库客服'), // // ($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '70')) &&
repulse: // UserPermissions.value != '', //
!appeal.value && // information_editing:
(($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '10') || // !appeal.value &&
($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '10')) && // (($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '10') ||
UserPermissions.value != '仓库客服', // // ($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '10')) &&
apply_arbitration: // warehouseIdState.value, //
!appeal.value && // Appeal_established: appeal.value && AppealReview.value && UserPermissions.value=='', //
(($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '70') || // Appeal_rejection: appeal.value && AppealReview.value && UserPermissions.value=='', //
($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '70')) && // Processing_confirmation:
UserPermissions.value != '仓库客服', // // (UserPermissions.value != '' &&
information_editing: // $route.query.RouteIndexs == '0' &&
!appeal.value && // $route.query.workOrderStatus == '40') ||
(($route.query.RouteIndexs == '0' && $route.query.workOrderStatus == '10') || // (UserPermissions.value != '' &&
($route.query.RouteIndexs == '3' && $route.query.workOrderStatus == '10')) && // $route.query.RouteIndexs == '9' &&
warehouseIdState.value, // // $route.query.workOrderStatus == '40'), //
Appeal_established: appeal.value && AppealReview.value && UserPermissions.value=='总部客服经理', // // Result_determination:
Appeal_rejection: appeal.value && AppealReview.value && UserPermissions.value=='总部客服经理', // // (UserPermissions.value == '' &&
Processing_confirmation: // $route.query.RouteIndexs == '0' &&
(UserPermissions.value != '仓库客服' && // $route.query.workOrderStatus == '21') ||
$route.query.RouteIndexs == '0' && // (UserPermissions.value == '' &&
$route.query.workOrderStatus == '40') || // $route.query.RouteIndexs == '2' &&
(UserPermissions.value != '仓库客服' && // $route.query.workOrderStatus == '21'), //
$route.query.RouteIndexs == '9' && // Confirm_review: UserPermissions.value == '' && $route.query.RouteIndexs == '9',
$route.query.workOrderStatus == '40'), // // };
Result_determination: // });
(UserPermissions.value == '仓库客服' &&
$route.query.RouteIndexs == '0' &&
$route.query.workOrderStatus == '21') ||
(UserPermissions.value == '仓库客服' &&
$route.query.RouteIndexs == '2' &&
$route.query.workOrderStatus == '21'), //
Confirm_review: UserPermissions.value == '总部客服经理' && $route.query.RouteIndexs == '9',
};
});
// appeal.value && AppealReview.value, // appeal.value && AppealReview.value,
//
const Fileidentifier = val => {
const url = val;
const fileName = url.substring(url.lastIndexOf('/') + 1);
const extension = fileName.substring(fileName.lastIndexOf('.') + 1);
if (extension === 'mp4') {
return 'mp4';
}
if (extension === 'png') {
return 'png';
}
if (extension === 'docx') {
return 'docx';
}
return undefined; // undefined
};
// //
const Chathistory = res => { const Chathistory = res => {
Msgloading.value = true; Msgloading.value = true;
@ -965,13 +1022,16 @@ const Chathistory = res => {
id: $route.query.id, id: $route.query.id,
}) })
.then(res => { .then(res => {
MessageContent.value = []; // MessageContent.value = []; //
res.data.data.surveyRecordEntities.forEach(item => { res.data.data.surveyRecordEntities.forEach(item => {
if(item.pictureUrl){
filetype = Fileidentifier(item.pictureUrl);
}
MessageContent.value.push({ MessageContent.value.push({
time: item.createTime, // time: item.createTime, //
content: item.processingResults, // content: item.processingResults, //
name: item.addDepartment, // name: item.addDepartment, //
username: item.addPeople, // username: item.processorName, //
img: filetype == 'png' ? item.pictureUrl : '', img: filetype == 'png' ? item.pictureUrl : '',
file: filetype == 'docx' ? item.pictureUrl : '', file: filetype == 'docx' ? item.pictureUrl : '',
mp4: filetype == 'mp4' ? item.pictureUrl : '', mp4: filetype == 'mp4' ? item.pictureUrl : '',
@ -1086,16 +1146,7 @@ const onLoad = () => {
appeal.value = true; appeal.value = true;
console.log(appeal.value, 'appeal.value'); console.log(appeal.value, 'appeal.value');
} }
//
if ($route.query.AppealReview) {
if ($route.query.AppealReview == 'false') {
console.log($route.query.AppealReview, '申诉状态');
AppealReview.value = false;
} else {
AppealReview.value = true;
console.log(AppealReview.value, '当前申诉状态');
}
}
console.log(res, '回显返回值参数'); console.log(res, '回显返回值参数');
Indexform.value = res.data.data; Indexform.value = res.data.data;
@ -1132,12 +1183,13 @@ const onLoad = () => {
// //
let sum = 0; let sum = 0;
res.data.data.personResponsibleVOS.forEach(item => {
sum = Number(item.responsibilityRatio) + sum;
});
groundlineType.value = res.data.data.discoveryNode; //
groundlineType.value = res.data.data.discoveryNode; //
if(res.data.data.personResponsibleVOS?.length){
res.data.data.personResponsibleVOS.forEach(item => {
sum = Number(item.responsibilityRatio) + sum;
});
FangAddList.value = res.data.data.personResponsibleVOS.map(res => { FangAddList.value = res.data.data.personResponsibleVOS.map(res => {
return { return {
businessName: res.businessId, //ID businessName: res.businessId, //ID
@ -1147,8 +1199,11 @@ const onLoad = () => {
tripartite: res.tripartite, // tripartite: res.tripartite, //
}; };
}); });
}
// / // /
res.data.data.processorVOList.forEach(item => { if(res.data.data.processorVOList?.length){
res.data.data.processorVOList.forEach(item => {
if (item) { if (item) {
if (item.typesOf == 2) { if (item.typesOf == 2) {
// //
@ -1159,6 +1214,8 @@ const onLoad = () => {
} }
} }
}); });
}
companyProportion.value = 100 - sum; companyProportion.value = 100 - sum;
getDictionaryBiz('result_handling').then(res => { getDictionaryBiz('result_handling').then(res => {
@ -1190,21 +1247,7 @@ const onLoad = () => {
// //
Indexform.value.resultDescription = res.data.data.processingResultsVO.resultDescription; Indexform.value.resultDescription = res.data.data.processingResultsVO.resultDescription;
CompensationParty.value = []; CompensationParty.value = [];
if (res.data.data.completionRecipientEntityList.length) {
res.data.data.completionRecipientEntityList.forEach((item, index) => {
TotalamountReceived.value += Number(item.money);
CompensationParty.value.push({
state: 1, //
num: item.money, //
// name: item.recipient, //
reason: item.reasonReceivingPayment, //
// explains: item.explains, //
cld: index + 1,
id: item.id,
warehouseId: item.warehouseId, //
});
});
}
// //
if (res.data.data.completionRecordEntities.length) { if (res.data.data.completionRecordEntities.length) {
res.data.data.completionRecordEntities.forEach((item, index) => { res.data.data.completionRecordEntities.forEach((item, index) => {
@ -1223,6 +1266,23 @@ const onLoad = () => {
}); });
}); });
} }
//
if (res.data.data.completionRecipientEntityList.length) {
res.data.data.completionRecipientEntityList.forEach((item, index) => {
TotalamountReceived.value += Number(item.money);
CompensationParty.value.push({
state: 1, //
num: item.money, //
// name: item.recipient, //
reason: item.reasonReceivingPayment, //
// explains: item.explains, //
cld: index + 1,
id: item.id,
warehouseId:item.warehouseId, //
});
});
}
// //
if (CompensationParty.value.length) { if (CompensationParty.value.length) {
CompletedView.value = CompensationParty.value.map(item => { CompletedView.value = CompensationParty.value.map(item => {
@ -1253,6 +1313,125 @@ const onLoad = () => {
}; };
onLoad(); // onLoad(); //
const isAppeal = appeal.value;
const userRole = UserPermissions.value;//
const routeIndex = $route.query.RouteIndexs;//
const workOrderStatus = $route.query.workOrderStatus;//
const isWarehouseCustomerService = userRole === '仓库客服';//
const isHeadquarterCustomerServiceManager = userRole === '总部客服经理';//
const isWarehouseIdState = warehouseIdState.value;
//
const isProcessingResults=()=>{
if(workOrderStatus =='10' || workOrderStatus === '20'){
return true
}
}
//
const isWorkOrderCompletion=()=>{
if(UserPermissions.value != '仓库客服'){
if(workOrderStatus == '30'){
return true
}
}
}
//
const isRepulse=()=> {
if(UserPermissions.value == '总部客服经理'){
if(workOrderStatus == '40'){
return true
}
}
}
//
const Resultreturned=()=>{
if(UserPermissions.value == '总部客服'){
if(workOrderStatus == '30'){
return true
}
}
}
//
const isApplyArbitration=()=>{
if(UserPermissions.value != '仓库客服'){
if( workOrderStatus === '70'){
return true
}
}
}
//
const isInformationEditing=()=>{
if(workOrderStatus === '10'){
//
if( warehouseIdState.value){
return true
}
}
}
//
const isProcessingConfirmation=()=>{
if(UserPermissions.value != '仓库客服'){
if(workOrderStatus =='40'){
return true
}
}
}
//
const isResultDetermination=()=>{
if(workOrderStatus == '21'){
return true
}
}
//
const isConfirmReview = () => {
if(UserPermissions.value == '总部客服经理'){
if(workOrderStatus == '500'){
return true
}
}
}
//
const Appealestablished=()=>{
if(UserPermissions.value == '总部客服经理'){
if($route.query.typesOf=='0'){
return true
}
}
}
//
const Appealrejection=()=>{
if(UserPermissions.value == '总部客服经理'){
if($route.query.typesOf=='0'){
return true
}
}
}
//
const PermissionButton = computed(() => ({
reply: true, //
Processing_results: isProcessingResults(),//
work_order_completion: isWorkOrderCompletion(),//
repulse: isRepulse(),//
result_returned:Resultreturned(),//
apply_arbitration: isApplyArbitration(),//
information_editing: isInformationEditing(),//
Appeal_established: Appealestablished(), //
Appeal_rejection: Appealrejection(), //
Processing_confirmation: isProcessingConfirmation(), //
Result_determination: isResultDetermination(), //
Confirm_review: isConfirmReview(),//
}));
// //
const Processingrelease = () => { const Processingrelease = () => {
if (Indexform.value.processor.length == 1 && Mydata.value.id == Indexform.value.processor[0]) { if (Indexform.value.processor.length == 1 && Mydata.value.id == Indexform.value.processor[0]) {
@ -1300,6 +1479,7 @@ const addingRecord = () => {
businessId: $route.query.workOrderNumber, businessId: $route.query.workOrderNumber,
RouteIndexs: $route.query.RouteIndexs,// RouteIndexs: $route.query.RouteIndexs,//
RouterState: 'determine', RouterState: 'determine',
workOrderStatus: $route.query.workOrderStatus, //
}, },
}); });
}; };
@ -1318,11 +1498,99 @@ const EndJump = () => {
}, },
}); });
}; };
// //
const BatchReturn = () => { const resultreturnedFun=()=>{
BatchFrom.value.businessDepartment = []; BatchFrom.value.businessDepartment =[];
BatchFrom.value.txt = null; BatchFrom.value.txt = null;
dialogReturn.value = true; dialogReturn.value = true;
}
//
const ConfirmReturn=()=>{
//
let data = {
processorList: [],
};
//
if(BatchFrom.value.businessDepartment.length){
let foundObjs = warehouseData.value.filter(obj =>
BatchFrom.value.businessDepartment.includes(obj.value)
);
data['businessId'] = foundObjs.map(item => item.value).join(',');
data['businessName'] = foundObjs.map(item => item.label).join(',');
//
foundObjs.forEach(item => {
data['processorList'].push({ id: item.value, name: item.label });
});
}
data.reasonReturn = BatchFrom.value.txt; //
data.workOrderIds =[$route.query.id]; //
console.log(data, '处理好的值');
data.typesOf='1';//
pageState.value = true; //
dialogReturn.value = false; //
$_batchReturn(data)
.then(res => {
console.log(res, '批量打回返回值');
if (res.data.code == 200) {
ElMessage({
message: res.data.msg,
type: 'success',
});
//
$useStore.commit('EDIT_REFRESHITEM', {title: 'aftersalesWorkOrder',status: true,});//
$useStore.commit('Customer_Menu',Number($route.query.RouteIndexs));//
$router.push('/aftersales/aftersalesWorkOrder');
AddressClosed('/aftersales/aftersalesWorkOrderend'); //
}
})
.catch(error => {
console.log(error, 'error');
}).finally(()=>{
pageState.value = false; //
dialogReturn.value = false; //
});
}
//
const BatchReturn = () => {
ElMessageBox.prompt('请输入打回原因', {
confirmButtonText: '确定',
cancelButtonText: '取消',
inputPattern:/^(?!\s*$).+/,
inputErrorMessage: '内容不能为空哦',
})
.then(({ value }) => {
pageState.value=true
$_batchRepulseCompleted({
workOrderIds:[$route.query.id],
reasonReturn:value
}).then(res=>{
if(res.data.code ==200){
ElMessage({
message: res.data.msg,
type: 'success',
})
$useStore.commit('EDIT_REFRESHITEM', {
title: 'aftersalesWorkOrder',
status: true,
});
$useStore.commit('Customer_Menu',9);//
$useStore.commit('DEL_TAG_CURRENT'); //
$router.push({
path: '/aftersales/aftersalesWorkOrder',
});
}
}).catch((error)=>{
console.log(error);
}).finally(()=>{
pageState.value=false
})
})
.catch(() => {
})
}; };
// //
const CustomerServiceCompleted = () => { const CustomerServiceCompleted = () => {
@ -1354,9 +1622,6 @@ const EditInformation = () => {
warehouseId: $route.query.warehouseId, warehouseId: $route.query.warehouseId,
workOrderNumber: $route.query.workOrderNumber, workOrderNumber: $route.query.workOrderNumber,
RouterState: 'Infoedit', RouterState: 'Infoedit',
EditInformation: true, //
ProcessType: $route.query.ProcessType, // 1 2
ProcessingresultsState: UserPermissions.value != '仓库客服' ? true : false, //
workOrderStatus: $route.query.workOrderStatus, // workOrderStatus: $route.query.workOrderStatus, //
}, },
}); });
@ -1375,27 +1640,26 @@ const AppealEstablished = () => {
workOrderStatus: $route.query.workOrderStatus, // workOrderStatus: $route.query.workOrderStatus, //
Appealeditor: 'appeal', // Appealeditor: 'appeal', //
appealID: $route.query.appealID, //ID appealID: $route.query.appealID, //ID
AppealEstablished: true, // typesOf:$route.query.typesOf,//012
}, },
}); });
}; };
// //
const AppealRejection = () => { const AppealRejection = () => {
ElMessageBox.confirm( ElMessageBox.prompt('请填写驳回原因', '提示', {
'是否确认申诉驳回?', confirmButtonText: '确定',
'提示', cancelButtonText: '取消',
{ inputPattern:/^(?!\s*$).+/,
confirmButtonText: '确定', inputErrorMessage: '内容不能为空哦',
cancelButtonText: '取消', })
type: 'warning', .then(({ value }) => {
} console.log(value, '驳回原因');
) let data = {
.then(() => {
let data = {
id: $route.query.appealID, //ID id: $route.query.appealID, //ID
typesOf: '2', // typesOf: '2', //
workOrderId: $route.query.id, //ID workOrderId: $route.query.id, //ID
handlingReason:value,//
}; };
$_Cancelappeal(data) $_Cancelappeal(data)
.then(res => { .then(res => {
@ -1452,7 +1716,12 @@ const ResultConfirmation = () => {
type: 'success', type: 'success',
}); });
} }
$useStore.commit('DEL_TAG_CURRENT'); // $useStore.commit('EDIT_REFRESHITEM', {
title: 'aftersalesWorkOrder',
status: true,
});
$useStore.commit('Customer_Menu', 9); //
$useStore.commit('DEL_TAG_CURRENT'); //
$router.push({ $router.push({
path: '/aftersales/aftersalesWorkOrder', path: '/aftersales/aftersalesWorkOrder',
}); });
@ -2390,6 +2659,11 @@ const ResultDetermination = () => {
display: flex; display: flex;
padding: 6px; padding: 6px;
} }
.el-overlay{
.el-image{
width: 100% !important;
}
}
} }
.el-tabs__content { .el-tabs__content {
@ -2549,4 +2823,12 @@ const ResultDetermination = () => {
} }
} }
} }
.plAllret {
:deep(.el-select) {
width: 100%;
}
.el-select {
width: 100%;
}
}
</style> </style>

429
src/views/aftersales/aftersalesWorkOrderend.vue

@ -338,8 +338,6 @@
placeholder="请选择处理结果" placeholder="请选择处理结果"
@change="changeProcessingResults" @change="changeProcessingResults"
> >
<!-- :disabled="$route.query.RouteIndexs == '0' || $route.query.RouteIndexs == '2'" -->
<el-option <el-option
v-for="item in ProcessingResults" v-for="item in ProcessingResults"
:key="item.dictKey" :key="item.dictKey"
@ -417,8 +415,6 @@
:autosize="{ minRows: 3, maxRows: 4 }" :autosize="{ minRows: 3, maxRows: 4 }"
type="textarea" type="textarea"
/> />
<!-- :disabled="$route.query.RouteIndexs == '0' || $route.query.RouteIndexs == '2'" -->
</el-form-item> </el-form-item>
<div class="el_tool"> <div class="el_tool">
<span>总金额:{{ TotalClaimAmount }}</span> <span>总金额:{{ TotalClaimAmount }}</span>
@ -486,13 +482,13 @@
</div> </div>
<div style="display: flex"> <div style="display: flex">
<div class="el_cwBtn"> <div class="el_cwBtn">
<!-- <el-button <el-button
type="primary" type="primary"
v-if="item.state == 0 && UserPermissions != '职能客服' && item.accounting!='1'" v-if="item.state == 0 && UserPermissions != '职能客服' && item.accounting!='1'"
@click="accountingBtn(item)" @click="accountingBtn(item)"
> >
财务处理 财务处理
</el-button> --> </el-button>
<el-button type="primary" @click="payremove(item.state, index)"> <el-button type="primary" @click="payremove(item.state, index)">
移除 移除
</el-button> </el-button>
@ -534,9 +530,9 @@
</div> </div>
<!-- 图片 --> <!-- 图片 -->
<div class="Transport_damage_photos" v-if="endFrom.packageImage.length"> <el-tabs class="Transport_damage_photos" type="border-card" style="width: 100%" v-if="endFrom.packageImage.length">
<span class="title">照片</span> <el-tab-pane label="照片">
<el-upload <el-upload
disabled disabled
v-model:file-list="endFrom.packageImage" v-model:file-list="endFrom.packageImage"
list-type="picture-card" list-type="picture-card"
@ -563,26 +559,9 @@
fit="cover" fit="cover"
/> />
</el-dialog> </el-dialog>
</div> </el-tab-pane>
</el-tabs>
<!-- 视频 -->
<!-- <div class="Transport_damage_photos void">
<span class="title">视频</span>
<el-upload
class="upload-demo"
drag
:action="doubledCount"
:headers="headers"
:on-success="ViodSuccess"
:disabled="$route.query.RouteIndexs == '0'"
>
<el-icon class="el-icon--upload"><upload-filled /></el-icon>
<div class="el-upload__text">
点击上传
<span v-if="videoUrl" class="PreviewVoid" @click.stop="Clickviod">点击预览</span>
</div>
</el-upload>
</div> -->
<!-- 视频预览弹窗 --> <!-- 视频预览弹窗 -->
<el-dialog v-model="VideoPreviewStatus" title="视频预览" width="40%"> <el-dialog v-model="VideoPreviewStatus" title="视频预览" width="40%">
@ -594,26 +573,36 @@
<div class="el_sub"> <div class="el_sub">
<el-button <el-button
v-if="Completepermissions" v-if="PermissionButton.Completed_submission"
type="primary" type="primary"
class="button" class="button"
@click="submitCompletion" @click="submitCompletion"
>完结提交</el-button >完结提交</el-button
> >
<el-button <el-button
v-if="$route.query.RouteIndexs != '0' && $route.query.RouterState == 'determine'" v-if="PermissionButton.Submission_results"
type="primary" type="primary"
class="button" class="button"
@click="submitresults(1)" @click="submitresults(1)"
>处理结果提交</el-button >处理结果提交</el-button
> >
<el-button <el-button
v-if="$route.query.RouteIndexs != '0' && $route.query.RouterState == 'determine'" v-if="PermissionButton.Save_results"
type="primary" type="primary"
class="button" class="button"
@click="submitresults(2)" @click="submitresults(2)"
>处理结果保存</el-button >处理结果保存</el-button
> >
<el-button
v-if="PermissionButton.Processing_result_modification"
type="primary"
class="button"
@click="submitresults(3)"
>处理结果修改</el-button
>
<!-- <el-button <!-- <el-button
@click="DetermineStorage" @click="DetermineStorage"
v-if="$route.query.RouteIndexs != '0'" v-if="$route.query.RouteIndexs != '0'"
@ -623,11 +612,11 @@
> --> > -->
<el-button <el-button
v-if="$route.query.workOrderStatus == '10' && UserPermissions != '仓库客服'" v-if="PermissionButton.Arbitration_completed"
type="primary" type="primary"
class="button" class="button"
@click="CustomerServiceCompleted" @click="CustomerServiceCompleted"
>客服完结完结</el-button >客服仲裁完结</el-button
> >
<!-- <el-button <!-- <el-button
v-if="$route.query.RouteIndexs == '0' && $route.query.workOrderStatus != '21'" v-if="$route.query.RouteIndexs == '0' && $route.query.workOrderStatus != '21'"
@ -647,7 +636,6 @@
<el-tab-pane label="调查记录"> <el-tab-pane label="调查记录">
<div class="el_header-top"> <div class="el_header-top">
<div class="el_Processingparty"> <div class="el_Processingparty">
<span>回复</span>
<el-select <el-select
v-model="MessageResponsibility" v-model="MessageResponsibility"
multiple multiple
@ -769,11 +757,12 @@
<div class="inputbtn"> <div class="inputbtn">
<div class="inputleft"> <div class="inputleft">
<el-upload <el-upload
ref="uploadRef" ref="fileDom"
class="upload-demo" class="upload-demo"
:action="doubledCount" :action="doubledCount"
:headers="headers" :headers="headers"
:on-success="fellSuccess" :on-success="fellSuccess"
:limit='1'
> >
<template #trigger> <template #trigger>
<el-button type="primary" class="el-fil">上传附件</el-button> <el-button type="primary" class="el-fil">上传附件</el-button>
@ -812,43 +801,11 @@
@input="appoint(Msgtextarea)" @input="appoint(Msgtextarea)"
/> />
<div class="msgHf"> <div class="msgHf">
<!-- <el-button type="primary" @click="replyMessageEnd()"> 结束回复 </el-button> -->
<el-button type="primary" @click="replyMessage()"> 回复 </el-button> <el-button type="primary" @click="replyMessage()"> 回复 </el-button>
</div> </div>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="操作记录">
<div class="ovhe" :style="{ height: msgHight + 'px' }" ref="scrollContainer">
<el-timeline style="max-width: 600px">
<el-timeline-item timestamp="2018/4/12" placement="top">
<el-card>
<div>
<span>操作人</span>
<h4>Update Github template</h4>
</div>
<div>
<span>操作事件</span>
<p>Tom committed 2018/4/12 20:46</p>
</div>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="2018/4/3" placement="top">
<el-card>
<h4>Update Github template</h4>
<p>Tom committed 2018/4/3 20:46</p>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="2018/4/2" placement="top">
<el-card>
<h4>Update Github template</h4>
<p>Tom committed 2018/4/2 20:46</p>
</el-card>
</el-timeline-item>
</el-timeline>
</div>
</el-tab-pane>
</div> </div>
<!-- <el-tab-pane label="菜单2"></el-tab-pane> --> <!-- <el-tab-pane label="菜单2"></el-tab-pane> -->
@ -960,6 +917,7 @@ const routeData = ref(false); //路由参数
const groundlineType = ref(''); // const groundlineType = ref(''); //
const routerState = ref(''); // const routerState = ref(''); //
const TotalamountCompensation = ref(0); // const TotalamountCompensation = ref(0); //
const fileDom=ref(null);//
const TotalClaimAmount = ref(0); // const TotalClaimAmount = ref(0); //
const TotalamountReceived = ref(0); // const TotalamountReceived = ref(0); //
const personResponsibleList = ref([]); // const personResponsibleList = ref([]); //
@ -1174,6 +1132,53 @@ async function updateDictionary(targetArray, dictionaryType) {
}); });
} }
//
const Completedsubmission=()=>{
if(UserPermissions.value !='仓库客服'){
if($route.query.workOrderStatus =='30'){
return true
}
}
}
//
const Submissionresults=()=>{
if( ['10','20'].includes($route.query.workOrderStatus)){
return true
}
}
//
const Saveresults=()=>{
if(['10','20'].includes($route.query.workOrderStatus)){
return true
}
}
//
const Processingresultmodification=()=>{
if(['90'].includes($route.query.workOrderStatus)){
return true
}
}
//
const Arbitrationcompleted =()=>{
if(UserPermissions.value !='仓库客服'){
if($route.query.workOrderStatus =='10'){
return true
}
}
}
//
const PermissionButton = computed(() => ({
Completed_submission: Completedsubmission(),//
Submission_results:Submissionresults(),//
Save_results:Saveresults(),//
Arbitration_completed:Arbitrationcompleted(),//
Processing_result_modification:Processingresultmodification(),//
}));
// //
const onLoad = async () => { const onLoad = async () => {
Pageloading.value = true; // Pageloading.value = true; //
@ -1252,7 +1257,7 @@ const onLoad = async () => {
} }
if(res.data.data.personResponsibleVOS?.length){
let factorydata = res.data.data.personResponsibleVOS.find(item => item.typesOf); let factorydata = res.data.data.personResponsibleVOS.find(item => item.typesOf);
if (factorydata && factorydata.typesOf) { if (factorydata && factorydata.typesOf) {
groundlineType.value = true; // groundlineType.value = true; //
@ -1267,11 +1272,13 @@ const onLoad = async () => {
tripartite: res.tripartite, // tripartite: res.tripartite, //
}; };
}); });
}
if(res.data.data.processorVOList?.length){
// //
res.data.data.processorVOList.forEach(item => { res.data.data.processorVOList.forEach(item => {
if (item) { if (item) {
if (item.typesOf == 2 && item.processingStatus == '1') { if (item.typesOf == '2' && item.processingStatus == '1') {
// //
endFrom.value.processor.push(item.businessId); endFrom.value.processor.push(item.businessId);
MessageResponsibility.value.push(item.businessId); MessageResponsibility.value.push(item.businessId);
@ -1279,6 +1286,8 @@ const onLoad = async () => {
} }
} }
}); });
}
console.log(JSON.parse(localStorage.getItem('my_data')).id); console.log(JSON.parse(localStorage.getItem('my_data')).id);
if (UserPermissions.value == '仓库客服') { if (UserPermissions.value == '仓库客服') {
if (localStorage.getItem('my_data')) { if (localStorage.getItem('my_data')) {
@ -1292,7 +1301,8 @@ const onLoad = async () => {
// //
let sum = 0; let sum = 0;
FangAddList.value.forEach(item => { if( FangAddList.value.length){
FangAddList.value.forEach(item => {
if (item.responsibilityRatio) { if (item.responsibilityRatio) {
item.responsibilityRatio = item.responsibilityRatio.replace(/%/g, ''); item.responsibilityRatio = item.responsibilityRatio.replace(/%/g, '');
sum = Number(item.responsibilityRatio) + sum; sum = Number(item.responsibilityRatio) + sum;
@ -1301,6 +1311,7 @@ const onLoad = async () => {
FangAddList.value.forEach(item => { FangAddList.value.forEach(item => {
item.responsibilityRatio = item.responsibilityRatio + '%'; item.responsibilityRatio = item.responsibilityRatio + '%';
}); });
}
companyProportion.value = 100 - sum; companyProportion.value = 100 - sum;
// //
if (res.data.data.processingResultsVO.processingMoneyEntityList) { if (res.data.data.processingResultsVO.processingMoneyEntityList) {
@ -1326,25 +1337,10 @@ const onLoad = async () => {
TotalClaimAmount.value = res.data.data.processingResultsVO.money; TotalClaimAmount.value = res.data.data.processingResultsVO.money;
// //
endFrom.value.resultDescription = res.data.data.processingResultsVO.resultDescription; endFrom.value.resultDescription = res.data.data.processingResultsVO.resultDescription;
//
//
if (res.data.data.completionRecipientEntityList.length > 0) {
CompensationParty.value = [];
res.data.data.completionRecipientEntityList.forEach((item, index) => {
TotalamountReceived.value += Number(item.money);
CompensationParty.value.push({
state: 1, //
num: item.money, //
name: item.recipient, //
reason: item.reasonReceivingPayment, //
cld: index + 1,
id: item.id,
});
});
}
// //
if (res.data.data.completionRecordEntities.length) { if (res.data.data.completionRecordEntities.length) {
CompensationParty.value = [];
res.data.data.completionRecordEntities.forEach((item, index) => { res.data.data.completionRecordEntities.forEach((item, index) => {
TotalamountCompensation.value += Number(item.money); TotalamountCompensation.value += Number(item.money);
CompensationParty.value.push({ CompensationParty.value.push({
@ -1360,6 +1356,23 @@ const onLoad = async () => {
}); });
}); });
} }
//
//
if (res.data.data.completionRecipientEntityList.length) {
res.data.data.completionRecipientEntityList.forEach((item, index) => {
TotalamountReceived.value += Number(item.money);
CompensationParty.value.push({
state: 1, //
num: item.money, //
name: item.recipient, //
reason: item.reasonReceivingPayment, //
warehouseId: item.warehouseId, //
cld: index + 1,
id: item.id,
});
});
}
endFrom.value.arbitrate = res.data.data.reasonArbitration; // endFrom.value.arbitrate = res.data.data.reasonArbitration; //
Pageloading.value = false; Pageloading.value = false;
}); });
@ -1421,11 +1434,12 @@ const Chathistory = res => {
.then(res => { .then(res => {
console.log(res, 'res调查记录'); console.log(res, 'res调查记录');
res.data.data.surveyRecordEntities.forEach(item => { res.data.data.surveyRecordEntities.forEach(item => {
MessageContent.value.unshift({ filetype = Fileidentifier(item.pictureUrl);
MessageContent.value.unshift ({
time: item.createTime, // time: item.createTime, //
content: item.processingResults, // content: item.processingResults, //
name: item.addDepartment, // name: item.addDepartment, //
username: item.addPeople, // username: item.processorName, //
img: filetype == 'png' ? item.pictureUrl : '', img: filetype == 'png' ? item.pictureUrl : '',
file: filetype == 'docx' ? item.pictureUrl : '', file: filetype == 'docx' ? item.pictureUrl : '',
mp4: filetype == 'mp4' ? item.pictureUrl : '', mp4: filetype == 'mp4' ? item.pictureUrl : '',
@ -1466,9 +1480,9 @@ const Chathistory = res => {
} }
MessageContent.value.push({ MessageContent.value.push({
time: item.createTime, // time: item.createTime, //
content: item.content, // content: item.processingResults, //
name: item.addDepartment, // name: item.addDepartment, //
username: item.addPeople, // username: item.processorName, //
img: filetype == 'png' ? item.pictureUrl : '', img: filetype == 'png' ? item.pictureUrl : '',
file: filetype == 'docx' ? item.pictureUrl : '', file: filetype == 'docx' ? item.pictureUrl : '',
mp4: filetype == 'mp4' ? item.pictureUrl : '', mp4: filetype == 'mp4' ? item.pictureUrl : '',
@ -1804,22 +1818,7 @@ const ProportionInput = val => {
companyProportion.value = sum; companyProportion.value = sum;
console.log(sum, '公司占比'); console.log(sum, '公司占比');
}; };
//
const Completepermissions =computed(()=>{
if(UserPermissions.value != '仓库客服'){
if( $route.query.RouteIndexs != '0'){
if($route.query.RouterState == 'end'){
return true
}else{
return false
}
}else{
return false
}
}else{
return false
}
})
// //
const accountingBtn = item => { const accountingBtn = item => {
@ -1988,13 +1987,6 @@ const PaymentConfirmation = val => {
// //
const submitresults = async value => { const submitresults = async value => {
if (!endFrom.value.result.length) {
ElMessage({
message: `请选择选择处理结果`,
type: 'warning',
});
return;
}
let _title = value == 1 ? '提交' : '保存'; let _title = value == 1 ? '提交' : '保存';
let _message = `注意信息填写正确!点击确定将<span style="color: red;">${_title}处理结果</span>是否继续?`; let _message = `注意信息填写正确!点击确定将<span style="color: red;">${_title}处理结果</span>是否继续?`;
ElMessageBox.confirm(_message, '提示', { ElMessageBox.confirm(_message, '提示', {
@ -2011,10 +2003,13 @@ const submitresults = async value => {
processingMoneyEntityList: [], // processingMoneyEntityList: [], //
}, },
}; };
console.log(ProcessingResults.value, 'ProcessingResults.value'); //
ProcessingList.value.forEach(item => { if(endFrom.value.result){
let _DATA = item.Paymentmethod.find(res => res.value == item.compensationMethod); if(ProcessingList.value?.length){
data.aftersalesProcessingResultsDTO['processingMoneyEntityList'].push({ //
ProcessingList.value.forEach(item => {
let _DATA = item.Paymentmethod.find(res => res.value == item.compensationMethod);
data.aftersalesProcessingResultsDTO['processingMoneyEntityList'].push({
resultType: ProcessingResults.value.find(res => res.dictValue == item.title).dictKey, //key resultType: ProcessingResults.value.find(res => res.dictValue == item.title).dictKey, //key
resultName: item.title, // resultName: item.title, //
money: item.money, // money: item.money, //
@ -2026,53 +2021,49 @@ const submitresults = async value => {
}); });
}); });
// //
data.aftersalesProcessingResultsDTO.compensationMethod = data.aftersalesProcessingResultsDTO[ data.aftersalesProcessingResultsDTO.compensationMethod = data.aftersalesProcessingResultsDTO['processingMoneyEntityList'].map(res => res.compensationMethodName).join(',');
'processingMoneyEntityList'
]
.map(res => res.compensationMethodName)
.join(',');
// //
data.aftersalesProcessingResultsDTO.paymentUnit = data.aftersalesProcessingResultsDTO[ data.aftersalesProcessingResultsDTO.paymentUnit = data.aftersalesProcessingResultsDTO['processingMoneyEntityList'].map(res => res.paymentUnit).join(',');
'processingMoneyEntityList'
]
.map(res => res.paymentUnit)
.join(',');
// //
(data.aftersalesProcessingResultsDTO.resultDescription = endFrom.value.resultDescription), data.aftersalesProcessingResultsDTO.resultDescription = endFrom.value.resultDescription;
// //
(data.aftersalesProcessingResultsDTO.resultType = data.aftersalesProcessingResultsDTO[ data.aftersalesProcessingResultsDTO.resultType = data.aftersalesProcessingResultsDTO['processingMoneyEntityList'].map(res => res.resultName).join(',');
'processingMoneyEntityList'
]
.map(res => res.resultName)
.join(','));
// //
data.aftersalesProcessingResultsDTO.money = TotalClaimAmount.value; data.aftersalesProcessingResultsDTO.money = TotalClaimAmount.value;
}
}
//ID //ID
data.aftersalesProcessingResultsDTO.workOrderId = $route.query.id; data.aftersalesProcessingResultsDTO.workOrderId = $route.query.id;
//ID //ID
data.aftersalesProcessingResultsDTO.warehouseId = endFrom.value.warehouseId; //ID data.aftersalesProcessingResultsDTO.warehouseId = endFrom.value.warehouseId;
//ID //ID
data.id = $route.query.id; data.id = $route.query.id;
//(0) // //(0)
if (!data.aftersalesProcessingResultsDTO.money && value == '1') { // if (!data.aftersalesProcessingResultsDTO.money && value == '1') {
let _message = `检测到您<span style="color: red;">未填写金额</span>是否提交到理赔金额未出?`; // let _message = `<span style="color: red;"></span>?`;
await ElMessageBox.confirm(_message, '提示', { // await ElMessageBox.confirm(_message, '', {
dangerouslyUseHTMLString: true, // dangerouslyUseHTMLString: true,
confirmButtonText: '确认', // confirmButtonText: '',
cancelButtonText: '取消', // cancelButtonText: '',
type: 'warning', // type: 'warning',
}) // })
.then(() => { // .then(() => {
data.claimIdentification = '1'; // data.claimIdentification = '1';
ElMessage({ // ElMessage({
type: 'success', // type: 'success',
message: '已确定选择', // message: '',
}); // });
}) // })
.catch(() => {}); // .catch(() => {});
// }
// ()
if(value == 2){
data.claimIdentification = '1';
} }
// ||
Pageloading.value=true
if(value == 1 || value ==2){
console.log(data, '要提交的参数'); console.log(data, '要提交的参数');
Pageloading.value = true;
$_addProcessingResults(data) $_addProcessingResults(data)
.then(res => { .then(res => {
if (res.data.code == 200) { if (res.data.code == 200) {
@ -2094,6 +2085,62 @@ const submitresults = async value => {
.finally(res => { .finally(res => {
Pageloading.value = false; Pageloading.value = false;
}); });
}else{
data.resultIdentification=2, //
data.claimIdentification = '1'//
data.aftersalesProcessingResultsDTO.id=$route.query.subId
//
console.log(data,'要提交数据');
$_addProcessingResults(data).then(res=>{
console.log(res,'编辑成功');
if(res.data.code == 200){
ElMessage({
message: res.data.msg,
type: 'success',
})
//
ElMessageBox.confirm(
'修改成功,是否保存处理结果?',
'提示',
{
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}
)
.then(() => {
data.resultIdentification=1, //
delete data.claimIdentification;//
$_addProcessingResults(data).then(res=>{
if(res.data.code ==200){
ElMessage({
message: res.data.msg,
type: 'success',
})
//
$useStore.commit('EDIT_REFRESHITEM', {title: 'aftersalesWorkOrder',status: true,});//
$useStore.commit('Customer_Menu',Number($route.query.RouteIndexs));//
$router.push('/aftersales/aftersalesWorkOrder');
AddressClosed('/aftersales/aftersalesWorkOrderend'); //
}
}).catch((error)=>{
console.log(error);
}).finally(()=>{
Pageloading.value = false;
})
})
.catch(() => {
//
$useStore.commit('EDIT_REFRESHITEM', {title: 'aftersalesWorkOrder',status: true,});//
$useStore.commit('Customer_Menu',Number($route.query.RouteIndexs));//
$router.push('/aftersales/aftersalesWorkOrder');
AddressClosed('/aftersales/aftersalesWorkOrderend'); //
}).finally(()=>{
})
}
})
}
}) })
.catch(error => { .catch(error => {
console.log(error, 'error'); console.log(error, 'error');
@ -2102,11 +2149,13 @@ const submitresults = async value => {
// () // ()
const submitCompletion = () => { const submitCompletion = () => {
console.log( CompensationParty.value); console.log(CompensationParty.value,'完结填写的参数');
let _warehouseId= CompensationParty.value.find(res=>!res.warehouseId) // state:0
// state:1
let _warehouseId=CompensationParty.value.filter(item=>item.state===0).find(res=>!res.warehouseId)
if(_warehouseId){ if(_warehouseId){
ElMessage({ ElMessage({
message: `有赔款方或受款方仓库未选择`, message: `有赔款方未选择仓库`,
type: 'warning', type: 'warning',
}); });
return return
@ -2129,35 +2178,34 @@ const submitCompletion = () => {
reasonArbitration: endFrom.value.arbitrate, // reasonArbitration: endFrom.value.arbitrate, //
}, },
]; ];
console.log(endFrom.value.duty, '责任方');
console.log('赔款总计金额', TotalamountCompensation.value); console.log('赔款总计金额', TotalamountCompensation.value);
console.log('收款总计金额', TotalamountReceived.value); console.log('收款总计金额', TotalamountReceived.value);
if( CompensationParty.value.length){ if( CompensationParty.value.length){
CompensationParty.value.forEach(item => { CompensationParty.value.forEach(item => {
if (item.state == 0) { if (item.state == 0) {
let warehouseName_A = warehouseData.value.find(res=>res.value == item.warehouseId)
console.log(warehouseData.value,'warehouseData.value');
console.log(item.warehouseId,'item.warehouseId.value');
console.log(warehouseName_A,'warehouseName');
// //
data[0]['completionRecordEntities'].push({ data[0]['completionRecordEntities'].push({
indemnitor:warehouseName_A?warehouseName_A.label:'',
reason: item.reason, // reason: item.reason, //
money: item.num, // money: item.num, //
reasonArbitration: endFrom.value.arbitrate, //
compensationPersonnel: item.compensationPersonnel, // compensationPersonnel: item.compensationPersonnel, //
warehouseId: item.warehouseId, //ID warehouseId: item.warehouseId, //ID
explains: item.reason, //
workOrderId: info.id, // workOrderId: info.id, //
}); });
} else { }
if(item.state == 1) {
let warehouseName_B = warehouseData.value.find(res=>res.value == item.warehouseId)
// //
console.log(warehouseName_B);
data[0]['completionRecipientEntities'].push({ data[0]['completionRecipientEntities'].push({
indemnitor:warehouseName_B?warehouseName_B.label:'',
reasonReceivingPayment: item.reason, // reasonReceivingPayment: item.reason, //
money:item.num, // money:item.num, //
responsibleParty: FangAddList.value responsibleParty:FangAddList.value.map(aItem =>warehouseData.value.filter(bItem => bItem.value === aItem.businessName).map(match => match.label).join(',')).join(','),
.map(aItem =>
warehouseData.value
.filter(bItem => bItem.value === aItem.businessName)
.map(match => match.label)
.join(',')
)
.join(','),
warehouseId: item.warehouseId, //ID warehouseId: item.warehouseId, //ID
workOrderNumber: info.workOrderNumber, // workOrderNumber: info.workOrderNumber, //
workOrderId: info.id, // workOrderId: info.id, //
@ -2479,25 +2527,9 @@ const submitCompletions = async val => {
.catch(() => {}); .catch(() => {});
} }
}; };
//
const replyMessageEnd = () => {
const message = `是否确定<span style="color: red;">结束回复</span>?`;
ElMessageBox.confirm(message, '提示', {
dangerouslyUseHTMLString: true,
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
})
.then(() => {
ElMessage({
message: '功能维护中...',
type: 'warning',
});
})
.catch(() => {});
};
// //
const replyMessage = () => { const replyMessage = () => {
console.log(KFfeel.value,'附件列表');
console.log(endFrom.value, 'endFrom.value'); console.log(endFrom.value, 'endFrom.value');
console.log(endFrom.value.workOrderType, '类型'); console.log(endFrom.value.workOrderType, '类型');
if (!Msgtextarea.value) { if (!Msgtextarea.value) {
@ -2548,6 +2580,7 @@ const replyMessage = () => {
console.log(res, '消息回复成功'); console.log(res, '消息回复成功');
if (res.data.code == 200) { if (res.data.code == 200) {
Chathistory(); // Chathistory(); //
fileDom.value.clearFiles();//
ElMessage({ ElMessage({
message: res.data.msg, message: res.data.msg,
type: 'success', type: 'success',
@ -2658,7 +2691,7 @@ const CustomerServiceCompleted = () => {
path: '/aftersales/aftersalesWorkOrdermodify', path: '/aftersales/aftersalesWorkOrdermodify',
query: { query: {
id: $route.query.id, id: $route.query.id,
name: $route.query.businessId + '-客服完结完结', name: $route.query.businessId + '-客服仲裁完结',
businessId: $route.query.businessId, businessId: $route.query.businessId,
warehouseId: $route.query.warehouseId ? $route.query.warehouseId : '', warehouseId: $route.query.warehouseId ? $route.query.warehouseId : '',
workOrderNumber: $route.query.workOrderNumber, workOrderNumber: $route.query.workOrderNumber,
@ -2783,23 +2816,7 @@ const CustomerServiceCompleted = () => {
width: 100%; width: 100%;
margin-top: 40px; margin-top: 40px;
} }
.Transport_damage_photos {
width: 100%;
display: flex;
margin-top: 26px;
.title {
width: 100px;
color: #606266;
font-size: 14px;
margin-bottom: 9px;
display: block;
}
:deep(.el-upload-dragger) {
display: flex;
align-items: center;
justify-content: center;
}
}
.upload-demo { .upload-demo {
width: 100%; width: 100%;
} }
@ -3312,6 +3329,10 @@ const CustomerServiceCompleted = () => {
.el-upload { .el-upload {
display: none; display: none;
} }
.is-active{
font-weight: bold;
}
} }
:deep(.topClass) { :deep(.topClass) {
border-bottom: none; border-bottom: none;

5353
src/views/aftersales/aftersalesWorkOrdermodify.vue

File diff suppressed because it is too large Load Diff

5037
src/views/aftersales/aftersalesWorkOrdermodifyTemp.vue

File diff suppressed because it is too large Load Diff

119
src/views/basicdata/brand/basicClient.vue

@ -20,7 +20,7 @@
</el-form-item> </el-form-item>
<el-form-item label="地址:"> <el-form-item label="地址:">
<el-cascader :options="optioner" v-model="query.bladeRegionProvinceId"> <el-cascader :options="optioner" v-model="query.bladeRegionProvinceId" :props="{ checkStrictly: true }">
<template #default="{ node, data }"> <template #default="{ node, data }">
<span>{{ data.label }}</span> <span>{{ data.label }}</span>
<span v-if="!node.isLeaf"> ({{ data.children.length }}) </span> <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
@ -214,17 +214,21 @@
:before-close="beforeClose" :before-close="beforeClose"
:close-on-click-modal="false" :close-on-click-modal="false"
append-to-body append-to-body
> >
<div v-loading="loadingObj.submitLoading"> <div v-loading="loadingObj.submitLoading">
<el-form :disabled="view" ref="form" :model="form" :rules="rules" label-width="120px"> <el-form :disabled="view" ref="form" :model="form" :rules="rules" label-width="120px">
<!-- 表单字段 --> <!-- 表单字段 -->
<el-form-item label="客户编码" prop="clientCode"> <el-form-item label="客户编码" prop="clientCode">
<!-- :validate-method="validateInput" -->
<!-- :disabled="viewClientEntd" -->
<el-input <el-input
v-model="form.clientCode" v-model="form.clientCode"
:validate-method="validateInput"
placeholder="请输入客户编码" placeholder="请输入客户编码"
style="width: 100%" style="width: 100%"
:disabled="viewClientEntd" disabled
/> />
</el-form-item> </el-form-item>
<el-form-item label="客户名称" prop="clientName"> <el-form-item label="客户名称" prop="clientName">
@ -303,14 +307,14 @@
<el-form-item label="联系电话" prop="phone" v-if="viewEntd"> <el-form-item label="联系电话" prop="phone" v-if="viewEntd">
<el-input v-model="form.phone" placeholder="请输入联系电话" style="width: 100%" /> <el-input v-model="form.phone" placeholder="请输入联系电话" style="width: 100%" />
</el-form-item> </el-form-item>
<el-form-item label="地址" prop="bladeRegionProvinceId"> <el-form-item label="地址" prop="bladeRegionProvinceId" >
<!-- <el-input v-model="form.bladeRegionProvinceId" placeholder="请输入省份"/>--> <!-- <el-input v-model="form.bladeRegionProvinceId" placeholder="请输入省份"/>-->
<el-cascader <el-cascader
:options="optioner" :options="optioner"
style="width: 100%" style="width: 100%"
v-model="form.bladeRegionProvinceId" v-model="form.bladeRegionProvinceId"
:props="{ :props="{
checkStrictly: false, checkStrictly: true,
}" }"
filterable filterable
> >
@ -511,6 +515,7 @@ export default {
data() { data() {
return { return {
excelForm: {}, excelForm: {},
fromloading:true,
excelBox: false, excelBox: false,
excelOption: { excelOption: {
submitBtn: false, submitBtn: false,
@ -527,7 +532,7 @@ export default {
res: 'data', res: 'data',
}, },
tip: '请上传 .xls,.xlsx 标准格式文件', tip: '请上传 .xls,.xlsx 标准格式文件',
action: '/api/logpm-basicdata/basicdataClient/import-basicDataClient', action: '/api/blade-resource/oss/endpoint/put-file',
}, },
{ {
label: '模板下载', label: '模板下载',
@ -580,11 +585,21 @@ export default {
sortable: true, sortable: true,
head: false, head: false,
}, },
{
prop: 'brandName',
label: '品牌',
type: 2,
values: '',
width: '130',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{ {
prop: 'linkman', prop: 'linkman',
label: '联系人', label: '联系人',
type: 1, type: 2,
values: '', values: '',
width: '130', width: '130',
checkarr: [], checkarr: [],
@ -595,7 +610,7 @@ export default {
{ {
prop: 'phone', prop: 'phone',
label: '联系电话', label: '联系电话',
type: 1, type: 2,
values: '', values: '',
width: '130', width: '130',
checkarr: [], checkarr: [],
@ -606,10 +621,27 @@ export default {
{ {
prop: 'typeServiceName', prop: 'typeServiceName',
label: '配送类型', label: '配送类型',
type: 1, type: 3,
values: '', values: '',
width: '130', width: '130',
checkarr: [], checkarr: [{
value: '1',
label: '商配',
},
{
value: '2',
label: '市配',
},
{
value: '3',
label: '自提',
},
{
value: '4',
label: '三方中转',
},
],
fixed: false, fixed: false,
sortable: true, sortable: true,
head: false, head: false,
@ -672,7 +704,7 @@ export default {
{ {
prop: 'contractStartTime', prop: 'contractStartTime',
label: '合同开始时间', label: '合同开始时间',
type: 5, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -682,7 +714,7 @@ export default {
{ {
prop: 'contractEntTime', prop: 'contractEntTime',
label: '合同结束时间', label: '合同结束时间',
type: 5, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -853,10 +885,9 @@ export default {
'Blade-Auth': 'Bearer ' + getToken(), 'Blade-Auth': 'Bearer ' + getToken(),
}; };
}, },
// action() { action() {
// return '/api/blade-resource/oss/endpoint/put-file'; return '/api/blade-resource/oss/endpoint/put-file';
// // return '/api/blade-resource/oss/endpoint/put-file-attach' },
// },
}, },
methods: { methods: {
uploadAfter(res, done, loading, column) { uploadAfter(res, done, loading, column) {
@ -1246,7 +1277,22 @@ export default {
this.form.bladeRegionCityId = this.form.bladeRegionProvinceId[1]; this.form.bladeRegionCityId = this.form.bladeRegionProvinceId[1];
this.form.bladeRegionAreaId = this.form.bladeRegionProvinceId[2]; this.form.bladeRegionAreaId = this.form.bladeRegionProvinceId[2];
this.form.bladeRegionProvinceId = this.form.bladeRegionProvinceId[0]; this.form.bladeRegionProvinceId = this.form.bladeRegionProvinceId[0];
console.log('上传llll>>>', this.form); console.log('上传llll>>>', this.form);
//
const startTime = new Date(this.form.contractStartTime);//
const endTime = new Date(this.form.contractEntTime);//
//
if (startTime.getTime() > endTime.getTime()) {
//
this.$message({
type: 'warning',
message: '结束时间不能小于开始时间!',
});
return
}
await add(this.form); await add(this.form);
this.box = false; this.box = false;
this.onLoad(this.page); this.onLoad(this.page);
@ -1275,6 +1321,18 @@ export default {
this.form.bladeRegionCityId = this.form.bladeRegionProvinceId[1]; this.form.bladeRegionCityId = this.form.bladeRegionProvinceId[1];
this.form.bladeRegionAreaId = this.form.bladeRegionProvinceId[2]; this.form.bladeRegionAreaId = this.form.bladeRegionProvinceId[2];
this.form.bladeRegionProvinceId = this.form.bladeRegionProvinceId[0]; this.form.bladeRegionProvinceId = this.form.bladeRegionProvinceId[0];
//
const startTime = new Date(this.form.contractStartTime);//
const endTime = new Date(this.form.contractEntTime);//
//
if (startTime.getTime() > endTime.getTime()) {
//
this.$message({
type: 'warning',
message: '结束时间不能小于开始时间!',
});
return
}
await update(this.form); await update(this.form);
this.box = false; this.box = false;
this.onLoad(this.page); this.onLoad(this.page);
@ -1298,12 +1356,19 @@ export default {
this.title = '新增'; this.title = '新增';
this.form = {}; this.form = {};
this.fileList = []; this.fileList = [];
this.viewEntd = true;
this.box = true; this.box = true;
this.distriType = false; this.distriType = false;
this.viewClientEntd = false; this.viewClientEntd = false;
getListCode().then(res=>{
console.log(res);
if(res.data.code ==200){
this.form.clientCode=res.data.data
}
})
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.form.resetFields(); this.$refs.form.resetFields();
this.form.defaultPaymentMethods = '1'; this.form.defaultPaymentMethods = '3';
}); });
}, },
handleAddSon(row) { handleAddSon(row) {
@ -1533,10 +1598,10 @@ export default {
onLoad(page, params = {}) { onLoad(page, params = {}) {
this.loading = true; this.loading = true;
// console.log('-=-=', this.query); // console.log('-=-=', this.query);
if (this.dataShi.length > 0) { if (this.dataShi?.length) {
// console.log('-=-=', this.dataShi); // console.log('-=-=', this.dataShi);
this.query.contractStartTime = this.dataShi[0]; this.query.startDate = this.dataShi[0];
this.query.contractEntTime = this.dataShi[1]; this.query.endDate = this.dataShi[1];
} }
if (!!this.query.bladeRegionProvinceId) { if (!!this.query.bladeRegionProvinceId) {
this.query.bladeRegionCityId = this.query.bladeRegionProvinceId[1]; this.query.bladeRegionCityId = this.query.bladeRegionProvinceId[1];
@ -1720,4 +1785,16 @@ export default {
font-weight: bold; font-weight: bold;
color: var(--el-color-primary); color: var(--el-color-primary);
} }
:deep(.header_search){
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
.el-btn{
.el-form-item__content{
justify-content: flex-end;
}
}
}
</style> </style>

22
src/views/basicdata/brand/basicStorageServices.vue

@ -123,12 +123,12 @@
multiple multiple
reserve-keyword reserve-keyword
placeholder="请输入发站仓库" placeholder="请输入发站仓库"
:remote-method="remoteWarehouseList" :remote-method="remoteServeWarehouseList"
:loading="loading" :loading="loading"
style = "width: 100%" style = "width: 100%"
> >
<el-option <el-option
v-for="item in warehouseOptions" v-for="item in warehouseServeOptions"
:key="item.id" :key="item.id"
:label="item.name" :label="item.name"
:value="item.id" :value="item.id"
@ -141,12 +141,12 @@
remote remote
reserve-keyword reserve-keyword
placeholder="请输入发站仓库" placeholder="请输入发站仓库"
:remote-method="remoteWarehouseList" :remote-method="remoteServeWarehouseList"
:loading="loading" :loading="loading"
style = "width: 100%" style = "width: 100%"
> >
<el-option <el-option
v-for="item in warehouseOptions" v-for="item in warehouseServeOptions"
:key="item.id" :key="item.id"
:label="item.name" :label="item.name"
:value="item.id" :value="item.id"
@ -355,13 +355,13 @@ export default {
console.log(this.warehouseOptions,'warehouseOptions,发展'); console.log(this.warehouseOptions,'warehouseOptions,发展');
console.log(this.form.sendWarehouseIds,'this.form.sendWarehouseIds'); console.log(this.form.sendWarehouseIds,'this.form.sendWarehouseIds');
let ids='' let ids=''
ids= this.warehouseOptions.find(res=>res.id==this.form.sendWarehouseIds).id ids= this.warehouseServeOptions.find(res=>res.id==this.form.sendWarehouseIds).id
this.form.sendWarehouseIds =[] this.form.sendWarehouseIds =[]
this.form.sendWarehouseIds.push(ids) this.form.sendWarehouseIds.push(ids)
this.form.serveWarehouseId= this.warehouseServeOptions.find(res=>res.id==this.form.serveWarehouseId).id this.form.serveWarehouseId= this.warehouseServeOptions.find(res=>res.id==this.form.serveWarehouseId).id
this.form.serveWarehouseNam= this.warehouseServeOptions.find(res=>res.id==this.form.serveWarehouseId).name this.form.serveWarehouseNam= this.warehouseServeOptions.find(res=>res.id==this.form.serveWarehouseId).name
this.form.sendWarehouseId= this.warehouseOptions.find(res=>res.id==this.form.sendWarehouseIds).id this.form.sendWarehouseId= this.warehouseServeOptions.find(res=>res.id==this.form.sendWarehouseIds).id
this.form.sendWarehouseName= this.warehouseOptions.find(res=>res.id==this.form.sendWarehouseIds).name this.form.sendWarehouseName= this.warehouseServeOptions.find(res=>res.id==this.form.sendWarehouseIds).name
console.log(this.form,'this.form'); console.log(this.form,'this.form');
update(this.form).then(() => { update(this.form).then(() => {
this.box = false; this.box = false;
@ -391,7 +391,9 @@ export default {
this.box = true this.box = true
this.remoteWarehouseList(); this.remoteWarehouseList();
this.remoteServeWarehouseList(); this.remoteServeWarehouseList();
getDetail(row.id).then(res => { getDetail({
id:row.id,
}).then(res => {
console.log("编辑<<<<<",res.data.data); console.log("编辑<<<<<",res.data.data);
this.form = res.data.data; this.form = res.data.data;
console.log(this.form,'form'); console.log(this.form,'form');
@ -407,7 +409,9 @@ export default {
this.box = true; this.box = true;
this.remoteWarehouseList(); this.remoteWarehouseList();
this.remoteWarehouseList(); this.remoteWarehouseList();
getDetail(row.id).then(res => { getDetail({
id:row.id,
}).then(res => {
this.form = res.data.data; this.form = res.data.data;
this.form.shopId = row.storeName; this.form.shopId = row.storeName;
this.form.forwardingUnit = row.linkman; this.form.forwardingUnit = row.linkman;

5
src/views/basicdata/brand/basicStoreContact.vue

@ -207,6 +207,7 @@ export default {
// //
makeCargo(row) { makeCargo(row) {
console.log('设置默认联系人!!', row); console.log('设置默认联系人!!', row);
row.defaultType =!row.defaultType
let r = { let r = {
id: row.id, id: row.id,
shopId: row.shopId, shopId: row.shopId,
@ -218,6 +219,8 @@ export default {
row.defaultType = true; row.defaultType = true;
return return
} }
this.$confirm(`确定要修改默认联系人吗?`, { this.$confirm(`确定要修改默认联系人吗?`, {
type: 'warning', type: 'warning',
//beforeClose //beforeClose
@ -225,7 +228,9 @@ export default {
// //
if (action === 'confirm') { if (action === 'confirm') {
// //
r.defaultType =!r.defaultType
updateCargoControl(r).then(res => { updateCargoControl(r).then(res => {
console.log(this.data,'data===>11')
console.log(res); console.log(res);
if (res.statusText == 'OK') { if (res.statusText == 'OK') {
this.onLoad(this.page); this.onLoad(this.page);

2
src/views/basicdata/brand/basicdataStoreBrand.vue

@ -212,7 +212,7 @@ export default {
label: '品牌名称', label: '品牌名称',
prop: 'brandId', prop: 'brandId',
type: 'select', type: 'select',
allowCreate: true, allowCreate: false,
remote: true, remote: true,
filterable: true, filterable: true,
search: true, search: true,

2
src/views/basicdata/brand/basicdataTripartiteMall.vue

@ -317,7 +317,7 @@ export default {
remoteMethod(value) { remoteMethod(value) {
// if (!value) return; // if (!value) return;
getBrandList(1, 20, { brandName: value }).then(res => { getBrandList(1, 100, { brandName: value }).then(res => {
console.log('res ===>', res); console.log('res ===>', res);
const { const {
code, code,

8
src/views/distribution/deliverylist/distributionDeliveryListedt.vue

@ -520,8 +520,9 @@
> >
<el-text <el-text
v-if=" v-if="
slotProps.scope.row.orderPackageStatus != '70' || accessControl&& ( slotProps.scope.row.orderPackageStatus != '70' ||
slotProps.scope.row.orderPackageStatusName !== '已签收' slotProps.scope.row.orderPackageStatusName !== '已签收')
" "
size="small" size="small"
@click="signingReservationPackage(slotProps.scope.row)" @click="signingReservationPackage(slotProps.scope.row)"
@ -579,8 +580,7 @@
> >
<el-text <el-text
v-if=" v-if="
slotProps.scope.row.stockSignfoStatus == '10' || accessControl && (slotProps.scope.row.stockSignfoStatus == '10' || slotProps.scope.row.stockSignfoStatusName == '未签收')
slotProps.scope.row.stockSignfoStatusName == '未签收'
" "
size="small" size="small"
@click="signingReservationInventoryPackage(slotProps.scope.row)" @click="signingReservationInventoryPackage(slotProps.scope.row)"

140
src/views/distribution/inventory/distrilbutionBillLading.vue

@ -668,6 +668,7 @@ export default {
PackageCheckList:[],// PackageCheckList:[],//
tabletit: '', // tabletit: '', //
multifunctional: '', // multifunctional: '', //
PackageState:[],//
dialogImg: false, dialogImg: false,
Imgurl: undefined, Imgurl: undefined,
Selfpickuploading: false, // Selfpickuploading: false, //
@ -1753,7 +1754,7 @@ export default {
{ {
label: '创建时间', label: '创建时间',
prop: 'createTime', prop: 'createTime',
type: 4, type: 1,
values: '', values: '',
width: '180', width: '180',
checkarr: [], checkarr: [],
@ -1764,7 +1765,7 @@ export default {
{ {
label: '仓库', label: '仓库',
prop: 'warehouse', prop: 'warehouse',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1775,7 +1776,7 @@ export default {
{ {
label: '包条码', label: '包条码',
prop: 'orderPackageCode', prop: 'orderPackageCode',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1786,7 +1787,7 @@ export default {
{ {
label: '货位信息', label: '货位信息',
prop: 'goodsAllocation', prop: 'goodsAllocation',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1797,7 +1798,7 @@ export default {
{ {
label: '所在托盘', label: '所在托盘',
prop: 'pallet', prop: 'pallet',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1805,10 +1806,22 @@ export default {
sortable: true, sortable: true,
head: false, head: false,
}, },
{
label: '包件状态',
prop: 'orderPackageStatus',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{ {
label: '一级品', label: '一级品',
prop: 'firsts', prop: 'firsts',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1819,7 +1832,7 @@ export default {
{ {
label: '二级品', label: '二级品',
prop: 'second', prop: 'second',
type: 2, type:1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1830,7 +1843,7 @@ export default {
{ {
label: '三级品', label: '三级品',
prop: 'thirdProduct', prop: 'thirdProduct',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1841,7 +1854,7 @@ export default {
{ {
label: '物料', label: '物料',
prop: 'materialName', prop: 'materialName',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -1863,7 +1876,7 @@ export default {
{ {
label: '车次号', label: '车次号',
prop: 'trainNumber', prop: 'trainNumber',
type: 2, type: 1,
values: '', values: '',
width: '150', width: '150',
checkarr: [], checkarr: [],
@ -2453,6 +2466,16 @@ export default {
console.log('res :>> ', res); console.log('res :>> ', res);
console.log(res.data.data.records, '获取到的包件'); console.log(res.data.data.records, '获取到的包件');
const data = res.data.data; const data = res.data.data;
if(res.data.code ==200){
if(res.data && res.data.data.records?.length){
console.log(this.PackageState,'包件状态');
res.data.data.records.forEach(item=>{
if(item.orderPackageStatus){
item.orderPackageStatus= this.PackageState.find(res=>res.dictKey == item.orderPackageStatus).dictValue
}
})
}
}
this.order.total = data.total; this.order.total = data.total;
this.order.orderDetails = data.records; this.order.orderDetails = data.records;
const _node = await document.querySelector('.orderChooseTable'); const _node = await document.querySelector('.orderChooseTable');
@ -2462,15 +2485,15 @@ export default {
console.log(this.order.orderDetails,'当前列表的参数'); console.log(this.order.orderDetails,'当前列表的参数');
console.log(this.PackageCheckList,'当前勾选参数集合【去重过】'); console.log(this.PackageCheckList,'当前勾选参数集合【去重过】');
// //
let uncheckedIds = this.Unchecked.map(item => item.id); let uncheckedIds = this.Unchecked.map(item => item.id);
// _aa // _aa
this.PackageCheckList = this.PackageCheckList.filter(a => !uncheckedIds.includes(a.id)); this.PackageCheckList = this.PackageCheckList.filter(a => !uncheckedIds.includes(a.id));
let _check =await this.order.orderDetails.filter(({ id }) => new Set(this.PackageCheckList.map(({ id }) => id)).has(id)); let _check =await this.order.orderDetails.filter(({ id }) => new Set(this.PackageCheckList.map(({ id }) => id)).has(id));
console.log(this.order.selectList,'当前勾选的LIST'); console.log(this.order.selectList,'当前勾选的LIST');
console.log(this.order.orderDetails,'当前获得数据LIST'); console.log(this.order.orderDetails,'当前获得数据LIST');
console.log(this.PackageCheckList,'所有勾选的LIST'); console.log(this.PackageCheckList,'所有勾选的LIST');
console.log(_check,'筛选出来的参数'); console.log(_check,'筛选出来的参数');
if(_check.length){ if(_check.length){
this.$refs.orderChooseTable.handleCheckSelect(_check); this.$refs.orderChooseTable.handleCheckSelect(_check);
}else{ }else{
this.$refs.orderChooseTable.handleCheckSelect(data.records); this.$refs.orderChooseTable.handleCheckSelect(data.records);
@ -2507,9 +2530,20 @@ console.log(_check,'筛选出来的参数');
...params, ...params,
...this.order.query, ...this.order.query,
}).then(async res => { }).then(async res => {
console.log(res,'当前包件列表');
if(res.data.code !=200){ if(res.data.code !=200){
return return
} }
if(res.data.code ==200){
if(res.data && res.data.data.records?.length){
console.log(this.PackageState,'包件状态');
res.data.data.records.forEach(item=>{
if(item.orderPackageStatus){
item.orderPackageStatus= this.PackageState.find(res=>res.dictKey == item.orderPackageStatus).dictValue
}
})
}
}
console.log('res :>> ', res); console.log('res :>> ', res);
const data = res.data.data; const data = res.data.data;
this.order.total = data.total || 0; this.order.total = data.total || 0;
@ -2533,14 +2567,10 @@ console.log(_check,'筛选出来的参数');
let matchedItems = this.order.orderDetails.filter(item => _dataList.includes(item.id)); let matchedItems = this.order.orderDetails.filter(item => _dataList.includes(item.id));
this.$refs.orderChooseTable.handleCheckSelect(matchedItems); this.$refs.orderChooseTable.handleCheckSelect(matchedItems);
} }
// //
console.log('this.order.selectList :>> ', this.order.selectList); console.log('this.order.selectList :>> ', this.order.selectList);
row.originalList = JSON.parse(JSON.stringify(this.order.selectList)); row.originalList = JSON.parse(JSON.stringify(this.order.selectList));
this.order.orderChooseLoading = false; this.order.orderChooseLoading = false;
}).catch((error)=>{ }).catch((error)=>{
console.log(error,'error'); console.log(error,'error');
this.order.orderChooseLoading = false; this.order.orderChooseLoading = false;
@ -2589,35 +2619,35 @@ console.log(_check,'筛选出来的参数');
console.log(this.CheckId,'原本数据'); console.log(this.CheckId,'原本数据');
console.log(this.order.selectList,'当前勾选的数据'); console.log(this.order.selectList,'当前勾选的数据');
console.log(this.order.orderDetails,'全部数据'); console.log(this.order.orderDetails,'全部数据');
// //
let addedData = this.order.selectList.filter(item => !this.CheckId.includes(item.id)); let addedData = this.order.selectList.filter(item => !this.CheckId.includes(item.id));
let addedObjects = this.order.orderDetails.filter(item => addedData.map(data => data.id).includes(item.id)); let addedObjects = this.order.orderDetails.filter(item => addedData.map(data => data.id).includes(item.id));
if(addedObjects && addedObjects.length){ if(addedObjects && addedObjects.length){
this.dataList.find(val => val.id === this.orderChooseId).billPackageEntityList=[] this.dataList.find(val => val.id === this.orderChooseId).billPackageEntityList=[]
this.dataList.find(val => val.id === this.orderChooseId).billPackageEntityList = addedObjects.map(item => { this.dataList.find(val => val.id === this.orderChooseId).billPackageEntityList = addedObjects.map(item => {
return { return {
parceListId: item.id, parceListId: item.id,
stockArticleId: item.stockArticleId, stockArticleId: item.stockArticleId,
packetBarCode: item.orderPackageCode, packetBarCode: item.orderPackageCode,
}; };
}); });
} }
// //
let deletedData = this.CheckId.filter(id => !this.order.selectList.find(item => item.id === id)); let deletedData = this.CheckId.filter(id => !this.order.selectList.find(item => item.id === id));
let deletedObjects = this.order.orderDetails.filter(item => deletedData.includes(item.id)); let deletedObjects = this.order.orderDetails.filter(item => deletedData.includes(item.id));
if(deletedObjects && deletedObjects.length){ if(deletedObjects && deletedObjects.length){
this.dataList.find(val => val.id === this.orderChooseId).unBillPackageEntityList=[] this.dataList.find(val => val.id === this.orderChooseId).unBillPackageEntityList=[]
this.dataList.find(val => val.id === this.orderChooseId).unBillPackageEntityList = deletedObjects.map(item => { this.dataList.find(val => val.id === this.orderChooseId).unBillPackageEntityList = deletedObjects.map(item => {
return { return {
parceListId: item.id, parceListId: item.id,
stockArticleId: item.stockArticleId, stockArticleId: item.stockArticleId,
packetBarCode: item.orderPackageCode, packetBarCode: item.orderPackageCode,
}; };
}); });
} }
console.log('新增的数据对象:', addedObjects); console.log('新增的数据对象:', addedObjects);
console.log('删除的数据对象:', deletedObjects); console.log('删除的数据对象:', deletedObjects);
this.dialogChooseOrderVisible = false; this.dialogChooseOrderVisible = false;
console.log( this.dataList.find(val => val.id === this.orderChooseId),' this.dataList.find(val => val.id === this.orderChooseId)筛选出来的'); console.log( this.dataList.find(val => val.id === this.orderChooseId),' this.dataList.find(val => val.id === this.orderChooseId)筛选出来的');
@ -2710,6 +2740,14 @@ console.log('删除的数据对象:', deletedObjects);
// //
this.logpmUnit = res.data.data; this.logpmUnit = res.data.data;
}); });
//
getDictionaryBiz('order_package_status').then(res => {
//
console.log(res,'包件状态');
if(res.data.code == 200){
this.PackageState = res.data.data || [];
}
});
getDictionaryBiz('order_status').then(res => { getDictionaryBiz('order_status').then(res => {
this.deliveryOrderStatus = res.data.data; this.deliveryOrderStatus = res.data.data;
this.$functions.checkcColumnList('orderStatusName', this.columnList).checkarr = this.$functions.checkcColumnList('orderStatusName', this.columnList).checkarr =

41
src/views/distribution/inventory/distrilbutionBillLadingView.vue

@ -14,16 +14,16 @@
<el-col :xl="7" :lg="7" :md="8" :sm="24"> <el-col :xl="7" :lg="7" :md="8" :sm="24">
<span>服务号{{ data.serviceNumber }} </span> <span>服务号{{ data.serviceNumber }} </span>
</el-col> </el-col>
</el-row>
<el-row :gutter="24" class="rows">
<el-col :xl="7" :lg="7" :md="8" :sm="24"> <el-col :xl="7" :lg="7" :md="8" :sm="24">
<span>运单号{{ data.waybillNumber }} </span> <span>运单号{{ data.waybillNumber }} </span>
</el-col> </el-col>
</el-row>
<el-row :gutter="24" class="rows">
<el-col :xl="7" :lg="7" :md="8" :sm="24"> <el-col :xl="7" :lg="7" :md="8" :sm="24">
<span>收货单位{{ data.consigneeUnit }} </span> <span>收货单位{{ data.consigneeUnit }} </span>
</el-col> </el-col>
</el-row>
<el-row :gutter="24" class="rows">
<el-col :xl="7" :lg="7" :md="8" :sm="24"> <el-col :xl="7" :lg="7" :md="8" :sm="24">
<span>收货人{{ data.customerName }} </span> <span>收货人{{ data.customerName }} </span>
</el-col> </el-col>
@ -33,6 +33,35 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="24" class="rows">
<el-col :xl="7" :lg="7" :md="8" :sm="24">
<!-- <span>{{deliverydata.loadingTeamType}} </span> -->
<span>计划件数 {{ data.planNum}} </span>
</el-col>
<el-col :xl="7" :lg="7" :md="8" :sm="24">
<span>实提件数{{ data.realNum }} </span>
</el-col>
<el-col :xl="7" :lg="7" :md="8" :sm="24">
<!-- <span>{{deliverydata.loadingTeamType}} </span> -->
<span>签收人 {{ data.signforUserName || '暂无'}} </span>
</el-col>
</el-row>
<el-row :gutter="24" class="rows">
<el-col :xl="7" :lg="7" :md="8" :sm="24">
<!-- <span>{{deliverydata.loadingTeamType}} </span> -->
<span>审核人 {{ data.examineUserName || '暂无' }} </span>
</el-col>
<el-col :xl="7" :lg="7" :md="8" :sm="24">
<span>审核时间{{ data.examineTime || '暂无'}} </span>
</el-col>
</el-row>
<el-divider>签收图片</el-divider> <el-divider>签收图片</el-divider>
<div class="siginImg_container"> <div class="siginImg_container">
@ -329,7 +358,7 @@ export default {
head: false, head: false,
}, },
{ {
prop: 'handQuantity', prop: 'preparedQuantity',
label: '备货件数', label: '备货件数',
type: 1, type: 1,
values: '', values: '',
@ -1304,7 +1333,7 @@ export default {
}, },
{ {
label: '备货件数', label: '备货件数',
prop: 'handQuantity', prop: 'preparedQuantity',
search: true, search: true,
width: '100px', width: '100px',
}, },

Loading…
Cancel
Save