From 25174b415e38131652ce5e3c1acf03e0283642fa Mon Sep 17 00:00:00 2001 From: kkk-ops <1050738955@qq.com> Date: Sat, 7 Feb 2026 08:49:51 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=A8=A1=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/erp/mold/index.ts | 4 + src/api/iot/device/index.ts | 7 +- src/api/mes/deviceledger/index.ts | 4 + src/views/erp/mold/MoldBrandForm.vue | 1 + src/views/erp/mold/components/MoldForm.vue | 1 + src/views/erp/mold/index.vue | 17 +- src/views/erp/moldlist/index.vue | 6 +- .../mes/deviceledger/DeviceLedgerForm.vue | 6 +- .../moldget/components/StockOutItemForm.vue | 5 +- src/views/mes/moldoperate/MoldOperateForm.vue | 4 +- src/views/mes/moldreturn/MoldReturnForm.vue | 52 +- .../moldreturn/components/StockInItemForm.vue | 522 ++++++++++-------- src/views/mes/moldreturn/index.vue | 3 +- .../mes/organization/OrganizationForm.vue | 10 +- 14 files changed, 363 insertions(+), 279 deletions(-) diff --git a/src/api/erp/mold/index.ts b/src/api/erp/mold/index.ts index a3554fdb..5089ba0f 100644 --- a/src/api/erp/mold/index.ts +++ b/src/api/erp/mold/index.ts @@ -125,6 +125,10 @@ export const MoldBrandApi = { getMold: async (id: number) => { return await request.get({ url: `/erp/mold-brand/mold/get?id=` + id }) }, + // 根据状态获得模具 + getMoldListByStatus: async (status: number) => { + return await request.get({ url: `/erp/mold/getMoldListByStatus?status=` + status }) + }, // ==================== 子表(模具产品) ==================== diff --git a/src/api/iot/device/index.ts b/src/api/iot/device/index.ts index 339a517e..3e112e92 100644 --- a/src/api/iot/device/index.ts +++ b/src/api/iot/device/index.ts @@ -91,7 +91,12 @@ export const DeviceApi = { getDevice: async (id: number) => { return await request.get({ url: `/iot/device/get?id=` + id }) }, - + getDeviceListByNoUsed: async () => { + return await request.get({ url: `/iot/device/noUsedlist` }) + }, + getDeviceList2ByNoUsed: async (id: number) => { + return await request.get({ url: `/iot/device/noUsedlist2?id=` + id }) + }, // 新增物联设备 createDevice: async (data: DeviceVO) => { return await request.post({ url: `/iot/device/create`, data }) diff --git a/src/api/mes/deviceledger/index.ts b/src/api/mes/deviceledger/index.ts index ad15f090..12ecc1b0 100644 --- a/src/api/mes/deviceledger/index.ts +++ b/src/api/mes/deviceledger/index.ts @@ -54,6 +54,10 @@ export const DeviceLedgerApi = { return await request.get({ url: `/mes/device-ledger/noUsedlist` }) }, + getDeviceLedgerList2ByNoUsed: async (id: number) => { + return await request.get({ url: `/mes/device-ledger/noUsedlist2?id=` + id }) + }, + // 查询设备类型详情 getDeviceLedger: async (id: number) => { return await request.get({ url: `/mes/device-ledger/get?id=` + id }) diff --git a/src/views/erp/mold/MoldBrandForm.vue b/src/views/erp/mold/MoldBrandForm.vue index 2ec68eb1..c1e3f39d 100644 --- a/src/views/erp/mold/MoldBrandForm.vue +++ b/src/views/erp/mold/MoldBrandForm.vue @@ -86,6 +86,7 @@ diff --git a/src/views/erp/mold/components/MoldForm.vue b/src/views/erp/mold/components/MoldForm.vue index 9686bb23..4865cb98 100644 --- a/src/views/erp/mold/components/MoldForm.vue +++ b/src/views/erp/mold/components/MoldForm.vue @@ -78,6 +78,7 @@ diff --git a/src/views/erp/mold/index.vue b/src/views/erp/mold/index.vue index 5ecddf17..4fbd9881 100644 --- a/src/views/erp/mold/index.vue +++ b/src/views/erp/mold/index.vue @@ -6,7 +6,7 @@ :model="queryParams" ref="queryFormRef" :inline="true" - label-width="110px" + label-width="68px" > - + @@ -112,7 +112,6 @@ --> - - + - - - + + + + diff --git a/src/views/mes/moldreturn/index.vue b/src/views/mes/moldreturn/index.vue index c8dc68ae..d0bc769d 100644 --- a/src/views/mes/moldreturn/index.vue +++ b/src/views/mes/moldreturn/index.vue @@ -1,5 +1,4 @@ -/** 删除按钮操作 */ -const handleDelete = (index) => { - formData.value.splice(index, 1) + diff --git a/src/views/mes/moldget/index.vue b/src/views/mes/moldget/index.vue index e76d7788..1ed2116e 100644 --- a/src/views/mes/moldget/index.vue +++ b/src/views/mes/moldget/index.vue @@ -212,7 +212,7 @@ type="primary" @click="openForm('update', scope.row.id)" v-hasPermi="['erp:stock-out:update']" - :disabled="scope.row.status === 20" + v-if="scope.row.status === 10" > {{ t('MoldManagement.MoldGet.edit') }} @@ -225,7 +225,7 @@ > {{ t('MoldManagement.MoldGet.approve') }} - {{ t('MoldManagement.MoldGet.unapprove') }} - + --> {{ t('MoldManagement.MoldGet.delete') }} diff --git a/src/views/mes/moldreturn/MoldReturnForm.vue b/src/views/mes/moldreturn/MoldReturnForm.vue index 3727e7e9..1e440e8e 100644 --- a/src/views/mes/moldreturn/MoldReturnForm.vue +++ b/src/views/mes/moldreturn/MoldReturnForm.vue @@ -37,24 +37,6 @@ /> - - { // 校验表单 await formRef.value.validate() await itemFormRef.value.validate() - console.log(itemFormRef.value) - itemFormRef.value.selectedRows.forEach(item => { - console.log(item.id, item.name) -}) // 提交请求 formLoading.value = true try { - const data = formData.value as unknown as StockInVO - itemFormRef.value.selectedRows.forEach(item => { - console.log(item.id, item.name)}) - formData.value.items = itemFormRef.value.selectedRows + itemFormRef.value.selectedRows.forEach((item, index) => { + const i = { + warehouseId : formData.value.warehouseId, + productId : item.id, + productPrice: 0, + count: 1, + } + formData.value.items.push(i) +}); + const data = formData.value as unknown as StockInVO if (formType.value === 'create') { await StockInApi.createStockIn(data) message.success(t('common.createSuccess')) diff --git a/src/views/mes/moldreturn/components/StockInItemForm.vue b/src/views/mes/moldreturn/components/StockInItemForm.vue index 7548e3b5..d2c52c67 100644 --- a/src/views/mes/moldreturn/components/StockInItemForm.vue +++ b/src/views/mes/moldreturn/components/StockInItemForm.vue @@ -24,7 +24,7 @@ v-model="queryParams.name" :placeholder="t('MoldManagement.Mold.name')" clearabl - + @@ -56,12 +56,8 @@ import { DICT_TYPE } from '@/utils/dict' import { dateFormatter } from '@/utils/formatTime' import { MoldBrandApi, MoldVO } from '@/api/erp/mold' import { useDictStoreWithOut } from '@/store/modules/dict' -import type { FormInstance, FormRules } from 'element-plus' -/** 设备类型 列表 */ -defineOptions({ name: 'DeviceLedger' }) - const message = useMessage() // 消息弹窗 const { t } = useI18n() // 国际化 @@ -113,32 +109,34 @@ const resetQuery = () => { handleQuery() } -// 选中的行数据 +const tableRef = ref() const selectedRows = ref([]) -// 表单模型 - 只包含选中的数据 -const formModel = reactive({ - selectedItems: [] as any[] -}) -// 监听选中的行变化,更新表单模型 -watch(selectedRows, (newSelected) => { - formModel.selectedItems = [...newSelected] -}, { deep: true }) +watch(list, async () => { + await nextTick() + restoreSelection() +}) +const restoreSelection = () => { + if (!tableRef.value || selectedRows.value.length === 0) return + tableRef.value.clearSelection?.() + selectedRows.value.forEach(selectedRow => { + const rowInTable = list.value.find(row => row.id === selectedRow.id) + if (rowInTable) { + tableRef.value.toggleRowSelection?.(rowInTable, true) + } + }) +} -// 选择变化事件 const handleSelectionChange = (rows: any[]) => { selectedRows.value = rows - // console.log('选中的行:', rows) } -// 表单引用 -const formRef = ref() const validate = async (): Promise => { - if (!formRef.value) return false + if (!tableRef.value) return false try { - await formRef.value.validate() + await tableRef.value.validate() return true } catch (error) { return false diff --git a/src/views/mes/moldreturn/index.vue b/src/views/mes/moldreturn/index.vue index d0bc769d..00b7cc96 100644 --- a/src/views/mes/moldreturn/index.vue +++ b/src/views/mes/moldreturn/index.vue @@ -224,15 +224,14 @@ > {{ t('MoldManagement.MoldReturn.approve') }} - {{ t('MoldManagement.MoldReturn.unapprove') }} - + --> + + + + +