From 05aca5904cd89268fdb33b46581198f1bd61da65 Mon Sep 17 00:00:00 2001 From: YunaiV Date: Wed, 4 Mar 2026 01:40:33 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat(mes):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=A4=96=E5=8D=8F=E5=8F=91=E6=96=99=E5=8D=95=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增提交到待拣货、执行拣货和完成外协发料出库的功能,优化了状态管理逻辑,确保发料单在不同状态下的操作流程更加清晰和安全。 --- src/api/mes/wm/outsourceissue/index.ts | 16 +++- src/utils/dict.ts | 1 + src/views/mes/utils/constants.ts | 5 +- .../OutsourceIssueDetailForm.vue | 2 +- .../OutsourceIssueDetailList.vue | 2 +- .../wm/outsourceissue/OutsourceIssueForm.vue | 61 ++++++++------ .../outsourceissue/OutsourceIssueLineList.vue | 4 +- src/views/mes/wm/outsourceissue/index.vue | 84 +++++++++---------- 8 files changed, 99 insertions(+), 76 deletions(-) diff --git a/src/api/mes/wm/outsourceissue/index.ts b/src/api/mes/wm/outsourceissue/index.ts index 2eb04a140..ee70c9a43 100644 --- a/src/api/mes/wm/outsourceissue/index.ts +++ b/src/api/mes/wm/outsourceissue/index.ts @@ -44,9 +44,19 @@ export const WmOutsourceIssueApi = { return await request.delete({ url: '/mes/wm/outsource-issue/delete?id=' + id }) }, - // 执行外协发料出库 - executeOutsourceIssue: async (id: number) => { - return await request.put({ url: '/mes/wm/outsource-issue/execute?id=' + id }) + // 提交到待拣货 + submitOutsourceIssue: async (id: number) => { + return await request.put({ url: '/mes/wm/outsource-issue/submit?id=' + id }) + }, + + // 执行拣货 + stockOutsourceIssue: async (id: number) => { + return await request.put({ url: '/mes/wm/outsource-issue/stock?id=' + id }) + }, + + // 完成外协发料出库 + finishOutsourceIssue: async (id: number) => { + return await request.put({ url: '/mes/wm/outsource-issue/finish?id=' + id }) }, // 导出外协发料单 Excel diff --git a/src/utils/dict.ts b/src/utils/dict.ts index 1ead8d7a5..af7dbc42d 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -308,4 +308,5 @@ export enum DICT_TYPE { MES_WM_MISC_ISSUE_TYPE = 'mes_wm_misc_issue_type', // MES 杂项单类型 MES_WM_MISC_RECEIPT_TYPE = 'mes_wm_misc_receipt_type', // MES 杂项单类型 MES_WM_OUTSOURCE_RECEIPT_STATUS = 'mes_wm_outsource_receipt_status', // MES 外协入库单状态 + MES_WM_OUTSOURCE_ISSUE_STATUS = 'mes_wm_outsource_issue_status', // MES 外协出库单状态 } diff --git a/src/views/mes/utils/constants.ts b/src/views/mes/utils/constants.ts index bc01691e1..5f251930a 100644 --- a/src/views/mes/utils/constants.ts +++ b/src/views/mes/utils/constants.ts @@ -316,7 +316,10 @@ export const MesWmMiscIssueStatusEnum = { /** MES 外协发料单状态枚举 */ export const MesWmOutsourceIssueStatusEnum = { PREPARE: MesOrderStatusConstants.DRAFT, - FINISHED: MesOrderStatusConstants.FINISHED + APPROVING: MesOrderStatusConstants.APPROVING, + APPROVED: MesOrderStatusConstants.APPROVED, + FINISHED: MesOrderStatusConstants.FINISHED, + CANCELLED: MesOrderStatusConstants.CANCELLED } /** 获取物料/产品标识的标签 */ diff --git a/src/views/mes/wm/outsourceissue/OutsourceIssueDetailForm.vue b/src/views/mes/wm/outsourceissue/OutsourceIssueDetailForm.vue index 6d0749fe5..de6b85f81 100644 --- a/src/views/mes/wm/outsourceissue/OutsourceIssueDetailForm.vue +++ b/src/views/mes/wm/outsourceissue/OutsourceIssueDetailForm.vue @@ -1,5 +1,5 @@ - + - + @@ -185,9 +175,7 @@ const queryParams = reactive({ code: undefined, name: undefined, vendorId: undefined, - workorderCode: undefined, - issueDate: undefined, - status: undefined + issueDate: undefined }) const queryFormRef = ref() // 搜索的表单 @@ -221,11 +209,21 @@ const openForm = (type: string, id?: number) => { formRef.value.open(type, id) } -/** 执行出库 */ -const handleExecute = async (id: number) => { +/** 提交到待拣货 */ +const handleSubmit = async (id: number) => { + try { + await message.confirm('确认提交到待拣货状态吗?') + await WmOutsourceIssueApi.submitOutsourceIssue(id) + message.success('提交成功') + await getList() + } catch {} +} + +/** 完成出库 */ +const handleFinish = async (id: number) => { try { await message.confirm('确认执行出库吗?执行后将扣减库存,且无法撤销。') - await WmOutsourceIssueApi.executeOutsourceIssue(id) + await WmOutsourceIssueApi.finishOutsourceIssue(id) message.success('出库成功') await getList() } catch {}