From 928c61ccddebc8d2c697b86ee9bee0c207330a8c Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周二, 06 5月 2025 07:18:22 +0800 Subject: [PATCH] 222 --- HIAWms/web/src/widgets/WmsStoreInfo/Controllers/WmsAreaDrawer.ts | 107 ++++++++++++++++++++++++++++++++++------------------- 1 files changed, 68 insertions(+), 39 deletions(-) diff --git a/HIAWms/web/src/widgets/WmsStoreInfo/Controllers/WmsAreaDrawer.ts b/HIAWms/web/src/widgets/WmsStoreInfo/Controllers/WmsAreaDrawer.ts index 335aeb0..a23713e 100644 --- a/HIAWms/web/src/widgets/WmsStoreInfo/Controllers/WmsAreaDrawer.ts +++ b/HIAWms/web/src/widgets/WmsStoreInfo/Controllers/WmsAreaDrawer.ts @@ -5,6 +5,10 @@ import isEqual from 'lodash/isEqual' import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' import { cloneDeep } from 'lodash' +import { + getWmsEnumData, + getStoreDataList, +} from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' export const useWmsAreaDrawer = (props: any, ctx?: any) => { const wmsAreaDrawer = injectModel<WmsAreaDrawer>('wmsAreaDrawer') @@ -15,6 +19,7 @@ const formData = ref<Record<string, any>>({}) // ref const formRef = ref() + const disabled = ref(false) const current = computed(() => { return props.row || null @@ -35,6 +40,7 @@ label: '搴撳尯缂栧彿', prop: 'areaNo', el: 'input', + disabled: disabled, placeholder: '璇疯緭鍏ュ簱鍖虹紪鍙�', rules: [{ required: true, message: '搴撳尯缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }], }, @@ -46,20 +52,10 @@ rules: [{ required: true, message: '搴撳尯鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' }], }, { - label: '鎻忚堪', - prop: 'areaDesc', - el: 'input', - placeholder: '璇疯緭鍏ユ弿杩�', - }, - { label: '搴撳尯鐘舵��', prop: 'areaStatus', el: 'select', - options: [ - { label: '鍚敤', value: 'Active' }, - { label: '绂佺敤', value: 'Inactive' }, - // 鏍规嵁瀹為檯鐨� AreaStatusEnum 娣诲姞鏇村閫夐」 - ], + options: [], placeholder: '璇烽�夋嫨搴撳尯鐘舵��', rules: [ { required: true, message: '搴撳尯鐘舵�佷笉鑳戒负绌�', trigger: 'change' }, @@ -69,11 +65,7 @@ label: '搴撳尯绫诲瀷', prop: 'areaType', el: 'select', - options: [ - { label: '瀛樺偍鍖�', value: 'Storage' }, - { label: '瑁呭嵏鍖�', value: 'Loading' }, - // 鏍规嵁瀹為檯鐨� AreaTypeEnum 娣诲姞鏇村閫夐」 - ], + options: [], placeholder: '璇烽�夋嫨搴撳尯绫诲瀷', rules: [ { required: true, message: '搴撳尯绫诲瀷涓嶈兘涓虹┖', trigger: 'change' }, @@ -82,35 +74,35 @@ { label: '浠撳簱浠g爜', prop: 'storeCode', - el: 'input', + el: 'select', + options: [], + // storeValueAndLabel: true, placeholder: '璇疯緭鍏ヤ粨搴撲唬鐮�', }, + // { + // label: '浠撳簱鍚嶇О', + // prop: 'storeName', + // el: 'input', + // placeholder: '璇疯緭鍏ヤ粨搴撳悕绉�', + // }, + // { + // label: '鎺掑簭', + // prop: 'sort', + // el: 'input-number', + // placeholder: '璇疯緭鍏ユ帓搴�', + // rules: [{ required: true, message: '鎺掑簭涓嶈兘涓虹┖', trigger: 'blur' }], + // }, { - label: '浠撳簱鍚嶇О', - prop: 'storeName', + label: '鎻忚堪', + prop: 'areaDesc', el: 'input', - placeholder: '璇疯緭鍏ヤ粨搴撳悕绉�', - }, - { - label: '鎺掑簭', - prop: 'sort', - el: 'input-number', - placeholder: '璇疯緭鍏ユ帓搴�', - rules: [{ required: true, message: '鎺掑簭涓嶈兘涓虹┖', trigger: 'blur' }], + placeholder: '璇疯緭鍏ユ弿杩�', }, { label: '澶囨敞', prop: 'remark', el: 'input', placeholder: '璇疯緭鍏ュ娉�', - }, - { - label: '鏄惁绂佺敤', - prop: 'isDisabled', - el: 'switch', - rules: [ - { required: true, message: '鏄惁绂佺敤涓嶈兘涓虹┖', trigger: 'change' }, - ], }, ]) /** @@ -146,14 +138,15 @@ */ const onConfirm = async () => { await formRef.value?.validate() + console.log(formData.value) const data = { areaNo: formData.value.areaNo, // 搴撳尯缂栧彿 areaName: formData.value.areaName, // 搴撳尯鍚嶇О areaDesc: formData.value.areaDesc, // 鎻忚堪 areaStatus: formData.value.areaStatus, // 搴撳尯鐘舵�� areaType: formData.value.areaType, // 搴撳尯绫诲瀷 - storeCode: formData.value.storeCode, // 浠撳簱浠g爜 - storeName: formData.value.storeName, // 浠撳簱鍚嶇О + storeCode: formData.value.storeCode.areaCode, // 浠撳簱浠g爜 + storeName: formData.value.storeCode.storeName, // 浠撳簱鍚嶇О remark: formData.value.remark, // 澶囨敞 } if (!current.value) { @@ -173,10 +166,40 @@ }, } } + const updateFormItemOptions = (propName: string, enumData: any[]) => { + const item = formItems.find((item) => item.prop === propName) + if (item && enumData) { + item.options = enumData.map((item) => ({ + label: item.description, + value: item.value, + })) + } + } + const updateFormStoreOptions = (propName: string, enumData: any[]) => { + const item = formItems.find((item) => item.prop === propName) + if (item && enumData) { + item.options = enumData.map((item) => ({ + label: item.storeName, + value: item.storeCode, + })) + } + } /** * 寮圭獥鎵撳紑鑾峰彇璇︽儏 */ const onOpen = async () => { + const areaStatusEnum = await getWmsEnumData({ + EnumName: 'AreaStatusEnum', + }) + updateFormItemOptions('areaStatus', areaStatusEnum) + + const areaTypeEnum = await getWmsEnumData({ + EnumName: 'AreaTypeEnum', + }) + updateFormItemOptions('areaType', areaTypeEnum) + + const storeList = await getStoreDataList() + updateFormStoreOptions('storeCode', storeList) if (current.value) { const res = await wmsAreaDrawer.getWmsAreaDetail(current.value) @@ -187,13 +210,19 @@ areaStatus: res.areaStatus, // 搴撳尯鐘舵�� areaType: res.areaType, // 搴撳尯绫诲瀷 storeCode: res.storeCode, // 浠撳簱浠g爜 - storeName: res.storeName, // 浠撳簱鍚嶇О + // storeName: res.storeName, // 浠撳簱鍚嶇О remark: res.remark, // 澶囨敞 id: res.id, } + disabled.value = true updateCheckData() } else { - formData.value = {} + disabled.value = false + formData.value = { + areaStatus: 1, // 搴撳尯鐘舵�� + areaType: 1, // 搴撳尯绫诲瀷 + storeCode: storeList[0], + } updateCheckData() } } -- Gitblit v1.9.3