From 054c4b3be788b870026fdd1da916be18931161e7 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周三, 30 4月 2025 16:24:31 +0800 Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/HIA24016N_PipeLineDemo --- HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx | 101 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 81 insertions(+), 20 deletions(-) diff --git a/HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.ts b/HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx similarity index 74% rename from HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.ts rename to HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx index 377b8fb..2e2946f 100644 --- a/HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.ts +++ b/HIAWms/web/src/widgets/HIAWms/Controllers/WmsMaterialDrawer.tsx @@ -1,4 +1,13 @@ -import { ref, onMounted, reactive, computed, Ref, watch } from 'vue' +import { + ref, + onMounted, + reactive, + computed, + Ref, + watch, + SetupContext, + h, +} from 'vue' import { injectModel } from '@/libs/Provider/Provider' import { WmsMaterialDrawer } from '../Models/WmsMaterialDrawer' import { ElMessage } from 'element-plus' @@ -16,9 +25,23 @@ // ref const formRef = ref() + const disabled = ref(false) + const current = computed(() => { return props.row || null }) + + const inputNumber = (attrs) => { + return ( + <el-input-number + min="1" + step="1" + precision="0" + {...attrs} + ></el-input-number> + ) + } + const visible = computed({ get() { return props.modelValue @@ -35,6 +58,7 @@ label: '鐗╂枡缂栫爜', prop: 'materialCode', el: 'input', + disabled: disabled, placeholder: '璇疯緭鍏ョ墿鏂欑紪鐮�', rules: [{ required: true, message: '鐗╂枡缂栫爜涓嶈兘涓虹┖', trigger: 'blur' }], }, @@ -50,11 +74,7 @@ prop: 'purchaseType', el: 'select', placeholder: '璇烽�夋嫨閲囪喘绫诲瀷', - options: [ - { label: '绫诲瀷1', value: 1 }, - { label: '绫诲瀷2', value: 2 }, - // Add all enum values - ], + options: [], rules: [{ required: true, message: '璇烽�夋嫨閲囪喘绫诲瀷', trigger: 'change' }], }, { @@ -62,11 +82,7 @@ prop: 'materialType', el: 'select', placeholder: '璇烽�夋嫨鐗╂枡绫诲瀷', - options: [ - { label: '绫诲瀷A', value: 1 }, - { label: '绫诲瀷B', value: 2 }, - // Add all enum values - ], + options: [], rules: [{ required: true, message: '璇烽�夋嫨鐗╂枡绫诲瀷', trigger: 'change' }], }, { @@ -84,7 +100,14 @@ { label: '澶栧緞(mm)', prop: 'outerDiameter', - el: 'input-number', + el: (props: any, { attrs }: SetupContext) => { + return h(inputNumber, { + ...props, + clearable: true, + ...attrs, + }) + }, + width: '100%', placeholder: '璇疯緭鍏ュ寰�', step: 0.01, precision: 2, @@ -92,7 +115,14 @@ { label: '澹佸帤(mm)', prop: 'wallThickness', - el: 'input-number', + el: (props: any, { attrs }: SetupContext) => { + return h(inputNumber, { + ...props, + clearable: true, + ...attrs, + }) + }, + width: '100%', placeholder: '璇疯緭鍏ュ鍘�', step: 0.01, precision: 2, @@ -106,7 +136,14 @@ { label: '闀垮害(m)', prop: 'length', - el: 'input-number', + el: (props: any, { attrs }: SetupContext) => { + return h(inputNumber, { + ...props, + clearable: true, + ...attrs, + }) + }, + width: '100%', placeholder: '璇疯緭鍏ラ暱搴�', step: 0.1, precision: 2, @@ -115,10 +152,7 @@ label: '鏄惁涓绘敮绠�', prop: 'isMainBranch', el: 'select', - options: [ - { label: '鏄�', value: 1 }, - { label: '鍚�', value: 2 }, - ], + options: [], }, { label: '鐢熶骇宸ュ巶', @@ -184,7 +218,7 @@ wallThickness: formData.value.wallThickness, materialQuality: formData.value.materialQuality, length: formData.value.length, - isMainBranch: formData.value.isMainBranch === 1, + isMainBranch: formData.value.isMainBranch, factory: formData.value.factory, certification: formData.value.certification, remark: formData.value.remark, @@ -206,10 +240,34 @@ }, } } + 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 onOpen = async () => { + const materialTypeEnum = await wmsMaterialDrawer.getWmsEnumData({ + EnumName: 'MaterialTypeEnum', + }) + updateFormItemOptions('materialType', materialTypeEnum) + + const purchaseTypeEnum = await wmsMaterialDrawer.getWmsEnumData({ + EnumName: 'PurchaseTypeEnum', + }) + updateFormItemOptions('purchaseType', purchaseTypeEnum) + + const yesOrNoTypeEnum = await wmsMaterialDrawer.getWmsEnumData({ + EnumName: 'YesNoEnum', + }) + updateFormItemOptions('isMainBranch', yesOrNoTypeEnum) + if (current.value) { const res = await wmsMaterialDrawer.getWmsMaterialDetail(current.value) @@ -224,15 +282,18 @@ wallThickness: res.wallThickness, materialQuality: res.materialQuality, length: res.length, - isMainBranch: res.isMainBranch ? 1 : 2, + isMainBranch: res.isMainBranch, factory: res.factory, certification: res.certification, remark: res.remark, id: res.id, } + disabled.value = true updateCheckData() } else { formData.value = {} + + disabled.value = false updateCheckData() } } -- Gitblit v1.9.3