diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index 5e7924a15..d25048231 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -1316,7 +1316,8 @@ export default { 是否确认分摊金额: 'Do you want to confirm the allocation amount?', 创建开票申请: 'Create an invoice request?', 详情:'Detail', - 退回:'Return' + 退回:'Return', + 作废成功:'Invalid successfully' }, diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 2ffb5015d..839dcf9d8 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -1316,8 +1316,7 @@ export default { 退回成功: '退回成功', 是否确认分摊金额: '是否确认分摊金额?', 创建开票申请: '创建开票申请', - 详情:'详情', - 退回:'退回', + 作废成功:'作废成功', }, } diff --git a/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue b/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue index feaef082c..81056e690 100644 --- a/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue +++ b/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue @@ -654,7 +654,9 @@ const searchTransactionType = ()=>{ ) } // 失去焦点校验 -const blurVerify= async (type)=>{ +const typeBlur = ref('') +const blurVerify = async (type) => { + typeBlur.value = type let transactionType = formData.value.condition.find(item => item['ParamCode'] == type) console.log(transactionType) if (transactionType && transactionType.Value) { @@ -864,6 +866,8 @@ defineExpose({ open }) // 提供 open 方法,用于打开弹窗 const emit = defineEmits(['success']) // 定义 success 事件,用于操作成功后的回调 const submitForm = async () => { await blurWarehouse() + await blurVerify(typeBlur.value) + console.log('规则条件',formData.value.condition) // 校验表单 diff --git a/src/views/wms/basicDataManage/supplierManage/supplieritem/supplieritem.data.ts b/src/views/wms/basicDataManage/supplierManage/supplieritem/supplieritem.data.ts index a04c95f49..784cb3b88 100644 --- a/src/views/wms/basicDataManage/supplierManage/supplieritem/supplieritem.data.ts +++ b/src/views/wms/basicDataManage/supplierManage/supplieritem/supplieritem.data.ts @@ -416,6 +416,7 @@ export const SupplieritemRules = reactive({ { required: true, message: '请输入物料代码', trigger: 'change' } ], supplierItemCode: [ + { required: true, message: '请输入供应商物料代码', trigger: 'change' }, { max: 50, message: '不得超过50个字符', trigger: 'blur' }, // { validator:validateYS, message: '请输入正确的代码', trigger: 'blur'} ], diff --git a/src/views/wms/inventoryManage/balance/index.vue b/src/views/wms/inventoryManage/balance/index.vue index 97f6342ca..b5e377e42 100644 --- a/src/views/wms/inventoryManage/balance/index.vue +++ b/src/views/wms/inventoryManage/balance/index.vue @@ -441,7 +441,7 @@ const getLabelDetailPage = async (row, useToPackingNumber) => { item.batch = formatDate(new Date(),'YYYYMMDD') item['disabled_batch'] = false } else { - item['disabled_batch'] = true + item['disabled_batch'] = false } }) // searchTableRef.value.openData('标签信息', tableObjectPrint, { tableColumns }, true) @@ -581,7 +581,7 @@ const pointLabel = async () => { packQty:detatableData1.value[0].packQty, uom:detatableData1.value[0].uom, productionLineCodePackage:detatableData1.value[0].productionLineCodePackage, - supplierItemCode:detatableData1.value[0].supplierItemCode, + supplierCode:detatableData1.value[0].supplierItemCode, } // const isHave = detatableData1.value.find(item => parseFloat(item.printQty) <= 0) if(!parseFloat(obj.printQty) ){ @@ -590,13 +590,13 @@ const pointLabel = async () => { } await PackageApi.batchPrintingBalanceLableForCreate(obj).then(res => { let src =ref('') - src.value = BASE_URL + '/jmreport/view/922734157577715712?token=' + getAccessToken()+'&asn_number='+res//制造标签模板 + // src.value = BASE_URL + '/jmreport/view/922734157577715712?token=' + getAccessToken()+'&asn_number='+res//制造标签模板 - // if (enableBuyOrenableMake.value == 'enableBuy') { - // src.value = BASE_URL + '/jmreport/view/1016234988731322368?token=' + getAccessToken()+'&id='+res//采购标签模板 - // } else if(enableBuyOrenableMake.value == 'enableMake') { - // src.value = BASE_URL + '/jmreport/view/922734157577715712?token=' + getAccessToken()+'&asn_number='+res//制造标签模板 - // } + if (enableBuyOrenableMake.value == 'enableBuy') { + src.value = BASE_URL + '/jmreport/view/1021666059319578624?token=' + getAccessToken()+'&asn_number='+res//采购标签模板 + } else if(enableBuyOrenableMake.value == 'enableMake') { + src.value = BASE_URL + '/jmreport/view/922734157577715712?token=' + getAccessToken()+'&asn_number='+res//制造标签模板 + } window.open(src.value) }).catch(err => { console.log(err) diff --git a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue index c79258b9a..d16b26a6e 100644 --- a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue +++ b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/index.vue @@ -135,6 +135,7 @@ import { formatDate } from '@/utils/formatTime' import { usePageLoading } from '@/hooks/web/usePageLoading' import * as SubjectAccountApi from '@/api/wms/subjectAccount' const { loadStart, loadDone } = usePageLoading() +import * as ruleApi from '@/api/wms/rule/index' // 计划外入库申请 defineOptions({ name: 'UnplannedreceiptRequestMain' }) @@ -194,6 +195,7 @@ const isItemType = async (itemCode, labelTypeParams) => { } // 查询页面返回 +const fromManagementPrecision = ref('') const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => { nextTick(async () => { console.log('searchTableSuccess',formField, searchField, val, formRef, type, row ) @@ -201,6 +203,21 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => // 明细查询页赋值 if(formField == 'toLocationCode'){ row['toLocationCode'] = val[0]['code'] + + await ruleApi.getManagementPrecision({ + itemCodes: [row['itemCode']], + locationCode:val[0]['code'] + }).then((res) => { + fromManagementPrecision.value = res[0].ManagementPrecision + if (fromManagementPrecision.value == 'BY_QUANTITY') { + // row['disabled_batch'] = false + UnplannedreceiptRequestDetailRules.batch[0].required = false + + } else { + // row['disabled_batch'] = true + UnplannedreceiptRequestDetailRules.batch[0].required = true + } + }) } else if(formField == 'itemCode'){ let itemCodes = val.filter(item=>tableData.value.find(item1=>item1['itemCode']==item['code'])) if(itemCodes.length>0){ @@ -525,7 +542,20 @@ const buttonTableClick = async (val, row) => { return } }) + ruleApi.getManagementPrecision({ + itemCodes: [item['itemCode']], + locationCode:item['toLocationCode'] + }).then((res) => { + fromManagementPrecision.value = res[0].ManagementPrecision + if (fromManagementPrecision.value == 'BY_QUANTITY') { + item.batch = formatDate(new Date(),'YYYYMMDD') + item['disabled_batch'] = false + } else { + item['disabled_batch'] = true + } + }) }) + } } diff --git a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts index fe8b22b0b..c553107f7 100644 --- a/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts +++ b/src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRequestMain/unplannedreceiptRequestMain.data.ts @@ -1427,6 +1427,9 @@ function validateQty(rule, value, callback) { } //表单校验 export const UnplannedreceiptRequestDetailRules = reactive({ + batch: [ + { required: true, message: '请选择批次', trigger: ['blur', 'change'] } + ], arriveDate: [ { required: true, message: '请选择到货日期', trigger: 'change' } ], @@ -1521,7 +1524,9 @@ export const UnplannedreceiptRequestDetailLabel = useCrudSchemas(reactive { if (row.available == 'FALSE') return message.warning('当前数据:【不可用】') await message.confirm('确认要生成发料申请吗?') tableObject.loading = true - await PreparetoissueMainApi.generateIssueRequest(row.number).then(() => { - message.success(t('common.createSuccess')) + + await PreparetoissueMainApi.generateIssueRequest(row.number).then((res) => { + console.log('返回数据',res) + if (res.errorCount > 0) { + message.confirm('存在物料库存不足,创建失败。').then(() => { + window.open( + getBaseUrl() + '/admin-api' + res.errorFile, + '222' + ) + }) + } else { + message.success(t('common.createSuccess')) + } tableObject.loading = false buttonBaseClick('refresh',null) }).catch(err => { diff --git a/src/views/wms/productionManage/productionplan/productionMain/index.vue b/src/views/wms/productionManage/productionplan/productionMain/index.vue index 8bf2be24c..754b5ed19 100644 --- a/src/views/wms/productionManage/productionplan/productionMain/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMain/index.vue @@ -94,6 +94,7 @@ import { usePageLoading } from '@/hooks/web/usePageLoading' const { loadStart, loadDone } = usePageLoading() // 生产计划主 // 预生产计划 +// 补给品生产计划 defineOptions({ name: 'ProductionMain' }) const message = useMessage() // 消息弹窗 diff --git a/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts b/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts index 729bfb45a..76e26ea30 100644 --- a/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts @@ -640,9 +640,9 @@ export const ProductionMainRules = reactive({ productionLine: [ { required: true, message: '请选择生产线', trigger: 'change' } ], - shift: [ - { required: true, message: '请选择班次', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次', trigger: 'change' } + // ], // team: [ // { required: true, message: '请选择班组', trigger: 'change' } // ], diff --git a/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue b/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue index a5335ec3c..9573cc3ba 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue @@ -93,6 +93,7 @@ import { formatDate } from '@/utils/formatTime' import { usePageLoading } from '@/hooks/web/usePageLoading' const { loadStart, loadDone } = usePageLoading() // 装配计划 +// 号口生产计划 defineOptions({ name: 'ProductionMainAssemble' }) const message = useMessage() // 消息弹窗 diff --git a/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts b/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts index 080efd908..7b43f9b8d 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts @@ -639,9 +639,9 @@ export const ProductionMainRules = reactive({ productionLine: [ { required: true, message: '请选择生产线', trigger: 'change' } ], - shift: [ - { required: true, message: '请选择班次', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次', trigger: 'change' } + // ], // team: [ // { required: true, message: '请选择班组', trigger: 'change' } // ], diff --git a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts index d309ea85c..d55e555f8 100644 --- a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts +++ b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts @@ -611,9 +611,9 @@ export const ProductreceiptRequestMainRules = reactive({ // team: [ // { required: true, message: '请选择班组代码', trigger: 'change' } // ], - shift: [ - { required: true, message: '请选择班次代码', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次代码', trigger: 'change' } + // ], // departmentCode: [ // { required: true, message: '请输入部门', trigger: 'blur' } // ], @@ -1726,6 +1726,9 @@ export const ProductreceiptRequestLabel = useCrudSchemas(reactive( table: { width: 150 }, + tableForm: { + disabled: true + } }, { label: '数量', diff --git a/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts b/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts index bd8d86003..71beecd5b 100644 --- a/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts +++ b/src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts @@ -617,9 +617,9 @@ export const ProductreceiptRequestMainRules = reactive({ // team: [ // { required: true, message: '请选择班组代码', trigger: 'change' } // ], - shift: [ - { required: true, message: '请选择班次代码', trigger: 'change' } - ], + // shift: [ + // { required: true, message: '请选择班次代码', trigger: 'change' } + // ], // departmentCode: [ // { required: true, message: '请输入部门', trigger: 'blur' } // ], @@ -1731,6 +1731,9 @@ export const ProductreceiptRequestLabel = useCrudSchemas(reactive( table: { width: 150 }, + tableForm: { + disabled:true + } }, { label: '数量', diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue index 8ad46ea69..3a1a6cade 100644 --- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue +++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue @@ -597,6 +597,8 @@ const searchTableSuccess = (formField, searchField, val, searchFormRef, type, ro newRow['maxInvoicableQuantity'] = item['invoicableQuantity'] newRow['invoicableQuantity'] = item['invoicableQuantity'] newRow['itemCode'] = item['itemCode'] + newRow['itemName'] = item['itemName'] + newRow['deliveryDate'] = item['prhRcpDate'] newRow['arrivalQty'] = item['prhRcvd'] newRow['id'] = item['id']