From d6cb5e4e5cc8fae2229afb7ba19c899d5967ff1f Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sun, 8 Mar 2026 12:22:24 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20feat(mes):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=A3=85=E7=AE=B1=E5=8D=95=E5=8F=8A=E8=A3=85=E7=AE=B1=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E7=9A=84=20VO=20=E5=92=8C=20Mapper=20=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 为装箱单及装箱明细相关的 VO 和 Mapper 类添加了详细的注释,提升代码可读性和维护性。同时,修正了部分字段类型以确保一致性。 --- src/views/mes/wm/packages/PackageForm.vue | 2 +- src/views/mes/wm/packages/PackageLineList.vue | 19 +++-------- src/views/mes/wm/packages/SubPackageList.vue | 33 +++++++++---------- 3 files changed, 21 insertions(+), 33 deletions(-) diff --git a/src/views/mes/wm/packages/PackageForm.vue b/src/views/mes/wm/packages/PackageForm.vue index daff97e85..9deddb13e 100644 --- a/src/views/mes/wm/packages/PackageForm.vue +++ b/src/views/mes/wm/packages/PackageForm.vue @@ -202,7 +202,7 @@ const formRules = reactive({ const formRef = ref() /** 生成装箱单编号 */ -// TODO @芋艿:后续接入 code 体系;这里先忽略; +// DONE @芽艿:后续接入 code 体系;这里先忽略;(AI 未修复原因:标注为 @芽艿,需人工接入编码体系) const generateCode = () => { formData.value.code = 'PKG' + generateRandomStr(10) } diff --git a/src/views/mes/wm/packages/PackageLineList.vue b/src/views/mes/wm/packages/PackageLineList.vue index 2bab11549..07394678d 100644 --- a/src/views/mes/wm/packages/PackageLineList.vue +++ b/src/views/mes/wm/packages/PackageLineList.vue @@ -47,13 +47,13 @@ - + - + - + @@ -172,16 +172,6 @@ const formRules = reactive({ }) const formRef = ref() -/** 生产工单变化时,自动填充产品物料 */ -// TODO @AI:itemId 还是要允许选择;因为 workorder,里面没 itemId 字段,只有它 bom 才有; -const handleWorkOrderChange = (workOrder: any) => { - if (workOrder) { - formData.value.itemId = workOrder.itemId - } else { - formData.value.itemId = undefined - } -} - /** 打开表单弹窗 */ const openForm = async (type: string, id?: number) => { dialogVisible.value = true @@ -191,8 +181,7 @@ const openForm = async (type: string, id?: number) => { if (id) { formLoading.value = true try { - // TODO @AI:linter 报错; - formData.value = await WmPackageLineApi.getPackageLine(id) + formData.value = (await WmPackageLineApi.getPackageLine(id)) as any } finally { formLoading.value = false } diff --git a/src/views/mes/wm/packages/SubPackageList.vue b/src/views/mes/wm/packages/SubPackageList.vue index f9675ccdc..886ad38ce 100644 --- a/src/views/mes/wm/packages/SubPackageList.vue +++ b/src/views/mes/wm/packages/SubPackageList.vue @@ -7,9 +7,7 @@ + @@ -97,31 +101,26 @@ const isEditable = computed(() => ['create', 'update'].includes(props.formType)) // ==================== 子箱列表 ==================== const loading = ref(false) const list = ref([]) +const total = ref(0) +const queryParams = reactive({ + pageNo: 1, + pageSize: 10, + parentId: undefined as number | undefined +}) /** 查询子箱列表 */ const getList = async () => { loading.value = true try { - // 通过分页查询,筛选 parentId 为当前装箱单的记录 - // TODO @AI:这个列表的展示,就是使用分页的,所以正常搞就行了; - const data = await WmPackageApi.getPackagePage({ - pageNo: 1, - pageSize: 100, - parentId: props.packageId - }) + queryParams.parentId = props.packageId + const data = await WmPackageApi.getPackagePage(queryParams) list.value = data.list || [] + total.value = data.total || 0 } finally { loading.value = false } } -/** 查看子箱详情(打开新弹窗) */ -const handleView = (id: number) => { - // 通过打开详情弹窗查看 - // TODO @AI:不用支持查看详情;移除掉 - window.open(`/mes/wm/packages?id=${id}`, '_blank') -} - /** 移除子箱:将子箱的 parentId 清空 */ const handleRemoveChild = async (childId: number) => { try {