zs
2025-06-04 5a149d626ae8bc3fa4bddbb53f8caf40f51f6da6
HIAWms/hiawms_web/src/widgets/WmsInOutStockOrderDetail/Views/Pages/WmsInOutStockOrderDetail/WmsInOutStockOrderDetail.tsx
@@ -21,6 +21,8 @@
  ElFormItem,
} from 'element-plus'
import { injectModel } from '@/libs/Provider/Provider'
// 引入公共选项配置
import { FILTER_MODE_OPTIONS_STRING_KEY } from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions'
interface RenderTableType {
  url?: string
@@ -62,15 +64,27 @@
    } = useWmsInOutStockOrderDetail(props, ctx)
    //定义高级查询引用
    const wmsInOutStockOrderDetailQueryDrawerRef = ref(null)
    const WmsInOutStockOrderDetailQueryDrawerRef = ref(null)
    // 新增的查询条件
    const queryForm = ref({
      searchVal: '',
      str_searchFormInputAttrs: [],
      searchVal_FilterMode: '',
    })
    //定义整体模糊查询的列数组(注意:必须大小写跟后端的实体类属性名一致,否则会导致匹配不对的问题)
    const _searchFormInputAttrs = ref(['OrderNo', 'MaterialNo', 'MaterialId'])
    const searchFormInputAttrs_Placeholder = ref('请输入单据号/物料编号/物料ID')
    const _searchFormInputAttrs = ref([
      'OrderNo',
      'MaterialId',
      'MaterialNo',
      'MaterialName',
      'ContainerNo',
      'MaterialModel',
      'MaterialBatch',
      'Remark',
    ])
    const searchFormInputAttrs_Placeholder = ref(
      '请输入单据编号/物料唯一码/物料件号/物料名称/容器编号/机型/物料批次/备注'
    )
    // 动态枚举选项
    const enumOptions = reactive({
@@ -92,19 +106,28 @@
      }
    }
    // 组件挂载时获取枚举数据
    onMounted(() => {
      fetchEnumData()
    })
    // 定义响应式查询数据
    const _curHighQueryData = ref({
      searchVal: '',
      str_searchFormInputAttrs: [],
      searchVal_FilterMode: '',
    })
    // 组件挂载时获取枚举数据
    onMounted(() => {
      fetchEnumData()
      queryForm.value.searchVal_FilterMode =
        FILTER_MODE_OPTIONS_STRING_KEY[0]?.value || ''
      _curHighQueryData.value.searchVal_FilterMode =
        queryForm.value.searchVal_FilterMode
      _curHighQueryData.value.str_searchFormInputAttrs =
        _searchFormInputAttrs.value
    })
    // 新版的查询方法(主页面中的按钮【查询】)
    const handleQueryForMain = async () => {
      _curHighQueryData.value.searchVal = queryForm.value.searchVal
      _curHighQueryData.value.searchVal_FilterMode =
        queryForm.value.searchVal_FilterMode
      _curHighQueryData.value.str_searchFormInputAttrs =
        _searchFormInputAttrs.value
      tableRef.value.getList(_curHighQueryData.value)
@@ -118,6 +141,8 @@
    // 新版的查询重置
    const resetQuery = () => {
      queryForm.value.searchVal = ''
      queryForm.value.searchVal_FilterMode =
        FILTER_MODE_OPTIONS_STRING_KEY[0]?.value || ''
      queryForm.value.str_searchFormInputAttrs = _searchFormInputAttrs.value
    }
    //新版的导出方法
@@ -135,6 +160,8 @@
    const commonSaveCurHighQueryData = (filteredData = {}) => {
      _curHighQueryData.value = { ..._curHighQueryData.value, ...filteredData }
      _curHighQueryData.value.searchVal = queryForm.value.searchVal
      _curHighQueryData.value.searchVal_FilterMode =
        queryForm.value.searchVal_FilterMode
      _curHighQueryData.value.str_searchFormInputAttrs =
        _searchFormInputAttrs.value
    }
@@ -149,6 +176,7 @@
      )
      //组合模糊查询
      filteredData.searchVal = queryForm.value.searchVal
      filteredData.searchVal_FilterMode = queryForm.value.searchVal_FilterMode
      filteredData.str_searchFormInputAttrs = _searchFormInputAttrs.value
      return filteredData
    }
@@ -297,7 +325,7 @@
              <el-divider direction="vertical" />
              <el-divider direction="vertical" />
              <el-upload
              {/* <el-upload
                v-permission="wmsInOutStockOrderDetail-import"
                name="file"
                accept=".xlsx,.xls,.csv"
@@ -317,16 +345,38 @@
                onClick={handleExport}
              >
                导出
              </IconButton>
              </IconButton> */}
            </div>
            <ElFormItem style={{ marginTop: '15px' }}>
              <ElFormItem label="关键字">
                <ElInput
                  v-model={queryForm.value.searchVal}
                  placeholder={searchFormInputAttrs_Placeholder.value}
                  clearable
                <el-tooltip
                  class="box-item"
                  effect="dark"
                  content={searchFormInputAttrs_Placeholder.value}
                  placement="top-start"
                >
                  <ElInput
                    v-model={queryForm.value.searchVal}
                    placeholder={searchFormInputAttrs_Placeholder.value}
                    clearable
                    class={styles.formItem}
                  />
                </el-tooltip>
              </ElFormItem>
              <ElFormItem label="" style="width:100px;">
                <ElSelect
                  v-model={queryForm.value.searchVal_FilterMode}
                  placeholder="请选择"
                  class={styles.formItem}
                />
                >
                  {FILTER_MODE_OPTIONS_STRING_KEY.map((option) => (
                    <ElOption
                      key={option.value}
                      label={option.label}
                      value={option.value}
                    />
                  ))}
                </ElSelect>
              </ElFormItem>
              <IconButton
                type="primary"