diff --git a/src/api/reportforms/index.js b/src/api/reportforms/index.js index a9922d4f..e001acbc 100644 --- a/src/api/reportforms/index.js +++ b/src/api/reportforms/index.js @@ -46,7 +46,14 @@ export const $_getdetails = (params) => { params, }); }; - + // 配送明细报表V2 + export const $_getdetailsv2 = (params) => { + return request({ + url: '/logpm-report/reportDelivery/details/v2', + method: 'get', + params, + }); + }; // 配送明细报表报表导出 export const $_exportDetails = (params) => { return request({ @@ -57,14 +64,15 @@ export const $_getdetails = (params) => { }) } - // 自提明细报表 -export const $_getSelfpickup = (params) => { +// 配送明细报表报表导出 +export const $_exportDetailsv2 = (params) => { return request({ - url: '/api/logpm-report/reportBillLoading/details', + url: '/api/logpm-report/reportDelivery/exportDetails/v2', method: 'get', params, - }); -}; + responseType: 'blob', + }) +} // 自提明细报表报表导出 export const $_exportSelfpickup = (params) => { diff --git a/src/option/aftersales/vueTvemp.js b/src/option/aftersales/vueTvemp.js index 27bacff2..5777d94f 100644 --- a/src/option/aftersales/vueTvemp.js +++ b/src/option/aftersales/vueTvemp.js @@ -775,7 +775,7 @@ export const AppealList = [ label: '操作', type: 6, values: '', - width: '80', + width: '100', checkarr: [], fixed: 'right', sortable: false, diff --git a/src/option/reportforms/DeliveryDetailsVtwo.js b/src/option/reportforms/DeliveryDetailsVtwo.js new file mode 100644 index 00000000..8052141c --- /dev/null +++ b/src/option/reportforms/DeliveryDetailsVtwo.js @@ -0,0 +1,535 @@ +export const columnList = [ + { + prop: '', + label: '复选框', + type: 0, + width: 55, + fixed: true, + }, + { + prop: '', + label: '序号', + type: 12, + values: '', + width: 55, + fixed: true, + }, + { + prop: 'trainNumber', + label: '车次', + type: 2, + values: '', + width: '180', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'reservationCode', + label: '预约单号', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'taskTime', + label: '配送日期', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + + { + prop: 'warehouseName', + label: '仓库', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'brand', + label: '品牌', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'signNum', + label: '签收数量', + type: 1, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + isshowSummary: true, + head: false, + }, + { + prop: 'loadingMode', + label: '装车方式', + type: 1, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'signType', + label: '签收方式', + type: 1, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'type', + label: '配送类型', + type: 3, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'kind', + label: '配送种类', + type: 3, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'vehicleName', + label: '配送车辆', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'driverName', + label: '配送司机', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'distributionCompany', + label: '配送公司', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'drConsignee', + label: '客户名称', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'deliveryPhone', + label: '客户电话', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'deliveryAddress', + label: '地址', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'consignee', + label: '运单收货单位', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'consigneeName', + label: '运单收货人', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'consigneeMobile', + label: '运单收货电话', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'waybillNo', + label: '运单号', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'stockArticleId', + label: '订单自编码', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'orderPackageCode', + label: '包条码', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'customerTrain', + label: '客户车次号', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'conditions', + label: '包件类型', + type: 1, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'firsts', + label: '一级品', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'decond', + label: '二级品', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'thirdProduct', + label: '三级品', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'materialCode', + label: '物料编码', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'materialName', + label: '物料名称', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'startWar', + label: '始发仓', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'startWarInTime', + label: '始发仓入库日期', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'startWarOutTime', + label: '始发仓发货日期', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'warehouseEntryTimeEnd', + label: '入库时间', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'driverSigning', + label: '司机签收状态', + type: 3, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'unloadTime', + label: '装车时间', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'unAdministratorsName', + label: '装车人', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'sjsigningTime', + label: '签收时间', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'ldsSigneeName', + label: '签收人', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'signingStatus', + label: '文员审核状态', + type: 1, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'signingTime', + label: '文员审核时间', + type: 4, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'examineUserName', + label: '审核人名称', + type: 2, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + { + prop: 'abnormalSigning', + label: '是否异常签收', + type: 1, + values: '', + width: '150', + checkarr: [], + fixed: false, + sortable: true, + head: false, + }, + // { + // prop: 'abnormalLoading', + // label: '是否异常装车', + // type: 1, + // values: '', + // width: '150', + // checkarr: [], + // fixed: false, + // sortable: true, + // head: false, + // }, + // { + // prop: 'auditingStatus', + // label: '异常审核状态', + // type: 1, + // values: '', + // width: '150', + // checkarr: [], + // fixed: false, + // sortable: true, + // head: false, + // }, + // { + // prop: 'auditingUser', + // label: '审核人', + // type: 2, + // values: '', + // width: '150', + // checkarr: [], + // fixed: false, + // sortable: true, + // head: false, + // }, + // { + // prop: 'auditingTime', + // label: '审核时间', + // type: 4, + // values: '', + // width: '150', + // checkarr: [], + // fixed: false, + // sortable: true, + // head: false, + // }, + // { + // prop: 'createUserName', + // label: '操作', + // type: 6, + // values: '', + // width: '200', + // checkarr: [], + // fixed: 'right', + // sortable: false, + // }, + ] \ No newline at end of file diff --git a/src/views/aftersales/aftersalesWorkOrder.vue b/src/views/aftersales/aftersalesWorkOrder.vue index 223787cf..f9365b33 100644 --- a/src/views/aftersales/aftersalesWorkOrder.vue +++ b/src/views/aftersales/aftersalesWorkOrder.vue @@ -2046,19 +2046,23 @@ const InformationViewing = val => { Routstate: 'appeal', }); $router.push({ path: workOrderInfoPath, query: queryParams }); + console.log('申诉跳转'); + return; } if (TabPermissions.value === 4) { Resultediting(val); + console.log('菜单4跳转'); return; } if (TabPermissions.value === 7) { $router.push({ path: workOrderInfoPath, query: queryParams }); + console.log('菜单7跳转'); return; } - + console.log('默认跳转'); $router.push({ path: workOrderInfoPath, query: { ...queryParams, id: val.row.id } }); }; @@ -2125,7 +2129,7 @@ const InformationViewing = val => { // 首页查看详情按钮 const view = val => { - console.log(val.row, '申诉查看'); + console.log(val.row, '查看'); const workOrderInfoPath = '/aftersales/aftersalesWorkOrderInfo'; const baseQueryParams = { id: val.row.workOrderId, @@ -2151,9 +2155,12 @@ const view = val => { } if (TabPermissions.value === 4) { + console.log('当前菜单4'); + const claimQueryParams = { ...baseQueryParams, appealID: val.row.id, + id:val.row.lawoId,//理赔金未出需要的ID ProcessType: TabPermissions.value == 2 ? '2' : TabPermissions.value == 3 ? '1' : '', Routstate: '', AppealReview: val.row.typesOf ? (val.row.typesOf === '0' ? 'true' : 'false') : 'true', @@ -2178,6 +2185,8 @@ const view = val => { Routstate: '', AppealReview: val.row.typesOf ? (val.row.typesOf === '0' ? 'true' : 'false') : 'true', }; + console.log('默认跳转'); + $router.push({ path: workOrderInfoPath, query: defaultQueryParams }); }; @@ -2403,7 +2412,7 @@ const CancelappealFn = val => { const appeal = (val, state) => { console.log(state, 'state'); AppealAttachment.value = []; //清空图片 - Appealselection.value = ''; //清空责任人 + Appealselection.value = []; //清空责任人 Reasonforappeal.value = ''; //清空申诉内容 console.log(state); console.log(val, '申诉当前点击的按钮'); @@ -2991,14 +3000,14 @@ const appealFn = val => { }; // 申诉列表 -const AppealTab = val => { +const AppealTab = async val => { console.log(val, '完结当前列表'); arbitrationTemp.value = val; if (val == 0) { arbitrationTemp.value = 0; AppealStatusT.value = false; //申诉列表关闭 - Tableheaderswitching(columnList); //切换表头 + console.log('处理完毕'); ProcessingPartyState.value = false; //关闭处理方 details.query.workOrderStatus = 80; @@ -3008,6 +3017,7 @@ const AppealTab = val => { ...details.query, }; IndexTable(data, true); + Tableheaderswitching(columnList); //切换表头 } else { arbitrationTemp.value = 1; AppealListFn(); //申诉列表函数 @@ -3574,6 +3584,8 @@ const AllEndArbitration = () => { const ResultConfirmation = val => { if (UserPermissions.value == '仓库客服') { + console.log('仓库客服'); + //处理完毕菜单下面确定按钮用于确定处理结果(仓库客服用的) let data = { assignList: [], diff --git a/src/views/aftersales/aftersalesWorkOrderInfo.vue b/src/views/aftersales/aftersalesWorkOrderInfo.vue index a6cbdb57..fe9eb9d4 100644 --- a/src/views/aftersales/aftersalesWorkOrderInfo.vue +++ b/src/views/aftersales/aftersalesWorkOrderInfo.vue @@ -10,7 +10,7 @@
- + - + @@ -1076,7 +1076,7 @@ const pictureList = val => { amplifyurl.value = val.url; }; // 菜单切换显示输入框 -const displaySettings = computed(() => { +const displaySettings = computed(() => { return { trainNumber: ['3', '5', '7', '6'].includes(Indexform.value.discoveryNode), //车次号 deliveryTime: ['5', '7', '6'].includes(Indexform.value.discoveryNode), //配送时间 @@ -1104,7 +1104,10 @@ const handle = () => { }); }; // 是否可以查看完结信息 -const Completionpermissions = computed(() => { +const Completionpermissions = computed(async () => { + if (await localStorage.getItem('my_data')) { + Mydata.value = await JSON.parse(localStorage.getItem('my_data')); //获取本地仓库信息 + } if (CompensationParty.value.length) { console.log(CompletedView.value, 'CompletedView.value'); if (CompletedView.value.includes(Mydata.value.id) || UserPermissions.value != '仓库客服') { @@ -1120,8 +1123,8 @@ const Completionpermissions = computed(() => { }); const onLoad = async () => { pageState.value = true; //开启页面加载 - if (localStorage.getItem('my_data')) { - Mydata.value = await JSON.parse(localStorage.getItem('my_data')); //获取本地仓库信息 + if (await localStorage.getItem('my_data')) { + Mydata.value = await JSON.parse(localStorage.getItem('my_data')); //获取本地仓库信息 } getDictionaryBiz('after_sales_visits').then(async res => { const matchingItem = res.data.data.find( @@ -1135,10 +1138,10 @@ const onLoad = async () => { console.log(UserPermissions.value, '当前角色权限'); await Chathistory(); //聊天的历史记录 routerState.value = $route.query.routerState; - await updateDictionary(IndexException.value, 'pc_work_order'); //异常类型 - await updateDictionary(DiscoveringNodes.value, 'pc_discovery_node'); //发现环节 - await handle(); //处理方和责任方信息 - + await updateDictionary(IndexException.value, 'pc_work_order'); //异常类型 + await updateDictionary(DiscoveringNodes.value, 'pc_discovery_node'); //发现环节 + await handle(); //处理方和责任方信息 + $_getInfo({ id: $route.query.id }).then(res => { pageState.value = false; //关闭页面加载 if ($route.query.Routstate) { diff --git a/src/views/aftersales/aftersalesWorkOrderend.vue b/src/views/aftersales/aftersalesWorkOrderend.vue index b213a7c3..b735dc35 100644 --- a/src/views/aftersales/aftersalesWorkOrderend.vue +++ b/src/views/aftersales/aftersalesWorkOrderend.vue @@ -452,7 +452,7 @@ :class="{ payanindemnity_title: item.state == 0 }" :label="item.state == 0 ? '赔款方' : '受款方'" > - +
- + + + + + + + ({ /** 是否开启搜索 */ search: true, @@ -231,7 +237,7 @@ const details = reactive({ /** 列表 */ columnList: deepClone(columnList), /** 列表数据 */ - data: [{}], + data: [], /** 页面loading */ loadingObj: { /** 列表加载loading */ @@ -288,7 +294,13 @@ const onLoad = debounce(async () => { details.loadingObj.list = true; let _page = details.page; // 获取暂存单列表 - const res = await getPage({ ..._page, ...details.query }); + let submit = { + ..._page, + ...details.query, + pageType:tabName.value, + } + + const res = await getPage(submit); console.log('res :>> ', res); const { code, data } = res.data; if (code !== 200) return; @@ -385,7 +397,9 @@ initData(); const searchChange = () => { onLoad(); }; - +const tabchange=()=>{ + onLoad(); +} /** 清空表单 */ const searchReset = () => { details.query = {}; @@ -576,4 +590,9 @@ const handleExport = () => { .fwb { font-weight: bold; } +:deep(.top-el-tabs) { + .el-tabs__content { + display: none; + } +} diff --git a/src/views/reportforms/DeliveryDetailsVtwo.vue b/src/views/reportforms/DeliveryDetailsVtwo.vue new file mode 100644 index 00000000..9b211900 --- /dev/null +++ b/src/views/reportforms/DeliveryDetailsVtwo.vue @@ -0,0 +1,627 @@ + + + + + + \ No newline at end of file