From 83f4b5742d68e2af3a4e9f60630de8444e99582a Mon Sep 17 00:00:00 2001 From: zs <zhousong@weben-smart.com> Date: 周二, 20 5月 2025 11:53:35 +0800 Subject: [PATCH] 库存高级查询 --- HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx | 175 +++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 143 insertions(+), 32 deletions(-) diff --git a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx index 23d375b..274c001 100644 --- a/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx +++ b/HIAWms/hiawms_web/src/widgets/WmsMaterialStock/Controllers/WmsMaterialStockQueryDrawer.tsx @@ -14,6 +14,12 @@ import isEqual from 'lodash/isEqual' import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' import { cloneDeep } from 'lodash' +import { getAreaAreaDataList } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' +import { + FILTER_MODE_OPTIONS_STRING, + FILTER_MODE_OPTIONS_NUM, + FILTER_MODE_OPTIONS_BOOL, +} from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions' export const useWmsMaterialStockQueryDrawer = (props: any, ctx?: any) => { const wmsMaterialStockDrawer = injectModel<WmsMaterialStockDrawer>( @@ -86,6 +92,12 @@ el: 'input', //disabled: disabled, placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�', + highSelectAttrs: { + prop: 'materialName_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_STRING, + }, }, // { // label: '瀹瑰櫒缂栧彿', @@ -118,6 +130,12 @@ el: 'input', //disabled: disabled, placeholder: '璇疯緭鍏ョ墿鏂欑紪鍙�', + highSelectAttrs: { + prop: 'materialNo_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_STRING, + }, }, // { // label: '搴撳瓨鏁伴噺', @@ -141,6 +159,12 @@ el: 'input', //disabled: disabled, placeholder: '璇疯緭鍏ョ墿鏂欐壒娆�', + highSelectAttrs: { + prop: 'materialBatch_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_STRING, + }, }, // { // label: '渚涘簲鍟嗙紪鍙�', @@ -155,6 +179,12 @@ el: 'input', //disabled: disabled, placeholder: '璇疯緭鍏ュ瀷鍙�', + highSelectAttrs: { + prop: 'materialModel_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_STRING, + }, }, { label: '搴撲綅缂栧彿', @@ -162,15 +192,27 @@ el: 'input', //disabled: disabled, placeholder: '璇疯緭鍏ュ簱浣嶇紪鍙�', + highSelectAttrs: { + prop: 'placeNo_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_STRING, + }, }, { - label: '搴撲綅鐘舵��;', + label: '搴撲綅鐘舵��', prop: 'placeStatus', el: 'select', clearable: true, option: [], //disabled: disabled, placeholder: '璇疯緭鍏ュ簱浣嶇姸鎬�;', + highSelectAttrs: { + prop: 'placeStatus_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_BOOL, + }, }, { label: '搴撲綅绫诲瀷', @@ -180,13 +222,26 @@ option: [], //disabled: disabled, placeholder: '璇疯緭鍏ュ簱浣嶇被鍨�', + highSelectAttrs: { + prop: 'storageTypeNo_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_BOOL, + }, }, { label: '鍖哄煙缂栧彿', prop: 'areaCode', - el: 'input', + el: 'select', + option: [], //disabled: disabled, placeholder: '璇疯緭鍏ュ尯鍩熺紪鍙�', + highSelectAttrs: { + prop: 'areaCode_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_STRING, + }, }, // { // label: '搴撳尯鍚嶇О', @@ -212,6 +267,12 @@ option: [], //disabled: disabled, placeholder: '璇疯緭鍏ユ槸鍚﹂攣瀹�', + highSelectAttrs: { + prop: 'isLock_FilterMode', + el: 'select', + placeholder: '璇烽�夋嫨', + options: FILTER_MODE_OPTIONS_BOOL, + }, }, // { // label: '鏄惁绌烘墭(2:鍚�,1:鏄�)', @@ -222,27 +283,27 @@ // //disabled: disabled, // placeholder: '璇疯緭鍏ユ槸鍚︾┖鎵�(2:鍚�,1:鏄�)', // }, - { - label: '鍏ュ簱鏃堕棿', - prop: 'inStockTime', - el: (props: any, { attrs }: SetupContext) => { - return h(dateTimePickerRange, { - ...props, - clearable: true, - ...attrs, - }) - }, - width: '100%', - //disabled: disabled, - placeholder: '璇疯緭鍏ュ叆搴撴椂闂�', - }, - { - label: '澶囨敞', - prop: 'remark', - el: 'input', - //disabled: disabled, - placeholder: '璇疯緭鍏ュ娉�', - }, + // { + // label: '鍏ュ簱鏃堕棿', + // prop: 'inStockTime', + // el: (props: any, { attrs }: SetupContext) => { + // return h(dateTimePickerRange, { + // ...props, + // clearable: true, + // ...attrs, + // }) + // }, + // width: '100%', + // //disabled: disabled, + // placeholder: '璇疯緭鍏ュ叆搴撴椂闂�', + // }, + // { + // label: '澶囨敞', + // prop: 'remark', + // el: 'input', + // //disabled: disabled, + // placeholder: '璇疯緭鍏ュ娉�', + // }, // { // label: '鍐椾綑瀛楁1 - 棰勭暀鎵╁睍鐢ㄩ��', // prop: 'redundantField1', @@ -305,31 +366,39 @@ } const commonGetFormData = () => { const data = { - materialId: formData.value.materialId || '', materialName: formData.value.materialName || '', + materialName_FilterMode: formData.value.materialName_FilterMode || '', containerNo: formData.value.containerNo || '', + containerNo_FilterMode: formData.value.containerNo_FilterMode || '', containerStatus: formData.value.containerStatus || '', + containerStatus_FilterMode: + formData.value.containerStatus_FilterMode || '', containerType: formData.value.containerType || '', + containerType_FilterMode: formData.value.containerType_FilterMode || '', materialNo: formData.value.materialNo || '', + materialNo_FilterMode: formData.value.materialNo_FilterMode || '', stockNumber: formData.value.stockNumber || '', - materialBatch: formData.value.materialBatch || '', + stockNumber_FilterMode: formData.value.stockNumber_FilterMode || '', supplierCode: formData.value.supplierCode || '', + supplierCode_FilterMode: formData.value.supplierCode_FilterMode || '', materialModel: formData.value.materialModel || '', + materialModel_FilterMode: formData.value.materialModel_FilterMode || '', placeNo: formData.value.placeNo || '', + placeNo_FilterMode: formData.value.placeNo_FilterMode || '', placeStatus: formData.value.placeStatus || '', - storageTypeNo: formData.value.storageTypeNo || 1, + placeStatus_FilterMode: formData.value.placeStatus_FilterMode || '', + storageTypeNo: formData.value.storageTypeNo || '', + storageTypeNo_FilterMode: formData.value.storageTypeNo_FilterMode || '', areaCode: formData.value.areaCode || '', + areaCode_FilterMode: formData.value.areaCode_FilterMode || '', areaName: formData.value.areaName || '', - checkStatus: formData.value.checkStatus || '', + areaName_FilterMode: formData.value.areaName_FilterMode || '', isLock: formData.value.isLock || '', - emptyContainer: formData.value.emptyContainer || '', + isLock_FilterMode: formData.value.isLock_FilterMode || '', inStockTime: formData.value.inStockTime || '', remark: formData.value.remark || '', - redundantField1: formData.value.redundantField1 || '', - redundantField2: formData.value.redundantField2 || '', - redundantField3: formData.value.redundantField3 || '', + remark_FilterMode: formData.value.remark_FilterMode || '', creationTime: formData.value.creationTime || '', - lastModificationTime: formData.value.lastModificationTime || '', } return data } @@ -351,6 +420,7 @@ * 閲嶇疆鏌ヨ */ const onReset = async () => { + onResetForHighSelect() //閲嶇疆鍏叡select鏌ヨ formData.value = {} formData.value.materialId = '' formData.value.materialName = '' @@ -396,6 +466,15 @@ })) } } + const updateFormAreaOptions = (propName: string, enumData: any[]) => { + const item = formItems.find((item) => item.prop === propName) + if (item && enumData) { + item.options = enumData.map((item) => ({ + label: item.areaName, + value: item.areaNo, + })) + } + } /** * 閫氱敤鏌ヨ鏋氫妇 */ @@ -431,6 +510,8 @@ EnumName: 'YesNoEnum', }) updateFormItemOptions('emptyContainer', yesNoEnumEnum2) + const areaList = await getAreaAreaDataList() + updateFormAreaOptions('areaCode', areaList) } commonQueryEnumForFrom() formData.value.storageTypeNo = 1 @@ -442,6 +523,36 @@ updateCheckData() } + const onResetForHighSelect = async () => { + formData.value.materialName_FilterMode = 1 + formData.value.containerNo_FilterMode = 1 + formData.value.containerStatus_FilterMode = 2 + formData.value.containerType_FilterMode = 2 + formData.value.materialNo_FilterMode = 1 + formData.value.stockNumber_FilterMode = 2 + formData.value.materialBatch_FilterMode = 1 + formData.value.supplierCode_FilterMode = 1 + formData.value.materialModel_FilterMode = 1 + formData.value.placeNo_FilterMode = 1 + formData.value.placeStatus_FilterMode = 2 + formData.value.storageTypeNo_FilterMode = 2 + formData.value.areaCode_FilterMode = 1 + formData.value.areaName_FilterMode = 1 + formData.value.checkStatus_FilterMode = 2 + formData.value.isLock_FilterMode = 2 + formData.value.emptyContainer_FilterMode = 2 + formData.value.remark_FilterMode = 1 + formData.value.redundantField1_FilterMode = 1 + formData.value.redundantField2_FilterMode = 1 + formData.value.redundantField3_FilterMode = 1 + } + + commonQueryEnumForFrom() + onResetForHighSelect() //閲嶇疆鍏叡select鏌ヨ + + /** + * 寮圭獥鎵撳紑鑾峰彇璇︽儏 + */ watch(() => current.value, onOpen) return { -- Gitblit v1.9.3