From fbd434b2aaf5e1f7035f3843508c62ea930d2549 Mon Sep 17 00:00:00 2001
From: zs <zhousong@weben-smart.com>
Date: 周三, 07 5月 2025 10:47:56 +0800
Subject: [PATCH] 高级查询

---
 HIAWms/web/src/widgets/WmsTask/Controllers/WmsTaskQueryDrawer.tsx |  715 +++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 407 insertions(+), 308 deletions(-)

diff --git a/HIAWms/web/src/widgets/WmsTask/Controllers/WmsTaskQueryDrawer.tsx b/HIAWms/web/src/widgets/WmsTask/Controllers/WmsTaskQueryDrawer.tsx
index 3edbe21..0cea796 100644
--- a/HIAWms/web/src/widgets/WmsTask/Controllers/WmsTaskQueryDrawer.tsx
+++ b/HIAWms/web/src/widgets/WmsTask/Controllers/WmsTaskQueryDrawer.tsx
@@ -1,308 +1,407 @@
-import { 
-  ref, 
-  onMounted, 
-  reactive, 
-  computed, 
-  Ref, 
-  watch, 
-  SetupContext, 
-  h, 
-} from 'vue' 
-import { injectModel } from '@/libs/Provider/Provider' 
-import { WmsTaskDrawer } from '../Models/WmsTaskDrawer' 
-import { ElMessage } from 'element-plus' 
-import isEqual from 'lodash/isEqual' 
-import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' 
-import { cloneDeep } from 'lodash' 
- 
-export const useWmsTaskQueryDrawer = (props: any, ctx?: any) => { 
-  const wmsTaskDrawer = injectModel<WmsTaskDrawer>('WmsTaskDrawer') 
-  /** 
-   * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁 
-   */ 
-  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 visible = computed({ 
-    get() { 
-      return props.modelValue 
-    }, 
-    set(val) { 
-      ctx.emit('update:modelValue', val) 
-    }, 
-  }) 
-  /** 
-   * 娣诲姞鐨刦orm瀛楁 
-   */ 
-  const formItems = reactive([ 
-                    { 
-                   label: '宸烽亾', 
-                   prop: 'aisle', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ュ贩閬�', 
-                }, 
-                { 
-                   label: '鎵樼洏缂栧彿', 
-                   prop: 'containerNo', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ユ墭鐩樼紪鍙�', 
-                }, 
-                { 
-                   label: '鍫嗗灈鏈篒D', 
-                   prop: 'dodeviceId', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ュ爢鍨涙満ID', 
-                }, 
-                { 
-                   label: '璁惧绫诲瀷', 
-                   prop: 'dodevicetype', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヨ澶囩被鍨�', 
-                }, 
-                { 
-                   label: '涓嬩釜浠诲姟鏄惁鐢熸垚鎴愬姛', 
-                   prop: 'isNextTask', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヤ笅涓换鍔℃槸鍚︾敓鎴愭垚鍔�', 
-                }, 
-                { 
-                   label: 'WCS鏄惁鍙互璇诲彇', 
-                   prop: 'isRead', 
-                   el: 'select', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏CS鏄惁鍙互璇诲彇', 
-                }, 
-                { 
-                   label: '鍙彉鍙橀噺1', 
-                   prop: 'mutableParam1', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ュ彲鍙樺彉閲�1', 
-                }, 
-                { 
-                   label: '鍙彉鍙橀噺2', 
-                   prop: 'mutableParam2', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ュ彲鍙樺彉閲�2', 
-                }, 
-                { 
-                   label: '鍙彉鍙橀噺3', 
-                   prop: 'mutableParam3', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ュ彲鍙樺彉閲�3', 
-                }, 
-                { 
-                   label: '瀛愪换鍔$被鍨�', 
-                   prop: 'sonTaskType', 
-                   el: 'select', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ュ瓙浠诲姟绫诲瀷', 
-                }, 
-                { 
-                   label: '鏉ユ簮鍗曟嵁鍙�', 
-                   prop: 'sourceOrderNo', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ユ潵婧愬崟鎹彿', 
-                }, 
-                { 
-                   label: '璧峰搴撲綅', 
-                   prop: 'sourcePlace', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヨ捣濮嬪簱浣�', 
-                }, 
-                { 
-                   label: '璁惧浠诲姟鐘舵��', 
-                   prop: 'taskDodeviceStatus', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヨ澶囦换鍔$姸鎬�', 
-                }, 
-                { 
-                   label: '浠诲姟绛夌骇', 
-                   prop: 'taskLevel', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヤ换鍔$瓑绾�', 
-                }, 
-                { 
-                   label: '浠诲姟鍙�', 
-                   prop: 'taskNo', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヤ换鍔″彿', 
-                }, 
-                { 
-                   label: '浠诲姟鐘舵��', 
-                   prop: 'taskStatus', 
-                   el: 'select', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヤ换鍔$姸鎬�', 
-                }, 
-                { 
-                   label: '浠诲姟绫诲瀷', 
-                   prop: 'taskType', 
-                   el: 'select', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ヤ换鍔$被鍨�', 
-                }, 
-                { 
-                   label: '鐩爣搴撲綅', 
-                   prop: 'toPlace', 
-                   el: 'input', 
-                   //disabled: disabled, 
-                   placeholder: '璇疯緭鍏ョ洰鏍囧簱浣�', 
-                },  
-  ]) 
-  /** 
-   * 鏍¢獙鏄惁鏈夋暟鎹彉鍖� 
-   */ 
-  const checkIsEqualObject = () => { 
-    const data = { 
-      formData: formData.value, 
-    } 
-    const check = isEqual(initiateData.value, data) 
-    return check 
-  } 
-  const commonGetFormData=()=>{ 
-    const data = { 
-      Aisle: formData.value.Aisle, 
-ContainerNo: formData.value.ContainerNo, 
-DodeviceId: formData.value.DodeviceId, 
-Dodevicetype: formData.value.Dodevicetype, 
-IsNextTask: formData.value.IsNextTask, 
-IsRead: formData.value.IsRead, 
-MutableParam1: formData.value.MutableParam1, 
-MutableParam2: formData.value.MutableParam2, 
-MutableParam3: formData.value.MutableParam3, 
-SonTaskType: formData.value.SonTaskType, 
-SourceOrderNo: formData.value.SourceOrderNo, 
-SourcePlace: formData.value.SourcePlace, 
-TaskDodeviceStatus: formData.value.TaskDodeviceStatus, 
-TaskLevel: formData.value.TaskLevel, 
-TaskNo: formData.value.TaskNo, 
-TaskStatus: formData.value.TaskStatus, 
-TaskType: formData.value.TaskType, 
-ToPlace: formData.value.ToPlace,  
-    } 
-    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) 
-  } 
-  /** 
-   * 閲嶇疆鏌ヨ 
-   */ 
-  const onReset = async () => { 
-    formData.value = {} 
-    formData.value.Aisle = '' 
-formData.value.ContainerNo = '' 
-formData.value.DodeviceId = '' 
-formData.value.Dodevicetype = '' 
-formData.value.IsNextTask = '' 
-formData.value.IsRead = '' 
-formData.value.MutableParam1 = '' 
-formData.value.MutableParam2 = '' 
-formData.value.MutableParam3 = '' 
-formData.value.SonTaskType = '' 
-formData.value.SourceOrderNo = '' 
-formData.value.SourcePlace = '' 
-formData.value.TaskDodeviceStatus = '' 
-formData.value.TaskLevel = '' 
-formData.value.TaskNo = '' 
-formData.value.TaskStatus = '' 
-formData.value.TaskType = '' 
-formData.value.ToPlace = ''  
-    //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢 
-    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 () => { 
-    const taskTypeEnumEnum = await wmsTaskDrawer.getWmsEnumData({ 
- EnumName: 'TaskTypeEnum', 
-}) 
-updateFormItemOptions('taskType', taskTypeEnumEnum) 
-const wmsTaskStatusEnum = await wmsTaskDrawer.getWmsEnumData({ 
- EnumName: 'WmsTaskStatus', 
-}) 
-updateFormItemOptions('taskStatus', wmsTaskStatusEnum) 
-const sonTaskTypeEnumEnum = await wmsTaskDrawer.getWmsEnumData({ 
- EnumName: 'SonTaskTypeEnum', 
-}) 
-updateFormItemOptions('sonTaskType', sonTaskTypeEnumEnum) 
- 
-  } 
-  commonQueryEnumForFrom() 
-  /** 
-   * 寮圭獥鎵撳紑鑾峰彇璇︽儏 
-   */ 
-  const onOpen = async () => { 
-    disabled.value = false 
-    updateCheckData() 
-  } 
- 
-  watch(() => current.value, onOpen) 
- 
-  return { 
-    formItems, 
-    formData, 
-    visible, 
-    formRef, 
-    onOpen, 
-    onClose, 
-    onConfirmQuery, 
-    onReset, 
-  } 
-} 
+import {
+  ref,
+  onMounted,
+  reactive,
+  computed,
+  Ref,
+  watch,
+  SetupContext,
+  h,
+} from 'vue'
+import { injectModel } from '@/libs/Provider/Provider'
+import { WmsTaskDrawer } from '../Models/WmsTaskDrawer'
+import { ElMessage } from 'element-plus'
+import isEqual from 'lodash/isEqual'
+import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox'
+import { cloneDeep } from 'lodash'
+
+export const useWmsTaskQueryDrawer = (props: any, ctx?: any) => {
+  const wmsTaskDrawer = injectModel<WmsTaskDrawer>('WmsTaskDrawer')
+  /**
+   * 鐢ㄦ潵瀵规瘮鐨勫垵濮嬪寲鏁版嵁
+   */
+  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: 'taskNo',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヤ换鍔″彿',
+    },
+    {
+      label: '浠诲姟绫诲瀷',
+      prop: 'taskType',
+      el: 'select',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヤ换鍔$被鍨�',
+    },
+    {
+      label: '浠诲姟绛夌骇',
+      prop: 'taskLevel',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(inputNumber, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヤ换鍔$瓑绾�',
+    },
+    {
+      label: '浠诲姟鐘舵��',
+      prop: 'taskStatus',
+      el: 'select',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヤ换鍔$姸鎬�',
+    },
+    {
+      label: '鎵樼洏缂栧彿',
+      prop: 'containerNo',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ユ墭鐩樼紪鍙�',
+    },
+    {
+      label: '璧峰搴撲綅',
+      prop: 'sourcePlace',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヨ捣濮嬪簱浣�',
+    },
+    {
+      label: '鐩爣搴撲綅',
+      prop: 'toPlace',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ョ洰鏍囧簱浣�',
+    },
+    {
+      label: '宸烽亾',
+      prop: 'aisle',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(inputNumber, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ贩閬�',
+    },
+    {
+      label: '鍫嗗灈鏈篒D',
+      prop: 'dodeviceId',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(inputNumber, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ爢鍨涙満ID',
+    },
+    {
+      label: '璁惧绫诲瀷',
+      prop: 'dodevicetype',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(inputNumber, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヨ澶囩被鍨�',
+    },
+    {
+      label: '璁惧浠诲姟鐘舵��',
+      prop: 'taskDodeviceStatus',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(inputNumber, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヨ澶囦换鍔$姸鎬�',
+    },
+    {
+      label: 'WCS鏄惁鍙互璇诲彇',
+      prop: 'isRead',
+      el: 'select',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏CS鏄惁鍙互璇诲彇',
+      options: [
+        { label: '鏄�', value: 'true' },
+        { label: '鍚�', value: 'false' },
+      ],
+    },
+    {
+      label: '瀛愪换鍔$被鍨�',
+      prop: 'sonTaskType',
+      el: 'select',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ瓙浠诲姟绫诲瀷',
+    },
+    {
+      label: '鏉ユ簮鍗曟嵁鍙�',
+      prop: 'sourceOrderNo',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ユ潵婧愬崟鎹彿',
+    },
+    {
+      label: '涓嬩釜浠诲姟鏄惁鐢熸垚鎴愬姛',
+      prop: 'isNextTask',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(inputNumber, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヤ笅涓换鍔℃槸鍚︾敓鎴愭垚鍔�',
+    },
+    {
+      label: '鍙彉鍙橀噺1',
+      prop: 'mutableParam1',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ彲鍙樺彉閲�1',
+    },
+    {
+      label: '鍙彉鍙橀噺2',
+      prop: 'mutableParam2',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ彲鍙樺彉閲�2',
+    },
+    {
+      label: '鍙彉鍙橀噺3',
+      prop: 'mutableParam3',
+      el: 'input',
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ュ彲鍙樺彉閲�3',
+    },
+
+    {
+      label: '鍒涘缓鏃堕棿',
+      prop: 'operateTime',
+      el: (props: any, { attrs }: SetupContext) => {
+        return h(datePickerRange, {
+          ...props,
+          clearable: true,
+          ...attrs,
+        })
+      },
+      step: 1,
+      precision: 0,
+      //disabled: disabled,
+      placeholder: '璇疯緭鍏ヤ笅涓换鍔℃槸鍚︾敓鎴愭垚鍔�',
+    },
+  ])
+  /**
+   * 鏍¢獙鏄惁鏈夋暟鎹彉鍖�
+   */
+  const checkIsEqualObject = () => {
+    const data = {
+      formData: formData.value,
+    }
+    const check = isEqual(initiateData.value, data)
+    return check
+  }
+  const commonGetFormData = () => {
+    console.log(formData.value.operateTime)
+    const data = {
+      TaskNo: formData.value.TaskNo,
+      TaskType: formData.value.TaskType,
+      TaskLevel: formData.value.TaskLevel,
+      TaskStatus: formData.value.TaskStatus,
+      ContainerNo: formData.value.ContainerNo,
+      SourcePlace: formData.value.SourcePlace,
+      ToPlace: formData.value.ToPlace,
+      Aisle: formData.value.Aisle,
+      DodeviceId: formData.value.DodeviceId,
+      Dodevicetype: formData.value.Dodevicetype,
+      TaskDodeviceStatus: formData.value.TaskDodeviceStatus,
+      IsRead: formData.value.IsRead,
+      SonTaskType: formData.value.SonTaskType,
+      SourceOrderNo: formData.value.SourceOrderNo,
+      IsNextTask: formData.value.IsNextTask,
+      MutableParam1: formData.value.MutableParam1,
+      MutableParam2: formData.value.MutableParam2,
+      MutableParam3: formData.value.MutableParam3,
+      operateTime: formData.value.operateTime,
+    }
+    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)
+  }
+  /**
+   * 閲嶇疆鏌ヨ
+   */
+  const onReset = async () => {
+    formData.value = {}
+    formData.value.TaskNo = ''
+    formData.value.TaskType = ''
+    formData.value.TaskLevel = ''
+    formData.value.TaskStatus = ''
+    formData.value.ContainerNo = ''
+    formData.value.SourcePlace = ''
+    formData.value.ToPlace = ''
+    formData.value.Aisle = ''
+    formData.value.DodeviceId = ''
+    formData.value.Dodevicetype = ''
+    formData.value.TaskDodeviceStatus = ''
+    formData.value.IsRead = ''
+    formData.value.SonTaskType = ''
+    formData.value.SourceOrderNo = ''
+    formData.value.IsNextTask = ''
+    formData.value.MutableParam1 = ''
+    formData.value.MutableParam2 = ''
+    formData.value.MutableParam3 = ''
+    formData.value.operateTime = []
+    //鍚戠埗缁勪欢鍙戦�佽嚜瀹氫箟浜嬩欢
+    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 () => {
+    const taskTypeEnumEnum = await wmsTaskDrawer.getWmsEnumData({
+      EnumName: 'TaskTypeEnum',
+    })
+    updateFormItemOptions('taskType', taskTypeEnumEnum)
+    const wmsTaskStatusEnum = await wmsTaskDrawer.getWmsEnumData({
+      EnumName: 'WmsTaskStatus',
+    })
+    updateFormItemOptions('taskStatus', wmsTaskStatusEnum)
+    const sonTaskTypeEnumEnum = await wmsTaskDrawer.getWmsEnumData({
+      EnumName: 'SonTaskTypeEnum',
+    })
+    updateFormItemOptions('sonTaskType', sonTaskTypeEnumEnum)
+  }
+  commonQueryEnumForFrom()
+  /**
+   * 寮圭獥鎵撳紑鑾峰彇璇︽儏
+   */
+  const onOpen = async () => {
+    disabled.value = false
+    updateCheckData()
+  }
+
+  watch(() => current.value, onOpen)
+
+  return {
+    formItems,
+    formData,
+    visible,
+    formRef,
+    onOpen,
+    onClose,
+    onConfirmQuery,
+    onReset,
+  }
+}

--
Gitblit v1.9.3