From 69ffc260effae0d0ad09bd8edcddf8f534870308 Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Wed, 26 Jun 2024 11:20:27 +0800 Subject: [PATCH 001/408] =?UTF-8?q?EAM=20=E2=80=94=E2=80=94>=20=20?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE=E8=BD=A6=E9=97=B4=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/eam/basicEamWorkshop/index.ts | 59 +++++ .../basicEamWorkshop/basicEamWorkshop.data.ts | 199 ++++++++++++++ src/views/eam/basicEamWorkshop/index.vue | 244 ++++++++++++++++++ 3 files changed, 502 insertions(+) create mode 100644 src/api/eam/basicEamWorkshop/index.ts create mode 100644 src/views/eam/basicEamWorkshop/basicEamWorkshop.data.ts create mode 100644 src/views/eam/basicEamWorkshop/index.vue diff --git a/src/api/eam/basicEamWorkshop/index.ts b/src/api/eam/basicEamWorkshop/index.ts new file mode 100644 index 000000000..330e0a251 --- /dev/null +++ b/src/api/eam/basicEamWorkshop/index.ts @@ -0,0 +1,59 @@ +import request from '@/config/axios' + +export interface BasicEamWorkshopVO { + id: number + code: string + name: string + description: string + type: string + available: string + activeTime: Date + expireTime: Date + remark: string + deletionTime: Date + deleterId: string + extraProperties: string + concurrencyStamp: number + siteId: string +} + +// 查询EAM车间列表 +export const getBasicEamWorkshopPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/basic-eam-workshop/senior', data }) + } else { + return await request.get({ url: `/eam/basic-eam-workshop/page`, params }) + } +} + +// 查询EAM车间详情 +export const getBasicEamWorkshop = async (id: number) => { + return await request.get({ url: `/eam/basic-eam-workshop/get?id=` + id }) +} + +// 新增EAM车间 +export const createBasicEamWorkshop = async (data: BasicEamWorkshopVO) => { + return await request.post({ url: `/eam/basic-eam-workshop/create`, data }) +} + +// 修改EAM车间 +export const updateBasicEamWorkshop = async (data: BasicEamWorkshopVO) => { + return await request.put({ url: `/eam/basic-eam-workshop/update`, data }) +} + +// 删除EAM车间 +export const deleteBasicEamWorkshop = async (id: number) => { + return await request.delete({ url: `/eam/basic-eam-workshop/delete?id=` + id }) +} + +// 导出EAM车间 Excel +export const exportBasicEamWorkshop = async (params) => { + return await request.download({ url: `/eam/basic-eam-workshop/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/basic-eam-workshop/get-import-template' }) +} \ No newline at end of file diff --git a/src/views/eam/basicEamWorkshop/basicEamWorkshop.data.ts b/src/views/eam/basicEamWorkshop/basicEamWorkshop.data.ts new file mode 100644 index 000000000..49809cffb --- /dev/null +++ b/src/views/eam/basicEamWorkshop/basicEamWorkshop.data.ts @@ -0,0 +1,199 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const BasicEamWorkshopRules = reactive({ + code: [required], + available: [required], + concurrencyStamp: [required], +}) + +export const BasicEamWorkshop = useCrudSchemas(reactive([ + { + label: 'id', + field: 'id', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '车间编号', + field: 'code', + sort: 'custom', + isSearch: true, + }, + { + label: '车间名称', + field: 'name', + sort: 'custom', + isSearch: true, + }, + { + label: '描述', + field: 'description', + sort: 'custom', + isSearch: false, + }, + { + label: '车间类型', + field: 'type', + sort: 'custom', + isSearch: true, + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + isSearch: true, + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + }, + { + label: '生效时间', + field: 'activeTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '失效时间', + field: 'expireTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: false, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '删除时间', + field: 'deletionTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '删除者ID', + field: 'deleterId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '扩展属性', + field: 'extraProperties', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/basicEamWorkshop/index.vue b/src/views/eam/basicEamWorkshop/index.vue new file mode 100644 index 000000000..95ce7e199 --- /dev/null +++ b/src/views/eam/basicEamWorkshop/index.vue @@ -0,0 +1,244 @@ + + + From 9ade868f1c20ac3851a434be098e71f30b0cff5c Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Wed, 26 Jun 2024 11:27:22 +0800 Subject: [PATCH 002/408] =?UTF-8?q?=E7=BC=96=E8=BE=91=E9=A2=84=E7=94=9F?= =?UTF-8?q?=E4=BA=A7=E8=AE=A1=E5=88=92=E6=97=A0=E6=B3=95=E4=BF=9D=E5=AD=98?= =?UTF-8?q?=EF=BC=8C=E6=8A=A5=E9=94=99=E2=80=9C=E7=94=9F=E4=BA=A7=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E4=B8=BB=E4=B8=8D=E5=AD=98=E5=9C=A8=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionplan/productionMain/index.vue | 6 +++++- .../productionplan/productionMainAssemble/index.vue | 6 +++++- .../productionMainAssembleSparePart/index.vue | 6 +++++- .../productionplan/productionMainPredictSparePart/index.vue | 6 +++++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/views/wms/productionManage/productionplan/productionMain/index.vue b/src/views/wms/productionManage/productionplan/productionMain/index.vue index 25e53a661..ccf175c27 100644 --- a/src/views/wms/productionManage/productionplan/productionMain/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMain/index.vue @@ -461,7 +461,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } if(tableData.value.find(item => (item.planQty <= 0))) { message.warning('数量必须大于0') formRef.value.formLoading = false diff --git a/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue b/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue index f8dab6fc1..91b97e1da 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue @@ -448,7 +448,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } if(tableData.value.find(item => (item.planQty <= 0))) { message.warning('数量必须大于0') formRef.value.formLoading = false diff --git a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue index 338d62945..468b425b1 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue @@ -447,7 +447,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } if(tableData.value.find(item => (item.planQty <= 0))) { message.warning('数量必须大于0') formRef.value.formLoading = false diff --git a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue index 186b60738..6d039de03 100644 --- a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue @@ -448,7 +448,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } if(tableData.value.find(item => (item.planQty <= 0))) { message.warning('数量必须大于0') formRef.value.formLoading = false From a4ff2bc4898b1e8a9fad158dc3cc801a6f2969fb Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Wed, 26 Jun 2024 13:27:39 +0800 Subject: [PATCH 003/408] =?UTF-8?q?EAM=20=E2=80=94=E2=80=94>=20=20?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE=E8=BD=A6=E9=97=B4=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/eam/basicEamWorkshop/index.ts | 8 +++- src/views/eam/basicEamWorkshop/index.vue | 61 ++++++++++++++++++++++-- 2 files changed, 63 insertions(+), 6 deletions(-) diff --git a/src/api/eam/basicEamWorkshop/index.ts b/src/api/eam/basicEamWorkshop/index.ts index 330e0a251..31acbb17c 100644 --- a/src/api/eam/basicEamWorkshop/index.ts +++ b/src/api/eam/basicEamWorkshop/index.ts @@ -1,4 +1,5 @@ import request from '@/config/axios' +import {EquipmentMainPartVO} from "@/api/eam/equipmentMainPart"; export interface BasicEamWorkshopVO { id: number @@ -56,4 +57,9 @@ export const exportBasicEamWorkshop = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/eam/basic-eam-workshop/get-import-template' }) -} \ No newline at end of file +} + +// 启用 / 禁用 +export const updateEnableCode = async (data: BasicEamWorkshopVO) => { + return await request.post({ url: `/eam/basic-eam-workshop/ables` , data }) +} diff --git a/src/views/eam/basicEamWorkshop/index.vue b/src/views/eam/basicEamWorkshop/index.vue index 95ce7e199..c3739217a 100644 --- a/src/views/eam/basicEamWorkshop/index.vue +++ b/src/views/eam/basicEamWorkshop/index.vue @@ -33,7 +33,7 @@ @@ -65,6 +65,7 @@ import * as defaultButtons from '@/utils/disposition/defaultButtons' import TableHead from '@/components/TableHead/src/TableHead.vue' import ImportForm from '@/components/ImportForm/src/ImportForm.vue' import Detail from '@/components/Detail/src/Detail.vue' +import * as BasicFaultCauseApi from "@/api/eam/basicFaultCause"; defineOptions({ name: 'BasicEamWorkshop' }) @@ -131,11 +132,25 @@ const buttonBaseClick = (val, item) => { } } +const isShowMainButton = (row,val) => { + if (val.indexOf(row.available) > -1) { + return false + } else { + return true + } +} + // 列表-操作按钮 -const butttondata = [ - defaultButtons.mainListEditBtn({hasPermi:'eam:basicEamWorkshop:update'}), // 编辑 - defaultButtons.mainListDeleteBtn({hasPermi:'eam:basicEamWorkshop:delete'}), // 删除 -] +const butttondata = (row) => { + return [ + defaultButtons.mainListEditBtn({hasPermi:'eam:basicEamWorkshop:update'}), // 编辑 + //defaultButtons.mainListDeleteBtn({hasPermi:'eam:basicEamWorkshop:delete'}), // 删除 + defaultButtons.mainListEnableBtn({hide:isShowMainButton(row,['FALSE']),hasPermi:'eam:basicEamWorkshop:update'}), + defaultButtons.mainListDisableBtn({hide:isShowMainButton(row,['TRUE']),hasPermi:'eam:basicEamWorkshop:update'}), + ] +} + + // 列表-操作按钮事件 const buttonTableClick = async (val, row) => { @@ -143,6 +158,10 @@ const buttonTableClick = async (val, row) => { openForm('update', row) } else if (val == 'delete') { // 删除 handleDelete(row.id) + } else if (val == 'enable') { + handleEnable(row.id) + } else if (val == 'disable') { + handleDisable(row.id) } } @@ -195,6 +214,38 @@ const handleDelete = async (id: number) => { } catch {} } + +/** 启用 */ +const handleEnable = async (id: number) => { + try { + const params = ref({ + id: '', + available:'', + }) + params.value.id = id + params.value.available = 'TRUE' + await BasicEamWorkshopApi.updateEnableCode(params.value) + message.success(t('common.updateSuccess')) + // 刷新列表 + await getList() + } catch {} +} +/** 禁用 */ +const handleDisable = async (id: number) => { + try { + const params = ref({ + id: '', + available:'', + }) + params.value.id = id + params.value.available = 'FALSE' + await BasicEamWorkshopApi.updateEnableCode(params.value) + message.success(t('common.updateSuccess')) + // 刷新列表 + await getList() + } catch {} +} + /** 导出按钮操作 */ const exportLoading = ref(false) // 导出的加载中 const handleExport = async () => { From e5f5b1ad321d831ef2aadc92295e884f508c35fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Wed, 26 Jun 2024 14:28:33 +0800 Subject: [PATCH 004/408] =?UTF-8?q?=E5=BA=93=E5=8C=BA=E5=90=8D=E5=AD=97?= =?UTF-8?q?=E5=BF=85=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basicDataManage/factoryModeling/areabasic/areabasic.data.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts b/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts index 2470bc8c8..1ed56940b 100644 --- a/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts +++ b/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts @@ -254,7 +254,7 @@ export const AreaRules = reactive({ { validate: validateYS, message: '请输入正确的代码', trigger: 'blur' } ], name: [ - { max: 50, message: '不得超过50个字符', trigger: 'blur' } + { required: true, max: 50, message: '不得超过50个字符', trigger: 'blur' } ], remark: [ { max: 50, message: '不得超过50个字符', trigger: 'blur' } From 779681e312f66275acb3922ffd8c5080fc78faee Mon Sep 17 00:00:00 2001 From: zhaoyiran Date: Wed, 26 Jun 2024 14:47:08 +0800 Subject: [PATCH 005/408] =?UTF-8?q?=E6=A3=80=E9=AA=8C=E6=96=B9=E6=A1=88?= =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/qms/inspectionTemplate/index.ts | 5 ++++ src/views/qms/inspectionTemplate/index.vue | 29 ++++++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/api/qms/inspectionTemplate/index.ts b/src/api/qms/inspectionTemplate/index.ts index f3bf638d2..eb80285c8 100644 --- a/src/api/qms/inspectionTemplate/index.ts +++ b/src/api/qms/inspectionTemplate/index.ts @@ -37,3 +37,8 @@ export const enableInspectionTemplate = async (id: number) => { export const disableInspectionTemplate = async (id: number) => { return await request.disable({ url: `/qms/programme-template/disable?id=` + id }) } + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/qms/programme-template/get-import-template' }) +} diff --git a/src/views/qms/inspectionTemplate/index.vue b/src/views/qms/inspectionTemplate/index.vue index dd0a4cea7..d5dc6e642 100644 --- a/src/views/qms/inspectionTemplate/index.vue +++ b/src/views/qms/inspectionTemplate/index.vue @@ -56,7 +56,15 @@ /> - + From 7509afbe5bc732e0be7922246b94043750d17858 Mon Sep 17 00:00:00 2001 From: bjang03 Date: Wed, 26 Jun 2024 15:20:13 +0800 Subject: [PATCH 006/408] =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D=201=E3=80=81?= =?UTF-8?q?=E7=9B=98=E7=82=B9-=E7=9B=98=E7=82=B9=E8=B0=83=E6=95=B4-?= =?UTF-8?q?=E7=9B=98=E7=82=B9=E8=B0=83=E6=95=B4=E7=94=B3=E8=AF=B7=EF=BC=8C?= =?UTF-8?q?=E6=98=8E=E7=BB=86=E4=B8=8D=E5=BA=94=E6=9C=89=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/countManage/countadjust/countadjustRequestMain/index.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/views/wms/countManage/countadjust/countadjustRequestMain/index.vue b/src/views/wms/countManage/countadjust/countadjustRequestMain/index.vue index 7f06f76f3..58e2edbcc 100644 --- a/src/views/wms/countManage/countadjust/countadjustRequestMain/index.vue +++ b/src/views/wms/countManage/countadjust/countadjustRequestMain/index.vue @@ -70,6 +70,7 @@ :apiPage="CountadjustRequestDetailApi.getCountadjustRequestDetailPage" :apiDelete="CountadjustRequestDetailApi.deleteCountadjustRequestDetail" fromeWhere="countadjustRequest" + :detailButtonIsShowAdd="false" :Echo="Echo" @searchTableSuccessDetail="searchTableSuccessDetail" /> From c263bc3819994f5c8b58820af5ec702bfb0d081a Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Wed, 26 Jun 2024 15:41:41 +0800 Subject: [PATCH 007/408] =?UTF-8?q?=E9=87=87=E8=B4=AD=E6=8B=92=E6=94=B6?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/purchasereceiptRecordDetail/index.ts | 13 + .../wms/purchasereceiptRecordMain/index.ts | 11 + .../purchasereceiptRecordRefuseMain/index.vue | 331 +++ .../purchasereceiptRecordMain.data.ts | 1979 +++++++++++++++++ 4 files changed, 2334 insertions(+) create mode 100644 src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue create mode 100644 src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/purchasereceiptRecordMain.data.ts diff --git a/src/api/wms/purchasereceiptRecordDetail/index.ts b/src/api/wms/purchasereceiptRecordDetail/index.ts index 41b7aa7b7..4dc9271e7 100644 --- a/src/api/wms/purchasereceiptRecordDetail/index.ts +++ b/src/api/wms/purchasereceiptRecordDetail/index.ts @@ -61,6 +61,19 @@ export const getPurchasereceiptRecordDetailPage = async (params) => { } } + +// 查询采购拒收记录 +export const getPurchasereceiptRecordDetailRefusePage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/purchasereceipt-record-detail/seniorRefuse', data }) + } else { + return await request.get({ url: `/wms/purchasereceipt-record-detail/pageRefuse`, params }) + } +} + + // 查询备件收货记录子列表 export const getPurchasereceiptRecordDetailPageSpare = async (params) => { if (params.isSearch) { diff --git a/src/api/wms/purchasereceiptRecordMain/index.ts b/src/api/wms/purchasereceiptRecordMain/index.ts index 684984333..017f12336 100644 --- a/src/api/wms/purchasereceiptRecordMain/index.ts +++ b/src/api/wms/purchasereceiptRecordMain/index.ts @@ -89,6 +89,17 @@ export const exportPurchasereceiptRecordMain = async (params) => { } } +// 导出采购收货记录主 Excel +export const exportPurchasereceiptRecordRefuseMain = async (params) => { + if (params.isSearch) { + const data = {...params} + return await request.downloadPost({ url: `/wms/purchasereceipt-record-main/export-excel-senior-refuse`, data }) + } else { + return await request.download({ url: `/wms/purchasereceipt-record-main/export-excel-refuse`, params }) + } +} + + // 导出备件收货记录 export const exportSparereceiptRecordMain = async (params) => { if (params.isSearch) { diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue new file mode 100644 index 000000000..c4befcd4d --- /dev/null +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue @@ -0,0 +1,331 @@ + + + diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/purchasereceiptRecordMain.data.ts b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/purchasereceiptRecordMain.data.ts new file mode 100644 index 000000000..fb416087b --- /dev/null +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/purchasereceiptRecordMain.data.ts @@ -0,0 +1,1979 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter,dateFormatter2 } from '@/utils/formatTime' +import { t } from '@wangeditor/editor' + + + +/** + * @returns {Array} 采购收货记录主表 + */ +export const PurchasereceiptRecordMain = useCrudSchemas(reactive([ + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180, + fixed: 'left' + }, + isSearch: true, + sortSearchDefault:1, + sortTableDefault:1 + + }, + { + label: '申请单号', + field: 'requestNumber', + sort: 'custom', + table: { + width: 180 + }, + sortTableDefault:2 + }, + { + label: '任务单号', + field: 'jobNumber', + sort: 'custom', + table: { + width: 180 + }, + sortTableDefault:3 + }, + { + label: '发货单号', + field: 'asnNumber', + sort: 'custom', + table: { + width: 180 + }, + sortTableDefault:4, + isSearch: true + }, + { + label: '拒收时间', + field: 'refuseTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + }, + { + label: '拒收原因', + field: 'refuseReason', + sort: 'custom', + table: { + width: 180 + }, + }, + { + label: '拒收人', + field: 'refuseUpdater', + sort: 'custom', + table: { + width: 150 + }, + }, + // { + // label: 'ERP单据号(无用)', + // field: 'erpNumber', + // isTable:false, + // isTableForm:false, + // sort: 'custom', + // table: { + // width: 180 + // }, + // }, + // { + // label: 'ERP单据号', + // field: 'qadNumber', + // sort: 'custom', + // table: { + // width: 200 + // }, + // sortTableDefault:5, + // }, + { + label: '要货计划单号', + field: 'ppNumber', + sort: 'custom', + table: { + width: 180 + }, + isTable:false + }, + { + label: '供应商代码', + field: 'supplierCode', + sort: 'custom', + table: { + width: 150 + }, + isSearch: true, + sortSearchDefault:2, + isTable:false + }, + { + label: '到月台代码', + field: 'toDockCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '承运商', + field: 'carrierCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '运输方式', + field: 'transferMode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '数据来源', + field: 'sourceType', + dictType: DICT_TYPE.PURCHASERECEIPT_SOURCE_TYPE, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled: true + } + }, + isSearch: false, + isTable:false + }, + { + label: '车牌号', + field: 'vehiclePlateNumber', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '从仓库代码', + field: 'fromWarehouseCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '到仓库代码', + field: 'toWarehouseCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '从库区类型范围', + field: 'fromAreaTypes', + dictType: DICT_TYPE.AREA_TYPE, + dictClass: 'string', + isTable: false, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '到库区类型范围', + field: 'toAreaTypes', + dictType: DICT_TYPE.AREA_TYPE, + dictClass: 'string', + isTable: false, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '从库区代码范围', + field: 'fromAreaCodes', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '到库区代码范围', + field: 'toAreaCodes', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '出库事务类型', + field: 'outTransaction', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '入库事务类型', + field: 'inTransaction', + sort: 'custom', + table: { + width: 150 + }, + isTable:false + }, + { + label: '执行时间', + field: 'executeTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + isTable:false, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + }, + { + label: '生效日期', + field: 'activeDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + isTable:false, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + }, + { + label: '申请时间', + field: 'requestTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + isTable:false, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + }, + { + label: '截止时间', + field: 'dueTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + isTable:false, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + }, + { + label: '部门', + field: 'departmentCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + }, + // { + // label: '代码', + // field: 'code', + // sort: 'custom', + // table: { + // width: 150 + // }, + // }, + { + label: '接口类型', + field: 'interfaceType', + dictType: DICT_TYPE.INTERFACE_TYPE, + dictClass: 'string', + isTable: false, + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + }, + { + label: '创建者', + field: 'creator', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + isTable:false, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + }, + { + + label: '是否可用', + field: 'available', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: 'TRUE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE' + } + } + }, + // { + // label: '操作', + // field: 'action', + // isDetail: false, + // isForm: false, + // table: { + // width: 400, + // fixed: 'right' + // }, + // }, + { + label: '批次', // 实际是子表的从批次,为了不影响页面,单独放上面 + field: 'fromBatch', + sort: 'custom', + isForm:false, + isTableForm:false, + table: { + width: 150 + }, + sortTableDefault:12, + }, + { + label: '包装号', // 实际是子表的从包装号,为了不影响页面,单独放上面 + field: 'fromPackingNumber', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:16, + }, + // { + // label: '检验申请单号', + // field: 'inspectNumber', + // sort: 'custom', + // table: { + // width: 150 + // }, + // sortTableDefault:6, + // }, + { + label: '数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:12, + }, + { + label: '创建时间', + field: 'createTime', + isForm: false, + table: { + width: 180 + }, + formatter: dateFormatter, + detail: { + dateFormat : 'YYYY-MM-DD HH:mm:ss' + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + } + }, + { + label: '创建者', + field: 'creator', + table: { + width: 130 + }, + isForm: false, + isTable: true + }, + { + label: '最后更新时间', + field: 'updateTime', + sort: 'custom', + isDetail: true, + isForm: false, + isTable: false, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + } + }, + { + label: '最后更新者', + field: 'updater', + isDetail: true, + isForm: false, + isTable: false, + table: { + width: 150 + } + }, +])) + +// 表单校验 +export const PurchasereceiptRecordMainRules = reactive({ + requestNumber: [ + { required: true, message: '请选择申请单号', trigger: 'change' } + ], + supplierCode: [ + { required: true, message: '请选择供应商代码', trigger: 'change' } + ], + toWarehouseCode: [ + { required: true, message: '请选择到仓库代码', trigger: 'change' } + ], + toAreaTypes: [ + { required: true, message: '请选择到库位类型服务', trigger: 'change' } + ], + outTransaction: [ + { required: true, message: '请输入出库事务类型', trigger: 'blur' } + ], + inTransaction: [ + { required: true, message: '请输入入库事务类型', trigger: 'blur' } + ], + executeTime: [ + { required: true, message: '请输入执行时间', trigger: 'change' } + ], + activeDate: [ + { required: true, message: '请输入生效日期', trigger: 'change' } + ], + available: [ + { required: true, message: '请输入是否可用', trigger: 'blur' } + ], + departmentCode: [ + { required: true, message: '请输入部门', trigger: 'blur' } + ], + interfaceType: [ + { required: true, message: '请选择接口类型', trigger: 'change' } + ], + number: [ + { required: true, message: '请输入单据号', trigger: 'blur' } + ], + businessType: [ + { required: true, message: '请输入业务类型', trigger: 'blur' } + ], + createTime: [ + { required: true, message: '请选择创建时间', trigger: 'change' } + ], + creator: [ + { required: true, message: '请输入创建者', trigger: 'blur' } + ], +}) + +/** + * @returns {Array} 采购收货记录子表 + */ +export const PurchasereceiptRecordDetail = useCrudSchemas(reactive([ + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180, + }, + sortTableDefault:1998, + hiddenInMain:true + }, + { + label: '检验申请单号', + field: 'inspectNumber', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + sortTableDefault:6, + }, + { + label: '采购订单号', + field: 'poNumber', + sort: 'custom', + table: { + width: 150 + }, + sortSearchDefault:5, + sortTableDefault:7, + isSearch: true + }, + { + label: '订单行', + field: 'poLine', + sort: 'custom', + table: { + width: 150 + }, + sortSearchDefault:5, + sortTableDefault:8, + }, + { + label: '行类型', + field: 'poLineType', + sort: 'custom', + table: { + width: 180 + }, + sortTableDefault:9, + hiddenInMain:true, + isForm: false, + tableForm:{ + disabled: true + }, + }, + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:10, + isSearch: true + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:10, + }, + { + label: '物料描述1', + field: 'itemDesc1', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:11, + hiddenInMain:true + }, + { + label: '物料描述2', + field: 'itemDesc2', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:11, + hiddenInMain:true + }, + { + label: '从批次', + field: 'fromBatch', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:14, + hiddenInMain:true + }, + { + label: '到批次', + field: 'toBatch', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:14, + hiddenInMain:true + }, + { + label: '替代批次', + field: 'altBatch', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true + }, + { + label: '从包装号', + field: 'fromPackingNumber', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:15, + hiddenInMain:true + }, + { + label: '到包装号', + field: 'toPackingNumber', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:15, + hiddenInMain:true + }, + { + label: '从器具号', + field: 'fromContainerNumber', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true + }, + { + label: '到器具号', + field: 'toContainerNumber', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true + }, + { + label: '订单数量', + field: 'orderQty', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true, + sortTableDefault:1004 + }, + { + label: '收货数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + sortTableDefault:12, + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + form: { + component: 'InputNumber', + }, + sortTableDefault:12, + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + }, + { + label: '包装规格', + field: 'packUnit', + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:16, + }, + { + label: '包装数量', + field: 'packQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + }, + tableForm: { + disabled: true, + }, + isForm:false, + sortTableDefault:16, + }, + { + label: '供应商计量数量', + field: 'supplierQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + }, + sortTableDefault:24, + hiddenInMain:true + }, + { + label: '供应商计量单位', + field: 'supplierUom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:24, + hiddenInMain:true + }, + + { + label: '库存状态', + field: 'inventoryStatus', + dictType: DICT_TYPE.INVENTORY_STATUS, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:18, + hiddenInMain:true + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:18, + + }, + { + label: '到库位代码', + field: 'toLocationCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:18, + }, + { + label: '从库位组', + field: 'fromLocationGroupCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:19, + hiddenInMain:true + }, + { + label: '到库位组', + field: 'toLocationGroupCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:19, + hiddenInMain:true + }, + { + label: '从库区', + field: 'fromAreaCodes', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:22, + hiddenInMain:true, + }, + { + label: '到库区', + field: 'toAreaCodes', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:22, + hiddenInMain:true + }, + { + label: '从货主', + field: 'fromOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:23, + hiddenInMain:true + }, + { + label: '到货主', + field: 'toOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:23, + hiddenInMain:true + }, + { + label: '到货日期', + field: 'arriveDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + sortTableDefault:17, + hiddenInMain:true + }, + { + label: '生产日期', + field: 'produceDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + sortTableDefault:17, + hiddenInMain:true + }, + { + label: '过期日期', + field: 'expireDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + sortTableDefault:17, + hiddenInMain:true + }, + { + label: '转换率', + field: 'convertRate', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + }, + sortTableDefault:1997, + hiddenInMain:true + }, + { + label: '目检结果', + field: 'visualInspectResult', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true + }, + { + label: '目检照片', + field: 'visualInspectPhotos', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true + }, + { + label: '不合格原因', + field: 'failedReason', + dictType: DICT_TYPE.PURCHASE_RETURN_REASON, + dictClass: 'string', + isTable:false, + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true + }, + { + label: '单价', + field: 'singlePrice', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + }, + isTable:false, + hiddenInMain:true + }, + { + label: '金额', + field: 'amount', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + }, + isTable:false, + hiddenInMain:true + }, + // { + // label: '任务明细ID', + // field: 'jobDetailId', + // sort: 'custom', + // table: { + // width: 150 + // }, + // }, + + { + label: '项目代码', + field: 'projectCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:1998, + hiddenInMain:true + }, + // { + // label: '代码', + // field: 'code', + // sort: 'custom', + // table: { + // width: 150 + // }, + // }, + { + label: '接口类型', + field: 'interfaceType', + dictType: DICT_TYPE.INTERFACE_TYPE, + dictClass: 'string', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + sortTableDefault:2000, + }, + { + label: '创建者', + field: 'creator', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + sortTableDefault:2000, + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + hiddenInMain:true, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + sortTableDefault:2000, + }, + // { + // label: '操作', + // hiddenInMain:true, + // field: 'action', + // isDetail: false, + // isForm: false , + // table: { + // width: 150, + // fixed: 'right' + // }, + // isTableForm:true, + // } +])) + +// 表单校验 +export const PurchasereceiptRecordDetailRules = reactive({ + fromPackingNumber: [ + { required: true, message: '请选择从包装号', trigger: 'change' } + ], + toPackingNumber: [ + { required: true, message: '请选择到包装号', trigger: 'change' } + ], + fromBatch: [ + { required: true, message: '请输入从批次', trigger: 'blur' } + ], + toBatch: [ + { required: true, message: '请输入到批次', trigger: 'blur' } + ], + arriveDate: [ + { required: true, message: '请选择到货日期', trigger: 'change' } + ], + produceDate: [ + { required: true, message: '请选择生产日期', trigger: 'change' } + ], + expireDate: [ + { required: true, message: '请选择过期日期', trigger: 'change' } + ], + inventoryStatus: [ + { required: true, message: '请选择库存状态', trigger: 'change' } + ], + toLocationCode: [ + { required: true, message: '请选择到库位代码', trigger: 'change' } + ], + toLocationGroupCode: [ + { required: true, message: '请选择到库位组代码', trigger: 'change' } + ], + toAreaCodes: [ + { required: true, message: '请选择到库区代码', trigger: 'change' } + ], + poNumber: [ + { required: true, message: '请选择订单号', trigger: 'change' } + ], + poLine: [ + { required: true, message: '请选择订单行', trigger: 'change' } + ], + packQty: [ + { required: true, message: '请输入包装数量', trigger: 'blur' } + ], + packUnit: [ + { required: true, message: '请选择包装规格', trigger: 'change' } + ], + convertRate: [ + { required: true, message: '请输入转换率', trigger: 'blur' } + ], + visualInspectResult: [ + { required: true, message: '请选择目检结果', trigger: 'change' } + ], +}) + + +/** + * @returns {Array} 采购收货记录子表-子包装数据 + */ +export const PurchasereceiptRecordDetailPackingNumber = useCrudSchemas(reactive([ + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180, + fixed: 'left' + }, + hiddenInMain:true, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '订单号', + field: 'poNumber', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '订单行', + field: 'poLine', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '物料描述1', + field: 'itemDesc1', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '物料描述2', + field: 'itemDesc2', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '从批次', + field: 'fromBatch', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到批次', + field: 'toBatch', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '替代批次', + field: 'altBatch', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '从包装号', + field: 'fromPackingNumber', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到包装号', + field: 'toPackingNumber', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '从器具号', + field: 'fromContainerNumber', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到器具号', + field: 'toContainerNumber', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isSearch: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + + { + label: '包装数量', + field: 'packQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + + }, + { + label: '包装规格', + field: 'packUnit', + dictClass: 'string', + isSearch: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + + }, + { + label: '供应商计量数量', + field: 'supplierQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '供应商计量单位', + field: 'supplierUom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isSearch: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '库存状态', + field: 'inventoryStatus', + dictType: DICT_TYPE.INVENTORY_STATUS, + dictClass: 'string', + isSearch: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到库位代码', + field: 'toLocationCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '从库位组代码', + field: 'fromLocationGroupCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + sortTableDefault:21, + tableForm: { + disabled: true, + } + }, + { + label: '到库位组代码', + field: 'toLocationGroupCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + sortTableDefault:21, + tableForm: { + disabled: true, + } + }, + { + label: '从库区代码', + field: 'fromAreaCodes', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到库区代码', + field: 'toAreaCodes', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '从货主代码', + field: 'fromOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到货主代码', + field: 'toOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '到货日期', + field: 'arriveDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled: true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm: { + disabled: true, + type:'FormDate', + valueFormat: 'x', + } + }, + { + label: '生产日期', + field: 'produceDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled: true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm: { + disabled: true, + type:'FormDate', + valueFormat: 'x', + } + }, + { + label: '过期日期', + field: 'expireDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled: true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm: { + disabled: true, + type:'FormDate', + valueFormat: 'x', + } + }, + { + label: '转换率', + field: 'convertRate', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '目检结果', + field: 'visualInspectResult', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '目检照片', + field: 'visualInspectPhotos', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '不合格原因', + field: 'failedReason', + dictType: DICT_TYPE.PURCHASE_RETURN_REASON, + dictClass: 'string', + isSearch: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '单价', + field: 'singlePrice', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '金额', + field: 'amount', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '项目代码', + field: 'projectCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '接口类型', + field: 'interfaceType', + dictType: DICT_TYPE.INTERFACE_TYPE, + dictClass: 'string', + isSearch: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + } +])) From 75074e27254e3d58df34e54e8405aed769b360d8 Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Wed, 26 Jun 2024 15:55:42 +0800 Subject: [PATCH 008/408] =?UTF-8?q?EAM=20=20=E2=80=94=E2=80=94>=20?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE=E7=94=9F=E4=BA=A7=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/eam/basicEamProductionline/index.ts | 73 +++++ src/api/eam/basicEamWorkshop/index.ts | 7 +- .../basicEamProductionline.data.ts | 235 ++++++++++++++ .../eam/basicEamProductionline/index.vue | 296 ++++++++++++++++++ 4 files changed, 610 insertions(+), 1 deletion(-) create mode 100644 src/api/eam/basicEamProductionline/index.ts create mode 100644 src/views/eam/basicEamProductionline/basicEamProductionline.data.ts create mode 100644 src/views/eam/basicEamProductionline/index.vue diff --git a/src/api/eam/basicEamProductionline/index.ts b/src/api/eam/basicEamProductionline/index.ts new file mode 100644 index 000000000..9f410aea3 --- /dev/null +++ b/src/api/eam/basicEamProductionline/index.ts @@ -0,0 +1,73 @@ +import request from '@/config/axios' +import {BasicEamWorkshopVO} from "@/api/eam/basicEamWorkshop"; + +export interface BasicEamProductionlineVO { + id: number + code: string + name: string + description: string + type: string + workshopCode: string + rawLocationCode: string + fgLocationCode: string + available: string + activeTime: Date + expireTime: Date + remark: string + deletionTime: Date + deleterId: string + extraProperties: string + concurrencyStamp: number + siteId: string +} + +// 查询生产线列表 +export const getBasicEamProductionlinePage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/basic-eam-productionline/senior', data }) + } else { + return await request.get({ url: `/eam/basic-eam-productionline/page`, params }) + } +} + +// 查询生产线详情 +export const getBasicEamProductionline = async (id: number) => { + return await request.get({ url: `/eam/basic-eam-productionline/get?id=` + id }) +} + +// 新增生产线 +export const createBasicEamProductionline = async (data: BasicEamProductionlineVO) => { + return await request.post({ url: `/eam/basic-eam-productionline/create`, data }) +} + +// 修改生产线 +export const updateBasicEamProductionline = async (data: BasicEamProductionlineVO) => { + return await request.put({ url: `/eam/basic-eam-productionline/update`, data }) +} + +// 删除生产线 +export const deleteBasicEamProductionline = async (id: number) => { + return await request.delete({ url: `/eam/basic-eam-productionline/delete?id=` + id }) +} + +// 导出生产线 Excel +export const exportBasicEamProductionline = async (params) => { + if (params.isSearch) { + const data = {...params} + return await request.downloadPost({ url: `/eam/basic-eam-productionline/export-excel-senior`, data }) + }else{ + return await request.download({ url: `/eam/basic-eam-productionline/export-excel`, params }) + } +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/basic-eam-productionline/get-import-template' }) +} + +// 启用 / 禁用 +export const updateEnableCode = async (data: BasicEamProductionlineVO) => { + return await request.post({ url: `/eam/basic-eam-productionline/ables` , data }) +} diff --git a/src/api/eam/basicEamWorkshop/index.ts b/src/api/eam/basicEamWorkshop/index.ts index 31acbb17c..09d83c2d9 100644 --- a/src/api/eam/basicEamWorkshop/index.ts +++ b/src/api/eam/basicEamWorkshop/index.ts @@ -51,7 +51,12 @@ export const deleteBasicEamWorkshop = async (id: number) => { // 导出EAM车间 Excel export const exportBasicEamWorkshop = async (params) => { - return await request.download({ url: `/eam/basic-eam-workshop/export-excel`, params }) + if (params.isSearch) { + const data = {...params} + return await request.downloadPost({ url: `/eam/basic-eam-workshop/export-excel-senior`, data }) + }else{ + return await request.download({ url: `/eam/basic-eam-workshop/export-excel`, params }) + } } // 下载用户导入模板 diff --git a/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts b/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts new file mode 100644 index 000000000..a9018722a --- /dev/null +++ b/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts @@ -0,0 +1,235 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; +import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; +import {getBasicEamWorkshopPage} from "@/api/eam/basicEamWorkshop"; + +// 表单校验 +export const BasicEamProductionlineRules = reactive({ + code: [required], + available: [required], + concurrencyStamp: [required], +}) + +export const BasicEamProductionline = useCrudSchemas(reactive([ + { + label: 'id', + field: 'id', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '生产线编号', + field: 'code', + sort: 'custom', + isSearch: true, + }, + { + label: '生产线名称', + field: 'name', + sort: 'custom', + isSearch: true, + }, + { + label: '描述', + field: 'description', + sort: 'custom', + isSearch: false, + }, + { + label: '生产线类型', + field: 'type', + sort: 'custom', + isSearch: true, + }, + { + label: '车间代码', + field: 'workshopCode', + sort: 'custom', + isSearch: false, + required: true, + form: { + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '车间', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '车间信息', // 查询弹窗标题 + searchAllSchemas: BasicEamWorkshop.allSchemas, // 查询弹窗所需类 + searchPage: WorkshopApi.getBasicEamWorkshopPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + }, + { + label: '原料库位', + field: 'rawLocationCode', + sort: 'custom', + isSearch: true, + }, + { + label: '成品库位', + field: 'fgLocationCode', + sort: 'custom', + isSearch: true, + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + }, + { + label: '生效时间', + field: 'activeTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '失效时间', + field: 'expireTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: false, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '删除时间', + field: 'deletionTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '删除者ID', + field: 'deleterId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '扩展属性', + field: 'extraProperties', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/basicEamProductionline/index.vue b/src/views/eam/basicEamProductionline/index.vue new file mode 100644 index 000000000..1b00d53df --- /dev/null +++ b/src/views/eam/basicEamProductionline/index.vue @@ -0,0 +1,296 @@ + + + From e31212419e903c370c16cda14b180b262b2db91d Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Wed, 26 Jun 2024 16:34:23 +0800 Subject: [PATCH 009/408] =?UTF-8?q?EAM=20=20=E2=80=94=E2=80=94>=20?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E6=95=B0=E6=8D=AE=20=E8=BD=A6=E9=97=B4?= =?UTF-8?q?=E4=BA=A7=E7=BA=BF=20=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basicEamProductionline.data.ts | 1 - src/views/eam/basicEamProductionline/index.vue | 13 +++++++++++++ src/views/eam/basicEamWorkshop/index.vue | 13 +++++++++++++ .../equipmentMaintenanceMain.data.ts | 11 +++++------ .../equipmentRepairJobMain.data.ts | 14 +++++++------- .../equipmentReportRepairRequest.data.ts | 11 +++++------ src/views/eam/maintenance/maintenance.data.ts | 11 +++++------ .../eam/planInspection/planInspection.data.ts | 12 +++++------- src/views/eam/planSpotCheck/planSpotCheck.data.ts | 11 +++++------ 9 files changed, 58 insertions(+), 39 deletions(-) diff --git a/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts b/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts index a9018722a..d4470df4d 100644 --- a/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts +++ b/src/views/eam/basicEamProductionline/basicEamProductionline.data.ts @@ -2,7 +2,6 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import { dateFormatter } from '@/utils/formatTime' import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; -import {getBasicEamWorkshopPage} from "@/api/eam/basicEamWorkshop"; // 表单校验 export const BasicEamProductionlineRules = reactive({ diff --git a/src/views/eam/basicEamProductionline/index.vue b/src/views/eam/basicEamProductionline/index.vue index 1b00d53df..38b483ed9 100644 --- a/src/views/eam/basicEamProductionline/index.vue +++ b/src/views/eam/basicEamProductionline/index.vue @@ -169,6 +169,19 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + if(type == "create"){ + BasicEamProductionline.allSchemas.formSchema.forEach((item) => { + if(item.field == 'code'){ + item.componentProps.disabled = false + } + }) + }else { + BasicEamProductionline.allSchemas.formSchema.forEach((item) => { + if(item.field == 'code'){ + item.componentProps.disabled = false + } + }) + } basicFormRef.value.open(type, row) } diff --git a/src/views/eam/basicEamWorkshop/index.vue b/src/views/eam/basicEamWorkshop/index.vue index c3739217a..5f9f85977 100644 --- a/src/views/eam/basicEamWorkshop/index.vue +++ b/src/views/eam/basicEamWorkshop/index.vue @@ -168,6 +168,19 @@ const buttonTableClick = async (val, row) => { /** 添加/修改操作 */ const basicFormRef = ref() const openForm = (type: string, row?: any) => { + if(type == "create"){ + BasicEamWorkshop.allSchemas.formSchema.forEach((item) => { + if(item.field == 'code'){ + item.componentProps.disabled = false + } + }) + }else{ + BasicEamWorkshop.allSchemas.formSchema.forEach((item) => { + if(item.field == 'code'){ + item.componentProps.disabled = true + } + }) + } basicFormRef.value.open(type, row) } diff --git a/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts b/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts index 97d22bbfe..33839e0b6 100644 --- a/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts +++ b/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts @@ -2,8 +2,8 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import { dateFormatter } from '@/utils/formatTime' import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts.data"; import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; -import {Workshop} from "@/views/wms/basicDataManage/factoryModeling/workshop/workshop.data"; -import * as WorkshopApi from "@/api/wms/workshop"; +import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; +import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; import {RelationMaintenancePlanItem} from "@/views/eam/maintenance/maintenance.data"; import * as ItemApi from "@/api/eam/relationMaintenancePlanItem"; import {validateroundNumber} from "@/utils/validator"; @@ -378,20 +378,19 @@ export const EquipmentMaintenanceMain = useCrudSchemas(reactive([ isForm:false, }, { - label: '车间编号', + label: '车间代码', field: 'workshopCode', sort: 'custom', isSearch: false, required: true, form: { - // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '车间', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '车间信息', // 查询弹窗标题 - searchAllSchemas: Workshop.allSchemas, // 查询弹窗所需类 - searchPage: WorkshopApi.getWorkshopPage, // 查询弹窗所需分页方法 + searchAllSchemas: BasicEamWorkshop.allSchemas, // 查询弹窗所需类 + searchPage: WorkshopApi.getBasicEamWorkshopPage, // 查询弹窗所需分页方法 searchCondition: [{ key: 'available', value: 'TRUE', diff --git a/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts b/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts index e8b0de93c..076dc0a7b 100644 --- a/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts +++ b/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts @@ -4,8 +4,8 @@ import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; import {BasicFaultCause} from "@/views/eam/basicFaultCause/basicFaultCause.data"; import * as ItemApi from "@/api/eam/basicFaultCause"; -import {Workshop} from "@/views/wms/basicDataManage/factoryModeling/workshop/workshop.data"; -import * as WorkshopApi from "@/api/wms/workshop"; +import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; +import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; import {BasicFaultType} from "@/views/eam/basicFaultType/basicFaultType.data"; import * as BasicFaultTypeApi from "@/api/eam/basicFaultType"; @@ -452,20 +452,19 @@ export const EquipmentRepairJobMain = useCrudSchemas(reactive([ // isSearch: true, // }, { - label: '车间编号', + label: '车间代码', field: 'workshopCode', sort: 'custom', isSearch: false, required: true, form: { - // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 - searchListPlaceholder: '请选择车间', // 输入框占位文本 + searchListPlaceholder: '车间', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '车间信息', // 查询弹窗标题 - searchAllSchemas: Workshop.allSchemas, // 查询弹窗所需类 - searchPage: WorkshopApi.getWorkshopPage, // 查询弹窗所需分页方法 + searchAllSchemas: BasicEamWorkshop.allSchemas, // 查询弹窗所需类 + searchPage: WorkshopApi.getBasicEamWorkshopPage, // 查询弹窗所需分页方法 searchCondition: [{ key: 'available', value: 'TRUE', @@ -474,6 +473,7 @@ export const EquipmentRepairJobMain = useCrudSchemas(reactive([ } }, }, + // { // label: '产线编号', // field: 'lineCode', diff --git a/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts b/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts index 93b558fc9..538e9e130 100644 --- a/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts +++ b/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts @@ -1,8 +1,8 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts.data"; import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; -import {Workshop} from "@/views/wms/basicDataManage/factoryModeling/workshop/workshop.data"; -import * as WorkshopApi from "@/api/wms/workshop"; +import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; +import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; import {dateFormatter} from '@/utils/formatTime' import {BasicFaultType} from "@/views/eam/basicFaultType/basicFaultType.data"; import * as BasicFaultTypeApi from "@/api/eam/basicFaultType"; @@ -136,20 +136,19 @@ export const EquipmentReportRepairRequest = useCrudSchemas(reactive([ isDetail:false, }, { - label: '车间编号', + label: '车间代码', field: 'workshopCode', sort: 'custom', isSearch: false, required: true, form: { - // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '车间', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '车间信息', // 查询弹窗标题 - searchAllSchemas: Workshop.allSchemas, // 查询弹窗所需类 - searchPage: WorkshopApi.getWorkshopPage, // 查询弹窗所需分页方法 + searchAllSchemas: BasicEamWorkshop.allSchemas, // 查询弹窗所需类 + searchPage: WorkshopApi.getBasicEamWorkshopPage, // 查询弹窗所需分页方法 searchCondition: [{ key: 'available', value: 'TRUE', diff --git a/src/views/eam/planInspection/planInspection.data.ts b/src/views/eam/planInspection/planInspection.data.ts index 23ceae4ec..84bd0d6b6 100644 --- a/src/views/eam/planInspection/planInspection.data.ts +++ b/src/views/eam/planInspection/planInspection.data.ts @@ -4,9 +4,8 @@ import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; import * as BasicInspectionApi from "@/api/eam/basicInspectionOption"; import {BasicInspectionOption} from "@/views/eam/basicInspectionOption/basicInspectionOption.data"; -import {getBasicInspectionOptionPage} from "@/api/eam/basicInspectionOption"; -import {Workshop} from "@/views/wms/basicDataManage/factoryModeling/workshop/workshop.data"; -import * as WorkshopApi from "@/api/wms/workshop"; +import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; +import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; // 表单校验 export const PlanInspectionRules = reactive({ @@ -234,20 +233,19 @@ export const PlanInspection = useCrudSchemas(reactive([ isDetail:false, }, { - label: '车间编号', + label: '车间代码', field: 'workshopCode', sort: 'custom', isSearch: false, required: true, form: { - // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '车间', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '车间信息', // 查询弹窗标题 - searchAllSchemas: Workshop.allSchemas, // 查询弹窗所需类 - searchPage: WorkshopApi.getWorkshopPage, // 查询弹窗所需分页方法 + searchAllSchemas: BasicEamWorkshop.allSchemas, // 查询弹窗所需类 + searchPage: WorkshopApi.getBasicEamWorkshopPage, // 查询弹窗所需分页方法 searchCondition: [{ key: 'available', value: 'TRUE', diff --git a/src/views/eam/planSpotCheck/planSpotCheck.data.ts b/src/views/eam/planSpotCheck/planSpotCheck.data.ts index 4c94aefcb..01c49f3cd 100644 --- a/src/views/eam/planSpotCheck/planSpotCheck.data.ts +++ b/src/views/eam/planSpotCheck/planSpotCheck.data.ts @@ -4,8 +4,8 @@ import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; import * as SpotCheckOptionApi from "@/api/eam/basicSpotCheckOption"; import {BasicSpotCheckOption} from "@/views/eam/basicSpotCheckOption/basicSpotCheckOption.data"; -import {Workshop} from "@/views/wms/basicDataManage/factoryModeling/workshop/workshop.data"; -import * as WorkshopApi from "@/api/wms/workshop"; +import {BasicEamWorkshop} from "@/views/eam/basicEamWorkshop/basicEamWorkshop.data"; +import * as WorkshopApi from "@/api/eam/basicEamWorkshop"; // 表单校验 export const PlanSpotCheckRules = reactive({ @@ -233,20 +233,19 @@ export const PlanSpotCheck = useCrudSchemas(reactive([ isDetail:false, }, { - label: '车间编号', + label: '车间代码', field: 'workshopCode', sort: 'custom', isSearch: false, required: true, form: { - // labelMessage: '信息提示说明!!!', componentProps: { isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '车间', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 searchTitle: '车间信息', // 查询弹窗标题 - searchAllSchemas: Workshop.allSchemas, // 查询弹窗所需类 - searchPage: WorkshopApi.getWorkshopPage, // 查询弹窗所需分页方法 + searchAllSchemas: BasicEamWorkshop.allSchemas, // 查询弹窗所需类 + searchPage: WorkshopApi.getBasicEamWorkshopPage, // 查询弹窗所需分页方法 searchCondition: [{ key: 'available', value: 'TRUE', From 5d04261295c93ba7577f72e2015b5eed0412a1dc Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Wed, 26 Jun 2024 18:04:00 +0800 Subject: [PATCH 010/408] =?UTF-8?q?=E9=87=87=E8=B4=AD=E6=94=B6=E8=B4=A7?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/purchasereceiptJobMain/index.ts | 4 +-- src/locales/en-US.ts | 3 +- src/locales/zh-CN.ts | 1 + .../purchasereceiptJobMain/index.vue | 33 +++++++++++++++---- 4 files changed, 32 insertions(+), 9 deletions(-) diff --git a/src/api/wms/purchasereceiptJobMain/index.ts b/src/api/wms/purchasereceiptJobMain/index.ts index 25f05c601..79e546090 100644 --- a/src/api/wms/purchasereceiptJobMain/index.ts +++ b/src/api/wms/purchasereceiptJobMain/index.ts @@ -136,6 +136,6 @@ export const acceptPurchasereceiptJobMain = (id: number) => { } // 拒收采购收货任务主 -export const refusalPurchasereceiptJobMain = (id: number) => { - return request.put({ url: '/wms/purchasereceipt-job-main/refusal?id=' + id }) +export const refusalPurchasereceiptJobMain = (data) => { + return request.post({ url: '/wms/purchasereceipt-job-main/refusal',data}) } diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index ec715bc6f..19f98f6c5 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -1137,7 +1137,8 @@ export default { '驳回原因不能为空,且不超过60字':'The reason for rejection cannot be empty and cannot exceed 60 words', 批量发布:'Batch release', '重新生成标签会删除上次生成的标签,是否确认继续?':'Regenerating labels will delete the last generated label. Are you sure you want to continue?', - '确 认':'Confirm' + '确 认':'Confirm', + 请输入拒收原因:'Please enter the reason for rejection' }, diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index f7586d6ea..3b9c17161 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -1138,6 +1138,7 @@ export default { 批量发布:'批量发布', '重新生成标签会删除上次生成的标签,是否确认继续?':'重新生成标签会删除上次生成的标签,是否确认继续?', '确 认':'确 认', + 请输入拒收原因:'请输入拒收原因' }, } diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue index 58a8a2000..4843c49c6 100644 --- a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue @@ -249,8 +249,8 @@ const buttonTableClick = async (val, row) => { // 查看质检报告 checkQualityReport(row) } else if(val == 'mainJobRefusal'){ - handleRefusal(row.masterId) - getList() + // handleRefusal(row.masterId) + resonSubmit(row) } } // 查看质检报告 @@ -270,12 +270,33 @@ const handleClose = async (id: number) => { await getList() } catch {} } - +const resonSubmit = async (row)=>{ + + ElMessageBox.prompt(t('ts.请输入拒收原因'), t('ts.提示'), { + confirmButtonText: t('common.ok'), + cancelButtonText: t('common.cancel'), + inputPattern: /^[\s\S]*.*\S[\s\S]*$/, // 判断非空,且非空格 + inputErrorMessage: t(`ts.${'驳回原因不能为空,且不超过256字'}`), + inputType:'textarea', + inputValidator:(value)=>{ + if(value.length>60||value.length==0){ + return false + }else{ + return true + } + } + }).then(({ value }) => { + // 驳回原因 + handleRefusal(row.masterId,value) + }) + .catch(() => { + }) + } /** 拒收按钮操作 */ -const handleRefusal = async (id: number) => { +const handleRefusal = async (id: number,refuseReason:string) => { + // refuseReason try { - await message.confirm(t('common.confirmRefusal')) - await PurchasereceiptJobMainApi.refusalPurchasereceiptJobMain(id) + await PurchasereceiptJobMainApi.refusalPurchasereceiptJobMain({id,refuseReason}) message.success(t('common.refusalSuccess')) await getList() } catch {} From 757a3cc41a6b712a96cda160a7f318cbe94d8365 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Wed, 26 Jun 2024 18:16:33 +0800 Subject: [PATCH 011/408] =?UTF-8?q?=E6=8B=92=E6=94=B6=E6=98=8E=E7=BB=86?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/disposition/tabsList.ts | 6 ++++++ .../purchasereceipt/purchasereceiptJobMain/index.vue | 2 +- .../purchasereceiptRecordRefuseMain/index.vue | 6 +++--- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/utils/disposition/tabsList.ts b/src/utils/disposition/tabsList.ts index 77e9c47c6..64d82ab79 100644 --- a/src/utils/disposition/tabsList.ts +++ b/src/utils/disposition/tabsList.ts @@ -38,3 +38,9 @@ export const PurchasereceiptRequestTabsList = [{ } ] +export const PurchasereceiptRefuseRequestTabsList = [{ + label: "拒收明细", + prop: 'receiptDetail', +} +] + diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue index 4843c49c6..a1fe92cdd 100644 --- a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/index.vue @@ -220,7 +220,7 @@ const butttondata = (row,$index) => { { label: '拒收', name: 'mainJobRefusal', - hide: isShowMainButton(row, ['1']), + hide: isShowMainButton(row, ['2']), type: 'primary', icon: '', color: '', diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue index c4befcd4d..a9c77fe87 100644 --- a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordRefuseMain/index.vue @@ -58,7 +58,7 @@ :detailAllSchemas="detailAllSchemas" :detailAllSchemasRules="PurchasereceiptRecordDetailRules" :apiPage="apiPage" - :tabs="PurchasereceiptRequestTabsList" + :tabs="PurchasereceiptRefuseRequestTabsList" @changeTabs="changeTabs" :buttondataTable="buttondataTable" @tableFormButton="tableFormButton" @@ -112,7 +112,7 @@ import { PurchasereceiptRecordMain, import * as PurchasereceiptRecordMainApi from '@/api/wms/purchasereceiptRecordMain' import * as PurchasereceiptRecordDetailApi from '@/api/wms/purchasereceiptRecordDetail' import * as defaultButtons from '@/utils/disposition/defaultButtons' -import { PurchasereceiptRequestTabsList } from '@/utils/disposition/tabsList' +import { PurchasereceiptRefuseRequestTabsList } from '@/utils/disposition/tabsList' import { CACHE_KEY, useCache } from '@/hooks/web/useCache' import { getReportUrl } from '@/utils/systemParam' // 采购收货记录主 @@ -314,7 +314,7 @@ const searchFormClick = (searchData) => { const changeTabs = (data) =>{ if(data.prop == 'receiptDetail'){ console.log(data) - apiPage.value = routeName.value.includes('SCP')?PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailPageSCP:PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailPage + apiPage.value = routeName.value.includes('SCP')?PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailPageSCP:PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailRefusePage detailAllSchemas.value = PurchasereceiptRecordDetail.allSchemas tabeKey.value = 'receiptDetail' }else if(data.prop == 'scarceGoodsDetail'){ From d9d5208eff6fc4a609555a4712eacf646fb489e7 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Wed, 26 Jun 2024 19:53:03 +0800 Subject: [PATCH 012/408] =?UTF-8?q?=E5=88=B6=E5=93=81=E4=B8=8A=E6=9E=B6?= =?UTF-8?q?=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productputaway/productputawayJobMain/index.vue | 12 ++++++++++++ .../productputawayJobMain.data.ts | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue index 9ca0bd98f..e4209c074 100644 --- a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue +++ b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue @@ -73,6 +73,8 @@ import * as ProductputawayJobMainApi from '@/api/wms/productputawayJobMain' import * as ProductputawayJobDetailApi from '@/api/wms/productputawayJobDetail' import * as defaultButtons from '@/utils/disposition/defaultButtons' import { CACHE_KEY, useCache } from '@/hooks/web/useCache' +import {getAccessToken} from "@/utils/auth"; +import { getJmreportBaseUrl } from '@/utils/systemParam' // 制品上架任务主 defineOptions({ name: 'ProductputawayJobMain' }) @@ -156,6 +158,7 @@ const butttondata = (row,$index) => { return [] } return [ + defaultButtons.mainListDocumentPrintBtn(null), // 单据打印 defaultButtons.mainListJobAccBtn({hide:isShowMainButton(row,['1'])}), // 承接 defaultButtons.mainListJobCloBtn({hide:isShowMainButton(row,['1'])}), // 关闭 defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2'])}), // 放弃 @@ -244,6 +247,9 @@ const buttonTableClick = async (val, row) => { } else if (val == 'mainJobAcc') { // 承接 await ProductputawayJobMainApi.acceptProductputawayMain(row.masterId) getList() + } else if (val == 'documentPrint') { + // 单据打印 + handleDocumentPrint(row) } } // 获取部门 用于详情 部门回显 @@ -256,6 +262,12 @@ const openDetail = (row: any, titleName: any, titleValue: any) => { detailRef.value.openDetail(row, titleName, titleValue,'jobProductputawayMain') } +const BASE_URL = getJmreportBaseUrl() +const src = ref(BASE_URL + '/jmreport/view/965858364788637696?token=' + getAccessToken()) +const handleDocumentPrint = async (row) => { + window.open(src.value+'&id='+row.masterId) +} + /** 导出按钮操作 */ const exportLoading = ref(false) // 导出的加载中 const handleExport = async () => { diff --git a/src/views/wms/productionManage/productputaway/productputawayJobMain/productputawayJobMain.data.ts b/src/views/wms/productionManage/productputaway/productputawayJobMain/productputawayJobMain.data.ts index ba00d25be..bed4de6a6 100644 --- a/src/views/wms/productionManage/productputaway/productputawayJobMain/productputawayJobMain.data.ts +++ b/src/views/wms/productionManage/productputaway/productputawayJobMain/productputawayJobMain.data.ts @@ -575,7 +575,7 @@ export const ProductputawayJobMain = useCrudSchemas(reactive([ isDetail: false, isForm: false, table: { - width: 150, + width: 300, fixed: 'right' }, } From 7c61fc6b79a2f84b31dee69dd08fbe0ea724bafa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Thu, 27 Jun 2024 08:33:02 +0800 Subject: [PATCH 013/408] =?UTF-8?q?=E5=BA=93=E5=8C=BA=E5=90=8D=E7=A7=B0?= =?UTF-8?q?=E4=B8=8D=E5=BF=85=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basicDataManage/factoryModeling/areabasic/areabasic.data.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts b/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts index 1ed56940b..2470bc8c8 100644 --- a/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts +++ b/src/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data.ts @@ -254,7 +254,7 @@ export const AreaRules = reactive({ { validate: validateYS, message: '请输入正确的代码', trigger: 'blur' } ], name: [ - { required: true, max: 50, message: '不得超过50个字符', trigger: 'blur' } + { max: 50, message: '不得超过50个字符', trigger: 'blur' } ], remark: [ { max: 50, message: '不得超过50个字符', trigger: 'blur' } From a380286aa4b7f95d6e00be4e27e83d264eb37faa Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 08:36:59 +0800 Subject: [PATCH 014/408] =?UTF-8?q?=E7=99=BB=E5=BD=95=E7=8E=AF=E5=A2=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.prod | 2 +- .env.test | 2 +- .env.test-scp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.env.prod b/.env.prod index dabaa224f..cb7c3aa46 100644 --- a/.env.prod +++ b/.env.prod @@ -37,7 +37,7 @@ VITE_INTERFACE_URL='http://dev.ccwin-in.com:25310/magic/web/index.html' VITE_JMREPORT_BASE_URL='http://dev.ccwin-in.com:25310' # 租户配置 -VITE_TENANT='["长春","成都"]' +VITE_TENANT='["长春1379","成都1397","长春2379"]' # 查看质检报告环境 VITE_REPORT_URL = 'http://dev.ccwin-in.com:25400' diff --git a/.env.test b/.env.test index 02d51a0d7..2c1e25575 100644 --- a/.env.test +++ b/.env.test @@ -37,7 +37,7 @@ VITE_INTERFACE_URL='http://dev.ccwin-in.com:25310/magic/web/index.html' VITE_JMREPORT_BASE_URL='http://dev.ccwin-in.com:25310' # 租户配置 -VITE_TENANT='["长春","成都"]' +VITE_TENANT='["长春1379","成都1397","长春2379"]' # 查看质检报告环境 VITE_REPORT_URL = 'http://dev.ccwin-in.com:25400' diff --git a/.env.test-scp b/.env.test-scp index c97b58331..9c02faed0 100644 --- a/.env.test-scp +++ b/.env.test-scp @@ -38,7 +38,7 @@ VITE_JMREPORT_BASE_URL='http://dev.ccwin-in.com:25311' # 租户配置 -VITE_TENANT='["长春","成都"]' +VITE_TENANT='["长春1379","成都1397","长春2379"]' # 查看质检报告环境 VITE_REPORT_URL = 'http://dev.ccwin-in.com:25400' From eb259463a33bd00fa36a00e3aac04846d9d9be59 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Thu, 27 Jun 2024 09:16:47 +0800 Subject: [PATCH 015/408] =?UTF-8?q?=E6=89=B9=E9=87=8F=E6=89=93=E5=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productputawayJobMain/index.vue | 91 +++++-------------- 1 file changed, 21 insertions(+), 70 deletions(-) diff --git a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue index e4209c074..14f2f01df 100644 --- a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue +++ b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue @@ -119,6 +119,15 @@ const { getList, setSearchParams } = tableMethods // 列表头部按钮 const HeadButttondata = [ defaultButtons.defaultExportBtn({hasPermi:'wms:productputaway-job-main:export'}), // 导出 + { + label: '待处理状态全部打印', + name: 'printAllPending', + hide: false, + type: 'primary', + icon: '', + color: '', + hasPermi: '' + }, defaultButtons.defaultFreshBtn(null), // 刷新 defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 @@ -137,7 +146,10 @@ const buttonBaseClick = (val, item) => { getList() } } else if (val == 'filtrate') { // 筛选 - } else { // 其他按钮 + } else if(val == 'printAllPending'){ + // 单据打印 + handleDocumentPrintAll() + }else { // 其他按钮 console.log('其他按钮', item) } } @@ -169,75 +181,7 @@ const butttondata = (row,$index) => { // 列表-操作按钮事件 const buttonTableClick = async (val, row) => { if (val == 'mainJobExe') { // 执行 - let aaa = { - "id": "1809190000111838147", - "requestNumber": "REC4620231214-0004", - "supplierCode": null, - "fromWarehouseCode": "W1", - "toWarehouseCode": null, - "fromAreaCodes": "", - "toAreaCodes": "", - "fromAreaTypes": "WIP,RAW", - "toAreaTypes": "SEMI,FG", - "completetime": 1702545291000, - "requestTime": 1702524283000, - "requestDueTime": 1689562428000, - "status": "2", - "expiredTime": null, - "updateTime": 1702545291000, - "updater": "1", - "jobStageStatus": null, - "priority": null, - "priorityIncrement": null, - "departmentCode": "103", - "acceptUserId": "1", - "acceptTime": 1702552206000, - "completeUserId": null, - "number": "JOB2220231214-0007", - "businessType": "ProductPutaway", - "remark": "111100", - "createTime": 1702545291000, - "creator": "1", - "autoComplete": "FALSE", - "allowModifyLocation": "FALSE", - "allowModifyQty": "TRUE", - "allowBiggerQty": "TRUE", - "allowSmallerQty": "TRUE", - "allowModifyInventoryStatus": "TRUE", - "allowContinuousScanning": "TRUE", - "allowPartialComplete": "TRUE", - "allowModifyBatch": "FALSE", - "allowModifyPackingNumber": "FALSE", - "inInventoryStatuses": "OK", - "outInventoryStatuses": "OK", - subList: [ - { - "id": "1809190001814017359", - "packingNumber": "12", - "containerNumber": "001", - "batch": "21", - "inventoryStatus": "OK", - "poNumber": null, - "poLine": "item01", - "fromLocationCode": "H03", - "toLocationCode": "L-R-001-002-1-02", - "itemCode": "item01", - "itemName": "物料01", - "itemDesc1": "", - "itemDesc2": "", - "projectCode": "xm01", - "qty": 3, - "uom": "EA", - "number": "JOB2220231214-0007", - "remark": "00", - "createTime": 1702545291000, - "creator": "1", - "fromOwnerCode": null, - "toOwnerCode": null -} - ] - } - ProductputawayJobMainApi.executeProductputawayMain(aaa) + // ProductputawayJobMainApi.executeProductputawayMain(aaa) } else if (val == 'mainJobAba') { // 放弃 await ProductputawayJobMainApi.abandonProductputawayMain(row.masterId) getList() @@ -268,6 +212,13 @@ const handleDocumentPrint = async (row) => { window.open(src.value+'&id='+row.masterId) } +/** + * 待处理全部打印 + */ +const handleDocumentPrintAll = async () => { + window.open(src.value+'&id=printAllPending') +} + /** 导出按钮操作 */ const exportLoading = ref(false) // 导出的加载中 const handleExport = async () => { From 9ea70a525ba5fcca1f7b8918ae3115dd151612d2 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 10:19:48 +0800 Subject: [PATCH 016/408] =?UTF-8?q?=E5=8F=91=E8=B4=A7=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supplierdeliverRequestMain.data.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts index 5c0d9c0c2..a1c199d2f 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts @@ -1098,6 +1098,9 @@ export const SupplierdeliverRequestDetailRules = reactive({ // packingNumber: [ // { required: true, message: '请输入包装号', trigger: 'blur' } // ], + qty:[ + { required: true, message: '请输入发货数量', trigger: 'change' }, + ], batch: [ { required: true, message: '请输入批次', trigger: 'blur' }, { max: 50, message: '不得超过50个字符', trigger: 'blur' }, From f5ac54fb363637511081b04bd2998ff931c855a1 Mon Sep 17 00:00:00 2001 From: chenfang Date: Thu, 27 Jun 2024 10:20:26 +0800 Subject: [PATCH 017/408] =?UTF-8?q?=E5=8F=96=E6=B6=88=E9=A2=84=E7=94=9F?= =?UTF-8?q?=E4=BA=A7/=E8=A3=85=E9=85=8D=E6=94=B6=E8=B4=A7=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=E4=B8=AD=E7=9A=84=E7=8F=AD=E7=BB=84=E3=80=81=E7=8F=AD?= =?UTF-8?q?=E6=AC=A1=E5=BF=85=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productreceiptRequestMain.data.ts | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts index 378ccd699..512de06d6 100644 --- a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts +++ b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts @@ -526,12 +526,12 @@ export const ProductreceiptRequestMainRules = reactive({ workshopCode: [ { required: true, message: '请选择车间代码', trigger: 'change' } ], - team: [ - { required: true, message: '请选择班组代码', trigger: 'change' } - ], - shift: [ - { required: true, message: '请选择班次代码', trigger: 'change' } - ], + // team: [ + // { required: true, message: '请选择班组代码', trigger: 'change' } + // ], + // shift: [ + // { required: true, message: '请选择班次代码', trigger: 'change' } + // ], // departmentCode: [ // { required: true, message: '请输入部门', trigger: 'blur' } // ], @@ -996,7 +996,8 @@ export const ProductreceiptRequestDetail = useCrudSchemas(reactive width: 150 }, tableForm: { - type: 'Select' + type: 'Select', + disabled: true } }, From 6e30097f30408ba3d37a231b59bb6aacac6b8322 Mon Sep 17 00:00:00 2001 From: bjang03 <259278618@qq.com> Date: Thu, 27 Jun 2024 10:44:02 +0800 Subject: [PATCH 018/408] =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D=201=E3=80=81?= =?UTF-8?q?=E7=9B=98=E7=82=B9=E4=BB=BB=E5=8A=A1=EF=BC=8C=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=90=8E=EF=BC=8C=E8=BE=93=E5=85=A5=E7=9B=98=E7=82=B9=E6=95=B0?= =?UTF-8?q?=E9=87=8F=EF=BC=8C=E5=9C=A8=E5=AF=BC=E5=85=A5=EF=BC=8C=E6=8A=A5?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/wms/countManage/count/countJobMain/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/countManage/count/countJobMain/index.vue b/src/views/wms/countManage/count/countJobMain/index.vue index e133dff65..ecfb80699 100644 --- a/src/views/wms/countManage/count/countJobMain/index.vue +++ b/src/views/wms/countManage/count/countJobMain/index.vue @@ -208,7 +208,7 @@ const butttondata = (row,$index) => { { label: '导入', name: 'importCountJob', - hide: isShowMainButton(row,['1','2']), + hide: isShowMainButton(row,['2']), type: 'success', color: '', link: true, //文本展现按钮 From 28e9bd7c60a344609fe10e775aa2b9bd821dbd04 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 10:53:24 +0800 Subject: [PATCH 019/408] =?UTF-8?q?=E9=87=87=E8=B4=AD=E6=94=B6=E8=B4=A7?= =?UTF-8?q?=E7=94=B3=E8=AF=B7--=E7=BC=96=E8=BE=91id=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../purchasereceiptRequestMain/index.vue | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/index.vue index 7a6faa483..0f8416636 100644 --- a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/index.vue @@ -420,7 +420,11 @@ const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ const { getList:getDetailList } = detatableMethods // 生成标签按钮操作 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { console.log("formType==",formType) console.log("data==",data) @@ -714,7 +718,11 @@ const onEnter = async (field,value)=>{ getSearchTableData(value,true) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } tableData.value.forEach((row, index) => { row['expireDate'] = row['expireTime']?addDay(row['produceDate'],row['expireTime']).valueOf():dayjs('2099-12-31').valueOf() }) From ccf83e7a70c678a5f61d12f85feadafb8b1d6c30 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 11:03:21 +0800 Subject: [PATCH 020/408] =?UTF-8?q?=E7=A7=9F=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.env.development b/.env.development index 0baf5cba7..13dee5d41 100644 --- a/.env.development +++ b/.env.development @@ -37,7 +37,7 @@ VITE_INTERFACE_URL='http://localhost:12080/magic/web/index.html' VITE_JMREPORT_BASE_URL='http://localhost:12080' # 租户配置 -VITE_TENANT='["长春","成都"]' +VITE_TENANT='["长春1379","成都1397","长春2379"]' # 查看质检报告环境 VITE_REPORT_URL = 'http://dev.ccwin-in.com:25400' From 7f1deb96c43051caa6bb13593e47c94a3bd6bcf1 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 11:19:33 +0800 Subject: [PATCH 021/408] =?UTF-8?q?=E7=94=B3=E8=AF=B7=E6=89=80=E6=9C=89?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E5=8A=9F=E8=83=BD--id=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../customerreceiptRequestMain/index.vue | 6 +++++- .../customerreturnRequestMain/index.vue | 12 ++++++++++-- .../customersettleRequestMain/index.vue | 6 +++++- .../deliver/deliverRequestMain/index.vue | 6 +++++- .../deliverplan/deliverPlanMain/index.vue | 6 +++++- .../saleShipmentMainRequest/index.vue | 6 +++++- .../stockup/stockupMainRequest/index.vue | 6 +++++- .../containermanage/containerMainRequest/index.vue | 6 +++++- .../initialContainerMainRequest/index.vue | 6 +++++- .../scrapContainerMainRequest/index.vue | 6 +++++- .../inventoryinitRequestMain/index.vue | 6 +++++- .../packageoverMain/packageoverRequestMain/index.vue | 6 +++++- .../scrap/scrapRequestMain/index.vue | 6 +++++- .../transferissue/transferissueRequestMain/index.vue | 6 +++++- .../transferreceiptRequestMain/index.vue | 6 +++++- .../wms/issueManage/issue/issueRequestMain/index.vue | 6 +++++- .../preparetoissueplan/preparetoissueMain/index.vue | 6 +++++- .../productionreturnRequestMain/index.vue | 12 ++++++++++-- .../productionreturnRequestMainNo/index.vue | 12 ++++++++++-- .../repleinsh/repleinshRequestMain/index.vue | 6 +++++- .../inventorychangeRequestMain/index.vue | 6 +++++- .../inventorymove/inventorymoveRequestMain/index.vue | 6 +++++- .../offlinesettlementRequestMain/index.vue | 6 +++++- .../processproductionRequest/index.vue | 6 +++++- .../productdismantleRequestMain/index.vue | 6 +++++- .../productputawayRequestMain/index.vue | 6 +++++- .../productputawayAssembleRequestMain/index.vue | 6 +++++- .../productreceiptRequestMain/index.vue | 12 ++++++++++-- .../productreceiptAssembleRequestMain/index.vue | 12 ++++++++++-- .../productreceiptscrapRequestMain/index.vue | 12 ++++++++++-- .../productredressRequestMain/index.vue | 6 +++++- .../productrepair/productrepairRequestMain/index.vue | 6 +++++- .../productscrap/productscrapRequestMain/index.vue | 6 +++++- .../inspect/inspectRequestMain/index.vue | 6 +++++- .../purchasereturnRequestMain/index.vue | 12 ++++++++++-- .../putaway/putawayRequestMain/index.vue | 6 +++++- .../sparereceipt/sparereceiptRequestMain/index.vue | 12 ++++++++++-- .../supplierdeliver/demandforecastingMain/index.vue | 6 +++++- .../supplierdeliver/purchasePlanMain/index.vue | 6 +++++- .../supplierdeliverRequestMain/index.vue | 12 ++++++++++-- .../supplierdeliverBasicForm.vue | 6 +++++- .../purchaseclaim/purchaseclaimRequestMain/index.vue | 6 +++++- 42 files changed, 255 insertions(+), 51 deletions(-) diff --git a/src/views/wms/deliversettlementManage/customerreceipt/customerreceiptRequestMain/index.vue b/src/views/wms/deliversettlementManage/customerreceipt/customerreceiptRequestMain/index.vue index ec184bff3..69c9681f5 100644 --- a/src/views/wms/deliversettlementManage/customerreceipt/customerreceiptRequestMain/index.vue +++ b/src/views/wms/deliversettlementManage/customerreceipt/customerreceiptRequestMain/index.vue @@ -357,7 +357,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/deliversettlementManage/customerreturn/customerreturnRequestMain/index.vue b/src/views/wms/deliversettlementManage/customerreturn/customerreturnRequestMain/index.vue index 079e21399..d0802749d 100644 --- a/src/views/wms/deliversettlementManage/customerreturn/customerreturnRequestMain/index.vue +++ b/src/views/wms/deliversettlementManage/customerreturn/customerreturnRequestMain/index.vue @@ -437,7 +437,11 @@ const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ }) const { getList:getDetailList } = detatableMethods // 生成标签按钮操作 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { console.log("formType==",formType) console.log("data==",data) @@ -706,7 +710,11 @@ const tableSelectionDelete = (selection) => { const flag = ref(false) // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 data.subList.forEach(obj => { if(obj.qty == 0){ diff --git a/src/views/wms/deliversettlementManage/customersettle/customersettleRequestMain/index.vue b/src/views/wms/deliversettlementManage/customersettle/customersettleRequestMain/index.vue index 2aa4d3f9a..cac0f472d 100644 --- a/src/views/wms/deliversettlementManage/customersettle/customersettleRequestMain/index.vue +++ b/src/views/wms/deliversettlementManage/customersettle/customersettleRequestMain/index.vue @@ -368,7 +368,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue b/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue index 56519fa52..6ca2b1e18 100644 --- a/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue +++ b/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue @@ -506,7 +506,11 @@ const tableSelectionDelete = (selection) => { const flag = ref(false) // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } flag.value = false data.subList = tableData.value // 拼接子表数据参数 data.subList.forEach(item=>{ diff --git a/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/index.vue b/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/index.vue index 5602c5b13..c98a71cd7 100644 --- a/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/index.vue +++ b/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/index.vue @@ -463,7 +463,11 @@ const tableSelectionDelete = (selection) => { const flag = ref(false) // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 data.subList.forEach(item=>{ item.toWarehouseCode = data.toWarehouseCode diff --git a/src/views/wms/deliversettlementManage/saleShipmentMainRequest/index.vue b/src/views/wms/deliversettlementManage/saleShipmentMainRequest/index.vue index 9f9165ebd..afac9f2f0 100644 --- a/src/views/wms/deliversettlementManage/saleShipmentMainRequest/index.vue +++ b/src/views/wms/deliversettlementManage/saleShipmentMainRequest/index.vue @@ -328,7 +328,11 @@ const openForm = (type: string, row?: any) => { // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 let isExist = false tableData.value.forEach(item => { diff --git a/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/index.vue b/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/index.vue index 4a5b06a11..9cc571da8 100644 --- a/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/index.vue +++ b/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/index.vue @@ -438,7 +438,11 @@ const tableSelectionDelete = (selection) => { const flag = ref(false) // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 let isExist = false tableData.value.forEach(item => { diff --git a/src/views/wms/inventoryjobManage/containermanage/containerMainRequest/index.vue b/src/views/wms/inventoryjobManage/containermanage/containerMainRequest/index.vue index db23f1dca..250cf0c72 100644 --- a/src/views/wms/inventoryjobManage/containermanage/containerMainRequest/index.vue +++ b/src/views/wms/inventoryjobManage/containermanage/containerMainRequest/index.vue @@ -440,7 +440,11 @@ const tableSelectionDelete = (selection) => { const flag = ref() // form表单提交 -const submitForm = async (formType,data) => { +const submitForm = async (formType,submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 data.subList.forEach(item => { if(item.toQty == 0){ diff --git a/src/views/wms/inventoryjobManage/containermanage/initialContainerMainRequest/index.vue b/src/views/wms/inventoryjobManage/containermanage/initialContainerMainRequest/index.vue index b37e88036..38af72a70 100644 --- a/src/views/wms/inventoryjobManage/containermanage/initialContainerMainRequest/index.vue +++ b/src/views/wms/inventoryjobManage/containermanage/initialContainerMainRequest/index.vue @@ -392,7 +392,11 @@ const tableSelectionDelete = (selection) => { const flag = ref() // form表单提交 -const submitForm = async (formType,data) => { +const submitForm = async (formType,submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 data.subList.forEach(item => { if(item.qty == 0){ diff --git a/src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/index.vue b/src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/index.vue index f014cff4b..9f35176d5 100644 --- a/src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/index.vue +++ b/src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/index.vue @@ -418,7 +418,11 @@ const tableSelectionDelete = (selection) => { const flag = ref() // form表单提交 -const submitForm = async (formType,data) => { +const submitForm = async (formType,submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 data.subList.forEach(item => { if(item.qty == 0){ diff --git a/src/views/wms/inventoryjobManage/inventoryinitial/inventoryinitRequestMain/index.vue b/src/views/wms/inventoryjobManage/inventoryinitial/inventoryinitRequestMain/index.vue index fd19b5f1d..342766d7c 100644 --- a/src/views/wms/inventoryjobManage/inventoryinitial/inventoryinitRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/inventoryinitial/inventoryinitRequestMain/index.vue @@ -417,7 +417,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRequestMain/index.vue b/src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRequestMain/index.vue index 473c4716e..788f4465e 100644 --- a/src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRequestMain/index.vue @@ -386,7 +386,11 @@ const handleDeleteTable = (item, index) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 if(tableData.value.find(item => (item.toPackUnit == item.fromPackUnit))) { message.warning('从包装规格与到包装规格不能相同') diff --git a/src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue b/src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue index a49a6598e..28d98d053 100644 --- a/src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue @@ -399,7 +399,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/inventoryjobManage/transferissue/transferissueRequestMain/index.vue b/src/views/wms/inventoryjobManage/transferissue/transferissueRequestMain/index.vue index 7196e5f01..24d0df98b 100644 --- a/src/views/wms/inventoryjobManage/transferissue/transferissueRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/transferissue/transferissueRequestMain/index.vue @@ -407,7 +407,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { console.log("【调拨出库子列表】",data.subList) diff --git a/src/views/wms/inventoryjobManage/transferreceipt/transferreceiptRequestMain/index.vue b/src/views/wms/inventoryjobManage/transferreceipt/transferreceiptRequestMain/index.vue index 06c820e4f..0c52a5d4f 100644 --- a/src/views/wms/inventoryjobManage/transferreceipt/transferreceiptRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/transferreceipt/transferreceiptRequestMain/index.vue @@ -388,7 +388,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/issueManage/issue/issueRequestMain/index.vue b/src/views/wms/issueManage/issue/issueRequestMain/index.vue index 299c93049..f71bba7c9 100644 --- a/src/views/wms/issueManage/issue/issueRequestMain/index.vue +++ b/src/views/wms/issueManage/issue/issueRequestMain/index.vue @@ -386,7 +386,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 if(tableData.value.find(item => (item.qty <= 0))) { message.warning('数量必须大于0') diff --git a/src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue b/src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue index d01791d34..b52587d8b 100644 --- a/src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue +++ b/src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue @@ -441,7 +441,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue index de88ffd93..59cb00dc0 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue @@ -629,7 +629,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 let isZC = true // 数量和标包数量 是否整除 data.subList.forEach(item => { @@ -667,7 +671,11 @@ const submitForm = async (formType, data) => { } // 创建标签 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { detatableData.tableList.forEach(async (item) => { item.toLocationCode = item.fromLocationCode diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue b/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue index ca633a136..81bc49646 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue @@ -563,7 +563,11 @@ const handleDeleteTable = (item, index) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 // 合格退料 添加参数 isOK data.isOK = false // 不合格 false @@ -592,7 +596,11 @@ const submitForm = async (formType, data) => { } // 创建标签 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { detatableData.tableList.forEach(async (item) => { await PackageApi.createPackageLabel({...item,toLocationCode:item.fromLocationCode}).then(res => { diff --git a/src/views/wms/issueManage/repleinsh/repleinshRequestMain/index.vue b/src/views/wms/issueManage/repleinsh/repleinshRequestMain/index.vue index 844973658..b71d95777 100644 --- a/src/views/wms/issueManage/repleinsh/repleinshRequestMain/index.vue +++ b/src/views/wms/issueManage/repleinsh/repleinshRequestMain/index.vue @@ -361,7 +361,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 if(tableData.value.find(item => (item.qty <= 0))) { message.warning('数量必须大于0') diff --git a/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/index.vue b/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/index.vue index 49b9f297e..143b2f135 100644 --- a/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/index.vue +++ b/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/index.vue @@ -430,7 +430,11 @@ const tableSelectionDelete = (selection) => { const flag = ref() // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 const duplicateItems = tableData.value.filter((item, index) => { return tableData.value.findIndex((el) => el.itemCode === item.itemCode) !== index; diff --git a/src/views/wms/moveManage/inventorymove/inventorymoveRequestMain/index.vue b/src/views/wms/moveManage/inventorymove/inventorymoveRequestMain/index.vue index de4582cb8..bb663d3d6 100644 --- a/src/views/wms/moveManage/inventorymove/inventorymoveRequestMain/index.vue +++ b/src/views/wms/moveManage/inventorymove/inventorymoveRequestMain/index.vue @@ -667,7 +667,11 @@ const tableSelectionDelete = (selection) => { const flag = ref() // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 let isExist = false tableData.value.forEach(item => { diff --git a/src/views/wms/productionManage/offlinesettlement/offlinesettlementRequestMain/index.vue b/src/views/wms/productionManage/offlinesettlement/offlinesettlementRequestMain/index.vue index 15b6e76a2..1321d24d0 100644 --- a/src/views/wms/productionManage/offlinesettlement/offlinesettlementRequestMain/index.vue +++ b/src/views/wms/productionManage/offlinesettlement/offlinesettlementRequestMain/index.vue @@ -312,7 +312,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/productionManage/processproduction/processproductionRequest/index.vue b/src/views/wms/productionManage/processproduction/processproductionRequest/index.vue index e13672e97..e62b08b73 100644 --- a/src/views/wms/productionManage/processproduction/processproductionRequest/index.vue +++ b/src/views/wms/productionManage/processproduction/processproductionRequest/index.vue @@ -310,7 +310,11 @@ const handleDelete = async (id: number) => { // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/productionManage/productdismantle/productdismantleRequestMain/index.vue b/src/views/wms/productionManage/productdismantle/productdismantleRequestMain/index.vue index fa0a7166c..76468f55c 100644 --- a/src/views/wms/productionManage/productdismantle/productdismantleRequestMain/index.vue +++ b/src/views/wms/productionManage/productdismantle/productdismantleRequestMain/index.vue @@ -547,7 +547,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 // 判断 bom 是否添加 let childListRs = true diff --git a/src/views/wms/productionManage/productputaway/productputawayRequestMain/index.vue b/src/views/wms/productionManage/productputaway/productputawayRequestMain/index.vue index 00cc330b8..aa88d864f 100644 --- a/src/views/wms/productionManage/productputaway/productputawayRequestMain/index.vue +++ b/src/views/wms/productionManage/productputaway/productputawayRequestMain/index.vue @@ -374,7 +374,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.type = 'predict' data.subList = tableData.value // 拼接子表数据参数 if(data.subList.find(item => (item.qty <= 0))) { diff --git a/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleRequestMain/index.vue b/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleRequestMain/index.vue index fe3749a7e..b7195c45f 100644 --- a/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleRequestMain/index.vue +++ b/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleRequestMain/index.vue @@ -364,7 +364,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.type = 'assemble' data.subList = tableData.value // 拼接子表数据参数 if(data.subList.find(item => (item.qty <= 0))) { diff --git a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue index 912b99090..7fb5b61d8 100644 --- a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue +++ b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue @@ -565,7 +565,11 @@ const tableSelectionDelete = (selection) => { tableData.value = tableData.value.filter(item => !selection.includes(item)) } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } tableData.value.forEach((row, index) => { row['expireDate'] = row['expireTime']?addDay(row['produceDate'],row['expireTime']).valueOf():dayjs('2099-12-31').valueOf() }) @@ -619,7 +623,11 @@ const searchFormClick = (searchData) => { } // 创建标签 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { console.log("aaaaa",data); data.subList=detatableData.tableList diff --git a/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/index.vue b/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/index.vue index 8bb2c8f3f..cd06bef9a 100644 --- a/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/index.vue +++ b/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/index.vue @@ -568,7 +568,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } tableData.value.forEach((row, index) => { row['expireDate'] = row['expireTime']?addDay(row['produceDate'],row['expireTime']).valueOf():dayjs('2099-12-31').valueOf() }) @@ -622,7 +626,11 @@ const searchFormClick = (searchData) => { } // 创建标签 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { console.log("aaaaa",data); data.subList=detatableData.tableList diff --git a/src/views/wms/productionManage/productreceiptscrap/productreceiptscrapRequestMain/index.vue b/src/views/wms/productionManage/productreceiptscrap/productreceiptscrapRequestMain/index.vue index 8c7af6533..e76239855 100644 --- a/src/views/wms/productionManage/productreceiptscrap/productreceiptscrapRequestMain/index.vue +++ b/src/views/wms/productionManage/productreceiptscrap/productreceiptscrapRequestMain/index.vue @@ -558,7 +558,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 if(data.subList.find(item => (item.qty <= 0))) { message.warning('数量必须大于0') @@ -611,7 +615,11 @@ const searchFormClick = (searchData) => { } // 创建标签 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { detatableData.tableList.forEach(async (item) => { // 创建标签 要物料库区配置表中 入库包装规格 diff --git a/src/views/wms/productionManage/productredress/productredressRequestMain/index.vue b/src/views/wms/productionManage/productredress/productredressRequestMain/index.vue index 5f27152b2..659d48369 100644 --- a/src/views/wms/productionManage/productredress/productredressRequestMain/index.vue +++ b/src/views/wms/productionManage/productredress/productredressRequestMain/index.vue @@ -408,7 +408,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 if(data.subList.find(item => (item.qty <= 0))) { message.warning('数量必须大于0') diff --git a/src/views/wms/productionManage/productrepair/productrepairRequestMain/index.vue b/src/views/wms/productionManage/productrepair/productrepairRequestMain/index.vue index 21ade2a3b..5f291b7e7 100644 --- a/src/views/wms/productionManage/productrepair/productrepairRequestMain/index.vue +++ b/src/views/wms/productionManage/productrepair/productrepairRequestMain/index.vue @@ -580,7 +580,11 @@ const handleDeleteTable = (item, index) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 // 判断 bom 是否添加 let childListRs = true diff --git a/src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue b/src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue index 3e735bd9e..a4a2d241d 100644 --- a/src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue +++ b/src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue @@ -647,7 +647,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 // 判断 bom 是否添加 let childListRs = true diff --git a/src/views/wms/purchasereceiptManage/inspect/inspectRequestMain/index.vue b/src/views/wms/purchasereceiptManage/inspect/inspectRequestMain/index.vue index a71224618..91b579ad2 100644 --- a/src/views/wms/purchasereceiptManage/inspect/inspectRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/inspect/inspectRequestMain/index.vue @@ -354,7 +354,11 @@ } // 主子数据 提交 - const submitForm = async (formType, data) => { + const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue index d654f69dc..d32bddadf 100644 --- a/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue @@ -177,7 +177,11 @@ const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ const { getList:getDetailList } = detatableMethods // 生成标签按钮操作 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { console.log("formType==",formType) console.log("data==",data) @@ -832,7 +836,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } console.log('submitForm',tableData.value) // if(tableData.value.find(item=>Number(item.returnedQty)>Number(item.receiptQty))){ // message.warning("退货数量不能大于收获数量") diff --git a/src/views/wms/purchasereceiptManage/putaway/putawayRequestMain/index.vue b/src/views/wms/purchasereceiptManage/putaway/putawayRequestMain/index.vue index b9caddd35..7ef2eaf06 100644 --- a/src/views/wms/purchasereceiptManage/putaway/putawayRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/putaway/putawayRequestMain/index.vue @@ -439,7 +439,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptRequestMain/index.vue b/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptRequestMain/index.vue index 908c243e8..f79b3655e 100644 --- a/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptRequestMain/index.vue @@ -417,7 +417,11 @@ const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ const { getList:getDetailList } = detatableMethods // 生成标签按钮操作 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { await message.confirm(t('ts.是否为此数据生成标签?')) await PurchasereceiptRequestMainApi.genLabel(genLabelId.value) @@ -578,7 +582,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/demandforecastingMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/demandforecastingMain/index.vue index efa13a5bb..b2df52603 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/demandforecastingMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/demandforecastingMain/index.vue @@ -368,7 +368,11 @@ const tableSelectionDelete = (selection) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue index 51b649f5c..ae6ec243e 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue @@ -614,7 +614,11 @@ const handleSelectionPublish = async ()=>{ } // 主子数据 提交 - const submitForm = async (formType, data) => { + const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = [] let flag = false for (let item of tableData.value) { diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index 8aacc9693..e22d13671 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -825,7 +825,11 @@ const { getList:getDetailList } = detatableMethods // 生成标签按钮操作 -const submitFormLabel = async (formType, data) => { +const submitFormLabel = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } try { console.log("formType==",formType) console.log("data==",data) @@ -952,7 +956,11 @@ const handleDeleteTable = (item, index) => { } // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 let isHave = data.subList.some((item) => { console.log("CCCCC",item.expireDate) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue index 4b8ad4e71..70ba54b7c 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue @@ -278,7 +278,11 @@ const getSearchTableData = async (number,formField,searchField)=>{ // 主子数据 提交 -const submitForm = async (formType, data) => { +const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 let isHave = data.subList.some((item) => { console.log("CCCCC",item.expireDate) diff --git a/src/views/wms/supplierManage/purchaseclaim/purchaseclaimRequestMain/index.vue b/src/views/wms/supplierManage/purchaseclaim/purchaseclaimRequestMain/index.vue index 8c4a12edb..c87d8c806 100644 --- a/src/views/wms/supplierManage/purchaseclaim/purchaseclaimRequestMain/index.vue +++ b/src/views/wms/supplierManage/purchaseclaim/purchaseclaimRequestMain/index.vue @@ -454,7 +454,11 @@ import { getJmreportBaseUrl } from '@/utils/systemParam' } // 主子数据 提交 - const submitForm = async (formType, data) => { + const submitForm = async (formType, submitData) => { + let data = {...submitData} + if(data.masterId){ + data.id = data.masterId + } data.subList = tableData.value // 拼接子表数据参数 try { if (formType === 'create') { From 7564ec3bd971cb3b47e0ed0d87ed8e2ffaed1303 Mon Sep 17 00:00:00 2001 From: chenfang Date: Thu, 27 Jun 2024 11:37:50 +0800 Subject: [PATCH 022/408] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E5=8F=96=E6=B6=88=20=20=E7=8F=AD=E7=BB=84=E7=8F=AD=E6=AC=A1?= =?UTF-8?q?=E5=BF=85=E5=A1=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionMain/productionMain.data.ts | 12 ++++++------ .../productionMainAssemble.data.ts | 12 ++++++------ .../productionMainAssembleSparePart.data.ts | 12 ++++++------ .../productionMainPredictSparePart.data.ts | 12 ++++++------ .../productreceiptAssembleRequestMain.data.ts | 15 ++++++++------- 5 files changed, 32 insertions(+), 31 deletions(-) diff --git a/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts b/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts index a4af9201e..8919838d3 100644 --- a/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts @@ -576,12 +576,12 @@ export const ProductionMainRules = reactive({ productionLine: [ { required: true, message: '请选择生产线', trigger: 'change' } ], - shift: [ - { required: true, message: '请选择班次', trigger: 'change' } - ], - team: [ - { required: true, message: '请选择班组', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次', trigger: 'change' } + // ], + // team: [ + // { required: true, message: '请选择班组', trigger: 'change' } + // ], planDate: [ { required: true, message: '请输入计划日期', trigger: 'blur' } ], diff --git a/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts b/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts index d0f2cf6fa..5c1b7b009 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts @@ -567,12 +567,12 @@ export const ProductionMainRules = reactive({ productionLine: [ { required: true, message: '请选择生产线', trigger: 'change' } ], - shift: [ - { required: true, message: '请选择班次', trigger: 'change' } - ], - team: [ - { required: true, message: '请选择班组', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次', trigger: 'change' } + // ], + // team: [ + // { required: true, message: '请选择班组', trigger: 'change' } + // ], planDate: [ { required: true, message: '请输入计划日期', trigger: 'blur' } ], diff --git a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts index c607eb498..b90683818 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts @@ -567,12 +567,12 @@ export const ProductionMainRules = reactive({ productionLine: [ { required: true, message: '请选择生产线', trigger: 'change' } ], - shift: [ - { required: true, message: '请选择班次', trigger: 'change' } - ], - team: [ - { required: true, message: '请选择班组', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次', trigger: 'change' } + // ], + // team: [ + // { required: true, message: '请选择班组', trigger: 'change' } + // ], planDate: [ { required: true, message: '请输入计划日期', trigger: 'blur' } ], diff --git a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts index 156730cf6..2ab4b578d 100644 --- a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts @@ -568,12 +568,12 @@ export const ProductionMainRules = reactive({ productionLine: [ { required: true, message: '请选择生产线', trigger: 'change' } ], - shift: [ - { required: true, message: '请选择班次', trigger: 'change' } - ], - team: [ - { required: true, message: '请选择班组', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次', trigger: 'change' } + // ], + // team: [ + // { required: true, message: '请选择班组', trigger: 'change' } + // ], planDate: [ { required: true, message: '请输入计划日期', trigger: 'blur' } ], diff --git a/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts b/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts index 6d33c2859..3cef27943 100644 --- a/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts +++ b/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts @@ -527,12 +527,12 @@ export const ProductreceiptRequestMainRules = reactive({ workshopCode: [ { required: true, message: '请选择车间代码', trigger: 'change' } ], - team: [ - { required: true, message: '请选择班组代码', trigger: 'change' } - ], - shift: [ - { required: true, message: '请选择班次代码', trigger: 'change' } - ], + // team: [ + // { required: true, message: '请选择班组代码', trigger: 'change' } + // ], + // shift: [ + // { required: true, message: '请选择班次代码', trigger: 'change' } + // ], // departmentCode: [ // { required: true, message: '请输入部门', trigger: 'blur' } // ], @@ -997,7 +997,8 @@ export const ProductreceiptRequestDetail = useCrudSchemas(reactive width: 150 }, tableForm: { - type: 'Select' + type: 'Select', + disabled: true } }, { From bafd71d10bfffbfe84bcc37a5db420b5f73feed8 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 11:48:00 +0800 Subject: [PATCH 023/408] =?UTF-8?q?=E5=8D=95=E6=8D=AE=E5=BC=80=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productputawayJobMain/index.vue | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue index 14f2f01df..0e7736dc1 100644 --- a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue +++ b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue @@ -75,6 +75,8 @@ import * as defaultButtons from '@/utils/disposition/defaultButtons' import { CACHE_KEY, useCache } from '@/hooks/web/useCache' import {getAccessToken} from "@/utils/auth"; import { getJmreportBaseUrl } from '@/utils/systemParam' +import * as SwitchApi from '@/api/wms/switch' + // 制品上架任务主 defineOptions({ name: 'ProductputawayJobMain' }) @@ -116,13 +118,28 @@ const { tableObject, tableMethods } = useTable({ // 获得表格的各种操作 const { getList, setSearchParams } = tableMethods + +const switchproductPutawayJobPrint = ref(false) +const getSwitchStatus = async ()=>{ + let res = await SwitchApi.getSwitchPage({ + pageSize: 20, + pageNo: 1, + code: 'productPutawayJobPrint' + }) + console.log('getSwitchStatus',res) + if(res&&res.list){ + switchproductPutawayJobPrint.value = res.list[0].effectiveSetValue == 'TRUE' + + } +} // 列表头部按钮 -const HeadButttondata = [ +const HeadButttondata = computed(()=>{ + return [ defaultButtons.defaultExportBtn({hasPermi:'wms:productputaway-job-main:export'}), // 导出 { label: '待处理状态全部打印', name: 'printAllPending', - hide: false, + hide: !switchproductPutawayJobPrint.value, type: 'primary', icon: '', color: '', @@ -132,6 +149,7 @@ const HeadButttondata = [ defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 ] +}) // 头部按钮事件 const buttonBaseClick = (val, item) => { @@ -244,8 +262,10 @@ const searchFormClick = (searchData) => { getList() // 刷新当前列表 } + /** 初始化 **/ onMounted(async () => { getList() + getSwitchStatus() }) From eae64e1b7f288736b2f6770ac4bea5405fc528e7 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 11:51:42 +0800 Subject: [PATCH 024/408] =?UTF-8?q?=E5=8D=95=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productputaway/productputawayJobMain/index.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue index 0e7736dc1..6ba1e2d00 100644 --- a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue +++ b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue @@ -188,7 +188,7 @@ const butttondata = (row,$index) => { return [] } return [ - defaultButtons.mainListDocumentPrintBtn(null), // 单据打印 + defaultButtons.mainListDocumentPrintBtn({hide:!switchproductPutawayJobPrint.value}), // 单据打印 defaultButtons.mainListJobAccBtn({hide:isShowMainButton(row,['1'])}), // 承接 defaultButtons.mainListJobCloBtn({hide:isShowMainButton(row,['1'])}), // 关闭 defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2'])}), // 放弃 @@ -265,7 +265,7 @@ const searchFormClick = (searchData) => { /** 初始化 **/ onMounted(async () => { + await getSwitchStatus() getList() - getSwitchStatus() }) From b8604a9974ed376454cadebacf5bc32083898000 Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Thu, 27 Jun 2024 12:01:01 +0800 Subject: [PATCH 025/408] =?UTF-8?q?EAM=20=E2=80=94=E2=80=94>=20=20?= =?UTF-8?q?=E5=B7=A1=E6=A3=80=E7=82=B9=E6=A3=80=20=E5=89=8D=E5=90=8E?= =?UTF-8?q?=E7=AB=AF=20PDA=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/eam/equipmentSpotCheckMain/index.ts | 2 +- src/utils/dict.ts | 1 + .../equipmentInspectionDetail.data.ts | 8 +++---- .../equipmentInspectionMain/finishForm1.vue | 23 ++++++++++--------- .../equipmentSpotCheckDetail.data.ts | 8 +++---- .../equipmentSpotCheckMain/finishForm1.vue | 23 ++++++++++--------- .../eam/equipmentSpotCheckMain/index.vue | 12 ++++------ 7 files changed, 38 insertions(+), 39 deletions(-) diff --git a/src/api/eam/equipmentSpotCheckMain/index.ts b/src/api/eam/equipmentSpotCheckMain/index.ts index 9403acf8d..c7c0fe718 100644 --- a/src/api/eam/equipmentSpotCheckMain/index.ts +++ b/src/api/eam/equipmentSpotCheckMain/index.ts @@ -66,7 +66,7 @@ export const updateEquipmentSpotCheckMain = async (data: EquipmentSpotCheckMainV return await request.put({ url: `/eam/equipment-spot-check-main/update`, data }) } -// 修改点检工单主 +// 完成点检工单主 export const updateEquipmentSpotCheck = async (data: EquipmentSpotCheckMainVO) => { return await request.post({ url: `/eam/equipment-spot-check-main/updateOrders`, data }) } diff --git a/src/utils/dict.ts b/src/utils/dict.ts index fc5dd0a53..d7a5442ae 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -354,6 +354,7 @@ export enum DICT_TYPE { REPAIR_DEGREE = 'repair_degree', //维修紧急程度 REPAIR_LEVEL = 'repair_level', //维修级别 IS_COMPLETED = 'is_completed', //是否完成 + IS_NORMAL = 'is_normal', //正常异常 MAINTENANCE_CYCLE = 'maintenance_cycle', // 保养周期 INSPECTION_CYCLE = 'inspection_cycle', // 巡检周期 SPOTCHECK_CYCLE = 'spotcheck_cycle', // 巡检周期 diff --git a/src/views/eam/equipmentInspectionDetail/equipmentInspectionDetail.data.ts b/src/views/eam/equipmentInspectionDetail/equipmentInspectionDetail.data.ts index cb52a81a8..e2e98bab0 100644 --- a/src/views/eam/equipmentInspectionDetail/equipmentInspectionDetail.data.ts +++ b/src/views/eam/equipmentInspectionDetail/equipmentInspectionDetail.data.ts @@ -78,18 +78,18 @@ export const EquipmentInspectionDetail = useCrudSchemas(reactive([ }, }, { - label: '未完成原因', + label: '异常原因', field: 'uncompletedCause', sort: 'custom', isSearch: true, }, { - label: '结果枚举', + label: '结果', field: 'result', sort: 'custom', isSearch: true, - dictType: DICT_TYPE.IS_COMPLETED, - dictClass: 'string', + dictType: DICT_TYPE.IS_NORMAL, + dictClass: 'string' }, { label: '巡检项名称', diff --git a/src/views/eam/equipmentInspectionMain/finishForm1.vue b/src/views/eam/equipmentInspectionMain/finishForm1.vue index 408be1c53..8be7d99b4 100644 --- a/src/views/eam/equipmentInspectionMain/finishForm1.vue +++ b/src/views/eam/equipmentInspectionMain/finishForm1.vue @@ -2,11 +2,11 @@ - - - - - + + + + + @@ -41,6 +41,7 @@ import * as EquipmentMaintenanceMainApi from '@/api/eam/equipmentMaintenanceMain import * as EquipmentInspectionMainApi from '@/api/eam/equipmentInspectionMain' import { SearchTable } from '@/components/SearchTable' import {ElInput} from "element-plus"; +import {updateEquipmentInspection} from "@/api/eam/equipmentInspectionMain"; defineOptions({ name: 'TeamForm' }) @@ -62,15 +63,15 @@ const InputRef = ref>() const formData = ref({ id:'', number:'', - verifyer: '', + //verifyer: '', verifyContent: '', verifyTime: '', }) const formRules = reactive({ - verifyer: [ - { required: true, message: '验证人不能为空', trigger: 'blur' }, - { max: 50, message: '不得超过50个字符', trigger: 'blur' } - ], + // verifyer: [ + // { required: true, message: '验证人不能为空', trigger: 'blur' }, + // { max: 50, message: '不得超过50个字符', trigger: 'blur' } + // ], verifyContent: [ { required: true, message: '验证内容不能为空', trigger: 'blur' }, { max: 50, message: '不得超过50个字符', trigger: 'blur' } @@ -102,7 +103,7 @@ const submitForm = async (val) => { if (!valid) return //发送数据 - await EquipmentInspectionMainApi.updateEquipmentInspectionMain(formData.value) + await EquipmentInspectionMainApi.updateEquipmentInspection(formData.value) //把success函数传递到父页面 emit('success',formData.value.id) dialogVisible.value = false diff --git a/src/views/eam/equipmentSpotCheckDetail/equipmentSpotCheckDetail.data.ts b/src/views/eam/equipmentSpotCheckDetail/equipmentSpotCheckDetail.data.ts index 2fe8356fe..b08f30594 100644 --- a/src/views/eam/equipmentSpotCheckDetail/equipmentSpotCheckDetail.data.ts +++ b/src/views/eam/equipmentSpotCheckDetail/equipmentSpotCheckDetail.data.ts @@ -11,7 +11,7 @@ export const EquipmentSpotCheckDetailRules = reactive({ masterId: [required], name: [required], uncompletedCause:[{ - required:false , + required: false, message:'该项为必填项', tagger:['blur','change'] }], @@ -78,17 +78,17 @@ export const EquipmentSpotCheckDetail = useCrudSchemas(reactive([ }, }, { - label: '未完成原因', + label: '异常原因', field: 'uncompletedCause', sort: 'custom', isSearch: true, }, { - label: '结果枚举', + label: '结果', field: 'result', sort: 'custom', isSearch: true, - dictType: DICT_TYPE.IS_COMPLETED, + dictType: DICT_TYPE.IS_NORMAL, dictClass: 'string' }, { diff --git a/src/views/eam/equipmentSpotCheckMain/finishForm1.vue b/src/views/eam/equipmentSpotCheckMain/finishForm1.vue index a5acf0fb5..80434c83c 100644 --- a/src/views/eam/equipmentSpotCheckMain/finishForm1.vue +++ b/src/views/eam/equipmentSpotCheckMain/finishForm1.vue @@ -2,11 +2,11 @@ - - - - - + + + + + @@ -42,6 +42,7 @@ import * as EquipmentInspectionMainApi from '@/api/eam/equipmentInspectionMain' import { SearchTable } from '@/components/SearchTable' import {ElInput} from "element-plus"; import * as EquipmentSpotCheckMainApi from "@/api/eam/equipmentSpotCheckMain"; +import {updateEquipmentSpotCheck} from "@/api/eam/equipmentSpotCheckMain"; defineOptions({ name: 'TeamForm' }) @@ -63,15 +64,15 @@ const InputRef = ref>() const formData = ref({ id:'', number:'', - verifyer: '', + // verifyer: '', verifyContent: '', verifyTime: '', }) const formRules = reactive({ - verifyer: [ - { required: true, message: '验证人不能为空', trigger: 'blur' }, - { max: 50, message: '不得超过50个字符', trigger: 'blur' } - ], + // verifyer: [ + // { required: true, message: '验证人不能为空', trigger: 'blur' }, + // { max: 50, message: '不得超过50个字符', trigger: 'blur' } + // ], verifyContent: [ { required: true, message: '验证内容不能为空', trigger: 'blur' }, { max: 50, message: '不得超过50个字符', trigger: 'blur' } @@ -103,7 +104,7 @@ const submitForm = async (val) => { if (!valid) return //发送数据 - await EquipmentSpotCheckMainApi.updateEquipmentSpotCheckMain(formData.value) + await EquipmentSpotCheckMainApi.updateEquipmentSpotCheck(formData.value) //把success函数传递到父页面 emit('success',formData.value.id) dialogVisible.value = false diff --git a/src/views/eam/equipmentSpotCheckMain/index.vue b/src/views/eam/equipmentSpotCheckMain/index.vue index 2a739799f..3b076c62b 100644 --- a/src/views/eam/equipmentSpotCheckMain/index.vue +++ b/src/views/eam/equipmentSpotCheckMain/index.vue @@ -89,10 +89,6 @@ import ImportForm from '@/components/ImportForm/src/ImportForm.vue' import Detail from '@/views/eam/equipmentSpotCheckMain/SpotCheckOrderDetail.vue' import FinishForm1 from '@/views/eam/equipmentSpotCheckMain/finishForm1.vue' import FinishForm2 from '@/views/eam/equipmentSpotCheckMain/finishForm2.vue' -import { - EquipmentInspectionDetail, - EquipmentInspectionDetailRules -} from "@/views/eam/equipmentInspectionDetail/equipmentInspectionDetail.data"; import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts.data"; import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; import {ToolAccounts} from "@/views/eam/toolAccounts/toolAccounts.data"; @@ -395,19 +391,19 @@ const handleValidate = async (row) => { const detailBasicFormOnChange = (field, item) => { - //未完成 + //异常 if(field == 'result' && item == '1'){ EquipmentSpotCheckDetail.allSchemas.formSchema.forEach((items) => { if (items.field == 'uncompletedCause') { - EquipmentInspectionDetailRules.uncompletedCause[0].required = true + EquipmentSpotCheckDetailRules.uncompletedCause[0].required = true } }) } - //完成 + //正常 if(field == 'result' && item == '0'){ EquipmentSpotCheckDetail.allSchemas.formSchema.forEach((items) => { if (items.field == 'uncompletedCause') { - EquipmentInspectionDetailRules.uncompletedCause[0].required = false + EquipmentSpotCheckDetailRules.uncompletedCause[0].required = false detailRef.value.formRef.formRef.setValues({ uncompletedCause:'' }) From 2fec157dfd7a463c4263bc8d0f2f1798ec8c6910 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 14:32:51 +0800 Subject: [PATCH 026/408] =?UTF-8?q?=E6=9C=AA=E6=89=A7=E8=A1=8C=E6=95=B0?= =?UTF-8?q?=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../issueRequestMain/issueRequestMain.data.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts b/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts index f5c3345d5..701d7a9ce 100644 --- a/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts +++ b/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts @@ -764,6 +764,7 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ } } }, + { label: '备注', field: 'remark', @@ -930,6 +931,19 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ isTableForm: false, isForm: false }, + { + label: '未执行任务数量', + field: 'unexecutedQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + }, + isTableForm:false, + hiddenInMain:true, + }, { label: '操作', field: 'action', From ffb76f94fcbb5dec6bc324da5b89f30bbca03987 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 15:38:49 +0800 Subject: [PATCH 027/408] =?UTF-8?q?=E7=94=9F=E6=88=90=E6=A0=87=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/TableForm/src/TableForm.vue | 5 ++--- .../supplierdeliver/supplierdeliverRequestMain/index.vue | 1 + 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/TableForm/src/TableForm.vue b/src/components/TableForm/src/TableForm.vue index c658bdbba..703f5f630 100644 --- a/src/components/TableForm/src/TableForm.vue +++ b/src/components/TableForm/src/TableForm.vue @@ -316,7 +316,7 @@ - { const currentPage =ref(1) const pageSize = ref(10) const showTableData = ()=>{ - console.log('props.tableData',props.tableData) - if(props.tableData.length>100){ + if(props.tableData.length>10){ return props.tableData.slice((currentPage.value-1)*pageSize.value,currentPage.value*pageSize.value) }else{ return props.tableData diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index e22d13671..e3dd21a14 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -821,6 +821,7 @@ const formLabelRef = ref() const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ getListApi: SupplierdeliverRequestDetailApi.getSupplierdeliverRequestDetailPage }) +detatableData.pageSize = 500 const { getList:getDetailList } = detatableMethods From a099cbacea1a307adfc86b57deecfd2c3a52ef11 Mon Sep 17 00:00:00 2001 From: zhaoyiran Date: Thu, 27 Jun 2024 15:45:18 +0800 Subject: [PATCH 028/408] =?UTF-8?q?=E8=B0=83=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/pickJobMain/index.ts | 4 ++-- src/api/wms/pickRecordMain/index.ts | 4 ++-- src/api/wms/plansetting/index.ts | 4 ++-- src/api/wms/scrapJobMain/index.ts | 4 ++-- src/api/wms/stockupMainJob/index.ts | 4 ++-- src/api/wms/strategy/index.ts | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/api/wms/pickJobMain/index.ts b/src/api/wms/pickJobMain/index.ts index 20722e557..3cf2aa47f 100644 --- a/src/api/wms/pickJobMain/index.ts +++ b/src/api/wms/pickJobMain/index.ts @@ -75,7 +75,7 @@ export const exportPickJobMain = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/pick-job-main/export-excel-senior', data }) + return await request.downloadPost({ url: '/wms/pick-job-main/export-excel-senior', data }) } else { return await request.download({ url: `/wms/pick-job-main/export-excel`, params }) } @@ -84,4 +84,4 @@ export const exportPickJobMain = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/wms/pick-job-main/get-import-template' }) -} \ No newline at end of file +} diff --git a/src/api/wms/pickRecordMain/index.ts b/src/api/wms/pickRecordMain/index.ts index bf291181c..78e83914e 100644 --- a/src/api/wms/pickRecordMain/index.ts +++ b/src/api/wms/pickRecordMain/index.ts @@ -62,7 +62,7 @@ export const exportPickRecordMain = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/pick-record-main/export-excel-senior', data }) + return await request.downloadPost({ url: '/wms/pick-record-main/export-excel-senior', data }) } else { return await request.download({ url: `/wms/pick-record-main/export-excel`, params }) } @@ -71,4 +71,4 @@ export const exportPickRecordMain = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/wms/pick-record-main/get-import-template' }) -} \ No newline at end of file +} diff --git a/src/api/wms/plansetting/index.ts b/src/api/wms/plansetting/index.ts index 1b703dadc..07badf234 100644 --- a/src/api/wms/plansetting/index.ts +++ b/src/api/wms/plansetting/index.ts @@ -51,7 +51,7 @@ export const exportPlansetting = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/plansetting/export-excel-senior', data }) + return await request.downloadPost({ url: '/wms/plansetting/export-excel-senior', data }) } else { return await request.download({ url: `/wms/plansetting/export-excel`, params }) } @@ -60,4 +60,4 @@ export const exportPlansetting = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/wms/plansetting/get-import-template' }) -} \ No newline at end of file +} diff --git a/src/api/wms/scrapJobMain/index.ts b/src/api/wms/scrapJobMain/index.ts index e2cc48093..61a448a59 100644 --- a/src/api/wms/scrapJobMain/index.ts +++ b/src/api/wms/scrapJobMain/index.ts @@ -85,7 +85,7 @@ export const exportScrapJobMain = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/scrap-job-main/export-excel-senior', data }) + return await request.downloadPost({ url: '/wms/scrap-job-main/export-excel-senior', data }) } else { return await request.download({ url: `/wms/scrap-job-main/export-excel`, params }) } @@ -94,4 +94,4 @@ export const exportScrapJobMain = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/wms/scrap-job-main/get-import-template' }) -} \ No newline at end of file +} diff --git a/src/api/wms/stockupMainJob/index.ts b/src/api/wms/stockupMainJob/index.ts index b9dffb7ff..150609126 100644 --- a/src/api/wms/stockupMainJob/index.ts +++ b/src/api/wms/stockupMainJob/index.ts @@ -84,7 +84,7 @@ export const exportStockupMainJob = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/stockup-main-job/export-excel-senior', data }) + return await request.downloadPost({ url: '/wms/stockup-main-job/export-excel-senior', data }) } else { return await request.download({ url: `/wms/stockup-main-job/export-excel`, params }) } @@ -113,4 +113,4 @@ export const closeStockupMainJob = async (id) => { // 执行发货任务主 export const executeStockupMainJob = async (data: StockupMainJobVO) => { return await request.put({ url: `/wms/stockup-main-job/execute`, data }) -} \ No newline at end of file +} diff --git a/src/api/wms/strategy/index.ts b/src/api/wms/strategy/index.ts index d10cd5108..bd26f0071 100644 --- a/src/api/wms/strategy/index.ts +++ b/src/api/wms/strategy/index.ts @@ -46,7 +46,7 @@ export const exportStrategy = async (params) => { if (params.isSearch) { delete params.isSearch const data = {...params} - return await request.post({ url: '/wms/strategy/export-excel-senior', data }) + return await request.downloadPost({ url: '/wms/strategy/export-excel-senior', data }) } else { return await request.download({ url: `/wms/strategy/export-excel`, params }) } From fa62f879263c73d55fc3b0338d74e8bd4bbc5c34 Mon Sep 17 00:00:00 2001 From: bjang03 <259278618@qq.com> Date: Thu, 27 Jun 2024 15:50:11 +0800 Subject: [PATCH 029/408] =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D=201=E3=80=81?= =?UTF-8?q?=E7=9B=98=E7=82=B9=E4=BB=BB=E5=8A=A1=EF=BC=8C=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=90=8E=EF=BC=8C=E8=BE=93=E5=85=A5=E7=9B=98=E7=82=B9=E6=95=B0?= =?UTF-8?q?=E9=87=8F=EF=BC=8C=E5=9C=A8=E5=AF=BC=E5=85=A5=EF=BC=8C=E6=8A=A5?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../countManage/count/countPlanMain/countPlanMain.data.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/views/wms/countManage/count/countPlanMain/countPlanMain.data.ts b/src/views/wms/countManage/count/countPlanMain/countPlanMain.data.ts index 4071a1df5..fd38865bb 100644 --- a/src/views/wms/countManage/count/countPlanMain/countPlanMain.data.ts +++ b/src/views/wms/countManage/count/countPlanMain/countPlanMain.data.ts @@ -783,8 +783,7 @@ export const CountPlanDetailRules = reactive({ { required: true, message: '请选择盘点范围类型', trigger: 'change' } ], value: [ - { required: true, message: '请选择盘点范围值', trigger: ['blur','change'] }, - { max: 50, message: '不得超过50个字符', trigger: ['blur','change'] } + { required: true, message: '请选择盘点范围值', trigger: ['blur','change'] } ], }) /** @@ -830,4 +829,4 @@ export const CountPlanMain1 = useCrudSchemas(reactive([ } } }, -])) \ No newline at end of file +])) From 441cc9f8cb712ac5405c50d2a6ad1aa0a3383992 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 16:47:05 +0800 Subject: [PATCH 030/408] basicform --- src/components/BasicForm/src/BasicForm.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/BasicForm/src/BasicForm.vue b/src/components/BasicForm/src/BasicForm.vue index 854ededeb..2df16c7e7 100644 --- a/src/components/BasicForm/src/BasicForm.vue +++ b/src/components/BasicForm/src/BasicForm.vue @@ -494,7 +494,7 @@ watch(()=>props.tableData,() => { }) watch(()=>unref(formRef)?.formModel,() => { if(props?.sumFormDataByForm&&unref(formRef)?.formModel){ - props?.sumFormDataByForm(formRef,unref(formRef)?.formModel) + props?.sumFormDataByForm(formRef,unref(formRef)?.formModel,props.tableData) } },{ deep:true From 91affd6163c880a8a41869a15229d5c6cf751022 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Thu, 27 Jun 2024 16:51:18 +0800 Subject: [PATCH 031/408] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/purchasereceiptRequestDetail/index.ts | 12 + .../productputawayJobMain/index.vue | 4 +- .../productputawayAssembleJobMain/index.vue | 127 +- .../productputawayAssembleJobMain.data.ts | 2 +- .../purchasereceiptRequestMain.data.ts | 2 +- .../index.vue | 795 ++++++ .../purchasereceiptRequestMain.data.ts | 2473 +++++++++++++++++ 7 files changed, 3340 insertions(+), 75 deletions(-) create mode 100644 src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/index.vue create mode 100644 src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts diff --git a/src/api/wms/purchasereceiptRequestDetail/index.ts b/src/api/wms/purchasereceiptRequestDetail/index.ts index 13ce13323..4d5789976 100644 --- a/src/api/wms/purchasereceiptRequestDetail/index.ts +++ b/src/api/wms/purchasereceiptRequestDetail/index.ts @@ -57,6 +57,18 @@ export const getPurchasereceiptRequestDetailPageSpare = async (params) => { } } + +// 查询M类型收货申请子列表 +export const getPurchasereceiptRequestDetailPageOrderMType = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/purchasereceipt-request-detail/seniorOrderMType', data }) + } else { + return await request.get({ url: `/wms/purchasereceipt-request-detail/pageOrderMType`, params }) + } +} + // 查询采购收货申请子详情 export const getPurchasereceiptRequestDetail = async (id: number) => { return await request.get({ url: `/wms/purchasereceipt-request-detail/get?id=` + id }) diff --git a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue index 6ba1e2d00..b8f15698c 100644 --- a/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue +++ b/src/views/wms/productionManage/productputaway/productputawayJobMain/index.vue @@ -227,14 +227,14 @@ const openDetail = (row: any, titleName: any, titleValue: any) => { const BASE_URL = getJmreportBaseUrl() const src = ref(BASE_URL + '/jmreport/view/965858364788637696?token=' + getAccessToken()) const handleDocumentPrint = async (row) => { - window.open(src.value+'&id='+row.masterId) + window.open(src.value+'&type=predict'+'&id='+row.masterId) } /** * 待处理全部打印 */ const handleDocumentPrintAll = async () => { - window.open(src.value+'&id=printAllPending') + window.open(src.value+'&type=predict'+'&id=printAllPending') } /** 导出按钮操作 */ diff --git a/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/index.vue b/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/index.vue index af130fef1..a7ba72a23 100644 --- a/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/index.vue +++ b/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/index.vue @@ -73,6 +73,9 @@ import * as ProductputawayJobMainApi from '@/api/wms/productputawayJobMain' import * as ProductputawayJobDetailApi from '@/api/wms/productputawayJobDetail' import * as defaultButtons from '@/utils/disposition/defaultButtons' import { CACHE_KEY, useCache } from '@/hooks/web/useCache' +import * as SwitchApi from '@/api/wms/switch' +import {getAccessToken} from "@/utils/auth"; +import { getJmreportBaseUrl } from '@/utils/systemParam' // 装配制品上架任务主 defineOptions({ name: 'ProductputawayJobMain' }) @@ -114,13 +117,40 @@ const { tableObject, tableMethods } = useTable({ // 获得表格的各种操作 const { getList, setSearchParams } = tableMethods +const switchproductPutawayJobPrint = ref(false) +const getSwitchStatus = async ()=>{ + let res = await SwitchApi.getSwitchPage({ + pageSize: 20, + pageNo: 1, + code: 'productPutawayJobPrint' + }) + console.log('getSwitchStatus',res) + if(res&&res.list){ + switchproductPutawayJobPrint.value = res.list[0].effectiveSetValue == 'TRUE' + + } +} + // 列表头部按钮 -const HeadButttondata = [ +const HeadButttondata = computed(()=>{ + return [ defaultButtons.defaultExportBtn({hasPermi:'wms:productputaway-job-main:export'}), // 导出 + { + label: '待处理状态全部打印', + name: 'printAllPending', + hide: !switchproductPutawayJobPrint.value, + type: 'primary', + icon: '', + color: '', + hasPermi: '' + }, defaultButtons.defaultFreshBtn(null), // 刷新 defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 -] +]}) + + + // 头部按钮事件 const buttonBaseClick = (val, item) => { @@ -134,6 +164,9 @@ const buttonBaseClick = (val, item) => { } else { getList() } + } else if(val == 'printAllPending'){ + // 单据打印 + handleDocumentPrintAll() } else if (val == 'filtrate') { // 筛选 } else { // 其他按钮 console.log('其他按钮', item) @@ -156,6 +189,7 @@ const butttondata = (row,$index) => { return [] } return [ + defaultButtons.mainListDocumentPrintBtn({hide:!switchproductPutawayJobPrint.value}), // 单据打印 defaultButtons.mainListJobAccBtn({hide:isShowMainButton(row,['1'])}), // 承接 defaultButtons.mainListJobCloBtn({hide:isShowMainButton(row,['1'])}), // 关闭 defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2'])}), // 放弃 @@ -166,75 +200,7 @@ const butttondata = (row,$index) => { // 列表-操作按钮事件 const buttonTableClick = async (val, row) => { if (val == 'mainJobExe') { // 执行 - let aaa = { - "id": "1809190000111838147", - "requestNumber": "REC4620231214-0004", - "supplierCode": null, - "fromWarehouseCode": "W1", - "toWarehouseCode": null, - "fromAreaCodes": "", - "toAreaCodes": "", - "fromAreaTypes": "WIP,RAW", - "toAreaTypes": "SEMI,FG", - "completetime": 1702545291000, - "requestTime": 1702524283000, - "requestDueTime": 1689562428000, - "status": "2", - "expiredTime": null, - "updateTime": 1702545291000, - "updater": "1", - "jobStageStatus": null, - "priority": null, - "priorityIncrement": null, - "departmentCode": "103", - "acceptUserId": "1", - "acceptTime": 1702552206000, - "completeUserId": null, - "number": "JOB2220231214-0007", - "businessType": "ProductPutaway", - "remark": "111100", - "createTime": 1702545291000, - "creator": "1", - "autoComplete": "FALSE", - "allowModifyLocation": "FALSE", - "allowModifyQty": "TRUE", - "allowBiggerQty": "TRUE", - "allowSmallerQty": "TRUE", - "allowModifyInventoryStatus": "TRUE", - "allowContinuousScanning": "TRUE", - "allowPartialComplete": "TRUE", - "allowModifyBatch": "FALSE", - "allowModifyPackingNumber": "FALSE", - "inInventoryStatuses": "OK", - "outInventoryStatuses": "OK", - subList: [ - { - "id": "1809190001814017359", - "packingNumber": "12", - "containerNumber": "001", - "batch": "21", - "inventoryStatus": "OK", - "poNumber": null, - "poLine": "item01", - "fromLocationCode": "H03", - "toLocationCode": "L-R-001-002-1-02", - "itemCode": "item01", - "itemName": "物料01", - "itemDesc1": "", - "itemDesc2": "", - "projectCode": "xm01", - "qty": 3, - "uom": "EA", - "number": "JOB2220231214-0007", - "remark": "00", - "createTime": 1702545291000, - "creator": "1", - "fromOwnerCode": null, - "toOwnerCode": null -} - ] - } - ProductputawayJobMainApi.executeProductputawayMain(aaa) + // ProductputawayJobMainApi.executeProductputawayMain(aaa) } else if (val == 'mainJobAba') { // 放弃 await ProductputawayJobMainApi.abandonProductputawayMain(row.masterId) getList() @@ -244,8 +210,26 @@ const buttonTableClick = async (val, row) => { } else if (val == 'mainJobAcc') { // 承接 await ProductputawayJobMainApi.acceptProductputawayMain(row.masterId) getList() + }else if (val == 'documentPrint') { + // 单据打印 + handleDocumentPrint(row) } } + + +const BASE_URL = getJmreportBaseUrl() +const src = ref(BASE_URL + '/jmreport/view/965858364788637696?token=' + getAccessToken()) +const handleDocumentPrint = async (row) => { + window.open(src.value+'&type=assemble'+'&id='+row.masterId) +} + +/** + * 待处理全部打印 + */ +const handleDocumentPrintAll = async () => { + window.open(src.value+'&type=assemble'+'&id=printAllPending') +} + // 获取部门 用于详情 部门回显 const { wsCache } = useCache() /** 详情操作 */ @@ -283,6 +267,7 @@ const searchFormClick = (searchData) => { /** 初始化 **/ onMounted(async () => { + await getSwitchStatus() getList() }) diff --git a/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/productputawayAssembleJobMain.data.ts b/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/productputawayAssembleJobMain.data.ts index 2531a7bc4..ed167fa55 100644 --- a/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/productputawayAssembleJobMain.data.ts +++ b/src/views/wms/productionManage/productputawayAssemble/productputawayAssembleJobMain/productputawayAssembleJobMain.data.ts @@ -545,7 +545,7 @@ export const ProductputawayJobMain = useCrudSchemas(reactive([ isDetail: false, isForm: false, table: { - width: 150, + width: 300, fixed: 'right' }, } diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/purchasereceiptRequestMain.data.ts b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/purchasereceiptRequestMain.data.ts index b5e393dce..aec14295a 100644 --- a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/purchasereceiptRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/purchasereceiptRequestMain.data.ts @@ -552,7 +552,7 @@ export const PurchasereceiptRequestMain = useCrudSchemas(reactive( isDetail: false, isForm: false, table: { - width: 300, + width: 400, fixed: 'right' }, } diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/index.vue new file mode 100644 index 000000000..f93c5f128 --- /dev/null +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/index.vue @@ -0,0 +1,795 @@ + + + diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts new file mode 100644 index 000000000..19d1bb537 --- /dev/null +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts @@ -0,0 +1,2473 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter,dateFormatter2 } from '@/utils/formatTime' +import * as getRequestsettingApi from '@/api/wms/requestsetting/index' +import * as SupplierApi from '@/api/wms/supplier' +import { Supplier } from '@/views/wms/basicDataManage/supplierManage/supplier/supplier.data' +import * as PurchaseMainApi from '@/api/wms/purchaseMain' +import * as PurchaseDetailApi from '@/api/wms/purchaseDetail' +import * as LocationApi from '@/api/wms/location' +import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data' +import { Itempackaging } from '@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data' +import * as ItemPackageApi from '@/api/wms/itempackage/index' +import { PurchaseDetail, PurchaseMain } from '../../supplierdeliver/purchaseMain/purchaseMain.data' +import { useUserStore } from '@/store/modules/user' + + +const { t } = useI18n() // 国际化 +// 获取自动提交自动通过自动执行,跳过任务直接删生成记录的默认值 +const queryParams = { + pageSize:10, + pageNo:1, + code:'PurchaseReceiptRequest' +} +const data = await getRequestsettingApi.getRequestsettingPage(queryParams) +const requestsettingData =data?.list[0]||{} + + +// 获取当前操作人的部门 +const userStore = useUserStore() +const userDept = userStore.userSelfInfo.dept +// id 转str 否则form回显匹配不到 +userDept.id = userDept.id.toString() +const userDeptArray:any = [userDept] + +/** + * @returns {Array} 采购收货申请主表 + */ +export const PurchasereceiptRequestMain = useCrudSchemas(reactive([ + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180, + fixed: 'left' + }, + sortSearchDefault:1, + isForm: false, + isSearch: true, + }, + { + label: '采购订单号', + field: 'poNumber', + sort: 'custom', + table: { + width: 180 + }, + isSearch:true, + sortTableDefault:4, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + enterSearch: true, + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择采购订单', // 输入框占位文本 + searchField: 'number', // 查询弹窗赋值字段 + searchTitle: '采购订单信息', // 查询弹窗标题 + isConcatDetailSchemas:true,//是否是主子表合并 默认false + searchDetailSchemas:PurchaseDetail.allSchemas, + searchAllSchemas: PurchaseMain.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPageWMS, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'status', + value:'2', + message: '已发布状态', + isMainValue: false + }, + { + key: 'status', // 查询列表中字段 + value: '2', // 指查询具体值 + action: '==', // 查询拼接条件 + isSearch: true, // 使用自定义拼接条件 + isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 + }] + } + }, + isForm: true, + }, + { + label: '发货单号', + field: 'asnNumber', + sort: 'custom', + table: { + width: 180 + }, + isSearch:true, + sortSearchDefault:3, + isForm: true, + sortTableDefault:2 + }, + { + label: '供应商代码', + field: 'supplierCode', + sort: 'custom', + sortTableDefault:1, + table: { + width: 150 + }, + isSearch: true, + sortSearchDefault:2, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + disabled: true, + isSearchList: false, // 开启查询弹窗 + searchListPlaceholder: '请选择供应商代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '供应商信息', // 查询弹窗标题 + searchAllSchemas: Supplier.allSchemas, // 查询弹窗所需类 + searchPage: SupplierApi.getSupplierPage // 查询弹窗所需分页方法 + } + } + }, + // { + // label: '要货计划单号', + // field: 'ppNumber', + // sort: 'custom', + // table: { + // width: 180 + // }, + // form: { + // // labelMessage: '信息提示说明!!!', + // componentProps: { + // isSearchList: true, // 开启查询弹窗 + // searchListPlaceholder: '请选择要货计划单号', // 输入框占位文本 + // searchField: 'number', // 查询弹窗赋值字段 + // searchTitle: '要货计划信息', // 查询弹窗标题 + // searchAllSchemas: PurchasePlanMain.allSchemas, // 查询弹窗所需类 + // searchPage: PurchasePlanMainApi.getPurchasePlanMainPage, // 查询弹窗所需分页方法 + // searchCondition: [ + // { + // key: 'supplierCode', + // value: 'supplierCode', + // message: '请填写供应商代码!', + // isMainValue: true + // }, + // { + // key: 'status', + // value: 4, + // isMainValue: false + // }, + // { + // key: 'available', + // value: "TRUE", + // isMainValue: false + // }] + // } + // }, + // isForm: true, + // }, + { + label: '承运商', + field: 'carrierCode', + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '运输方式', + field: 'transferMode', + dictType: DICT_TYPE.TRANSFER_MODE, + sort: 'custom', + table: { + width: 150 + }, + isSearch: false, + }, + { + label: '车牌号', + field: 'vehiclePlateNumber', + sort: 'custom', + table: { + width: 150 + }, + }, + { + label: '数据来源', + field: 'sourceType', + dictType: DICT_TYPE.PURCHASERECEIPT_SOURCE_TYPE, + sort: 'custom', + table: { + width: 150 + }, + form: { + value: 'ASN_ExternalReceipt', + componentProps: { + disabled: true + } + }, + isSearch: true, + }, + { + label: '从仓库代码', + field: 'fromWarehouseCode', + sort: 'custom', + isTable:false, + table: { + width: 150 + }, + isForm: false, + }, + { + label: '到仓库代码', + field: 'toWarehouseCode', + sort: 'custom', + isTable:false, + table: { + width: 150 + }, + isForm: false, + }, + { + label: '从库区类型范围', + field: 'fromAreaTypes', + dictType: DICT_TYPE.AREA_TYPE, + dictClass: 'string', + isTable: false, + sort: 'custom', + table: { + width: 150 + }, + isForm: false, + }, + { + label: '到库区类型范围', + field: 'toAreaTypes', + dictType: DICT_TYPE.AREA_TYPE, + dictClass: 'string', + isTable: false, + sort: 'custom', + table: { + width: 150 + }, + isForm: false, + }, + { + label: '从库区代码范围', + field: 'fromAreaCodes', + sort: 'custom', + isTable: false, + table: { + width: 150 + }, + isForm: false, + }, + { + label: '到库区代码范围', + field: 'toAreaCodes', + sort: 'custom', + isTable: false, + table: { + width: 150 + }, + isForm: false, + }, + { + label: '到月台代码', + field: 'toDockCode', + sort: 'custom', + isTable: false, + table: { + width: 150 + }, + isForm: false, + }, + { + label: '业务类型', + field: 'businessType', + sort: 'custom', + isTable: false, + table: { + width: 150 + }, + form: { + value: 'PurchaseReceipt', + componentProps: { + disabled: true + } + }, + isForm: false, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + isTable: false, + }, + { + label: '创建时间', + field: 'createTime', + isForm: false, + table: { + width: 180 + }, + formatter: dateFormatter, + detail: { + dateFormat : 'YYYY-MM-DD HH:mm:ss' + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + } + }, + { + label: '创建者', + field: 'creator', + table: { + width: 130 + }, + isForm: false, + isTable: true + }, + { + label: '最后更新时间', + field: 'updateTime', + sort: 'custom', + isDetail: true, + isForm: false, + isTable: false, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + } + }, + { + label: '最后更新者', + field: 'updater', + isDetail: true, + isForm: false, + isTable: false, + table: { + width: 150 + } + }, + { + label: '申请时间', + field: 'requestTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + isForm: false, + isTable: false, + }, + // { + // label: '截止时间', + // field: 'dueTime', + // formatter: dateFormatter, + // detail: { + // dateFormat: 'YYYY-MM-DD HH:mm:ss' + // }, + // sort: 'custom', + // table: { + // width: 180 + // }, + // form: { + // component: 'DatePicker', + // componentProps: { + // style: {width:'100%'}, + // type: 'datetime', + // dateFormat: 'YYYY-MM-DD HH:mm:ss', + // valueFormat: 'x', + // } + // }, + // }, + // { + // label: '部门', + // field: 'departmentCode', + // sort: 'custom', + // table: { + // width: 150 + // }, + // formatter: (_: Recordable, __: TableColumn, cellValue: number) => { + // return userDeptArray.find((account) => account.id == cellValue)?.name + // }, + // form: { + // value: userDept.id, + // component: 'Select', + // api: () => userDeptArray, + // componentProps: { + // disabled: true, + // optionsAlias: { + // labelField: 'name', + // valueField: 'id' + // } + // } + // } + // }, + { + label: '状态', + field: 'status', + dictType: DICT_TYPE.REQUEST_STATUS, + dictClass: 'string', + isSearch: false, + isTable: true, + sortTableDefault:3, + isForm:false, + sort: 'custom', + table: { + width: 150 + }, + form: { + value: '1', + componentProps: { + disabled: true + } + } + }, + { + label: '自动提交', + field: 'autoCommit', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm:false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: 'FALSE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true, + } + } + }, + { + label: '自动通过', + field: 'autoAgree', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm:false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: 'FALSE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true, + } + } + }, + { + label: '自动执行', + field: 'autoExecute', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isTable: false, + isForm:false, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: 'FALSE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true, + } + } + }, + { + label: '直接生成记录', + field: 'directCreateRecord', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isForm: true, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'Switch', + value: "TRUE", + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + } + } + }, + { + label: '标签状态', + field: 'labelStatus', + sort: 'custom', + dictType: DICT_TYPE.LABEL_STATUS, + dictClass: 'string', + table: { + width: 150 + }, + isForm: false, + isTable: false, + isSearch: false, + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 400, + fixed: 'right' + }, + } +])) + +//表单校验 +export const PurchasereceiptRequestMainRules = reactive({ + ppNumber: [ + { required: true, message: '请输入采购订单', trigger: 'blur' } + ], + supplierCode: [ + { required: true, message: '请输入供应商代码', trigger: 'blur' } + ], + toWarehouseCode: [ + { required: true, message: '请输入到仓库代码', trigger: 'blur' } + ], + toAreaTypes: [ + { required: true, message: '请输入到库区类型范围', trigger: 'blur' } + ], + departmentCode: [ + { required: true, message: '请输入部门', trigger: 'blur' } + ], + autoCommit: [ + { required: true, message: '请选择是否自动提交', trigger: 'change' } + ], + autoAgree: [ + { required: true, message: '请选择是否自动通过', trigger: 'change' } + ], + autoExecute: [ + { required: true, message: '请选择是否自动执行', trigger: 'change' } + ], + directCreateRecord: [ + { required: true, message: '请选择是否跳过任务直接生成记录', trigger: 'change' } + ], + businessType: [ + { required: true, message: '请输入业务类型', trigger: 'blur' } + ], +}) + +/** + * @returns {Array} 采购收货申请子表 + */ +export const PurchasereceiptRequestDetail = useCrudSchemas(reactive([ + + { + label: '订单号', + field: 'poNumber', + hiddenInMain:true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:5, + tableForm:{ + isInpuFocusShow: true, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '采购订单信息', + isConcatDetailSchemas:true,//是否是主子表合并 默认false + searchDetailSchemas:PurchaseDetail.allSchemas, + searchAllSchemas: PurchaseMain.allSchemas, + searchPage: PurchaseDetailApi.getPurchaseDetailPageWMS, + searchCondition: [ + { + key:'number', + value:'poNumber', + action: '==', // 查询拼接条件 + isSearch: true, // 使用自定义拼接条件 + isFormModel:true, + isMainValue: false + }, + { + key: 'status', // 查询列表中字段 + value: '2', // 指查询具体值 + action: '==', // 查询拼接条件 + isSearch: true, // 使用自定义拼接条件 + isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 + }] + }, + form: { + labelMessage: '该订单号会影响订单行的选择', + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '采购订单信息', + searchDetailSchemas:PurchaseDetail.allSchemas, + searchAllSchemas: PurchaseMain.allSchemas, + searchPage: PurchaseDetailApi.getPurchaseDetailPageWMS, + searchCondition: [{ + key:'supplierCode', + value:'supplierCode', + message: '请选择供应商!', + isMainValue: true + }] + } + } + }, + { + label: '订单类型', + field: 'type', + dictType: DICT_TYPE.WORK_ORDER_TYPE, + dictClass: 'string', + isSearch: false, + isTable: false, + isTableForm: true, + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled:true + }, + isForm: false, + }, + { + label: '订单行', + field: 'poLine', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:5, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择订单行', // 输入框占位文本 + searchField: 'lineNumber', // 查询弹窗赋值字段 + searchTitle: '订单信息', // 查询弹窗标题 + searchAllSchemas: PurchaseDetail.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'number', + value:'poNumber', + message: '请填写订单号!', + isMainValue: true + }] + } + }, + tableForm:{ + multiple:true, + isInpuFocusShow: true, + searchListPlaceholder: '请选择订单行', // 输入框占位文本 + searchField: 'lineNumber', // 查询弹窗赋值字段 + searchTitle: '订单信息', // 查询弹窗标题 + searchAllSchemas: PurchaseDetail.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'number', + value:'poNumber', + message: '请填写订单号!', + isMainValue: true + }] + } + }, + { + label: '行类型', + field: 'poLineType', + sort: 'custom', + table: { + width: 180 + }, + sortTableDefault:5, + hiddenInMain:true, + isForm: false, + tableForm:{ + disabled: true + } + }, + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + table: { + width: 150 + }, + isSearch:true, + sortTableDefault:6, + tableForm:{ + disabled: true + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:7, + isTableForm: false, + isForm: false + }, + { + label: '物料描述1', + field: 'itemDesc1', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:7, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '物料描述2', + field: 'itemDesc2', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:7, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '器具号', + field: 'containerNumber', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + isTable:false, + isTableForm: false, + isForm: false + }, + // { + // label: '数量', + // field: 'qty', + // sort: 'custom', + // table: { + // width: 150 + // }, + // form: { + // component: 'InputNumber', + // componentProps: { + // min: 1, + // precision: 6 + // }, + // }, + // tableForm: { + // type: 'InputNumber', + // min: 1, + // precision: 6 + // } + // }, + { + label: '订单数量', + field: 'orderQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + }, + }, + sortTableDefault:9, + tableForm: { + type: 'InputNumber', + min: 1, + precision: 6 + } + }, + { + label: '收货数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:9, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + }, + }, + tableForm: { + type: 'InputNumber', + min: 1, + precision: 6 + } + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:10, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '包装号', + field: 'packingNumber', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + hiddenInMain:true, + sortTableDefault:11, + isForm: false + }, + { + label: '包装规格', + field: 'packUnit', + dictClass: 'string', + isTable: true, + isTableForm: false, + sort: 'custom', + table: { + width: 150, + componentProps: { + disabled: true + } + }, + sortTableDefault:11, + tableForm:{ + disabled:true + }, + isForm: true + }, + { + label: '包装数量', + field: 'packQty', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:11, + form: { + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择包装', + searchField: 'packQty', + searchTitle: '物品包装信息', + searchAllSchemas: Itempackaging.allSchemas, + searchPage: ItemPackageApi.getItempackagingPageBySupplierdeliver, + searchCondition: [ + { + key: 'itemCode', + value: 'itemCode', + message: '请选择订单行', + isMainValue: true + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + + ] + } + }, + tableForm: { + isInpuFocusShow: true, + searchListPlaceholder: '请选择包装', + searchField: 'packQty', + searchTitle: '物品包装信息', + searchAllSchemas: Itempackaging.allSchemas, + searchPage: ItemPackageApi.getItempackagingPageBySupplierdeliver, + searchCondition: [ + { + key: 'itemCode', + value: 'itemCode', + message: '请选择订单行', + isMainValue: true + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + isTableForm: false, + isForm: true + }, + { + label: '到库位代码', + field: 'defaultToLocationCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择库位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + tableForm:{ + isInpuFocusShow: true, + searchListPlaceholder: '请选择库位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + isTableForm: true, + isForm: false + }, + { + label: '从货主代码', + field: 'fromOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '到货主代码', + field: 'toOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '供应商计量数量', + field: 'supplierPackQty', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + }, + }, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '供应商计量单位', + field: 'supplierPackUnit', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + hiddenInMain:true, + isTableForm: false, + isForm: false, + tableForm: { + type: 'Select' + } + }, + { + label: '转换率', + field: 'convertRate', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:13, + hiddenInMain:true, + form: { + component: 'InputNumber', + componentProps: { + min: 0 + }, + }, + isTableForm: false, + isForm: false + }, + // { + // label: '替代批次', + // field: 'altBatch', + // sort: 'custom', + // table: { + // width: 150 + // }, + // isTableForm: false, + // isForm: false + // }, + { + label: '到货日期', + field: 'arriveDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + sortTableDefault:11, + hiddenInMain:true, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + type:'FormDate', + placeholder: '请选择到货日期', + valueFormat: 'x', + }, + }, + { + label: '生产日期', + field: 'produceDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + hiddenInMain:true, + sortTableDefault:11, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + type:'FormDate', + placeholder: '请选择生产日期', + valueFormat: 'x', + }, + }, + { + label: '批次', + field: 'batch', + sort: 'custom', + sortTableDefault:8, + table: { + width: 150 + }, + tableForm:{ + disabled: true + } + }, + { + label: '过期日期', + field: 'expireDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + sortTableDefault:11, + table: { + width: 180 + }, + isTable:true, + hiddenInMain:true, + form: { + component: 'DatePicker', + componentProps: { + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + // tableForm:{ + // type:'FormDate', + // placeholder: '请选择过期日期', + // valueFormat: 'x', + // }, + tableForm:{ + type: 'slot', + disabled: true + } + }, + { + label: '库存状态', + field: 'inventoryStatus', + dictType: DICT_TYPE.INVENTORY_STATUS, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:12, + hiddenInMain:true, + isTableForm: false, + isForm: false, + tableForm: { + type: 'Select' + } + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + table: { + width: 150 + }, + sortTableDefault:12, + isTableForm: false, + isForm: false + }, + + { + label: '项目代码', + field: 'projectCode', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180 + }, + hiddenInMain:true, + isTableForm: false, + form: { + componentProps: { + disabled: true + } + } + }, + + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + }, + { + label: '创建者', + field: 'creator', + sort: 'custom', + table: { + width: 150 + }, + hiddenInMain:true, + isTableForm: false, + isForm: false + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + hiddenInMain:true, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + isTableForm: false, + isForm: false + }, + { + label: '操作', + hiddenInMain:true, + field: 'action', + isDetail: false, + isForm: false , + table: { + width: 150, + fixed: 'right' + }, + isTableForm:false, + } +])) + +//表单校验 +export const PurchasereceiptRequestDetailRules = reactive({ + batch: [ + { required: true, message: '请输入批次', trigger: 'blur' } + ], + produceDate: [ + { required: true, message: '请输入生产日期', trigger: 'change' } + ], + arriveDate: [ + { required: true, message: '请输入到货日期', trigger: 'change' } + ], + expireDate: [ + { required: true, message: '请输入过期日期', trigger: 'change' } + ], + packQty: [ + { required: true, message: '请输入包装数量', trigger: 'blur' } + ], + poNumber: [ + { required: true, message: '请输入订单号', trigger: 'change' } + ], + poLine: [ + { required: true, message: '请输入订单行', trigger: 'change' } + ], + packUnit: [ + { required: true, message: '请选择包装规格', trigger: 'change' } + ], + convertRate: [ + { required: true, message: '请输入转换率', trigger: 'blur' } + ], + inventoryStatus: [ + { required: true, message: '请选择库存状态', trigger: 'change' } + ], + itemCode: [ + { required: true, message: '请输入物料代码', trigger: 'change' } + ], +}) + +/** + * @returns {Array} 采购收货申请子表--子包装号 + */ +export const PurchasereceiptRequestDetailPackingNumber = useCrudSchemas(reactive([ + { + label: '包装号', + field: 'packingNumber', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '订单号', + field: 'poNumber', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled:true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '采购订单信息', + searchAllSchemas: PurchaseMain.allSchemas, + searchPage: PurchaseMainApi.getPurchaseMainPage, + searchCondition: [{ + key:'supplierCode', + value:'supplierCode', + message: '请选择供应商!', + isMainValue: true + }] + }, + form: { + labelMessage: '该订单号会影响订单行的选择', + componentProps: { + disabled:true, + isSearchList: false, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '采购订单信息', + searchAllSchemas: PurchaseMain.allSchemas, + searchPage: PurchaseMainApi.getPurchaseMainPage, + searchCondition: [{ + key:'supplierCode', + value:'supplierCode', + message: '请选择供应商!', + isMainValue: true + }] + } + } + }, + { + label: '订单行', + field: 'poLine', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + disabled:true, + isSearchList: false, // 开启查询弹窗 + searchListPlaceholder: '请选择订单行', // 输入框占位文本 + searchField: 'lineNumber', // 查询弹窗赋值字段 + searchTitle: '订单信息', // 查询弹窗标题 + searchAllSchemas: PurchaseDetail.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'number', + value:'poNumber', + message: '请填写订单号!', + isMainValue: true + }] + } + }, + tableForm:{ + disabled:true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择订单行', // 输入框占位文本 + searchField: 'lineNumber', // 查询弹窗赋值字段 + searchTitle: '订单信息', // 查询弹窗标题 + searchAllSchemas: PurchaseDetail.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'number', + value:'poNumber', + message: '请填写订单号!', + isMainValue: true + }] + } + }, + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled: true + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '物料描述1', + field: 'itemDesc1', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '物料描述2', + field: 'itemDesc2', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '器具号', + field: 'containerNumber', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + }, + }, + tableForm: { + disabled: true, + type: 'InputNumber', + min: 1, + precision: 6 + } + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '默认到库位代码', + field: 'defaultToLocationCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择库位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + tableForm:{ + disabled: true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择库位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + isTableForm: true, + isForm: false + }, + { + label: '生产日期', + field: 'produceDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled:true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + disabled: true, + type:'FormDate', + placeholder: '请选择生产日期', + valueFormat: 'x', + }, + }, + { + label: '批次', + field: 'batch', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled: true + } + }, + { + label: '替代批次', + field: 'altBatch', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '到货日期', + field: 'arriveDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled:true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + disabled: true, + type:'FormDate', + placeholder: '请选择到货日期', + valueFormat: 'x', + }, + }, + { + label: '过期日期', + field: 'expireDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled:true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + disabled: true, + type:'FormDate', + placeholder: '请选择过期日期', + valueFormat: 'x', + }, + }, + { + label: '库存状态', + field: 'inventoryStatus', + dictType: DICT_TYPE.INVENTORY_STATUS, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false, + tableForm: { + type: 'Select', + disabled: true, + } + }, + { + label: '包装数量', + field: 'packQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择包装', + searchField: 'packQty', + searchTitle: '物品包装信息', + searchAllSchemas: Itempackaging.allSchemas, + searchPage: ItemPackageApi.getItempackagingPageBySupplierdeliver, + searchCondition: [ + { + key: 'itemCode', + value: 'itemCode', + message: '请选择订单行', + isMainValue: true + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + + ] + } + }, + tableForm: { + disabled: true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择包装', + searchField: 'packQty', + searchTitle: '物品包装信息', + searchAllSchemas: Itempackaging.allSchemas, + searchPage: ItemPackageApi.getItempackagingPageBySupplierdeliver, + searchCondition: [ + { + key: 'itemCode', + value: 'itemCode', + message: '请选择订单行', + isMainValue: true + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + isTableForm: true, + isForm: true + }, + { + label: '包装规格', + field: 'packUnit', + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150, + componentProps: { + disabled: true + } + }, + tableForm:{ + disabled:true + }, + isTableForm: true, + isForm: true + }, + { + label: '供应商计量数量', + field: 'supplierPackQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + }, + }, + isTableForm: false, + isForm: false + }, + { + label: '供应商计量单位', + field: 'supplierPackUnit', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false, + tableForm: { + type: 'Select' + } + }, + { + label: '转换率', + field: 'convertRate', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0 + }, + }, + tableForm: { + disabled: true, + }, + isTableForm: false, + isForm: false + }, + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180 + }, + isTableForm: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '项目代码', + field: 'projectCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '从货主代码', + field: 'fromOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '到货主代码', + field: 'toOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled:true + } + }, + tableForm: { + disabled: true, + } + }, + { + label: '创建者', + field: 'creator', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '创建时间', + field: 'createTime', + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: {width:'100%'}, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, + isTableForm: false, + isForm: false + } +])) + + +export const PurchasereceiptRequestDetailLabel = useCrudSchemas(reactive([ + { + label: '订单号', + field: 'poNumber', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled: true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '采购订单信息', + searchAllSchemas: PurchaseMain.allSchemas, + searchPage: PurchaseMainApi.getPurchaseMainPage, + searchCondition: [{ + key:'supplierCode', + value:'supplierCode', + message: '请选择供应商!', + isMainValue: true + }] + }, + form: { + labelMessage: '该订单号会影响订单行的选择', + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '采购订单信息', + searchAllSchemas: PurchaseMain.allSchemas, + searchPage: PurchaseMainApi.getPurchaseMainPage, + searchCondition: [{ + key:'supplierCode', + value:'supplierCode', + message: '请选择供应商!', + isMainValue: true + }] + } + } + }, + { + label: '订单行', + field: 'poLine', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + disabled:true, + isSearchList: false, // 开启查询弹窗 + searchListPlaceholder: '请选择订单行', // 输入框占位文本 + searchField: 'lineNumber', // 查询弹窗赋值字段 + searchTitle: '订单信息', // 查询弹窗标题 + searchAllSchemas: PurchaseDetail.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'number', + value:'poNumber', + message: '请填写订单号!', + isMainValue: true + }] + } + }, + tableForm:{ + disabled:true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择订单行', // 输入框占位文本 + searchField: 'lineNumber', // 查询弹窗赋值字段 + searchTitle: '订单信息', // 查询弹窗标题 + searchAllSchemas: PurchaseDetail.allSchemas, // 查询弹窗所需类 + searchPage: PurchaseDetailApi.getPurchaseDetailPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'number', + value:'poNumber', + message: '请填写订单号!', + isMainValue: true + }] + } + }, + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled: true + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled:true + }, + isTableForm: true, + }, + { + label: '物料描述1', + field: 'itemDesc1', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled:true + }, + isTableForm: true, + }, + { + label: '物料描述2', + field: 'itemDesc2', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '包装号', + field: 'packingNumber', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '器具号', + field: 'containerNumber', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled:true, + min: 1, + precision: 6 + }, + }, + tableForm: { + disabled:true, + type: 'InputNumber', + min: 1, + precision: 6 + } + }, + { + label: '计量单位', + field: 'uom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '从库位代码', + field: 'fromLocationCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '默认到库位代码', + field: 'defaultToLocationCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + disabled:true, + isSearchList: false, // 开启查询弹窗 + searchListPlaceholder: '请选择库位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + tableForm:{ + disabled:true, + isInpuFocusShow: false, + searchListPlaceholder: '请选择库位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + isTableForm: true, + isForm: false + }, + { + label: '生产日期', + field: 'produceDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled:true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + disabled:true, + type:'FormDate', + placeholder: '请选择生产日期', + valueFormat: 'x', + }, + }, + { + label: '批次', + field: 'batch', + sort: 'custom', + table: { + width: 150 + }, + tableForm:{ + disabled: true + } + }, + { + label: '替代批次', + field: 'altBatch', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '到货日期', + field: 'arriveDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled: true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + disabled: true, + type:'FormDate', + placeholder: '请选择到货日期', + valueFormat: 'x', + }, + }, + { + label: '过期日期', + field: 'expireDate', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + sort: 'custom', + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + disabled: true, + style: {width: '100%'}, + type: 'date', + dateFormat: 'YYYY-MM-DD', + valueFormat: 'x', + } + }, + tableForm:{ + disabled: true, + type:'FormDate', + placeholder: '请选择过期日期', + valueFormat: 'x', + }, + }, + { + label: '库存状态', + field: 'inventoryStatus', + dictType: DICT_TYPE.INVENTORY_STATUS, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false, + tableForm: { + type: 'Select' + } + }, + { + label: '包装数量', + field: 'packQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + componentProps: { + disabled: true, + isSearchList: true, + searchListPlaceholder: '请选择包装', + searchField: 'packQty', + searchTitle: '物品包装信息', + searchAllSchemas: Itempackaging.allSchemas, + searchPage: ItemPackageApi.getItempackagingPageBySupplierdeliver, + searchCondition: [ + { + key: 'itemCode', + value: 'itemCode', + message: '请选择订单行', + isTableRowValue: true, //查询当前searchTable表中行数据的值 + isMainValue: false + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + + ] + } + }, + tableForm: { + disabled: true, + isInpuFocusShow: true, + searchListPlaceholder: '请选择包装', + searchField: 'packQty', + searchTitle: '物品包装信息', + searchAllSchemas: Itempackaging.allSchemas, + searchPage: ItemPackageApi.getItempackagingPageBySupplierdeliver, + searchCondition: [ + { + key: 'itemCode', + value: 'itemCode', + message: '请选择订单行', + isTableRowValue: true, //查询当前searchTable表中行数据的值 + isMainValue: false + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + isTableForm: true, + isForm: true + }, + { + label: '包装规格', + field: 'packUnit', + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150, + componentProps: { + disabled: true + } + }, + tableForm:{ + disabled:true + }, + isTableForm: true, + isForm: true + }, + { + label: '供应商计量数量', + field: 'supplierPackQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled: true, + min: 1, + precision: 6 + }, + }, + isTableForm: false, + isForm: false + }, + { + label: '供应商计量单位', + field: 'supplierPackUnit', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false, + tableForm: { + type: 'Select' + } + }, + { + label: '转换率', + field: 'convertRate', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + disabled: true, + min: 0 + }, + }, + isTableForm: false, + isForm: false + }, + { + label: '单据号', + field: 'number', + sort: 'custom', + table: { + width: 180 + }, + isTableForm: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '项目代码', + field: 'projectCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '从货主代码', + field: 'fromOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '到货主代码', + field: 'toOwnerCode', + sort: 'custom', + table: { + width: 150 + }, + isTableForm: false, + isForm: false + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + table: { + width: 150 + }, + }, +])) From 476adf6d71eaf12773665d4952a56753c5c55234 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 17:07:41 +0800 Subject: [PATCH 032/408] =?UTF-8?q?=E5=8F=91=E6=96=99=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/wms/issueManage/issue/issueRequestMain/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/issueManage/issue/issueRequestMain/index.vue b/src/views/wms/issueManage/issue/issueRequestMain/index.vue index f71bba7c9..df3aa6188 100644 --- a/src/views/wms/issueManage/issue/issueRequestMain/index.vue +++ b/src/views/wms/issueManage/issue/issueRequestMain/index.vue @@ -207,7 +207,7 @@ const butttondata = (row,$index) => { defaultButtons.mainListSubmitBtn({hide:isShowMainButton(row,['1']), hasPermi:'wms:issue-request-main:submit'}), // 提交审批 defaultButtons.mainListTurnDownBtn({hide:isShowMainButton(row,['2']), hasPermi:'wms:issue-request-main:refused'}), // 驳回 defaultButtons.mainListApproveBtn({hide:isShowMainButton(row,['2']), hasPermi:'wms:issue-request-main:handle'}), // 审批通过 - defaultButtons.mainListHandleBtn({hide:isShowMainButton(row,['3']), hasPermi:'wms:issue-request-main:update'}), // 处理 + defaultButtons.mainListHandleBtn({hide:isShowMainButton(row,['3','7']), hasPermi:'wms:issue-request-main:update'}), // 处理 defaultButtons.mainListEditBtn({hide:isShowMainButton(row,['1']), hasPermi:'wms:issue-request-main:update'}), // 编辑 // defaultButtons.mainListDeleteBtn({hasPermi:'wms:issue-request-main:delete'}), // 删除 ] From dec258c0b9f65713da536e3438df5458e199bd45 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Thu, 27 Jun 2024 17:12:24 +0800 Subject: [PATCH 033/408] =?UTF-8?q?M=E5=9E=8B=E8=AE=A2=E5=8D=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../purchasereceiptRequestMain.data.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts index 19d1bb537..2a7c4a340 100644 --- a/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/purchasereceiptRequestMain.data.ts @@ -48,7 +48,7 @@ export const PurchasereceiptRequestMain = useCrudSchemas(reactive( isSearch: true, }, { - label: '采购订单号', + label: 'M型采购订单号', field: 'poNumber', sort: 'custom', table: { @@ -80,6 +80,12 @@ export const PurchasereceiptRequestMain = useCrudSchemas(reactive( action: '==', // 查询拼接条件 isSearch: true, // 使用自定义拼接条件 isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 + },{ + key: 'po_line_type', // 查询列表中字段 + value: 'M', // 指查询具体值 + action: '==', // 查询拼接条件 + isSearch: true, // 使用自定义拼接条件 + isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 }] } }, From 12512a3f514d21d48c7fe3a0c705cac2603176fb Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Thu, 27 Jun 2024 17:22:16 +0800 Subject: [PATCH 034/408] =?UTF-8?q?EAM=20=E2=80=94=E2=80=94>=20=20?= =?UTF-8?q?=E5=B7=A1=E6=A3=80=E7=82=B9=E6=A3=80=20=20=E7=BB=B4=E4=BF=AE=20?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E8=81=94=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/disposition/defaultButtons.ts | 13 ++++++++++ .../eam/equipmentRepairJobMain/index.vue | 25 +++++++++++++++++++ .../SpotCheckOrderDetail.vue | 2 +- .../equipmentSpotCheckMain.data.ts | 11 +++++--- .../equipmentSpotCheckMain/finishForm1.vue | 2 ++ 5 files changed, 49 insertions(+), 4 deletions(-) diff --git a/src/utils/disposition/defaultButtons.ts b/src/utils/disposition/defaultButtons.ts index 9faec3f8c..0e13e51f7 100644 --- a/src/utils/disposition/defaultButtons.ts +++ b/src/utils/disposition/defaultButtons.ts @@ -415,6 +415,19 @@ export function mainListFinishBtn(option:any) { }) } +// 主列表-作废按钮 +export function mainListCancelBtn(option:any) { + return __defaultBtnOption(option,{ + label: t(`ts.作废`).replace('ts.', ''), + name: 'cancel', + hide: false, + type: 'primary', + color: '', + link: true, // 文本展现按钮 + hasPermi: '' + }) +} + // 主列表-验证按钮 export function mainListValidateBtn(option:any) { return __defaultBtnOption(option,{ diff --git a/src/views/eam/equipmentRepairJobMain/index.vue b/src/views/eam/equipmentRepairJobMain/index.vue index f92a39da0..214dddcf9 100644 --- a/src/views/eam/equipmentRepairJobMain/index.vue +++ b/src/views/eam/equipmentRepairJobMain/index.vue @@ -95,6 +95,7 @@ import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; import {ToolAccounts} from "@/views/eam/toolAccounts/toolAccounts.data"; import * as ToolItemApi from "@/api/eam/toolAccounts"; +import {mainListCancelBtn} from "@/utils/disposition/defaultButtons"; defineOptions({ name: 'EquipmentRepairJobMain' }) @@ -188,6 +189,7 @@ const butttondata = (row) => { defaultButtons.mainListExecuteBtn({hide: isShowStatusButton(row,['4']),hasPermi:'eam:equipmentRepairJobMain:update'}), // 执行 defaultButtons.mainListTransferBtn({hide: isShowStatusButton(row,['4']),hasPermi:'eam:equipmentRepairJobMain:update'}), // 转办 defaultButtons.mainListFinishBtn({hide: isShowStatusButton(row,['5']),hasPermi:'eam:equipmentRepairJobMain:update'}), //完成 + defaultButtons.mainListCancelBtn({hide: isShowStatusButton(row,['5']),hasPermi:'eam:equipmentRepairJobMain:update'}), //作废 defaultButtons.mainListValidateRepairBtn({hide: isShowStatusButton(row,['6']),hasPermi:'eam:equipmentRepairJobMain:update'}), // 维修验证 defaultButtons.mainListValidateReportBtn({hide: isShowBaoXiuButton(row),hasPermi:'eam:equipmentRepairJobMain:update'}), // 报修验证 ] @@ -205,6 +207,8 @@ const buttonTableClick = async (val, row) => { handleExecute(row.id) } else if (val == 'finish') { // 完成 handleFinish(row) + } else if (val == 'cancel') { // 作废 + handleCancel(row.id) } else if (val == 'validate_repair') { // 维修验证 handleValidateRepair(row) } else if (val == 'validate_report') { // 报修验证 @@ -390,6 +394,27 @@ const handleReceive = async (id: number) => { } catch {} } + +/** 作废按钮操作 */ +const handleCancel = async (id: number) => { + try { + // 二次确认 + await message.delConfirm('是否作废所选中任务?'); + const params = ref({ + id: '', + status:'', + }) + params.value.id = id + params.value.status = '9' + // 发起 + await EquipmentRepairJobMainApi.updateEquipmentRepairOrder(params.value) + message.success(t('执行成功')) + // 刷新列表 + await getList() + } catch {} +} + + /** 执行按钮操作 */ const handleExecute = async (id: number) => { try { diff --git a/src/views/eam/equipmentSpotCheckMain/SpotCheckOrderDetail.vue b/src/views/eam/equipmentSpotCheckMain/SpotCheckOrderDetail.vue index 6c175bcfc..a32c35280 100644 --- a/src/views/eam/equipmentSpotCheckMain/SpotCheckOrderDetail.vue +++ b/src/views/eam/equipmentSpotCheckMain/SpotCheckOrderDetail.vue @@ -917,7 +917,7 @@ const submitForm = async (formType, data) => { await getList() updateKey.value += 1 } finally { - formRef.value.formLoading = false + //formRef.value.formLoading = false } } diff --git a/src/views/eam/equipmentSpotCheckMain/equipmentSpotCheckMain.data.ts b/src/views/eam/equipmentSpotCheckMain/equipmentSpotCheckMain.data.ts index 076f07400..f1581ad93 100644 --- a/src/views/eam/equipmentSpotCheckMain/equipmentSpotCheckMain.data.ts +++ b/src/views/eam/equipmentSpotCheckMain/equipmentSpotCheckMain.data.ts @@ -315,9 +315,14 @@ export const EquipmentSpotCheckMain = useCrudSchemas(reactive([ isSearch: true, dictType: DICT_TYPE.FALSE_OR_TRUE, dictClass: 'string', - form: { - component: 'Radio' - }, + }, + { + label: '是否需要维修', + field: 'isRepair', + sort: 'custom', + isSearch: true, + dictType: DICT_TYPE.FALSE_OR_TRUE, + dictClass: 'string', }, { label: '流程状态', diff --git a/src/views/eam/equipmentSpotCheckMain/finishForm1.vue b/src/views/eam/equipmentSpotCheckMain/finishForm1.vue index 80434c83c..da8b44232 100644 --- a/src/views/eam/equipmentSpotCheckMain/finishForm1.vue +++ b/src/views/eam/equipmentSpotCheckMain/finishForm1.vue @@ -67,6 +67,7 @@ const formData = ref({ // verifyer: '', verifyContent: '', verifyTime: '', + isRepair:"", }) const formRules = reactive({ // verifyer: [ @@ -92,6 +93,7 @@ const open = async (type: string, row?: object) => { //初始化数据 formData.value.id = row.id formData.value.number = row.planNumber + formData.value.isRepair = row.isRepair } defineExpose({ open }) // 提供 open 方法,用于打开弹窗 From 052371890ee2a6caeb59e2899890b7b13a6e2e17 Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Thu, 27 Jun 2024 17:32:38 +0800 Subject: [PATCH 035/408] =?UTF-8?q?=E5=8F=91=E6=96=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../issue/issueRequestMain/index.vue | 14 +- .../issueRequestMain/issueRequestMain.data.ts | 457 +++++++++++------- 2 files changed, 291 insertions(+), 180 deletions(-) diff --git a/src/views/wms/issueManage/issue/issueRequestMain/index.vue b/src/views/wms/issueManage/issue/issueRequestMain/index.vue index df3aa6188..b70b6f50c 100644 --- a/src/views/wms/issueManage/issue/issueRequestMain/index.vue +++ b/src/views/wms/issueManage/issue/issueRequestMain/index.vue @@ -86,6 +86,7 @@ import { IssueRequestMain,IssueRequestMainRules,IssueRequestDetail,IssueRequestD import * as IssueRequestMainApi from '@/api/wms/issueRequestMain' import * as IssueRequestDetailApi from '@/api/wms/issueRequestDetail' import * as defaultButtons from '@/utils/disposition/defaultButtons' +import * as WorkstationApi from '@/api/wms/workstation' // 发料申请 defineOptions({ name: 'IssueRequestMain' }) @@ -105,7 +106,7 @@ const updataTableColumns = (val) => { // 查询页面返回 const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => { - nextTick(() => { + nextTick(async() => { if (type == 'tableForm') { // 明细查询页赋值 if (formField == 'itemCode') { @@ -121,6 +122,17 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => setV['fromWarehouseCode'] = val[0]['code'] setV['toWarehouseCode'] = val[0]['code'] } + if (formField == 'productionLineCode') { + //生产线 + let res = await WorkstationApi.getWorkstationPage({ + productionLineCode: val[0][searchField], + pageSize: 20, + pageNo: 1 + }) + if(res&&res.list&&res.list.length>0){ + setV['workStationCode'] = res.list[0].code + } + } formRef.setValues(setV) } }) diff --git a/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts b/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts index 701d7a9ce..422092299 100644 --- a/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts +++ b/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts @@ -67,6 +67,7 @@ export const IssueRequestMain = useCrudSchemas(reactive([ form: { // labelMessage: '信息提示说明!!!', componentProps: { + enterSearch:true, isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '请选择车间代码', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 @@ -81,6 +82,104 @@ export const IssueRequestMain = useCrudSchemas(reactive([ } } }, + { + label: '生产线代码', + field: 'productionLineCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true, + tableForm:{ + isInpuFocusShow: true, + searchListPlaceholder: '请选择生产线代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '生产线信息', // 查询弹窗标题 + searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类 + searchPage: ProductionlineApi.getProductionlinePage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'workshopCode', + value:'workshopCode', + message: '请填写车间代码!', + isMainValue: true + },{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择生产线代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '生产线信息', // 查询弹窗标题 + searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类 + searchPage: ProductionlineApi.getProductionlinePage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'workshopCode', + value:'workshopCode', + message: '请填写车间代码!', + isMainValue: true + },{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + } + }, + { + label: '工位代码', + field: 'workStationCode', + sort: 'custom', + table: { + width: 150 + }, + isTable:false, + hiddenInMain:true, + tableForm:{ + isInpuFocusShow: true, + searchListPlaceholder: '请选择工位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '工位信息', // 查询弹窗标题 + searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 + searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'productionLineCode', + value:'productionLineCode', + message: '请填写生产线代码!', + isMainValue: true + },{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择工位代码', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '工位信息', // 查询弹窗标题 + searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 + searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key:'productionLineCode', + value:'productionLineCode', + message: '请填写生产线代码!', + isMainValue: true + },{ + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + } + }, { label: '状态', field: 'status', @@ -188,45 +287,45 @@ export const IssueRequestMain = useCrudSchemas(reactive([ isTable:false, isForm: false }, - { - label: '从仓库代码', - field: 'fromWarehouseCode', - sort: 'custom', - table: { - width: 150 - }, - isTable:false, - form: { - // labelMessage: '信息提示说明!!!', - componentProps: { - isSearchList: true, // 开启查询弹窗 - searchListPlaceholder: '请选择仓库代码', // 输入框占位文本 - searchField: 'code', // 查询弹窗赋值字段 - searchTitle: '仓库信息', // 查询弹窗标题 - searchAllSchemas: Warehouse.allSchemas, // 查询弹窗所需类 - searchPage: WarehouseApi.getWarehousePage, // 查询弹窗所需分页方法 - searchCondition: [{ - key: 'available', - value: 'TRUE', - isMainValue: false - }] - } - } - }, - { - label: '到仓库代码', - field: 'toWarehouseCode', - sort: 'custom', - table: { - width: 150 - }, - isTable:false, - form: { - componentProps: { - disabled: true - } - } - }, + // { + // label: '从仓库代码', + // field: 'fromWarehouseCode', + // sort: 'custom', + // table: { + // width: 150 + // }, + // isTable:false, + // form: { + // // labelMessage: '信息提示说明!!!', + // componentProps: { + // isSearchList: true, // 开启查询弹窗 + // searchListPlaceholder: '请选择仓库代码', // 输入框占位文本 + // searchField: 'code', // 查询弹窗赋值字段 + // searchTitle: '仓库信息', // 查询弹窗标题 + // searchAllSchemas: Warehouse.allSchemas, // 查询弹窗所需类 + // searchPage: WarehouseApi.getWarehousePage, // 查询弹窗所需分页方法 + // searchCondition: [{ + // key: 'available', + // value: 'TRUE', + // isMainValue: false + // }] + // } + // } + // }, + // { + // label: '到仓库代码', + // field: 'toWarehouseCode', + // sort: 'custom', + // table: { + // width: 150 + // }, + // isTable:false, + // form: { + // componentProps: { + // disabled: true + // } + // } + // }, { label: '业务类型', field: 'businessType', @@ -461,9 +560,9 @@ export const IssueRequestMainRules = reactive({ workshopCode: [ { required: true, message: '请选择车间代码', trigger: 'change' } ], - fromWarehouseCode: [ - { required: true, message: '请选择从仓库代码', trigger: 'change' } - ], + // fromWarehouseCode: [ + // { required: true, message: '请选择从仓库代码', trigger: 'change' } + // ], // dueTime: [ // { required: true, message: '请选择截止时间', trigger: 'change' } // ], @@ -476,104 +575,104 @@ export const IssueRequestMainRules = reactive({ * @returns {Array} 发料申请子表 */ export const IssueRequestDetail = useCrudSchemas(reactive([ - { - label: '生产线代码', - field: 'productionLineCode', - sort: 'custom', - table: { - width: 150 - }, - isTable:false, - hiddenInMain:true, - tableForm:{ - isInpuFocusShow: true, - searchListPlaceholder: '请选择生产线代码', // 输入框占位文本 - searchField: 'code', // 查询弹窗赋值字段 - searchTitle: '生产线信息', // 查询弹窗标题 - searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类 - searchPage: ProductionlineApi.getProductionlinePage, // 查询弹窗所需分页方法 - searchCondition: [{ - key:'workshopCode', - value:'workshopCode', - message: '请填写车间代码!', - isMainValue: true - },{ - key: 'available', - value: 'TRUE', - isMainValue: false - }] - }, - form: { - // labelMessage: '信息提示说明!!!', - componentProps: { - isSearchList: true, // 开启查询弹窗 - searchListPlaceholder: '请选择生产线代码', // 输入框占位文本 - searchField: 'code', // 查询弹窗赋值字段 - searchTitle: '生产线信息', // 查询弹窗标题 - searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类 - searchPage: ProductionlineApi.getProductionlinePage, // 查询弹窗所需分页方法 - searchCondition: [{ - key:'workshopCode', - value:'workshopCode', - message: '请填写车间代码!', - isMainValue: true - },{ - key: 'available', - value: 'TRUE', - isMainValue: false - }] - } - } - }, - { - label: '工位代码', - field: 'workStationCode', - sort: 'custom', - table: { - width: 150 - }, - isTable:false, - hiddenInMain:true, - tableForm:{ - isInpuFocusShow: true, - searchListPlaceholder: '请选择工位代码', // 输入框占位文本 - searchField: 'code', // 查询弹窗赋值字段 - searchTitle: '工位信息', // 查询弹窗标题 - searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 - searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 - searchCondition: [{ - key:'productionLineCode', - value:'productionLineCode', - message: '请填写生产线代码!', - isMainValue: true - },{ - key: 'available', - value: 'TRUE', - isMainValue: false - }] - }, - form: { - // labelMessage: '信息提示说明!!!', - componentProps: { - isSearchList: true, // 开启查询弹窗 - searchListPlaceholder: '请选择工位代码', // 输入框占位文本 - searchField: 'code', // 查询弹窗赋值字段 - searchTitle: '工位信息', // 查询弹窗标题 - searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 - searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 - searchCondition: [{ - key:'productionLineCode', - value:'productionLineCode', - message: '请填写生产线代码!', - isMainValue: true - },{ - key: 'available', - value: 'TRUE', - isMainValue: false - }] - } - } - }, + // { + // label: '生产线代码', + // field: 'productionLineCode', + // sort: 'custom', + // table: { + // width: 150 + // }, + // isTable:false, + // hiddenInMain:true, + // tableForm:{ + // isInpuFocusShow: true, + // searchListPlaceholder: '请选择生产线代码', // 输入框占位文本 + // searchField: 'code', // 查询弹窗赋值字段 + // searchTitle: '生产线信息', // 查询弹窗标题 + // searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类 + // searchPage: ProductionlineApi.getProductionlinePage, // 查询弹窗所需分页方法 + // searchCondition: [{ + // key:'workshopCode', + // value:'workshopCode', + // message: '请填写车间代码!', + // isMainValue: true + // },{ + // key: 'available', + // value: 'TRUE', + // isMainValue: false + // }] + // }, + // form: { + // // labelMessage: '信息提示说明!!!', + // componentProps: { + // isSearchList: true, // 开启查询弹窗 + // searchListPlaceholder: '请选择生产线代码', // 输入框占位文本 + // searchField: 'code', // 查询弹窗赋值字段 + // searchTitle: '生产线信息', // 查询弹窗标题 + // searchAllSchemas: Productionline.allSchemas, // 查询弹窗所需类 + // searchPage: ProductionlineApi.getProductionlinePage, // 查询弹窗所需分页方法 + // searchCondition: [{ + // key:'workshopCode', + // value:'workshopCode', + // message: '请填写车间代码!', + // isMainValue: true + // },{ + // key: 'available', + // value: 'TRUE', + // isMainValue: false + // }] + // } + // } + // }, + // { + // label: '工位代码', + // field: 'workStationCode', + // sort: 'custom', + // table: { + // width: 150 + // }, + // isTable:false, + // hiddenInMain:true, + // tableForm:{ + // isInpuFocusShow: true, + // searchListPlaceholder: '请选择工位代码', // 输入框占位文本 + // searchField: 'code', // 查询弹窗赋值字段 + // searchTitle: '工位信息', // 查询弹窗标题 + // searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 + // searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 + // searchCondition: [{ + // key:'productionLineCode', + // value:'productionLineCode', + // message: '请填写生产线代码!', + // isMainValue: true + // },{ + // key: 'available', + // value: 'TRUE', + // isMainValue: false + // }] + // }, + // form: { + // // labelMessage: '信息提示说明!!!', + // componentProps: { + // isSearchList: true, // 开启查询弹窗 + // searchListPlaceholder: '请选择工位代码', // 输入框占位文本 + // searchField: 'code', // 查询弹窗赋值字段 + // searchTitle: '工位信息', // 查询弹窗标题 + // searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 + // searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 + // searchCondition: [{ + // key:'productionLineCode', + // value:'productionLineCode', + // message: '请填写生产线代码!', + // isMainValue: true + // },{ + // key: 'available', + // value: 'TRUE', + // isMainValue: false + // }] + // } + // } + // }, { label: '包装号', field: 'packingNumber', @@ -628,17 +727,17 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ isTableForm: false, isForm: false }, - { - label: '从库位代码', - field: 'fromLocationCode', - sort: 'custom', - table: { - width: 150 - }, - isSearch: true, - hiddenInMain:true, - sortSearchDefault:6, - }, + // { + // label: '从库位代码', + // field: 'fromLocationCode', + // sort: 'custom', + // table: { + // width: 150 + // }, + // isSearch: true, + // hiddenInMain:true, + // sortSearchDefault:6, + // }, { label: '到库位代码', field: 'toLocationCode', @@ -658,7 +757,7 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ field: 'itemCode', sort: 'custom', table: { - width: 150 + width: 250 }, isSearch:true, sortSearchDefault:2, @@ -729,26 +828,26 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ } } }, - { - label: '采购订单号', - field: 'poNumber', - sort: 'custom', - table: { - width: 150 - }, - hiddenInMain:true, - sortTableDefault:1, - }, - { - label: '订单行', - field: 'poLine', - sort: 'custom', - table: { - width: 150 - }, - hiddenInMain:true, - sortTableDefault:2, - }, + // { + // label: '采购订单号', + // field: 'poNumber', + // sort: 'custom', + // table: { + // width: 150 + // }, + // hiddenInMain:true, + // sortTableDefault:1, + // }, + // { + // label: '订单行', + // field: 'poLine', + // sort: 'custom', + // table: { + // width: 150 + // }, + // hiddenInMain:true, + // sortTableDefault:2, + // }, { label: '单据号', field: 'number', @@ -951,7 +1050,7 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ isDetail: false, isForm: false , table: { - width: 150, + width: 200, fixed: 'right' }, isTableForm:false, @@ -960,12 +1059,12 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ //表单校验 export const IssueRequestDetailRules = reactive({ - productionLineCode: [ - { required: true, message: '请选择生产线代码', trigger: 'change' } - ], - workStationCode: [ - { required: true, message: '请选择工位代码', trigger: 'change' } - ], + // productionLineCode: [ + // { required: true, message: '请选择生产线代码', trigger: 'change' } + // ], + // workStationCode: [ + // { required: true, message: '请选择工位代码', trigger: 'change' } + // ], itemCode: [ { required: true, message: '请选择物料代码', trigger: 'change' } ], From 1266e1b4d5574b60ea587491ebe03a00f4f1855d Mon Sep 17 00:00:00 2001 From: bjang03 <259278618@qq.com> Date: Thu, 27 Jun 2024 19:27:12 +0800 Subject: [PATCH 036/408] =?UTF-8?q?BUG=E4=BF=AE=E5=A4=8D=201=E3=80=81?= =?UTF-8?q?=E7=9B=98=E7=82=B9=E4=BB=BB=E5=8A=A1=EF=BC=8C=E5=AF=BC=E5=87=BA?= =?UTF-8?q?=E5=90=8E=EF=BC=8C=E8=BE=93=E5=85=A5=E7=9B=98=E7=82=B9=E6=95=B0?= =?UTF-8?q?=E9=87=8F=EF=BC=8C=E5=9C=A8=E5=AF=BC=E5=85=A5=EF=BC=8C=E6=8A=A5?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../countadjustRequestMain.data.ts | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/views/wms/countManage/countadjust/countadjustRequestMain/countadjustRequestMain.data.ts b/src/views/wms/countManage/countadjust/countadjustRequestMain/countadjustRequestMain.data.ts index 32cfaf266..a434768ee 100644 --- a/src/views/wms/countManage/countadjust/countadjustRequestMain/countadjustRequestMain.data.ts +++ b/src/views/wms/countManage/countadjust/countadjustRequestMain/countadjustRequestMain.data.ts @@ -90,8 +90,8 @@ export const CountadjustRequestMain = useCrudSchemas(([ } }, { - label: '仓库代码', - field: 'warehouseCode', + label: '库位代码', + field: 'locationCode', sort: 'custom', table: { width: 150 @@ -318,9 +318,6 @@ export const CountadjustRequestMainRules = reactive({ // requestNumber: [ // { required: true, message: '请选择申请单号', trigger: 'change' } // ], - warehouseCode: [ - { required: true, message: '请选择仓库代码', trigger: 'change' } - ], departmentCode: [ { required: true, message: '请输入部门', trigger: 'blur' } ], @@ -630,4 +627,4 @@ export const CountadjustRequestDetailRules = reactive({ itemCode: [ { required: true, message: '请选择物料代码', trigger: 'change' } ], -}) \ No newline at end of file +}) From a4f134781bf0c6c17e129b12a43f03486fa5a0fc Mon Sep 17 00:00:00 2001 From: wangyufei <2267742828@qq.com> Date: Fri, 28 Jun 2024 08:33:06 +0800 Subject: [PATCH 037/408] =?UTF-8?q?=E5=8F=91=E7=A5=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/supplierinvoiceRequestMain/index.ts | 4 +- src/components/BasicForm/src/BasicForm.vue | 2 +- .../supplierinvoiceRecordMain.data.ts | 55 ++- .../supplierinvoiceRequestMain/index.vue | 254 ++++++-------- .../supplierinvoiceRequestMain.data.ts | 330 +++++++++++++----- 5 files changed, 408 insertions(+), 237 deletions(-) diff --git a/src/api/wms/supplierinvoiceRequestMain/index.ts b/src/api/wms/supplierinvoiceRequestMain/index.ts index ec37ab88c..5358945de 100644 --- a/src/api/wms/supplierinvoiceRequestMain/index.ts +++ b/src/api/wms/supplierinvoiceRequestMain/index.ts @@ -89,8 +89,8 @@ export const invoiceSentOutSupplierinvoiceRequestMain = async (id: number) => { } // 财务--审批通过供应商发货申请主 -export const financeappSupplierinvoiceRequestMain = async (id: number) => { - return await request.post({ url: `/wms/supplierinvoice-request-main/financeApp?id=` + id }) +export const financeappSupplierinvoiceRequestMain = async (data) => { + return await request.post({ url: `/wms/supplierinvoice-request-main/financeApp`, data }) } // 财务--驳回供应商发货申请主 export const financerejSupplierinvoiceRequestMain = async (data) => { diff --git a/src/components/BasicForm/src/BasicForm.vue b/src/components/BasicForm/src/BasicForm.vue index 2df16c7e7..933b07128 100644 --- a/src/components/BasicForm/src/BasicForm.vue +++ b/src/components/BasicForm/src/BasicForm.vue @@ -494,7 +494,7 @@ watch(()=>props.tableData,() => { }) watch(()=>unref(formRef)?.formModel,() => { if(props?.sumFormDataByForm&&unref(formRef)?.formModel){ - props?.sumFormDataByForm(formRef,unref(formRef)?.formModel,props.tableData) + props?.sumFormDataByForm(formRef,unref(formRef)?.formModel,props.tableData,formType.value) } },{ deep:true diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts index 175285f38..028abb8dc 100644 --- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts +++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts @@ -318,7 +318,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ sortTableDefault:10 }, { - label: '过账时间', + label: '过账日期', field: 'postingDate', formatter: dateFormatter, detail: { @@ -329,7 +329,17 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ sort: 'custom', table: { width: 180 - } + }, + isSearch: true, + search: { + value:[], + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD', + type: 'daterange', + defaultTime: [new Date('1 '), new Date('1 ')] + } + }, }, { label: '财务凭证号', @@ -593,6 +603,47 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ }, isForm: false, }, + { + label: '凭证描述', + field: 'voucherNumberRemark', + isTable:true, + isTableForm:false, + sort: 'custom', + table: { + width: 180 + }, + isForm: false, + }, + { + label: '未税差额', + field: 'beforeTaxDiffAmount', + formatter: accountantFormart, + table: { + width: 150 + }, + isForm:false, + isTableForm:false + }, + { + label: '税额差异', + field: 'taxAmountDiff', + formatter: accountantFormart, + table: { + width: 150 + }, + isForm:false, + isTableForm:false + }, + { + label: '价税合计差额', + field: 'totalTaxDiffAmount', + formatter: accountantFormart, + table: { + width: 150 + }, + isForm:false, + isTableForm:false + }, ])) //表单校验 diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue index 21d03a373..cfdfb6c81 100644 --- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue +++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue @@ -32,7 +32,7 @@