222
schangxiang@126.com
2025-05-20 a2cb4ebc089b890318f335fadcd8b48aa3ef60cd
PipeLineLems/pipelinelems_web/src/widgets/WorkTask/Views/Pages/WorkTask/WorkTask.tsx
@@ -27,6 +27,8 @@
import {   
  FILTER_MODE_OPTIONS_STRING 
} from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions';  
// 引入公共高级查询工具文件
import { commonSaveCurHighQueryData,setValueForCurHighQueryData,commonGetHighQueryForm,initQueryForm,GetFilteredData } from '@/utils/myHighQueryUtils';
 
interface RenderTableType { 
  url?: string 
@@ -69,7 +71,7 @@
 
    //定义高级查询引用 
   const workTaskQueryDrawerRef=ref(null); 
    //定义整体模糊查询的列数组(注意:必须大小写跟后端的实体类属性名一致,否则会导致匹配不对的问题) 
    const _searchFormInputAttrs = ref([ 
     'Son_TaskCode','TaskCode','DataIdentifier','MaterialMode','MarkingContent','WeldingHeatInput','PipeAllowableStress','FactoryCode','ProductCode','WorkstationCode','EquipmentCode','ProdLineCode','ShipNumber','ProjectNumber','ProcessName','PipeFittingCode','PreSerialNumber','PipeSpecCode','PipeSectionName','Material','ProcessRouteNumber','TeamInfo','Timestamp','CreatorName','LastModifierName','Remark' 
@@ -110,86 +112,37 @@
    // 组件挂载时获取枚举数据  
    onMounted(() => {  
      fetchEnumData()  
      resetQuery();
      //queryForm.value.searchVal_FilterMode = FILTER_MODE_OPTIONS_STRING[0]?.value || '';
      // _curHighQueryData.value.searchVal_FilterMode = queryForm.value.searchVal_FilterMode;
      // _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
      resetQuery();
    })  
    /*******************************************************[高级查询]开始********************************************************************************* */
     // 新增的查询条件
     const queryForm = ref({
      searchVal: '',
      str_searchFormInputAttrs:[],
      searchVal_FilterMode:''
    })
    // 定义响应式查询数据
    const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[],searchVal_FilterMode:'' });
    // 新版的查询方法(主页面中的按钮【查询】)
    const handleQueryForMain = async () => {
      // _curHighQueryData.value.searchVal = queryForm.value.searchVal;
      // _curHighQueryData.value.searchVal_FilterMode = queryForm.value.searchVal_FilterMode;
      // _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
      //我今天新加的
      setValueForCurHighQueryData();
      tableRef.value.getList(_curHighQueryData.value)
    }
    // 新版的查询方法(高级查询中的按钮【查询】)
    const handleQuery = async (extraParams = {}) => {
      let filteredData = commonGetHighQueryForm(extraParams);
      commonSaveCurHighQueryData(filteredData);
      tableRef.value.getList(filteredData)
    }
    // 新版的查询重置
    const resetQuery = () => {
      queryForm.value.searchVal = ''
      queryForm.value.searchVal_FilterMode = FILTER_MODE_OPTIONS_STRING[0]?.value || '';
      queryForm.value.str_searchFormInputAttrs=_searchFormInputAttrs.value;
      //我今天新加的
      setValueForCurHighQueryData();
    }
    //给响应式查询数据赋值
    const setValueForCurHighQueryData=()=>{
      _curHighQueryData.value.searchVal = queryForm.value.searchVal;
      _curHighQueryData.value.searchVal_FilterMode = queryForm.value.searchVal_FilterMode;
      _curHighQueryData.value.str_searchFormInputAttrs = _searchFormInputAttrs.value;
    }
     //新版的导出方法
     const handleExport=()=>{
      onExport(_curHighQueryData.value);
    }
    // 新版的查询弹出框关闭方法
    const closeQuery = (extraParams={}) => {
      let filteredData = commonGetHighQueryForm(extraParams);
      // console.log("closeQuery方法");
      // console.log(filteredData);
      commonSaveCurHighQueryData(filteredData);
    }
    //保存查询值
    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;
       //我今天新加的
       setValueForCurHighQueryData();
    }
     //获取高级查询弹出框的查询值
     const commonGetHighQueryForm=(extraParams={})=>{
      // 过滤掉 undefined 的值
      let filteredData = Object.assign(
        {},
        ...Object.entries(extraParams).map(([key, value]) =>
          value !== undefined ? { [key]: value } : {}
        )
      )
      //组合模糊查询
      filteredData.searchVal = queryForm.value.searchVal
      filteredData.searchVal_FilterMode = queryForm.value.searchVal_FilterMode
      filteredData.str_searchFormInputAttrs =_searchFormInputAttrs.value;
      return filteredData;
    }
    /*******************************************************[高级查询]结束********************************************************************************* */
    /*******************************************************[高级查询]开始********************************************************************************* */
    // 新增的查询条件
    const queryForm = ref({ searchVal: '',str_searchFormInputAttrs:[],searchVal_FilterMode:'' });
    // 定义响应式查询数据
    const _curHighQueryData = ref({ searchVal: '',str_searchFormInputAttrs:[],searchVal_FilterMode:'' });
    // 新版的查询方法(主页面中的按钮【查询】)
    const handleQueryForMain = async () => {
      setValueForCurHighQueryData(_curHighQueryData,queryForm,_searchFormInputAttrs);
      tableRef.value.getList(_curHighQueryData.value)
    }
    // 新版的查询方法(高级查询中的按钮【查询】)
    const handleQuery = async (extraParams = {}) => {
      let filteredData = GetFilteredData(extraParams,queryForm,_searchFormInputAttrs,_curHighQueryData);
      tableRef.value.getList(filteredData)
    }
    // 新版的查询重置
    const resetQuery = () => {
      initQueryForm(queryForm,_searchFormInputAttrs,FILTER_MODE_OPTIONS_STRING);
      setValueForCurHighQueryData(_curHighQueryData,queryForm,_searchFormInputAttrs);
    }
     //新版的导出方法
     const handleExport=()=>{
      onExport(_curHighQueryData.value);
    }
    // 新版的查询弹出框关闭方法
    const closeQuery = (extraParams={}) => {
      GetFilteredData(extraParams,queryForm,_searchFormInputAttrs,_curHighQueryData);
    }
    /*******************************************************[高级查询]结束********************************************************************************* */
 
    /** 
     * @returns 表格