| | |
| | | } from '#/api/mes/wm/materialstock'; |
| | | import { getItem } from '#/api/mdm/item'; |
| | | import { MdmItemSelect } from '#/views/basicData/mdm/components'; |
| | | import { ErpSupplierSelect } from '#/views/erp/purchase/supplier/components'; |
| | | import { SrmSupplierSelect } from '#/views/srm/supplier/components'; |
| | | import BatchConfigDisplay from './batch-config-display.vue'; |
| | | import { |
| | | WmWarehouseAreaSelect, |
| | |
| | | |
| | | if (!enabled) { |
| | | formApi.updateSchema([ |
| | | { fieldName: 'batchCode', dependencies: { show: () => false } }, |
| | | { fieldName: 'manualBatchEntry', dependencies: { show: () => false } }, |
| | | { fieldName: 'produceDate', dependencies: { show: () => false } }, |
| | | { fieldName: 'expireDate', dependencies: { show: () => false } }, |
| | | { fieldName: 'receiptDate', dependencies: { show: () => false } }, |
| | | { fieldName: 'vendorId', dependencies: { show: () => true } }, |
| | | { fieldName: 'purchaseOrderCode', dependencies: { show: () => false } }, |
| | | { fieldName: 'lotNumber', dependencies: { show: () => false } }, |
| | | { fieldName: 'qualityStatus', dependencies: { show: () => false } }, |
| | | { fieldName: 'batchCode', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'manualBatchEntry', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'produceDate', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'expireDate', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'receiptDate', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'vendorId', dependencies: { show: () => true, triggerFields: [''] } }, |
| | | { fieldName: 'purchaseOrderCode', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'lotNumber', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'qualityStatus', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | ]); |
| | | return; |
| | | } |
| | |
| | | const isIn = operateType.value === 1; |
| | | |
| | | formApi.updateSchema([ |
| | | { fieldName: 'batchCode', dependencies: { show: () => manualBatchEntry.value } }, |
| | | { fieldName: 'manualBatchEntry', dependencies: { show: () => true } }, |
| | | { fieldName: 'produceDate', dependencies: { show: () => isIn && !!item?.produceDateFlag } }, |
| | | { fieldName: 'expireDate', dependencies: { show: () => isIn && !!item?.expireDateFlag } }, |
| | | { fieldName: 'receiptDate', dependencies: { show: () => isIn && !!item?.receiptDateFlag } }, |
| | | { fieldName: 'vendorId', dependencies: { show: () => !isIn || !!item?.vendorFlag } }, |
| | | { fieldName: 'purchaseOrderCode', dependencies: { show: () => isIn && !!item?.purchaseOrderCodeFlag } }, |
| | | { fieldName: 'lotNumber', dependencies: { show: () => isIn && !!item?.lotNumberFlag } }, |
| | | { fieldName: 'qualityStatus', dependencies: { show: () => isIn && !!item?.qualityStatusFlag } }, |
| | | { fieldName: 'batchCode', dependencies: { show: () => manualBatchEntry.value, triggerFields: [''] } }, |
| | | { fieldName: 'manualBatchEntry', dependencies: { show: () => true, triggerFields: [''] } }, |
| | | { fieldName: 'produceDate', dependencies: { show: () => isIn && !!item?.produceDateFlag, triggerFields: [''] } }, |
| | | { fieldName: 'expireDate', dependencies: { show: () => isIn && !!item?.expireDateFlag, triggerFields: [''] } }, |
| | | { fieldName: 'receiptDate', dependencies: { show: () => isIn && !!item?.receiptDateFlag, triggerFields: [''] } }, |
| | | { fieldName: 'vendorId', dependencies: { show: () => !isIn || !!item?.vendorFlag, triggerFields: [''] } }, |
| | | { fieldName: 'purchaseOrderCode', dependencies: { show: () => isIn && !!item?.purchaseOrderCodeFlag, triggerFields: [''] } }, |
| | | { fieldName: 'lotNumber', dependencies: { show: () => isIn && !!item?.lotNumberFlag, triggerFields: [''] } }, |
| | | { fieldName: 'qualityStatus', dependencies: { show: () => isIn && !!item?.qualityStatusFlag, triggerFields: [''] } }, |
| | | ]); |
| | | } |
| | | |
| | |
| | | async function handleOperateTypeChange(type: 1 | 2) { |
| | | operateType.value = type; |
| | | modalTitle.value = type === 1 ? '库存入库' : '库存出库'; |
| | | modalApi.setState({ title: modalTitle.value }); |
| | | await formApi.setFieldValue('operateType', type); |
| | | // 更新批次字段显示 |
| | | await updateBatchFields(); |
| | |
| | | { |
| | | fieldName: 'vendorId', |
| | | label: '供应商', |
| | | component: markRaw(ErpSupplierSelect), |
| | | component: markRaw(SrmSupplierSelect), |
| | | componentProps: { |
| | | placeholder: '请选择供应商', |
| | | }, |
| | |
| | | batchEnabled.value = false; |
| | | operateType.value = 1; |
| | | modalTitle.value = '库存调整'; |
| | | modalApi.setState({ title: modalTitle.value }); |
| | | return; |
| | | } |
| | | // 重置表单 |
| | | await formApi.resetForm(); |
| | | // 默认隐藏批次相关字段 |
| | | formApi.updateSchema([ |
| | | { fieldName: 'batchCode', dependencies: { show: () => false } }, |
| | | { fieldName: 'manualBatchEntry', dependencies: { show: () => false } }, |
| | | { fieldName: 'produceDate', dependencies: { show: () => false } }, |
| | | { fieldName: 'expireDate', dependencies: { show: () => false } }, |
| | | { fieldName: 'receiptDate', dependencies: { show: () => false } }, |
| | | { fieldName: 'purchaseOrderCode', dependencies: { show: () => false } }, |
| | | { fieldName: 'lotNumber', dependencies: { show: () => false } }, |
| | | { fieldName: 'qualityStatus', dependencies: { show: () => false } }, |
| | | { fieldName: 'batchCode', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'manualBatchEntry', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'produceDate', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'expireDate', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'receiptDate', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'purchaseOrderCode', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'lotNumber', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | { fieldName: 'qualityStatus', dependencies: { show: () => false, triggerFields: [''] } }, |
| | | ]); |
| | | // 重置手动填写批次号状态 |
| | | manualBatchEntry.value = false; |
| | |
| | | } |
| | | } |
| | | }, |
| | | title: modalTitle, |
| | | title: '库存调整', |
| | | }); |
| | | |
| | | /** 提交表单 */ |