From 9eaf758e97367dbc2eca2bdbdc92ab39e08be9d0 Mon Sep 17 00:00:00 2001
From: zs <zhousong@weben-smart.com>
Date: 周四, 15 5月 2025 13:12:17 +0800
Subject: [PATCH] Merge branch 'master' of http://222.71.245.114:9086/r/HIA24016N_PipeLineDemo

---
 HIAWms/hiawms_web/src/widgets/HIAWms/Controllers/WmsMaterialTypeQueryDrawer.tsx |  298 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 298 insertions(+), 0 deletions(-)

diff --git a/HIAWms/hiawms_web/src/widgets/HIAWms/Controllers/WmsMaterialTypeQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/HIAWms/Controllers/WmsMaterialTypeQueryDrawer.tsx
new file mode 100644
index 0000000..fb5bc71
--- /dev/null
+++ b/HIAWms/hiawms_web/src/widgets/HIAWms/Controllers/WmsMaterialTypeQueryDrawer.tsx
@@ -0,0 +1,298 @@
+import { 
+  ref, 
+  onMounted, 
+  reactive, 
+  computed, 
+  Ref, 
+  watch, 
+  SetupContext, 
+  h, 
+} from 'vue' 
+import { injectModel } from '@/libs/Provider/Provider' 
+import { WmsMaterialTypeDrawer } from '../Models/WmsMaterialTypeDrawer' 
+import { ElMessage } from 'element-plus' 
+import isEqual from 'lodash/isEqual' 
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' 
+import { cloneDeep } from 'lodash' 
+// 寮曞叆鍏叡閫夐」閰嶇疆 
+import {  
+  FILTER_MODE_OPTIONS_STRING,  
+  FILTER_MODE_OPTIONS_NUM, 
+  FILTER_MODE_OPTIONS_BOOL 
+} from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions'; 
+import {  
+  BOOLEAN_OPTIONS 
+} from '@/utils/commonOptionConstants'; 
+ 
+export const useWmsMaterialTypeQueryDrawer = (props: any, ctx?: any) => { 
+  const wmsMaterialTypeDrawer = injectModel<WmsMaterialTypeDrawer>('WmsMaterialTypeDrawer') 
+  /** 
+   * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁 
+   */ 
+  const initiateData: Ref<Record<string, any>> = ref({}) 
+  const formData = ref<Record<string, any>>({}) 
+  // 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 datePickerRange = (attrs) => { 
+    return ( 
+      <el-date-picker 
+        type="daterange" 
+        value-format="YYYY-MM-DD HH:mm:ss" 
+        start-placeholder="寮�濮嬫棩鏈�" 
+        end-placeholder="缁撴潫鏃ユ湡" 
+        {...attrs} 
+      ></el-date-picker> 
+    ) 
+  } 
+ 
+  const dateTimePickerRange = (attrs) => { 
+    return ( 
+      <el-date-picker 
+        type="datetimerange" 
+        value-format="YYYY-MM-DD HH:mm:ss" 
+        start-placeholder="寮�濮嬫棩鏈�" 
+        end-placeholder="缁撴潫鏃ユ湡" 
+        {...attrs} 
+      ></el-date-picker> 
+    ) 
+  } 
+ 
+  const visible = computed({ 
+    get() { 
+      return props.modelValue 
+    }, 
+    set(val) { 
+      ctx.emit('update:modelValue', val) 
+    }, 
+  }) 
+  /** 
+   * 楂樼骇鏌ヨ鐨刦orm瀛楁 
+   */ 
+  const formItems = reactive([ 
+                    { 
+                   label: '绫诲瀷鎻忚堪', 
+                   prop: 'materialTypeDesc', 
+                   el: 'input', 
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏ョ被鍨嬫弿杩�', 
+                   highSelectAttrs:{ 
+                     prop: 'materialTypeDesc_FilterMode', 
+                     el: 'select',  
+                     placeholder: '璇烽�夋嫨',  
+                     options:FILTER_MODE_OPTIONS_STRING 
+                   } 
+                }, 
+                { 
+                   label: '绫诲瀷缂栫爜', 
+                   prop: 'materialTypeCode', 
+                   el: 'input', 
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏ョ被鍨嬬紪鐮�', 
+                   highSelectAttrs:{ 
+                     prop: 'materialTypeCode_FilterMode', 
+                     el: 'select',  
+                     placeholder: '璇烽�夋嫨',  
+                     options:FILTER_MODE_OPTIONS_STRING 
+                   } 
+                }, 
+                { 
+                   label: '鍒涘缓鏃堕棿', 
+                   prop: 'creationTime', 
+                   el: (props: any, { attrs }: SetupContext) => { 
+                     return h(dateTimePickerRange, {  
+                       ...props,
+                       clearable: true, 
+                       ...attrs,  
+                     })  
+                   },
+                   width: '100%',
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏ュ垱寤烘椂闂�', 
+                   isDateControl: true, // 鏄惧紡鏍囪涓烘棩鏈熸帶浠� 
+                }, 
+                { 
+                   label: '鏈�鍚庝慨鏀规椂闂�', 
+                   prop: 'lastModificationTime', 
+                   el: (props: any, { attrs }: SetupContext) => { 
+                     return h(dateTimePickerRange, {  
+                       ...props,
+                       clearable: true, 
+                       ...attrs,  
+                     })  
+                   },
+                   width: '100%',
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏ユ渶鍚庝慨鏀规椂闂�', 
+                   isDateControl: true, // 鏄惧紡鏍囪涓烘棩鏈熸帶浠� 
+                }, 
+                { 
+                   label: '', 
+                   prop: 'creatorName', 
+                   el: 'input', 
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏�', 
+                   highSelectAttrs:{ 
+                     prop: 'creatorName_FilterMode', 
+                     el: 'select',  
+                     placeholder: '璇烽�夋嫨',  
+                     options:FILTER_MODE_OPTIONS_STRING 
+                   } 
+                }, 
+                { 
+                   label: '', 
+                   prop: 'lastModifierName', 
+                   el: 'input', 
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏�', 
+                   highSelectAttrs:{ 
+                     prop: 'lastModifierName_FilterMode', 
+                     el: 'select',  
+                     placeholder: '璇烽�夋嫨',  
+                     options:FILTER_MODE_OPTIONS_STRING 
+                   } 
+                }, 
+                { 
+                   label: '澶囨敞', 
+                   prop: 'remark', 
+                   el: 'input', 
+                   //disabled: disabled, 
+                   placeholder: '璇疯緭鍏ュ娉�', 
+                   highSelectAttrs:{ 
+                     prop: 'remark_FilterMode', 
+                     el: 'select',  
+                     placeholder: '璇烽�夋嫨',  
+                     options:FILTER_MODE_OPTIONS_STRING 
+                   } 
+                },  
+  ]) 
+  /** 
+   * 鏍¢獙鏄惁鏈夋暟鎹彉鍖� 
+   */ 
+  const checkIsEqualObject = () => { 
+    const data = { 
+      formData: formData.value, 
+    } 
+    const check = isEqual(initiateData.value, data) 
+    return check 
+  } 
+  const commonGetFormData=()=>{ 
+    const data = { 
+      materialTypeDesc: formData.value.materialTypeDesc || '', 
+materialTypeDesc_FilterMode: formData.value.materialTypeDesc_FilterMode || '', 
+materialTypeCode: formData.value.materialTypeCode || '', 
+materialTypeCode_FilterMode: formData.value.materialTypeCode_FilterMode || '', 
+creationTime: formData.value.creationTime || '', 
+lastModificationTime: formData.value.lastModificationTime || '', 
+creatorName: formData.value.creatorName || '', 
+creatorName_FilterMode: formData.value.creatorName_FilterMode || '', 
+lastModifierName: formData.value.lastModifierName || '', 
+lastModifierName_FilterMode: formData.value.lastModifierName_FilterMode || '', 
+remark: formData.value.remark || '', 
+remark_FilterMode: formData.value.remark_FilterMode || '',  
+    } 
+    return data; 
+  } 
+  const onClose = (done: () => void) => { 
+    if (visible.value) { 
+      visible.value = false 
+      const data =commonGetFormData(); 
+      ctx.emit('close', data) 
+    } 
+  } 
+  /** 
+   * 纭鏌ヨ 
+   */ 
+  const onConfirmQuery = async () => { 
+    const data =commonGetFormData(); 
+    ctx.emit('confirmQuery', data) 
+  } 
+  /**  
+   * 閲嶇疆鍏叡select鏌ヨ  
+   */  
+  const onResetForHighSelect = async () => {  
+    formData.value.materialTypeDesc_FilterMode = 1 
+formData.value.materialTypeCode_FilterMode = 1 
+formData.value.creatorName_FilterMode = 1 
+formData.value.lastModifierName_FilterMode = 1 
+formData.value.remark_FilterMode = 1  
+  }  
+  /** 
+   * 閲嶇疆鏌ヨ 
+   */ 
+  const onReset = async () => { 
+    formData.value = {} 
+    onResetForHighSelect();//閲嶇疆鍏叡select鏌ヨ  
+    formData.value.materialTypeDesc = '' 
+formData.value.materialTypeCode = '' 
+formData.value.creationTime = '' 
+formData.value.lastModificationTime = '' 
+formData.value.creatorName = '' 
+formData.value.lastModifierName = '' 
+formData.value.remark = ''  
+    //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢 
+    ctx.emit('restQuery'); 
+  } 
+ 
+  const updateCheckData = () => { 
+    initiateData.value = { 
+      formData: { 
+        ...formData.value, 
+      }, 
+    } 
+  } 
+  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 commonQueryEnumForFrom = async () => { 
+     
+  } 
+  commonQueryEnumForFrom() 
+  onResetForHighSelect();//閲嶇疆鍏叡select鏌ヨ  
+  /** 
+   * 寮圭獥鎵撳紑鑾峰彇璇︽儏 
+   */ 
+  const onOpen = async () => { 
+    disabled.value = false 
+    updateCheckData() 
+  } 
+ 
+  watch(() => current.value, onOpen) 
+ 
+  return { 
+    formItems, 
+    formData, 
+    visible, 
+    formRef, 
+    onOpen, 
+    onClose, 
+    onConfirmQuery, 
+    onReset, 
+  } 
+} 

--
Gitblit v1.9.3