zs
2025-05-19 3a4b2114c4bb687ccbc09b585b7d650f94e16979
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 @@
    },
  })
  /**
   * 添加的form字段
   * 高级查询的form字段
   */
  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查询
  /**
   * 弹窗打开获取详情
   */