From 3a4b2114c4bb687ccbc09b585b7d650f94e16979 Mon Sep 17 00:00:00 2001
From: zs <zhousong@weben-smart.com>
Date: 周一, 19 5月 2025 18:03:27 +0800
Subject: [PATCH] 单据记录高级查询

---
 HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Controllers/WmsInOutStockOrderQueryDrawer.tsx |  234 +++++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 180 insertions(+), 54 deletions(-)

diff --git a/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Controllers/WmsInOutStockOrderQueryDrawer.tsx b/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Controllers/WmsInOutStockOrderQueryDrawer.tsx
index 8ffb0d0..3b06328 100644
--- a/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Controllers/WmsInOutStockOrderQueryDrawer.tsx
+++ b/HIAWms/hiawms_web/src/widgets/WmsInOutStockOrder/Controllers/WmsInOutStockOrderQueryDrawer.tsx
@@ -14,9 +14,16 @@
 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 useWmsInOutStockOrderQueryDrawer = (props: any, ctx?: any) => {
-  const wmsInOutStockOrderDrawer = injectModel<WmsInOutStockOrderDrawer>(
+  const WmsInOutStockOrderDrawer = injectModel<WmsInOutStockOrderDrawer>(
     'WmsInOutStockOrderDrawer'
   )
   /**
@@ -77,7 +84,7 @@
     },
   })
   /**
-   * 娣诲姞鐨刦orm瀛楁
+   * 楂樼骇鏌ヨ鐨刦orm瀛楁
    */
   const formItems = reactive([
     {
@@ -86,13 +93,57 @@
       el: 'input',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ュ崟鎹紪鍙�',
+      highSelectAttrs: {
+        prop: 'orderNo_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_STRING,
+      },
     },
     {
       label: '鍗曟嵁鐘舵��',
       prop: 'orderStatus',
       el: 'select',
+      clearable: true,
+      option: [],
       //disabled: disabled,
       placeholder: '璇疯緭鍏ュ崟鎹姸鎬�',
+      highSelectAttrs: {
+        prop: 'orderStatus_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_BOOL,
+      },
+    },
+    {
+      label: '鍗曟嵁绫诲瀷',
+      prop: 'orderType',
+      el: 'select',
+      clearable: true,
+      option: [],
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ崟鎹被鍨�',
+      highSelectAttrs: {
+        prop: 'orderType_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_BOOL,
+      },
+    },
+    {
+      label: '鎿嶄綔绫诲瀷',
+      prop: 'stockType',
+      el: 'select',
+      clearable: true,
+      option: [],
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ユ搷浣滅被鍨�',
+      highSelectAttrs: {
+        prop: 'stockType_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_BOOL,
+      },
     },
     {
       label: '鐗╂枡鍚嶇О',
@@ -100,6 +151,12 @@
       el: 'input',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�',
+      highSelectAttrs: {
+        prop: 'materialName_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_STRING,
+      },
     },
     {
       label: '鐗╂枡浠跺彿',
@@ -107,6 +164,12 @@
       el: 'input',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ョ墿鏂欎欢鍙�',
+      highSelectAttrs: {
+        prop: 'materialNo_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_STRING,
+      },
     },
     {
       label: '鍨嬪彿',
@@ -114,6 +177,12 @@
       el: 'input',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ュ瀷鍙�',
+      highSelectAttrs: {
+        prop: 'materialModel_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_STRING,
+      },
     },
     {
       label: '鎵规鍙�',
@@ -121,20 +190,12 @@
       el: 'input',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ユ壒娆″彿',
-    },
-    {
-      label: '鍗曟嵁绫诲瀷',
-      prop: 'orderType',
-      el: 'select',
-      //disabled: disabled,
-      placeholder: '璇疯緭鍏ュ崟鎹被鍨�',
-    },
-    {
-      label: '鎿嶄綔绫诲瀷',
-      prop: 'stockType',
-      el: 'select',
-      //disabled: disabled,
-      placeholder: '璇疯緭鍏ユ搷浣滅被鍨�',
+      highSelectAttrs: {
+        prop: 'materialBatch_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_STRING,
+      },
     },
     {
       label: '鍗曟嵁鏁伴噺',
@@ -151,6 +212,12 @@
       precision: 0,
       //disabled: disabled,
       placeholder: '璇疯緭鍏ュ崟鎹暟閲�',
+      highSelectAttrs: {
+        prop: 'materialNumber_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_NUM,
+      },
     },
     {
       label: '涓嬪彂鏁伴噺',
@@ -167,6 +234,12 @@
       precision: 0,
       //disabled: disabled,
       placeholder: '璇疯緭鍏ヤ笅鍙戞暟閲�',
+      highSelectAttrs: {
+        prop: 'distributeNumber_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_NUM,
+      },
     },
     {
       label: '瀹屾垚鏁伴噺',
@@ -183,6 +256,12 @@
       precision: 0,
       //disabled: disabled,
       placeholder: '璇疯緭鍏ュ畬鎴愭暟閲�',
+      highSelectAttrs: {
+        prop: 'completeNumber_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_NUM,
+      },
     },
     {
       label: '浼樺厛绾�',
@@ -199,6 +278,12 @@
       precision: 0,
       //disabled: disabled,
       placeholder: '璇疯緭鍏ヤ紭鍏堢骇',
+      highSelectAttrs: {
+        prop: 'priority_FilterMode',
+        el: 'select',
+        placeholder: '璇烽�夋嫨',
+        options: FILTER_MODE_OPTIONS_NUM,
+      },
     },
     {
       label: '鍏宠仈璁″垝缂栧彿',
@@ -206,6 +291,25 @@
       el: 'input',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ュ叧鑱旇鍒掔紪鍙�',
+      highSelectAttrs: {
+        prop: 'planNo_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,
+      },
     },
     {
       label: '鎿嶄綔鏃堕棿',
@@ -220,24 +324,7 @@
       width: '100%',
       //disabled: disabled,
       placeholder: '璇疯緭鍏ユ搷浣滄椂闂�',
-    },
-    {
-      label: '澶囨敞',
-      prop: 'remark',
-      el: 'input',
-      //disabled: disabled,
-      placeholder: '璇疯緭鍏ュ娉�',
-    },
-    {
-      label: '鏄惁绂佺敤',
-      prop: 'isDisabled',
-      el: 'select',
-      //disabled: disabled,
-      placeholder: '璇疯緭鍏ユ槸鍚︾鐢�',
-      options: [
-        { label: '鏄�', value: true },
-        { label: '鍚�', value: false },
-      ],
+      isDateControl: true, // 鏄惧紡鏍囪涓烘棩鏈熸帶浠�
     },
     {
       label: '鍒涘缓鏃堕棿',
@@ -251,7 +338,8 @@
       },
       width: '100%',
       //disabled: disabled,
-      placeholder: '璇疯緭鍏ュ垱寤烘椂闂�',
+      placeholder: '璇疯緭鍏�',
+      isDateControl: true, // 鏄惧紡鏍囪涓烘棩鏈熸帶浠�
     },
   ])
   /**
@@ -267,22 +355,37 @@
   const commonGetFormData = () => {
     const data = {
       orderNo: formData.value.orderNo || '',
+      orderNo_FilterMode: formData.value.orderNo_FilterMode || '',
       orderStatus: formData.value.orderStatus || '',
+      orderStatus_FilterMode: formData.value.orderStatus_FilterMode || '',
       materialName: formData.value.materialName || '',
+      materialName_FilterMode: formData.value.materialName_FilterMode || '',
       materialNo: formData.value.materialNo || '',
+      materialNo_FilterMode: formData.value.materialNo_FilterMode || '',
       materialModel: formData.value.materialModel || '',
+      materialModel_FilterMode: formData.value.materialModel_FilterMode || '',
       materialBatch: formData.value.materialBatch || '',
+      materialBatch_FilterMode: formData.value.materialBatch_FilterMode || '',
       orderType: formData.value.orderType || '',
+      orderType_FilterMode: formData.value.orderType_FilterMode || '',
       stockType: formData.value.stockType || '',
+      stockType_FilterMode: formData.value.stockType_FilterMode || '',
       materialNumber: formData.value.materialNumber || '',
+      materialNumber_FilterMode: formData.value.materialNumber_FilterMode || '',
       distributeNumber: formData.value.distributeNumber || '',
+      distributeNumber_FilterMode:
+        formData.value.distributeNumber_FilterMode || '',
       completeNumber: formData.value.completeNumber || '',
+      completeNumber_FilterMode: formData.value.completeNumber_FilterMode || '',
       priority: formData.value.priority || '',
+      priority_FilterMode: formData.value.priority_FilterMode || '',
       planNo: formData.value.planNo || '',
+      planNo_FilterMode: formData.value.planNo_FilterMode || '',
       operateTime: formData.value.operateTime || '',
       remark: formData.value.remark || '',
-      isDisabled: formData.value.isDisabled || '',
+      remark_FilterMode: formData.value.remark_FilterMode || '',
       creationTime: formData.value.creationTime || '',
+      lastModificationTime: formData.value.lastModificationTime || '',
     }
     return data
   }
@@ -301,25 +404,47 @@
     ctx.emit('confirmQuery', data)
   }
   /**
+   * 閲嶇疆鍏叡select鏌ヨ
+   */
+  const onResetForHighSelect = async () => {
+    formData.value.orderNo_FilterMode = 1
+    formData.value.orderStatus_FilterMode = 2
+    formData.value.materialName_FilterMode = 1
+    formData.value.materialNo_FilterMode = 1
+    formData.value.materialModel_FilterMode = 1
+    formData.value.materialBatch_FilterMode = 1
+    formData.value.orderType_FilterMode = 2
+    formData.value.stockType_FilterMode = 2
+    formData.value.materialNumber_FilterMode = 2
+    formData.value.distributeNumber_FilterMode = 2
+    formData.value.completeNumber_FilterMode = 2
+    formData.value.priority_FilterMode = 2
+    formData.value.planNo_FilterMode = 1
+    formData.value.remark_FilterMode = 1
+  }
+  /**
    * 閲嶇疆鏌ヨ
    */
   const onReset = async () => {
     formData.value = {}
-    formData.value.OrderNo = ''
-    formData.value.OrderStatus = ''
-    formData.value.MaterialName = ''
-    formData.value.MaterialNo = ''
-    formData.value.MaterialModel = ''
-    formData.value.MaterialBatch = ''
-    formData.value.OrderType = ''
-    formData.value.StockType = ''
-    formData.value.MaterialNumber = ''
-    formData.value.DistributeNumber = ''
-    formData.value.CompleteNumber = ''
-    formData.value.Priority = ''
-    formData.value.PlanNo = ''
-    formData.value.OperateTime = ''
-    formData.value.Remark = ''
+    onResetForHighSelect() //閲嶇疆鍏叡select鏌ヨ
+    formData.value.orderNo = ''
+    formData.value.orderStatus = ''
+    formData.value.materialName = ''
+    formData.value.materialNo = ''
+    formData.value.materialModel = ''
+    formData.value.materialBatch = ''
+    formData.value.orderType = ''
+    formData.value.stockType = ''
+    formData.value.materialNumber = ''
+    formData.value.distributeNumber = ''
+    formData.value.completeNumber = ''
+    formData.value.priority = ''
+    formData.value.planNo = ''
+    formData.value.operateTime = ''
+    formData.value.remark = ''
+    formData.value.creationTime = ''
+    formData.value.lastModificationTime = ''
     //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
     ctx.emit('restQuery')
   }
@@ -344,20 +469,21 @@
    * 閫氱敤鏌ヨ鏋氫妇
    */
   const commonQueryEnumForFrom = async () => {
-    const orderStatusEnumEnum = await wmsInOutStockOrderDrawer.getWmsEnumData({
+    const orderStatusEnumEnum = await WmsInOutStockOrderDrawer.getWmsEnumData({
       EnumName: 'OrderStatusEnum',
     })
     updateFormItemOptions('orderStatus', orderStatusEnumEnum)
-    const orderTypeEnumEnum = await wmsInOutStockOrderDrawer.getWmsEnumData({
+    const orderTypeEnumEnum = await WmsInOutStockOrderDrawer.getWmsEnumData({
       EnumName: 'OrderTypeEnum',
     })
     updateFormItemOptions('orderType', orderTypeEnumEnum)
-    const stockTypeEnumEnum = await wmsInOutStockOrderDrawer.getWmsEnumData({
+    const stockTypeEnumEnum = await WmsInOutStockOrderDrawer.getWmsEnumData({
       EnumName: 'StockTypeEnum',
     })
     updateFormItemOptions('stockType', stockTypeEnumEnum)
   }
   commonQueryEnumForFrom()
+  onResetForHighSelect() //閲嶇疆鍏叡select鏌ヨ
   /**
    * 寮圭獥鎵撳紑鑾峰彇璇︽儏
    */

--
Gitblit v1.9.3