From cba2ad3b3b9ff0f44a308a7777790a1273440517 Mon Sep 17 00:00:00 2001 From: b2894lxlx <517289602@qq.com> Date: Tue, 8 Sep 2026 17:50:34 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E8=B0=83=E6=95=B4=E5=87=AD=E8=AF=81?= =?UTF-8?q?=202=E3=80=81=E8=B0=83=E6=95=B4=E8=BF=90=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/business/voucher-manage.js | 16 + src/api/settlement/transportReconciliation.js | 6 + src/components/address-map-picker/main.vue | 98 +- src/components/map-search-results/main.vue | 65 + .../vehicle-attachment-upload/main.vue | 6 +- src/main.js | 2 + src/option/business/loading-manage.js | 2 +- src/option/business/waybill-manage.js | 12 +- .../transportReconciliationTable.js | 6 +- src/router/views/index.js | 48 + src/styles/common.scss | 17 + src/views/base/common-address.vue | 17 +- src/views/business/common-route.vue | 17 +- .../components/business-crud-page.vue | 37 +- .../components/master-order-detail.vue | 4 +- .../components/master-order-dispatch.vue | 4 +- .../components/master-order-editor.vue | 24 +- .../components/shipping-template-page.vue | 319 ++- .../components/transport-plan-page.vue | 147 +- .../components/waybill-import-dialog.vue | 155 +- .../components/waybill-manage-page.vue | 162 +- src/views/business/contract-manage-change.vue | 6 +- src/views/business/contract-manage.vue | 4 +- src/views/business/loading-manage.vue | 1952 +++++++++++------ src/views/business/project-apply.vue | 4 +- src/views/business/temporary-credit-limit.vue | 4 +- .../business/transport-plan-dispatch.vue | 717 ++++++ src/views/business/transport-plan-import.vue | 671 ++++++ src/views/business/voucher-manage-detail.vue | 88 + src/views/business/voucher-manage.vue | 544 ++++- src/views/business/waybill-manage-detail.vue | 23 + .../payment/invoice-application-form.vue | 4 +- .../components/formal-settlement-editor.vue | 33 + .../transport-reconciliation-editor.vue | 568 ++++- .../settlement/receivable-payable-detail.vue | 4 +- src/views/system/user.vue | 21 +- src/views/transit/exception-disposal.vue | 5 +- src/views/transit/risk-disposal.vue | 5 +- src/views/vehicle/customer-archive.vue | 17 +- 凭证管理审核功能说明.md | 300 +++ 运输计划导入增强校验说明.md | 305 +++ 运输计划导入模板修改说明.md | 124 ++ 运输计划导入部署指南.md | 286 +++ 43 files changed, 5730 insertions(+), 1119 deletions(-) create mode 100644 src/components/map-search-results/main.vue create mode 100644 src/views/business/transport-plan-dispatch.vue create mode 100644 src/views/business/transport-plan-import.vue create mode 100644 src/views/business/voucher-manage-detail.vue create mode 100644 src/views/business/waybill-manage-detail.vue create mode 100644 凭证管理审核功能说明.md create mode 100644 运输计划导入增强校验说明.md create mode 100644 运输计划导入模板修改说明.md create mode 100644 运输计划导入部署指南.md diff --git a/src/api/business/voucher-manage.js b/src/api/business/voucher-manage.js index 3f3ccd5..d5c1a41 100644 --- a/src/api/business/voucher-manage.js +++ b/src/api/business/voucher-manage.js @@ -5,6 +5,19 @@ const baseUrl = '/blade-transport/voucher-manage'; export const getList = (current, size, params) => request({ url: `${baseUrl}/list`, method: 'get', params: { current, size, ...params } }); export const getDetail = id => request({ url: `${baseUrl}/detail`, method: 'get', params: { id } }); +export const getFolderPage = (voucherId, current, size, params) => + request({ url: `${baseUrl}/folder-page`, method: 'get', params: { voucherId, current, size, ...params } }); +export const getFolderDetail = (voucherId, plateNo) => + request({ url: `${baseUrl}/folder-detail`, method: 'get', params: { voucherId, plateNo } }); +export const replaceFolder = (voucherId, plateNo, file) => { + const data = new FormData(); + data.append('voucherId', voucherId); + data.append('plateNo', plateNo); + data.append('file', file); + return request({ url: `${baseUrl}/folder-replace`, method: 'post', data }); +}; +export const removeFolder = (voucherId, plateNo) => + request({ url: `${baseUrl}/folder-remove`, method: 'post', params: { voucherId, plateNo } }); export const submit = data => request({ url: `${baseUrl}/submit`, method: 'post', data }); export const createUploadDraft = data => request({ url: `${baseUrl}/upload-draft`, method: 'post', data }); @@ -17,6 +30,9 @@ export const getWaybillBatches = (current, size, params) => method: 'get', params: { current, size, ...params }, }); +export const auditPass = id => request({ url: `${baseUrl}/audit-pass`, method: 'post', params: { id } }); +export const auditReject = (id, rejectReason) => + request({ url: `${baseUrl}/audit-reject`, method: 'post', params: { id, rejectReason } }); const fileTaskBaseUrl = '/blade-file/fileTask'; export const queryFileTask = md5 => diff --git a/src/api/settlement/transportReconciliation.js b/src/api/settlement/transportReconciliation.js index d8c3cf5..c56be1e 100644 --- a/src/api/settlement/transportReconciliation.js +++ b/src/api/settlement/transportReconciliation.js @@ -16,6 +16,10 @@ export const getFormalOptions = (current, size, params) => export const save = data => request({ url: `${baseUrl}/save`, method: 'post', data }); export const remove = id => request({ url: `${baseUrl}/remove`, method: 'post', params: { id } }); export const match = id => request({ url: `${baseUrl}/match`, method: 'post', params: { id } }); +export const matchPreview = data => + request({ url: `${baseUrl}/match-preview`, method: 'post', data }); +export const manualMatch = data => + request({ url: `${baseUrl}/manual-match`, method: 'post', data }); export const unmatch = internalId => request({ url: `${baseUrl}/unmatch`, method: 'post', params: { internalId } }); export const adjust = data => request({ url: `${baseUrl}/adjust`, method: 'post', data }); @@ -23,6 +27,8 @@ export const updateByMatch = id => request({ url: `${baseUrl}/update-by-match`, method: 'post', params: { id } }); export const complete = id => request({ url: `${baseUrl}/complete`, method: 'post', params: { id } }); +export const completeWithData = data => + request({ url: `${baseUrl}/complete-with-data`, method: 'post', data }); export const template = mode => request({ url: `${baseUrl}/template`, method: 'get', params: { mode }, responseType: 'blob' }); diff --git a/src/components/address-map-picker/main.vue b/src/components/address-map-picker/main.vue index c7d39f7..851d9eb 100644 --- a/src/components/address-map-picker/main.vue +++ b/src/components/address-map-picker/main.vue @@ -1,11 +1,5 @@