From 626216f242f64705c9cee9f91a752ff6aa75d962 Mon Sep 17 00:00:00 2001 From: liuchen864 <23082234@qq.com> Date: Tue, 9 Apr 2024 17:51:41 +0800 Subject: [PATCH 01/17] =?UTF-8?q?=E5=8E=BB=E6=8E=89json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inspectionJob/inspectionJobMain.data.ts | 6 ------ .../inspectionRecord/inspectionRecordMain.data.ts | 11 ----------- 2 files changed, 17 deletions(-) diff --git a/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts b/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts index cfbacc86e..38a0a5692 100644 --- a/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts +++ b/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts @@ -163,12 +163,6 @@ export const InspectionJobMain = useCrudSchemas(reactive([ width: 150 } }, - // { - // label: '检验方案Json', - // field: 'inspectionSchemeJson', - // sort: 'custom', - // isSearch: false, - // }, { label: '检验批次', field: 'inspectionBatch', diff --git a/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts b/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts index 0264c6085..c7bf33ae9 100644 --- a/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts +++ b/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts @@ -78,17 +78,6 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ width: 150 } }, - { - label: '检验方案Json', - field: 'inspectionSchemeJson', - sort: 'custom', - isSearch: false, - isForm:false, - isTable:false, - table: { - width: 150 - } - }, { label: '检验批次', field: 'inspectionBatch', From 5132f01f820a469e016c4eccbf135e7791105a19 Mon Sep 17 00:00:00 2001 From: zhaoyiran Date: Wed, 10 Apr 2024 15:45:17 +0800 Subject: [PATCH 02/17] =?UTF-8?q?=E5=AD=97=E6=AE=B5=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/BasicForm/src/BasicForm.vue | 2 +- src/views/qms/aql/aql.data.ts | 54 +++++++++++++++++++++- src/views/qms/aql/index.vue | 42 +++++++++++++++++ 3 files changed, 96 insertions(+), 2 deletions(-) diff --git a/src/components/BasicForm/src/BasicForm.vue b/src/components/BasicForm/src/BasicForm.vue index afc1d884d..bcd2d6326 100644 --- a/src/components/BasicForm/src/BasicForm.vue +++ b/src/components/BasicForm/src/BasicForm.vue @@ -658,7 +658,7 @@ const inpuFocus = (headerItem, row, index) => { * @param cur 改变后值 */ const onChange = (field, cur) => { - emit('onChange', field, cur) + emit('onChange', field, cur, formRef) } /** diff --git a/src/views/qms/aql/aql.data.ts b/src/views/qms/aql/aql.data.ts index f3dc3fe56..8b04deda5 100644 --- a/src/views/qms/aql/aql.data.ts +++ b/src/views/qms/aql/aql.data.ts @@ -1,6 +1,7 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import { dateFormatter } from '@/utils/formatTime' import {getSamplingScheme} from "@/api/qms/aql"; +import {validateNum} from "@/utils/validator"; // 表单校验 export const AqlRules = reactive({ @@ -8,7 +9,58 @@ export const AqlRules = reactive({ inspectionQualification: [required], sampleCharacterCode: [required], sampleSize: [required], - // available: [required], + a0separator010: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator010: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator015: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator015: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator025: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator025: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator040: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator040: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator065: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator065: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator10: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator10: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator15: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator15: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator25: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator25: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator40: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator40: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a0separator65: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r0separator65: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a1separator0: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r1separator0: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a1separator5: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r1separator5: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a2separator5: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r2separator5: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a4separator0: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r4separator0: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a6separator5: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r6separator5: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a10: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r10: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a15: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r15: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a25: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r25: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a40: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r40: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a65: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r65: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a100: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r100: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a150: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r150: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a250: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r250: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a400: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r400: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a650: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r650: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + a1000: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + r1000: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], }) const samplingSchemeList = await getSamplingScheme() export const Aql = useCrudSchemas(reactive([ diff --git a/src/views/qms/aql/index.vue b/src/views/qms/aql/index.vue index b5d0446a4..76a3e5a65 100644 --- a/src/views/qms/aql/index.vue +++ b/src/views/qms/aql/index.vue @@ -48,6 +48,7 @@ :apiCreate="AqlApi.createAql" @searchTableSuccess="searchTableSuccess" :isBusiness="false" + @onChange="onChange" /> @@ -235,6 +236,47 @@ const searchFormClick = (searchData) => { getList() // 刷新当前列表 } +const onChange = async (field, value, formRef) => { + // 检查字段是否以 "a" 开头 + if (field.startsWith("a") || field.startsWith("r")) { + // 从 "a" 字段名中获取其余部分 + const suffix = field.slice(1); + // 构建对应的 "r" 字段名 + const correspondingField = field.startsWith("a") ? "r" + suffix : "a" + suffix ; +console.log(correspondingField) + // 如果有值,则更新对应的 "r" 字段 + if (value) { + // 查找并更新对应 "r" 字段的值和属性 + Aql.allSchemas.formSchema.forEach(item => { + if (item.field === correspondingField) { + const setV = {}; + if(correspondingField.startsWith("r")){ + setV[correspondingField] = parseInt(value) + 1; + }else { + setV[correspondingField] = parseInt(value) - 1; + } + item.componentProps.disabled = true; + + // 使用 Vue 的 nextTick 来等待 DOM 更新 + nextTick(() => { + formRef.value.setValues(setV); + }); + } + }); + }else{ + Aql.allSchemas.formSchema.forEach(item => { + if (item.field === correspondingField || item.field === field) { + item.componentProps.disabled = false; + const setV = {}; + setV[correspondingField] = '' + nextTick(() => { + formRef.value.setValues(setV); + }); + } + }); + } + } +}; /** 初始化 **/ onMounted(async () => { getList() From df9da1b3291439f9ed4c063070e4bde0f0f1cb35 Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Wed, 10 Apr 2024 15:47:12 +0800 Subject: [PATCH 03/17] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=AD=E8=8B=B1?= =?UTF-8?q?=E6=96=87=E6=96=87=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/locales/en-US.ts | 5 +++++ src/locales/zh-CN.ts | 1 + 2 files changed, 6 insertions(+) diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index 4590ca435..c59422a44 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -61,12 +61,17 @@ export default { agreeSuccess: 'Agree Success', refusedSuccess: 'Refused Success', handleSuccess: 'Handle Success', + acceptSuccess: 'Accept Success', + giveupSuccess: 'Giveup Success', + dealwithSuccess: 'Dealwith Success', confirmColse: 'Confirm Close?', confirmReAdd: 'Confirm ReAdd?', confirmAgree: 'Confirm Agree?', confirmRefused: 'Confirm Refused?', confirmHandle: 'Confirm Handle?', confirmSubmit: 'Confirm Submit?', + confirmAccept: 'Confirm Accept', + confirmGiveup: 'Confirm Giveup' }, error: { noPermission: `Sorry, you don't have permission to access this page.`, diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 645da237a..3bea036ee 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -61,6 +61,7 @@ export default { agreeSuccess: '审批通过成功', refusedSuccess: '审批驳回成功', handleSuccess: '执行成功', + dealwithSuccess: '处理成功', acceptSuccess: '承接成功', giveupSuccess: '放弃成功', confirmColse: '确认关闭吗?', From a7919251a63497ea243883894c1fd38661f6ee42 Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Wed, 10 Apr 2024 16:06:22 +0800 Subject: [PATCH 04/17] =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=92=8C=E8=AE=B0?= =?UTF-8?q?=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/TableForm/src/TableForm.vue | 2 +- .../qms/inspection/inspectionJob/addForm.vue | 46 ++++++++++++++----- .../inspection/inspectionRequest/index.vue | 2 +- .../inspectionRequest/inspectionMain.data.ts | 7 ++- 4 files changed, 39 insertions(+), 18 deletions(-) diff --git a/src/components/TableForm/src/TableForm.vue b/src/components/TableForm/src/TableForm.vue index 2cf1fadea..131269e58 100644 --- a/src/components/TableForm/src/TableForm.vue +++ b/src/components/TableForm/src/TableForm.vue @@ -46,7 +46,7 @@ :label="headerItem.label" :prop="headerItem.field" :align="headerItem?.tableForm?.align || 'center'" :sortable="headerItem?.tableForm?.sortable || false" - :width="headerItem?.tableForm?.width || '200'" + :width="headerItem?.tableForm?.width || '200px'" :min-width="headerItem?.tableForm?.minWidth || 'auto'"> - + { const valid = await elForm.validate() if (!valid) return // 校验包装列表 - const validateForm1 = await tableFormRef.value.validateForm() + + console.log(11,data.value.packageList) + if(data.value.packageList?.length>0){ + const validateForm1 = await tableFormRef.value.validateForm() if (!validateForm1) return - let number = 0 - data.value.packageList.forEach(cur=>{ - number += parseFloat(cur.sampleAmount) - }) - if(number > data.value.sampleTotalAmount){ - message.error(`采样数量之和不可以大于总数量`) - return + let number = 0 + data.value.packageList.forEach(cur=>{ + number += parseFloat(cur.sampleAmount) + }) + if(number != data.value.sampleTotalAmount){ + message.error(`采样数量之和不等于总数量`) + return + } } + const bol2 = await validateForm(formFeaturesRef.value) if (!bol2) { message.error(`模板中有检验工序和检验特性未填写完全`) return } - // 判断附加费用数组是否有未填的选项 + // 判断数组是否有未填的选项 let arrBol = [] let isOutweigh = []//结束时间是否大于开始时间 + let numberList = []//判断合格数量和不合格数量之和是否等于主表数量 data.value.subList.forEach((item, index) => { if (item.inspectionJobCharacteristicsUpdateReqVO.resultEntryMethod == 1) { arrBol.push( @@ -750,7 +756,7 @@ const submitForm = async () => { arrBol.push( item.inspectionJobCharacteristicsUpdateReqVO.recordInspectionQuantifyList.some( (cur, key) => { - return !cur.estimateCode || !cur.defectLevel + return !cur.estimateCode } ) ) @@ -777,16 +783,32 @@ const submitForm = async () => { if (item.inspectionJobCharacteristicsUpdateReqVO.inspectionStartTime >item.inspectionJobCharacteristicsUpdateReqVO.inspectionEndTime) { isOutweigh.push(item.inspectionJobCharacteristicsUpdateReqVO.inspectionStartTime) } + // 合格数量和不合格数量之和不等于总数量 + if (item.inspectionJobCharacteristicsUpdateReqVO.resultEntryMethod == 1) { + numberList.push( + item.inspectionJobCharacteristicsUpdateReqVO.recordInspectionQuantifyList.some( + (cur, key) => { + return parseFloat(cur.qualifiedQuantity) + parseFloat(cur.unqualifiedQuantity) != data.value.sampleTotalAmount + } + ) + ) + } }) let isEmpty1 = arrBol.some(item=>item == true) + let isEmptyNumberList = numberList.some(item=>item == true) if(isEmpty1){ message.error('检验工序和检验特性有字段未填写完全') return; } - if(isOutweigh.length>0){ + if(isOutweigh?.length>0){ message.error('检验特性中有开始时间大于结束时间') return; } + console.log(44,numberList) + if(isEmptyNumberList){ + message.error('合格数量和不合格数量之和不等于总数量') + return; + } if (formType.value == 'create') { // 主子表——提交请求 emit('submitForm', formType.value, data.value) diff --git a/src/views/qms/inspection/inspectionRequest/index.vue b/src/views/qms/inspection/inspectionRequest/index.vue index 8ddd8ba77..dc26eeb4e 100644 --- a/src/views/qms/inspection/inspectionRequest/index.vue +++ b/src/views/qms/inspection/inspectionRequest/index.vue @@ -220,7 +220,7 @@ const listTableRef = ref() await message.confirm(t('common.confirmHandle')) tableObject.loading = true await InspectionMainApi.handleInspectRequestMain(id) - message.success(t('common.handleSuccess')) + message.success(t('common.dealwithSuccess')) await getList() }catch{}finally{ tableObject.loading = false diff --git a/src/views/qms/inspection/inspectionRequest/inspectionMain.data.ts b/src/views/qms/inspection/inspectionRequest/inspectionMain.data.ts index 41af36dc4..fb1ad6bbe 100644 --- a/src/views/qms/inspection/inspectionRequest/inspectionMain.data.ts +++ b/src/views/qms/inspection/inspectionRequest/inspectionMain.data.ts @@ -365,11 +365,10 @@ export const InspectionRequestPackage = useCrudSchemas(reactive([ sort: 'custom', isSearch: true, tableForm:{ - width:500, disabled:true }, table:{ - width:150 + width:200 } }, { @@ -381,7 +380,7 @@ export const InspectionRequestPackage = useCrudSchemas(reactive([ disabled:true }, table:{ - width:150 + width:200 } }, { @@ -393,7 +392,7 @@ export const InspectionRequestPackage = useCrudSchemas(reactive([ disabled:true }, table:{ - width:150 + width:180 } }, { From 76cd71027699215d17eb03d8cd0cdd66e3c22548 Mon Sep 17 00:00:00 2001 From: chenfang Date: Wed, 10 Apr 2024 16:06:35 +0800 Subject: [PATCH 05/17] =?UTF-8?q?=E9=87=87=E8=B4=AD=E9=80=80=E8=B4=A7?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=E6=96=B0=E5=A2=9E=E6=97=B6=E9=80=89=E6=94=B6?= =?UTF-8?q?=E8=B4=A7=E8=AE=B0=E5=BD=95=E8=BF=9B=E8=A1=8C=E5=8E=BB=E9=87=8D?= =?UTF-8?q?=E5=B9=B6=E8=AE=A1=E7=AE=97qty?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/purchasereceiptRecordDetail/index.ts | 6 ++++++ src/utils/disposition/defaultButtons.ts | 13 +++++++++++++ .../purchasereturnRequestMain/index.vue | 3 ++- .../sparereceipt/sparereceiptJobMain/index.vue | 8 ++++---- 4 files changed, 25 insertions(+), 5 deletions(-) diff --git a/src/api/wms/purchasereceiptRecordDetail/index.ts b/src/api/wms/purchasereceiptRecordDetail/index.ts index 2afacb3e1..04699eb06 100644 --- a/src/api/wms/purchasereceiptRecordDetail/index.ts +++ b/src/api/wms/purchasereceiptRecordDetail/index.ts @@ -76,6 +76,12 @@ export const getPurchasereceiptRecordDetailPageBySupplierCode = async (params) = export const getPurchasereceiptRecordDetailList = async (params) => { return await request.get({ url: `/wms/purchasereceipt-record-detail/list`, params }) } + +// 查询采购收货记录子列表 +export const getPurchasereceiptRecordDetailListToRepeat = async (params) => { + return await request.get({ url: `/wms/purchasereceipt-record-detail/listToRepeat`, params }) +} + // 查询采购收货记录子详情 export const getPurchasereceiptRecordDetail = async (id: number) => { return await request.get({ url: `/wms/purchasereceipt-record-detail/get?id=` + id }) diff --git a/src/utils/disposition/defaultButtons.ts b/src/utils/disposition/defaultButtons.ts index 664d6d47e..7e42a749b 100644 --- a/src/utils/disposition/defaultButtons.ts +++ b/src/utils/disposition/defaultButtons.ts @@ -704,6 +704,19 @@ export function mainListJobExeBtn(option:any) { hasPermi: '' }) } + +// 主列表-任务流程-执行按钮(与执行按钮一致 只是名改叫'收货'而已) +export function mainListJobRecBtn(option:any) { + return __defaultBtnOption(option,{ + label: '收货', + name: 'mainJobExe', + hide: false, + type: 'primary', + color: '', + link: true, // 文本展现按钮 + hasPermi: '' + }) +} // 主列表-包装按钮 export function mainListPackageBtn(option:any) { return __defaultBtnOption(option,{ diff --git a/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue b/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue index 01f83181a..67f5736d2 100644 --- a/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue @@ -191,7 +191,8 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => setV['ppNumber'] = val[0]['ppNumber'] // 获取子表数据 getBomDisassemble - PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailList({ + // PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailList({ + PurchasereceiptRecordDetailApi.getPurchasereceiptRecordDetailListToRepeat({ masterId: val[0]['id'] }).then((res) => { if (res) tableData.value = res diff --git a/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptJobMain/index.vue b/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptJobMain/index.vue index e20fb51a8..38d320971 100644 --- a/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptJobMain/index.vue +++ b/src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptJobMain/index.vue @@ -172,10 +172,10 @@ const isShowMainButton = (row,val) => { // 列表-操作按钮 const butttondata = (row) => { return [ - defaultButtons.mainListJobAccBtn({hide:isShowMainButton(row,['1']),hasPermi:'wms:purchasereceipt-job-main:accept'}), // 承接 - defaultButtons.mainListJobCloBtn({hide:isShowMainButton(row,['1']),hasPermi:'wms:purchasereceipt-job-main:close'}), // 关闭 - defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2']),hasPermi:'wms:purchasereceipt-job-main:abandon'}), // 放弃 - defaultButtons.mainListJobExeBtn({hide:isShowMainButton(row,['2']),hasPermi:'wms:purchasereceipt-job-main:execute'}), // 执行 + // defaultButtons.mainListJobAccBtn({hide:isShowMainButton(row,['1']),hasPermi:'wms:purchasereceipt-job-main:accept'}), // 承接 + // defaultButtons.mainListJobCloBtn({hide:isShowMainButton(row,['1']),hasPermi:'wms:purchasereceipt-job-main:close'}), // 关闭 + // defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2']),hasPermi:'wms:purchasereceipt-job-main:abandon'}), // 放弃 + defaultButtons.mainListJobRecBtn({hide:isShowMainButton(row,['1']),hasPermi:'wms:purchasereceipt-job-main:execute'}), // 收货 ] } From 1929609fcd1e1a7a9f722c869953138917f3d8b2 Mon Sep 17 00:00:00 2001 From: ljlong_2630 Date: Wed, 10 Apr 2024 16:11:13 +0800 Subject: [PATCH 06/17] =?UTF-8?q?=E5=A4=84=E7=90=86=E5=8A=A8=E6=80=81?= =?UTF-8?q?=E8=A7=84=E5=88=99=E9=98=B6=E6=AE=B5=E9=87=8D=E5=A4=8D=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/qms/inspectionStage/index.ts | 6 +++ .../qms/basicDataManage/dynamicRule/index.vue | 37 +++++++++++++++++-- .../inspectionStage/inspectionStage.data.ts | 6 ++- .../qms/basicDataManage/selectedSet/index.vue | 4 +- 4 files changed, 46 insertions(+), 7 deletions(-) diff --git a/src/api/qms/inspectionStage/index.ts b/src/api/qms/inspectionStage/index.ts index ffce240a6..2ad0ed13b 100644 --- a/src/api/qms/inspectionStage/index.ts +++ b/src/api/qms/inspectionStage/index.ts @@ -60,4 +60,10 @@ export const exportInspectionStage = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/qms/inspection-stage/get-import-template' }) +} + + +// 查询检验阶段列表 +export const getInspectionStageNoPage = async (params) => { + return await request.get({ url: `/qms/inspection-stage/noPage`, params }) } \ No newline at end of file diff --git a/src/views/qms/basicDataManage/dynamicRule/index.vue b/src/views/qms/basicDataManage/dynamicRule/index.vue index 40fe1130a..b9aebe87d 100644 --- a/src/views/qms/basicDataManage/dynamicRule/index.vue +++ b/src/views/qms/basicDataManage/dynamicRule/index.vue @@ -105,6 +105,8 @@ const routeName = ref() const tableData = ref([]) routeName.value = route.name const tableColumns = ref(DynamicRule.allSchemas.tableColumns) +const detailMasterId = ref() +const detailList = ref([]) // 查询页面返回 const searchTableSuccess = (formField, searchField, val, formRef) => { @@ -210,6 +212,10 @@ const formsSuccess = async (formType,data) => { /** 详情操作 */ const detailRef = ref() const openDetail = (row: any, titleName: any, titleValue: any) => { + detailMasterId.value = row.id + InspectionStageApi.getInspectionStageNoPage({masterId:row.id}).then(res=>{ + detailList.value = res + }) detailRef.value.openDetail(row, titleName, titleValue, 'basicDynamicRule') } @@ -283,6 +289,11 @@ const handleDeleteTable = (item, index) => { // 主子数据 提交 const submitForm = async (formType, data) => { + if(!validateNotRepetition(tableData.value)){ + message.alertWarning('动态规则阶段不能重复') + basicFormRef.value.formLoading = false + return + } data.inspectionStageDOList = tableData.value// 拼接子表数据参数 console.log(data.subList) try { @@ -303,15 +314,35 @@ const submitForm = async (formType, data) => { const detailValidate = (data) => { let tag = true; + if(!validateIfRepeat(data)){ + tag = false + message.alertWarning('动态规则阶段不能重复') + } return tag } const detailOpenForm = (type, row, masterParmas) => { - if(type='create'){ - - } + } +const validateIfRepeat = (data) => { + const mergedArray = [data, ...detailList.value]; + const stageSet = new Set(mergedArray.map(item => item.stage)); + return stageSet.size === mergedArray.length; +} + +const validateNotRepetition = (data) => { + // 提取所有的 dictionaryTypeAndCode 值 + const codes = data.map(item => item.stage); + // 创建一个 Set 来存储唯一的 dictionaryTypeAndCode 值 + const uniqueCodes = new Set(codes); + // 如果原始数组的长度大于 Set 集合的大小,则说明有重复 + if (codes.length > uniqueCodes.size) { + return false; // 发现重复,返回 false + } + return true; // 未发现重复,返回 true +}; + /** 初始化 **/ onMounted(async () => { getList() diff --git a/src/views/qms/basicDataManage/inspectionStage/inspectionStage.data.ts b/src/views/qms/basicDataManage/inspectionStage/inspectionStage.data.ts index 2ef795c87..1fbab3826 100644 --- a/src/views/qms/basicDataManage/inspectionStage/inspectionStage.data.ts +++ b/src/views/qms/basicDataManage/inspectionStage/inspectionStage.data.ts @@ -11,8 +11,10 @@ const trueFalse = [{ // 表单校验 export const InspectionStageRules = reactive({ - description: [required], - dynamicModifyCode: [required], + description: [ + required, + { max: 1024, message: '不得超过1024个字符', trigger: 'blur' }, + ], okTimes: [required], okTimeStage: [required], noOkTimes: [required], diff --git a/src/views/qms/basicDataManage/selectedSet/index.vue b/src/views/qms/basicDataManage/selectedSet/index.vue index 4d55e0906..b85a54bfe 100644 --- a/src/views/qms/basicDataManage/selectedSet/index.vue +++ b/src/views/qms/basicDataManage/selectedSet/index.vue @@ -407,8 +407,8 @@ const detailBasiFormOnChange = (field,val,detailFormRef) => { setV['dictionaryCode'] = dictionaryCode setV['dictionaryValue'] = dictionaryValue nextTick(() => { - detailFormRef.setValues(setV) - }) + detailFormRef.setValues(setV) + }) } } From ebaa587a4e6456c66c6ef66344d4fd9023a58769 Mon Sep 17 00:00:00 2001 From: bjang03 Date: Wed, 10 Apr 2024 16:21:27 +0800 Subject: [PATCH 07/17] =?UTF-8?q?1=E3=80=81=E5=B7=A5=E4=BD=8D=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E5=85=B3=E8=81=94=E7=8F=AD=E7=BB=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/mes/workstation/index.ts | 37 ------------------- src/views/mes/workstation/index.vue | 18 +++------ src/views/mes/workstation/workstation.data.ts | 29 +-------------- 3 files changed, 7 insertions(+), 77 deletions(-) diff --git a/src/api/mes/workstation/index.ts b/src/api/mes/workstation/index.ts index e397ff645..336c9714a 100644 --- a/src/api/mes/workstation/index.ts +++ b/src/api/mes/workstation/index.ts @@ -48,45 +48,8 @@ export const exportWorkstation = async (params) => { // 下载用户导入模板 export const importTemplate = () => { return request.download({ url: '/mes/workstation/get-import-template' }) -}// 查询班组列表 -export const getTeamPage = async (params) => { - params.workstationCode = goalParams.workstationCode - if (params.isSearch) { - delete params.isSearch - const data = {...params} - return await request.post({ url: '/mes/team/senior', data }) - } else { - return await request.get({ url: `/mes/team/pageListByWorkstationCode`, params }) - } -} -// 查询选择班组列表 -export const checkTeamPageList = async (params) => { - params.workstationCode = goalParams.workstationCode - if (params.isSearch) { - delete params.isSearch - const data = {...params} - return await request.post({ url: '/mes/team/senior', data }) - } else { - return await request.get({ url: `/mes/team/pageCheckListByWorkstationCode`, params }) - } -} -// 添加班组关联 -export const createTeamRelation = async (teamCodes:string[]) => { - const data = { - workstationCode : goalParams.workstationCode, - teamCodes : teamCodes - } - return await request.post({ url: `/mes/team/createRelation`, data }) } -// 删除班组关联 -export const deleteTeamRelation = async (teamCodes:string[]) => { - const data = { - workstationCode : goalParams.workstationCode, - teamCodes : teamCodes - } - return await request.post({ url: `/mes/team/deleteRelation`, data }) -} export const getEquipmentPage = async (params) => { params.workstationCode = goalParams.workstationCode if (params.isSearch) { diff --git a/src/views/mes/workstation/index.vue b/src/views/mes/workstation/index.vue index 327d30923..1e85ee1d4 100644 --- a/src/views/mes/workstation/index.vue +++ b/src/views/mes/workstation/index.vue @@ -86,7 +86,7 @@ import { TabsList, Team, Workstation, - WorkstationRules, teamPopList,equipmentPopList,processPopList,stepPopList + WorkstationRules,equipmentPopList,processPopList,stepPopList } from './workstation.data' import * as WorkstationApi from '@/api/mes/workstation' import * as defaultButtons from '@/utils/disposition/defaultButtons' @@ -97,8 +97,8 @@ import { } from "@/api/mes/workstation"; import Detail from './components/Detail.vue' defineOptions({ name: 'Workstation' }) -let tabsDeleteApi = WorkstationApi.deleteTeamRelation -let tabsCreateApi = WorkstationApi.createTeamRelation +let tabsDeleteApi = WorkstationApi.deleteEquipmentRelation +let tabsCreateApi = WorkstationApi.createEquipmentRelation const message = useMessage() // 消息弹窗 const { t } = useI18n() // 国际化 const route = useRoute() // 路由信息 @@ -271,19 +271,13 @@ const openDetail = (row: any, titleName: any, titleValue: any) => { } // 子包装数据 const detailAllSchemas = ref(Team.allSchemas) -const apiPage = ref(WorkstationApi.getTeamPage) +const apiPage = ref(WorkstationApi.getEquipmentPage) const tableKey = ref("Team"); -let tmpPopList = teamPopList.allSchemas +let tmpPopList = equipmentPopList.allSchemas // tabs 切换事件 const changeTabs = (data) =>{ tableKey.value = data.prop - if(data.prop == 'Team'){ - apiPage.value = WorkstationApi.getTeamPage - detailAllSchemas.value = Team.allSchemas - tabsDeleteApi = WorkstationApi.deleteTeamRelation - tabsCreateApi = WorkstationApi.createTeamRelation - tmpPopList = teamPopList.allSchemas - }else if(data.prop == 'Equipment'){ + if(data.prop == 'Equipment'){ apiPage.value = WorkstationApi.getEquipmentPage detailAllSchemas.value = Equipment.allSchemas tabsDeleteApi = WorkstationApi.deleteEquipmentRelation diff --git a/src/views/mes/workstation/workstation.data.ts b/src/views/mes/workstation/workstation.data.ts index 60e3aa682..31278352b 100644 --- a/src/views/mes/workstation/workstation.data.ts +++ b/src/views/mes/workstation/workstation.data.ts @@ -16,10 +16,6 @@ export const WorkstationRules = reactive({ productionLineCode: [required] }) export const TabsList = [{ - label: "班组", - prop: 'Team', -}, - { label: "设备", prop: 'Equipment', }, @@ -280,30 +276,7 @@ export const Opersteps = useCrudSchemas(reactive([ isTableForm:true, } ])) -export const teamPopList = useCrudSchemas(reactive([ - { - label: '选择班组', - field: 'list', - sort: 'custom', - isSearch: false, - form: { - // labelMessage: '信息提示说明!!!', - componentProps: { - isSearchList: true, // 开启查询弹窗 - searchListPlaceholder: '请选择选择班组', // 输入框占位文本 - searchField: 'code', // 查询弹窗赋值字段 - searchTitle: '选择班组', // 查询弹窗标题 - searchAllSchemas: Team.allSchemas, // 查询弹窗所需类 - searchPage: WorkstationApi.checkTeamPageList, // 查询弹窗所需分页方法 - searchCondition: [{ - key: 'available', - value: 'TRUE', - isMainValue: false - }] - } - } - } -])) + export const equipmentPopList = useCrudSchemas(reactive([ { label: '选择设备', From 44c3120cfd693505145b52a28a8a992213c216e2 Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Wed, 10 Apr 2024 16:31:48 +0800 Subject: [PATCH 08/17] =?UTF-8?q?=E6=A3=80=E9=AA=8C=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/qms/inspection/inspectionJob/index.vue | 4 ++-- src/views/qms/inspection/inspectionRecord/index.vue | 4 ++-- src/views/qms/inspection/inspectionRequest/index.vue | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/views/qms/inspection/inspectionJob/index.vue b/src/views/qms/inspection/inspectionJob/index.vue index baf4fad85..0413a48aa 100644 --- a/src/views/qms/inspection/inspectionJob/index.vue +++ b/src/views/qms/inspection/inspectionJob/index.vue @@ -51,7 +51,7 @@ :isShowAddBtn="false" :detailButtonIsShow="true" /> - + + From 18dcb1ed29685930a964791063d817cdaefbfe3a Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Wed, 10 Apr 2024 16:36:12 +0800 Subject: [PATCH 11/17] =?UTF-8?q?=E8=A6=81=E8=B4=A7=E8=AE=A1=E5=88=92---?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=88=E6=9C=89=E6=95=88=E6=9C=9F=E7=9B=AE?= =?UTF-8?q?=E5=89=8D=E5=86=99=E6=AD=BB=EF=BC=8C=E8=AE=B0=E5=BE=97=E6=B5=8B?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=95=B0=E6=8D=AE=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supplierdeliverRequestMain/index.vue | 81 ++++++- .../supplierdeliverRequestMain.data.ts | 212 +++++++++--------- 2 files changed, 188 insertions(+), 105 deletions(-) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index 6f933f9f5..4154c55ff 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -46,7 +46,7 @@ + > + + nextTick(() => { console.log("type:",type) console.log("formField:",formField) + console.log(formField, searchField, val, formRef, type, row) if (type == 'tableForm') { // 明细查询页赋值 // row[formField] = val[0][searchField] @@ -165,7 +178,10 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => // row['orderQty'] = val[0]['orderQty'] // row['uom'] = val[0]['uom'] // } + //添加费用明细--点击确定 + const itemCodes = [] val.forEach(item=>{ + if(tableData.value.find(item1=>item1['id'] == item['id'])) return const newRow = {...row} newRow[formField] = item[searchField] newRow['poNumber'] = item['poNumber'] @@ -173,12 +189,29 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => newRow['poLine'] = item['poLine'] newRow['orderQty'] = item['orderQty'] newRow['uom'] = item['uom'] + itemCodes.push(item['itemCode']) tableData.value.push(newRow) }) + //有效期 + ItembasicApi.getItembasicPage({ + code:itemCodes.join(',') + }).then((res)=>{ + console.log('有效期',res) + tableData.value.forEach((item,index)=>{ + tableData.value[index]['expireTime'] = index==0?1:2 + }) + // res.list.forEach((item,index)=>{ + // const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) + // findItem['expireTime'] = findItem['expireTime'] + // }) + }) } else { const setV = {} setV[formField] = val[0][searchField] if(formField == 'ppNumber'){ + //新增--选择完要货计划,自动展示明细 + getSearchTableData(val[0]['number'],formField,searchField) + // 设置计划到货时间 let beginTime = val[0]['endTime'] let deliveryDate = formatDate(val[0]['deliveryDate'],'YYYY-MM-DD') @@ -196,6 +229,46 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => } }) } +const getSearchTableData = async (number,formField,searchField)=>{ + const {tableObject ,tableMethods} = useTable({ + defaultParams:{number}, + getListApi: PurchasePlanDetailApi.getPurchasePlanDetailPage // 分页接口 + }) + // 获得表格的各种操作 + const { getList:getList1 } = tableMethods + await getList1() + const tableColumns = PurchasePlanDetail.allSchemas.tableFormColumns + tableColumns.forEach((item) => { + item.width = item.table?.width || 150 + }) + tableData.value = [] + const itemCodes = [] + tableObject.tableList.forEach(row=>{ + const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...row})) + newRow[formField] = row[searchField] + newRow['poNumber'] = row['poNumber'] + newRow['itemCode'] = row['itemCode'] + newRow['poLine'] = row['poLine'] + newRow['orderQty'] = row['orderQty'] + newRow['uom'] = row['uom'] + tableData.value.push(newRow) + itemCodes.push(row['itemCode']) + }) + + //有效期 + ItembasicApi.getItembasicPage({ + code:itemCodes.join(',') + }).then((res)=>{ + console.log('有效期',res) + tableData.value.forEach((item,index)=>{ + tableData.value[index]['expireTime'] = index==0?1:2 + }) + // res.list.forEach((item,index)=>{ + // const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) + // findItem['expireTime'] = findItem['expireTime'] + // }) + }) +} // 查询页面返回——详情 const searchTableSuccessDetail = (formField, searchField, val, formRef) => { nextTick(() => { @@ -232,6 +305,8 @@ const searchTableSuccessLabel = (formField, searchField, val, formRef, type, row }) } + + const { tableObject, tableMethods } = useTable({ getListApi: SupplierdeliverRequestMainApi.getSupplierdeliverRequestMainPage // 分页接口 }) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts index e57d5b280..13eccf5d8 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts @@ -553,7 +553,103 @@ export const SupplierdeliverRequestMainRules = reactive({ */ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive([ { - label: '生产日期', + label: '订单号', + field: 'poNumber', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '要货计划信息', + searchAllSchemas: PurchasePlanDetail.allSchemas, + searchPage: PurchasePlanDetailApi.getPurchasePlanDetailPage, + searchCondition: [ + { + key: 'number', + value: 'ppNumber', + message: '请填写要货计划单号!', + isMainValue: true + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + + ] + } + }, + tableForm: { + isInpuFocusShow: true, + searchListPlaceholder: '请选择订单号', + searchField: 'number', + searchTitle: '要货计划信息', + searchAllSchemas: PurchasePlanDetail.allSchemas, + searchPage: PurchasePlanDetailApi.getPurchasePlanDetailPage, + searchCondition: [ + { + key: 'number', + value: 'ppNumber', + message: '请填写要货计划单号!', + isMainValue: true + }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + }] + } + }, + { + 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: 'batch', + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + disabled: false + } + }, + { + label: '生产日期1', field: 'produceDate', formatter: dateFormatter2, detail: { @@ -578,17 +674,7 @@ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive Date: Wed, 10 Apr 2024 16:37:41 +0800 Subject: [PATCH 12/17] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/ListTable1/index.ts | 3 -- src/components/ListTable1/src/ListTable.vue | 40 --------------------- 2 files changed, 43 deletions(-) delete mode 100644 src/components/ListTable1/index.ts delete mode 100644 src/components/ListTable1/src/ListTable.vue diff --git a/src/components/ListTable1/index.ts b/src/components/ListTable1/index.ts deleted file mode 100644 index e95f79c43..000000000 --- a/src/components/ListTable1/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import ListTable from './src/ListTable.vue' - -export { ListTable } diff --git a/src/components/ListTable1/src/ListTable.vue b/src/components/ListTable1/src/ListTable.vue deleted file mode 100644 index b9985a8d0..000000000 --- a/src/components/ListTable1/src/ListTable.vue +++ /dev/null @@ -1,40 +0,0 @@ - - - - From c519e9875f78658e06b31d38493767cf3362124e Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Wed, 10 Apr 2024 17:05:17 +0800 Subject: [PATCH 13/17] =?UTF-8?q?=E4=BE=9B=E5=BA=94=E5=95=86=E5=8F=91?= =?UTF-8?q?=E8=B4=A7/=E4=BE=9B=E5=BA=94=E5=95=86=E5=8F=91=E8=B4=A7?= =?UTF-8?q?=E7=94=B3=E8=AF=B7----=E6=9C=89=E6=95=88=E6=9C=9F=E9=80=9A?= =?UTF-8?q?=E8=BF=87=E6=8E=A5=E5=8F=A3=E8=AF=B7=E6=B1=82=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supplierdeliverRequestMain/index.vue | 21 +++++++------------ .../supplierdeliverRequestMain.data.ts | 6 +++--- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index 4154c55ff..4b63f0065 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -196,14 +196,10 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => ItembasicApi.getItembasicPage({ code:itemCodes.join(',') }).then((res)=>{ - console.log('有效期',res) - tableData.value.forEach((item,index)=>{ - tableData.value[index]['expireTime'] = index==0?1:2 + res.list.forEach((item,index)=>{ + const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) + findItem['expireTime'] = findItem['expireTime'] }) - // res.list.forEach((item,index)=>{ - // const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) - // findItem['expireTime'] = findItem['expireTime'] - // }) }) } else { const setV = {} @@ -259,14 +255,11 @@ const getSearchTableData = async (number,formField,searchField)=>{ ItembasicApi.getItembasicPage({ code:itemCodes.join(',') }).then((res)=>{ - console.log('有效期',res) - tableData.value.forEach((item,index)=>{ - tableData.value[index]['expireTime'] = index==0?1:2 + res.list.forEach((item,index)=>{ + const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) + findItem['expireTime'] = findItem['expireTime'] + }) - // res.list.forEach((item,index)=>{ - // const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) - // findItem['expireTime'] = findItem['expireTime'] - // }) }) } // 查询页面返回——详情 diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts index 13eccf5d8..efeeb61fd 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts @@ -649,7 +649,7 @@ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive Date: Wed, 10 Apr 2024 17:24:01 +0800 Subject: [PATCH 14/17] =?UTF-8?q?=E5=8A=A8=E6=80=81=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E8=A7=84=E5=88=99=E9=87=8D=E5=A4=8D=E9=97=AE=E9=A2=98=E8=A7=A3?= =?UTF-8?q?=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Detail/src/DetailQmsCode.vue | 2 +- .../qms/basicDataManage/dynamicRule/index.vue | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/components/Detail/src/DetailQmsCode.vue b/src/components/Detail/src/DetailQmsCode.vue index e66979512..819a401e1 100644 --- a/src/components/Detail/src/DetailQmsCode.vue +++ b/src/components/Detail/src/DetailQmsCode.vue @@ -701,7 +701,7 @@ const openForm = async (type: string, row?: number) => { const submitForm = async (formType, data) => { try { // 子表新增编辑校验 如果业务需要子表提交校验 需在主页详情组件添加 detailValidate 参数及方法 - const rs = (await props.detailValidate) ? await props.detailValidate(data) : true + const rs = (await props.detailValidate) ? await props.detailValidate(formType,data) : true if (!rs) return if (formType === 'create') { await props.apiCreate(data) diff --git a/src/views/qms/basicDataManage/dynamicRule/index.vue b/src/views/qms/basicDataManage/dynamicRule/index.vue index b9aebe87d..b42b4ca56 100644 --- a/src/views/qms/basicDataManage/dynamicRule/index.vue +++ b/src/views/qms/basicDataManage/dynamicRule/index.vue @@ -289,7 +289,8 @@ const handleDeleteTable = (item, index) => { // 主子数据 提交 const submitForm = async (formType, data) => { - if(!validateNotRepetition(tableData.value)){ + const flag = validateNotRepetition(tableData.value); + if(!flag){ message.alertWarning('动态规则阶段不能重复') basicFormRef.value.formLoading = false return @@ -312,9 +313,9 @@ const submitForm = async (formType, data) => { } } -const detailValidate = (data) => { +const detailValidate = (type,data) => { let tag = true; - if(!validateIfRepeat(data)){ + if(!validateIfRepeat(type,data)){ tag = false message.alertWarning('动态规则阶段不能重复') } @@ -325,8 +326,13 @@ const detailOpenForm = (type, row, masterParmas) => { } -const validateIfRepeat = (data) => { - const mergedArray = [data, ...detailList.value]; +const validateIfRepeat = (type,data) => { + let mergedArray: any[] = []; + if(type == 'create'){ + mergedArray = [data, ...detailList.value]; + }else if(type == 'update'){ + mergedArray = [...detailList.value]; + } const stageSet = new Set(mergedArray.map(item => item.stage)); return stageSet.size === mergedArray.length; } From 14a5d8ed3fc2835d5d8f275c20793a9709c054ac Mon Sep 17 00:00:00 2001 From: zhaoyiran Date: Wed, 10 Apr 2024 17:28:07 +0800 Subject: [PATCH 15/17] =?UTF-8?q?=E6=A0=A1=E9=AA=8C=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/qms/aql/index.vue | 1 - src/views/qms/sampleCode/index.vue | 10 +++++++++- src/views/qms/sampleCode/sampleCode.data.ts | 17 +++++------------ 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/views/qms/aql/index.vue b/src/views/qms/aql/index.vue index 76a3e5a65..378d5b12c 100644 --- a/src/views/qms/aql/index.vue +++ b/src/views/qms/aql/index.vue @@ -243,7 +243,6 @@ const onChange = async (field, value, formRef) => { const suffix = field.slice(1); // 构建对应的 "r" 字段名 const correspondingField = field.startsWith("a") ? "r" + suffix : "a" + suffix ; -console.log(correspondingField) // 如果有值,则更新对应的 "r" 字段 if (value) { // 查找并更新对应 "r" 字段的值和属性 diff --git a/src/views/qms/sampleCode/index.vue b/src/views/qms/sampleCode/index.vue index 0c31d4587..a3129680c 100644 --- a/src/views/qms/sampleCode/index.vue +++ b/src/views/qms/sampleCode/index.vue @@ -48,6 +48,7 @@ :apiCreate="SampleCodeApi.createSampleCode" @searchTableSuccess="searchTableSuccess" :isBusiness="false" + @onChange="onChange" /> @@ -65,6 +66,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 {connection} from "@antv/x6/es/registry/attr/connection"; defineOptions({ name: 'SampleCode' }) @@ -234,7 +236,13 @@ const searchFormClick = (searchData) => { } getList() // 刷新当前列表 } - +const onChange = async (field, value, formRef) => { + var upperLimit = formRef.value.formModel.batchUpperLimiting + var lowLimit = formRef.value.formModel.batchLowLimiting + if(parseInt(upperLimit) <= parseInt(lowLimit)){ + message.warning("批量上限须大于批量下限") + } +} /** 初始化 **/ onMounted(async () => { getList() diff --git a/src/views/qms/sampleCode/sampleCode.data.ts b/src/views/qms/sampleCode/sampleCode.data.ts index eeefd1c1b..cfdc96795 100644 --- a/src/views/qms/sampleCode/sampleCode.data.ts +++ b/src/views/qms/sampleCode/sampleCode.data.ts @@ -1,12 +1,15 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import { dateFormatter } from '@/utils/formatTime' import {getSamplingScheme} from '@/api/qms/sampleCode/index' +import {validateNum} from "@/utils/validator"; // 表单校验 export const SampleCodeRules = reactive({ code: [required], - batchUpperLimiting: [required], - // available: [required], + batchLowLimiting: [{ validator:validateNum, message: '请输入整数', trigger: 'blur'}], + batchUpperLimiting: [ + { required:true, message: '该项为必填', trigger: 'blur'}, + { validator:validateNum, message: '请输入整数', trigger: 'blur'}], }) const samplingSchemeList = await getSamplingScheme() export const SampleCode = useCrudSchemas(reactive([ @@ -92,16 +95,6 @@ export const SampleCode = useCrudSchemas(reactive([ field: 'g3', sort: 'custom', }, - // { - // label: '是否可用', - // field: 'available', - // sort: 'custom', - // dictType: DICT_TYPE.TRUE_FALSE, - // dictClass: 'string', // 默认都是字符串类型其他暂不考虑 - // form: { - // component: 'Select' - // }, - // }, { label: '创建时间', field: 'createTime', From a4c85a5c06dba130bcf3f7065cf2a8363f976846 Mon Sep 17 00:00:00 2001 From: zhaoyiran Date: Wed, 10 Apr 2024 17:43:13 +0800 Subject: [PATCH 16/17] =?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/views/qms/sampleCode/index.vue | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/views/qms/sampleCode/index.vue b/src/views/qms/sampleCode/index.vue index a3129680c..2f7dae698 100644 --- a/src/views/qms/sampleCode/index.vue +++ b/src/views/qms/sampleCode/index.vue @@ -237,11 +237,13 @@ const searchFormClick = (searchData) => { getList() // 刷新当前列表 } const onChange = async (field, value, formRef) => { + if(field == "batchLowLimiting" || field == "batchUpperLimiting"){ var upperLimit = formRef.value.formModel.batchUpperLimiting var lowLimit = formRef.value.formModel.batchLowLimiting if(parseInt(upperLimit) <= parseInt(lowLimit)){ message.warning("批量上限须大于批量下限") } + } } /** 初始化 **/ onMounted(async () => { From 45aa887908772c03116112d4d170443feab9732c Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Wed, 10 Apr 2024 18:59:29 +0800 Subject: [PATCH 17/17] =?UTF-8?q?=E6=A3=80=E9=AA=8C=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E8=87=AA=E6=B5=8B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inspectionRecordMain/index.ts | 4 +- src/locales/en-US.ts | 7 +- src/locales/zh-CN.ts | 5 +- src/utils/disposition/defaultButtons.ts | 12 ++ .../qms/inspection/inspectionJob/addForm.vue | 79 ++++++----- .../inspectionJob/inspectionJobMain.data.ts | 34 ++--- .../inspection/inspectionRecord/addForm.vue | 27 ++-- .../qms/inspection/inspectionRecord/index.vue | 129 +++--------------- .../inspectionRecordMain.data.ts | 55 ++++++-- 9 files changed, 153 insertions(+), 199 deletions(-) diff --git a/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts b/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts index aeb223f30..8214ed279 100644 --- a/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts +++ b/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts @@ -64,8 +64,8 @@ export const importTemplate = () => { return request.download({ url: '/qms/inspection-record-main/get-import-template' }) } // 发布 -export const publishInspectionRecordMain = async (data ) => { - return await request.put({ url: `/qms/inspection-record-main/publish`, data }) +export const publishInspectionRecordMain = async (id) => { + return await request.put({ url: `/qms/inspection-record-main/publish?id=`+id }) } //查询包装列表 export const getInspectionRecordPackageList = async (id: number) => { diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index c59422a44..ae7a3c109 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -61,6 +61,7 @@ export default { agreeSuccess: 'Agree Success', refusedSuccess: 'Refused Success', handleSuccess: 'Handle Success', + publishSuccess: 'Publish Success', acceptSuccess: 'Accept Success', giveupSuccess: 'Giveup Success', dealwithSuccess: 'Dealwith Success', @@ -71,7 +72,8 @@ export default { confirmHandle: 'Confirm Handle?', confirmSubmit: 'Confirm Submit?', confirmAccept: 'Confirm Accept', - confirmGiveup: 'Confirm Giveup' + confirmGiveup: 'Confirm Giveup', + confirmPublish: 'Confirm Publish', }, error: { noPermission: `Sorry, you don't have permission to access this page.`, @@ -319,7 +321,8 @@ export default { fileUpload: 'File Upload', createLabel: 'create label', viewDetail:'Detailed list', - updataRecode:'Updata recode' + updataRecode:'Updata recode', + applyDecision:'Apply Decision', }, dialog: { dialog: 'Dialog', diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 3bea036ee..7ae071d67 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -61,6 +61,7 @@ export default { agreeSuccess: '审批通过成功', refusedSuccess: '审批驳回成功', handleSuccess: '执行成功', + publishSuccess: '发布成功', dealwithSuccess: '处理成功', acceptSuccess: '承接成功', giveupSuccess: '放弃成功', @@ -72,6 +73,7 @@ export default { confirmSubmit: '确认提交吗?', confirmAccept: '确认承接吗?', confirmGiveup: '确认放弃吗?', + confirmPublish: '确认发布吗?', }, error: { noPermission: `抱歉,您无权访问此页面。`, @@ -318,7 +320,8 @@ export default { dataUpdate: '字典数据编辑', createLabel: '创建标签', viewDetail:'明细列表', - updataRecode:'更新记录' + updataRecode:'更新记录', + applyDecision:'使用决策', }, dialog: { dialog: '弹窗', diff --git a/src/utils/disposition/defaultButtons.ts b/src/utils/disposition/defaultButtons.ts index 7e42a749b..36f241725 100644 --- a/src/utils/disposition/defaultButtons.ts +++ b/src/utils/disposition/defaultButtons.ts @@ -849,6 +849,18 @@ export function mainUpdataRecodeBtn(option:any) { hasPermi: '' }) } +// 主列表-使用决策 +export function mainApplyDecisionBtn(option:any) { + return __defaultBtnOption(option,{ + label: '使用决策', + name: 'applyDecision', + hide: false, + type: 'primary', + color: '', + link: true, // 文本展现按钮 + hasPermi: '' + }) +} // 默认按钮规则 function __defaultBtnOption(option:any,specific:any){ return { diff --git a/src/views/qms/inspection/inspectionJob/addForm.vue b/src/views/qms/inspection/inspectionJob/addForm.vue index e931fdefb..a7b6837fd 100644 --- a/src/views/qms/inspection/inspectionJob/addForm.vue +++ b/src/views/qms/inspection/inspectionJob/addForm.vue @@ -58,9 +58,9 @@ - + @@ -76,7 +76,7 @@ - +
检验特性
@@ -235,6 +235,23 @@ /> + + + + + + + + - - - - - - + { ) ) } - if (item.samplingProcessRespVO.evaluationMode == 1) { - arrBol.push( - item.inspectionJobCharacteristicsUpdateReqVO.recordInspectionQuantifyList.some( - (cur, key) => { - return !cur.estimateCode - } - ) - ) - } + // if (item.samplingProcessRespVO.evaluationMode == 1) { + // arrBol.push( + // item.inspectionJobCharacteristicsUpdateReqVO.recordInspectionQuantifyList.some( + // (cur, key) => { + // return !cur.estimateCode + // } + // ) + // ) + // } if (item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0) { arrBol.push( item.inspectionJobCharacteristicsUpdateReqVO.recordInspectionQuantifyList.some( @@ -973,7 +980,6 @@ const resultEntryMethodChange = (e, item) => { item.inspectionJobCharacteristicsUpdateReqVO.recordInspectionQuantifyList.push({ inspectionValue: '', //检验值 qualitativeCode: '', //定性字典项值 - estimateCode: '', //评估代码 defectLevel: '', //缺陷级别 qualifiedQuantity: '', //合格数量 unqualifiedQuantity: '' //不合格数量 @@ -985,7 +991,6 @@ const resultEntryMethodChange = (e, item) => { { inspectionValue: '', //检验值 qualitativeCode: '', //定性字典项值 - estimateCode: '', //评估代码 defectLevel: '', //缺陷级别 qualifiedQuantity: '', //合格数量 unqualifiedQuantity: '' //不合格数量 diff --git a/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts b/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts index 276eb2f50..a9ca2062b 100644 --- a/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts +++ b/src/views/qms/inspection/inspectionJob/inspectionJobMain.data.ts @@ -221,7 +221,7 @@ export const InspectionJobMain = useCrudSchemas(reactive([ }, { label: '采样总数量', - field: 'sampleTatalAmount', + field: 'sampleTotalAmount', sort: 'custom', isSearch: false, form: { @@ -250,22 +250,22 @@ export const InspectionJobMain = useCrudSchemas(reactive([ width: 150 } }, - { - label: '检验批来源', - field: 'inspectionBatchSource', - sort: 'custom', - isSearch: false, - dictType: DICT_TYPE.INSPECTION_BATCH_SOURCE, - dictClass: 'string', - form:{ - componentProps:{ - disabled:true - } - }, - table: { - width: 150 - } - }, + // { + // label: '检验批来源', + // field: 'inspectionBatchSource', + // sort: 'custom', + // isSearch: false, + // dictType: DICT_TYPE.INSPECTION_BATCH_SOURCE, + // dictClass: 'string', + // form:{ + // componentProps:{ + // disabled:true + // } + // }, + // table: { + // width: 150 + // } + // }, { label: '检验阶段', field: 'inspectionStage', diff --git a/src/views/qms/inspection/inspectionRecord/addForm.vue b/src/views/qms/inspection/inspectionRecord/addForm.vue index 6014f7e97..a426b4e5c 100644 --- a/src/views/qms/inspection/inspectionRecord/addForm.vue +++ b/src/views/qms/inspection/inspectionRecord/addForm.vue @@ -111,11 +111,6 @@ const data = ref({ subList: [] }) -const dialogVisibleName = ref(false) -const nameForm = ref({ - name: '' -}) -const nameRef = ref() if (props.basicFormWidth) { dialogWidth.value = props.basicFormWidth + '%' } else { @@ -124,11 +119,7 @@ if (props.basicFormWidth) { /** 打开弹窗 */ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any) => { - if (titleName) { - dialogTitle.value = t('action.' + titleName) - } else { - dialogTitle.value = t('action.' + type) - } + dialogTitle.value = t('action.applyDecision') formType.value = type if (row) { data.value = JSON.parse(JSON.stringify(row)) @@ -256,14 +247,16 @@ const submitForm = async () => { const validateForm1 = await tableFormRef.value.validateForm() if (!validateForm1) return const data1 = unref(formMainRef)?.formModel - console.log(33,data1) + data.value.useDecision = data1.useDecision if(data1.useDecision == 2 || data1.useDecision == 6){ - let isBol = data.value.packageList.filter(cur=>parseFloat(cur.qualifiedAmount)+parseFloat(cur.noQualifiedAmount)>parseFloat(cur.amount)) - console.log(isBol) - if(isBol&&isBol.length>0){ - message.error(`合格数量和不合格数量总和不可以大于数量`) - return - } + if(data.value.packageList.length>0){ + let isBol = data.value.packageList.filter(cur=>parseFloat(cur.qualifiedAmount)+parseFloat(cur.noQualifiedAmount)>parseFloat(cur.amount)) + console.log(isBol) + if(isBol&&isBol.length>0){ + message.error(`合格数量和不合格数量总和不可以大于数量`) + return + } + } } if (formType.value == 'create') { // 主子表——提交请求 diff --git a/src/views/qms/inspection/inspectionRecord/index.vue b/src/views/qms/inspection/inspectionRecord/index.vue index 2c20db498..500801013 100644 --- a/src/views/qms/inspection/inspectionRecord/index.vue +++ b/src/views/qms/inspection/inspectionRecord/index.vue @@ -27,20 +27,6 @@ - { - nextTick(async () => { - if (type == 'tableForm') { - // 明细查询页赋值 - row[formField] = val[0][searchField] - // row['itemNumber'] = val[0]['number'] - // row['itemName'] = val[0]['name'] - // row['uom'] = val[0]['uom'] - // row['isRadeIn'] = val[0]['isRadeIn'] - // row['available'] = val[0]['available'] - } else { - const setV = {} - setV[formField] = val[0][searchField] - formRef.setValues(setV) - } - }) - } - // 查询页面返回——详情 - const searchTableSuccessDetail = (formField, searchField, val, formRef) => { - nextTick(async () => { - const setV = {} - // if(formField == 'itemCode'){ - // await ItembasicApi.getItembasicPage({ - // code: setV['itemCode'] - // }).then(res => { - // setV['uom'] = res.list[0].uom - // setV[formField] = val[0][searchField] - // }) - // } - formRef.setValues(setV) - }) - } + // 子表新增的时候选择表格之后需要会显得字段 - const Echo = [] const { tableObject, tableMethods } = useTable({ getListApi: InspectionRecordMainApi.getInspectionRecordMainPage // 分页接口 }) @@ -141,14 +93,6 @@ defaultButtons.defaultFreshBtn(null), // 刷新 defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 - // { - // label: '自定义扩展按钮', - // name: 'zdy', - // hide: false, - // type: 'primary', - // icon: 'Select', - // color: '' - // }, ] // 头部按钮事件 @@ -169,10 +113,14 @@ // 根据状态返回该按钮是否显示 const isShowMainButton = (row, val) => { - if (val.indexOf(row.status) > -1) { - return false - } else { - return true + if(val){ + if(row.useDecision){ + return false + }else{ + return true + } + }else{ + return !row.isPublished } } @@ -180,9 +128,9 @@ const butttondata = (row) => { return [ // defaultButtons.mainListOrderCOMPLETEBtn({ hide: isShowMainButton(row, ['INCOMPLETE']) }), // 完成 - defaultButtons.mainListEditBtn({hasPermi:'qms:inspection-recode-main:edit'}), // 编辑 + defaultButtons.mainApplyDecisionBtn({ hide: isShowMainButton(row, null),hasPermi:'qms:inspection-recode-main:edit'}), // 使用决策 // defaultButtons.mainListDeleteBtn(null), // 删除 - defaultButtons.mainListOrderPubBtn({hasPermi:'qms:inspection-recode-main:pub'}), // 发布 + defaultButtons.mainListOrderPubBtn({ hide: isShowMainButton(row,'pub'),hasPermi:'qms:inspection-recode-main:pub'}), // 发布 defaultButtons.mainListPackageBtn(null), // 包装 ] } @@ -190,7 +138,7 @@ const listTableRef = ref() // 列表-操作按钮事件 const buttonTableClick = async (val, row) => { - if (val == 'edit') { // 编辑 + if (val == 'applyDecision') { // 编辑 // 评估代码值是1,接收时候,使用决策下拉列表是全部合格 if(row.estimateCode == 1){ InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) =>{ @@ -208,6 +156,12 @@ openForm('update', row) }else if (val == 'mainPackage') { // 包装 const list = await InspectionRecordMainApi.getInspectionRecordPackageList(row.id) + list.forEach(item=>{ + item.qualifiedAmount = item.qualifiedAmount ?item.qualifiedAmount :0 + item.noQualifiedAmount = item.noQualifiedAmount ?item.noQualifiedAmount :0 + item.destroyAmount = item.destroyAmount ?item.destroyAmount :0 + item.frozenAmount = item.frozenAmount ?item.frozenAmount :0 + }) listTableRef.value.openPackage(row,'包装信息',InspectionRecordPackage.allSchemas.tableColumns,list) }else if (val == 'delete') { // 删除 handleDelete(row.id) @@ -245,10 +199,10 @@ const handleOrderPub = async (row : object) => { try { // 删除的二次确认 - await message.confirm('是否发布所选数据') + await message.confirm(t('common.confirmPublish')) // 发起删除 - await InspectionRecordMainApi.publishInspectionRecordMain(row) - message.success('发布成功') + await InspectionRecordMainApi.publishInspectionRecordMain(row.id) + message.success(t('common.publishSuccess')) // 刷新列表 await getList() } catch { } @@ -281,30 +235,6 @@ }) const tableData = ref([]) - // 添加明细 - const handleAddTable = () => { - tableData.value.push(JSON.parse(JSON.stringify(tableFormKeys))) - } - // 删除明细 - const handleDeleteTable = (item, index) => { - tableData.value.splice(index, 1) - } - const count = ref(0) - const onChange = (field, cur)=>{ - console.log(field, cur) - // if(field=='useDecision'){ - // if(cur == 1){ - // InspectionRecordPackage.allSchemas.tableFormColumns.forEach(item=>{ - // if(item.field == 'qualifiedAmount'){ - // console.log(item.disabled) - // item.disabled = true - // console.log(item.disabled) - // } - // }) - // } - // } - console.log(InspectionRecordPackage.allSchemas.tableFormColumns) -} // // 主子数据 提交 const submitForm = async (formType, data) => { data.subList = tableData.value // 拼接子表数据参数 @@ -324,23 +254,6 @@ } } - /** 导入 */ - const importFormRef = ref() - const handleImport = () => { - importFormRef.value.open() - } - - // 导入附件弹窗所需的参数 - const importTemplateData = reactive({ - templateUrl: '', - templateTitle: '采购订单主导入模版.xlsx' - }) - - // 导入成功之后 - const importSuccess = () => { - getList() - } - // 筛选提交 const searchFormClick = (searchData) => { tableObject.params = { diff --git a/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts b/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts index cc63cc7f5..6944be4fc 100644 --- a/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts +++ b/src/views/qms/inspection/inspectionRecord/inspectionRecordMain.data.ts @@ -22,7 +22,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ }, { label: '申请编码', - field: 'applicationCode', + field: 'requestNumber', sort: 'custom', isSearch: true, isForm:false, @@ -32,7 +32,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ }, { label: '任务编码', - field: 'taskCode', + field: 'jobNumber', sort: 'custom', isSearch: false, isForm:false, @@ -49,16 +49,50 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ table: { width: 150 } + },{ + label: '供应商名称', + field: 'supplierName', + sort: 'custom', + isSearch: false, + isForm:false, + table: { + width: 150 + }, + form: { + componentProps:{ + disabled:true + } + }, }, { label: '物料编码', - field: 'materialCode', + field: 'itemCode', sort: 'custom', isSearch: false, isForm:false, table: { width: 150 - } + }, + form: { + componentProps:{ + disabled:true + } + }, + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + isSearch: false, + isForm:false, + table: { + width: 150 + }, + form: { + componentProps:{ + disabled:true + } + }, }, { label: '批次', @@ -102,7 +136,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ }, { label: '采样总数量', - field: 'sampleTatalAmount', + field: 'sampleTotalAmount', sort: 'custom', isSearch: false, isForm:false, @@ -124,16 +158,6 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ width: 150 } }, - { - label: '检验批来源', - field: 'inspectionBatchSource', - sort: 'custom', - isSearch: false, - isForm:false, - table: { - width: 150 - } - }, { label: '参考订单号', field: 'referenceOrderCode', @@ -169,6 +193,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive([ } }, { + // reference_certificate_row label: '参考凭证行', field: 'referenceCertificateRow', sort: 'custom',