schangxiang@126.com
2025-05-21 a3a2b238a2626ef8744e7a135f9ca2e2fbb5184c
PipeLineLems/pipelinelems_web/src/widgets/WorkPlan/Controllers/WorkPlanQueryDrawer.tsx
@@ -20,6 +20,8 @@
  FILTER_MODE_OPTIONS_NUM, 
  FILTER_MODE_OPTIONS_BOOL 
} from '@/components/DyFormForHighQuery/DyFormForHighQueryOptions'; 
// 引入公共表单工具文件
import { collectFormDataForHighQuery,onResetForHighSelect,onResetForHighQuery } from '@/utils/myformUtils';
import {  
  BOOLEAN_OPTIONS 
} from '@/utils/commonOptionConstants'; 
@@ -101,6 +103,84 @@
                   } 
                }, 
                { 
                   label: '管段编码',
                   prop: 'pipeSpecCode',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入管段编码',
                   highSelectAttrs:{
                     prop: 'pipeSpecCode_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '管段名称',
                   prop: 'pipeSectionName',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入管段名称',
                   highSelectAttrs:{
                     prop: 'pipeSectionName_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '管段型号',
                   prop: 'pipeSpecMode',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入管段型号',
                   highSelectAttrs:{
                     prop: 'pipeSpecMode_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '工序名称',
                   prop: 'processName',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入工序名称',
                   highSelectAttrs:{
                     prop: 'processName_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '船号',
                   prop: 'shipNumber',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入船号',
                   highSelectAttrs:{
                     prop: 'shipNumber_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '项目号',
                   prop: 'projectNumber',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入项目号',
                   highSelectAttrs:{
                     prop: 'projectNumber_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '计划状态', 
                   prop: 'workPlanStatus', 
                   el: 'select', 
@@ -128,6 +208,19 @@
                     el: 'select',  
                     placeholder: '请选择',  
                     options:FILTER_MODE_OPTIONS_BOOL 
                   }
                },
                {
                   label: '工艺流向编号',
                   prop: 'processRouteNumber',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入工艺流向编号',
                   highSelectAttrs:{
                     prop: 'processRouteNumber_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   } 
                }, 
                { 
@@ -437,45 +530,6 @@
                   } 
                }, 
                { 
                   label: '船号',
                   prop: 'shipNumber',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入船号',
                   highSelectAttrs:{
                     prop: 'shipNumber_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '项目号',
                   prop: 'projectNumber',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入项目号',
                   highSelectAttrs:{
                     prop: 'projectNumber_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '工序名称',
                   prop: 'processName',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入工序名称',
                   highSelectAttrs:{
                     prop: 'processName_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '管件编码', 
                   prop: 'pipeFittingCode', 
                   el: 'input', 
@@ -496,32 +550,6 @@
                   placeholder: '请输入顺序号', 
                   highSelectAttrs:{ 
                     prop: 'preSerialNumber_FilterMode', 
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '管段编码',
                   prop: 'pipeSpecCode',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入管段编码',
                   highSelectAttrs:{
                     prop: 'pipeSpecCode_FilterMode',
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '管段名称',
                   prop: 'pipeSectionName',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入管段名称',
                   highSelectAttrs:{
                     prop: 'pipeSectionName_FilterMode',
                     el: 'select',  
                     placeholder: '请选择',  
                     options:FILTER_MODE_OPTIONS_STRING 
@@ -579,19 +607,6 @@
                   placeholder: '请输入材质', 
                   highSelectAttrs:{ 
                     prop: 'material_FilterMode', 
                     el: 'select',
                     placeholder: '请选择',
                     options:FILTER_MODE_OPTIONS_STRING
                   }
                },
                {
                   label: '工艺流向编号',
                   prop: 'processRouteNumber',
                   el: 'input',
                   //disabled: disabled,
                   placeholder: '请输入工艺流向编号',
                   highSelectAttrs:{
                     prop: 'processRouteNumber_FilterMode',
                     el: 'select',  
                     placeholder: '请选择',  
                     options:FILTER_MODE_OPTIONS_STRING 
@@ -733,93 +748,11 @@
    const check = isEqual(initiateData.value, data) 
    return check 
  } 
  const commonGetFormData=()=>{
    const data = {
      taskCode: formData.value.taskCode || '',
taskCode_FilterMode: formData.value.taskCode_FilterMode || '',
workPlanStatus: formData.value.workPlanStatus || '',
workPlanStatus_FilterMode: formData.value.workPlanStatus_FilterMode || '',
callMaterialStatus: formData.value.callMaterialStatus || '',
callMaterialStatus_FilterMode: formData.value.callMaterialStatus_FilterMode || '',
dataIdentifier: formData.value.dataIdentifier || '',
dataIdentifier_FilterMode: formData.value.dataIdentifier_FilterMode || '',
materialMode: formData.value.materialMode || '',
materialMode_FilterMode: formData.value.materialMode_FilterMode || '',
length: formData.value.length || '',
length_FilterMode: formData.value.length_FilterMode || '',
markingContent: formData.value.markingContent || '',
markingContent_FilterMode: formData.value.markingContent_FilterMode || '',
markingPosition: formData.value.markingPosition || '',
markingPosition_FilterMode: formData.value.markingPosition_FilterMode || '',
cuttingPosition: formData.value.cuttingPosition || '',
cuttingPosition_FilterMode: formData.value.cuttingPosition_FilterMode || '',
quantity: formData.value.quantity || '',
quantity_FilterMode: formData.value.quantity_FilterMode || '',
flangeThickness: formData.value.flangeThickness || '',
flangeThickness_FilterMode: formData.value.flangeThickness_FilterMode || '',
flangeInnerDiameter: formData.value.flangeInnerDiameter || '',
flangeInnerDiameter_FilterMode: formData.value.flangeInnerDiameter_FilterMode || '',
weldingHeatInput: formData.value.weldingHeatInput || '',
weldingHeatInput_FilterMode: formData.value.weldingHeatInput_FilterMode || '',
pipeAllowableStress: formData.value.pipeAllowableStress || '',
pipeAllowableStress_FilterMode: formData.value.pipeAllowableStress_FilterMode || '',
pipeDiameter: formData.value.pipeDiameter || '',
pipeDiameter_FilterMode: formData.value.pipeDiameter_FilterMode || '',
pipeWallThickness: formData.value.pipeWallThickness || '',
pipeWallThickness_FilterMode: formData.value.pipeWallThickness_FilterMode || '',
factoryCode: formData.value.factoryCode || '',
factoryCode_FilterMode: formData.value.factoryCode_FilterMode || '',
productCode: formData.value.productCode || '',
productCode_FilterMode: formData.value.productCode_FilterMode || '',
workstationCode: formData.value.workstationCode || '',
workstationCode_FilterMode: formData.value.workstationCode_FilterMode || '',
equipmentCode: formData.value.equipmentCode || '',
equipmentCode_FilterMode: formData.value.equipmentCode_FilterMode || '',
prodLineCode: formData.value.prodLineCode || '',
prodLineCode_FilterMode: formData.value.prodLineCode_FilterMode || '',
shipNumber: formData.value.shipNumber || '',
shipNumber_FilterMode: formData.value.shipNumber_FilterMode || '',
projectNumber: formData.value.projectNumber || '',
projectNumber_FilterMode: formData.value.projectNumber_FilterMode || '',
processName: formData.value.processName || '',
processName_FilterMode: formData.value.processName_FilterMode || '',
pipeFittingCode: formData.value.pipeFittingCode || '',
pipeFittingCode_FilterMode: formData.value.pipeFittingCode_FilterMode || '',
preSerialNumber: formData.value.preSerialNumber || '',
preSerialNumber_FilterMode: formData.value.preSerialNumber_FilterMode || '',
pipeSpecCode: formData.value.pipeSpecCode || '',
pipeSpecCode_FilterMode: formData.value.pipeSpecCode_FilterMode || '',
pipeSectionName: formData.value.pipeSectionName || '',
pipeSectionName_FilterMode: formData.value.pipeSectionName_FilterMode || '',
outerDiameter: formData.value.outerDiameter || '',
outerDiameter_FilterMode: formData.value.outerDiameter_FilterMode || '',
thickness: formData.value.thickness || '',
thickness_FilterMode: formData.value.thickness_FilterMode || '',
material: formData.value.material || '',
material_FilterMode: formData.value.material_FilterMode || '',
processRouteNumber: formData.value.processRouteNumber || '',
processRouteNumber_FilterMode: formData.value.processRouteNumber_FilterMode || '',
plannedStartTime: formData.value.plannedStartTime || '',
plannedEndTime: formData.value.plannedEndTime || '',
teamInfo: formData.value.teamInfo || '',
teamInfo_FilterMode: formData.value.teamInfo_FilterMode || '',
timestamp: formData.value.timestamp || '',
timestamp_FilterMode: formData.value.timestamp_FilterMode || '',
creationTime: formData.value.creationTime || '',
lastModificationTime: formData.value.lastModificationTime || '',
creatorName: formData.value.creatorName || '',
creatorName_FilterMode: formData.value.creatorName_FilterMode || '',
lastModifierName: formData.value.lastModifierName || '',
lastModifierName_FilterMode: formData.value.lastModifierName_FilterMode || '',
remark: formData.value.remark || '',
remark_FilterMode: formData.value.remark_FilterMode || '',
    }
    return data;
  }
  const onClose = (done: () => void) => { 
    if (visible.value) { 
      visible.value = false 
      const data =commonGetFormData();
      const data =collectFormDataForHighQuery(formItems,formData);
      ctx.emit('close', data) 
    } 
  } 
@@ -827,99 +760,20 @@
   * 确认查询 
   */ 
  const onConfirmQuery = async () => { 
    const data =commonGetFormData();
    const data =collectFormDataForHighQuery(formItems,formData);
    ctx.emit('confirmQuery', data) 
  } 
  /**  
   * 重置公共select查询
   */
  const onResetForHighSelect = async () => {
    formData.value.taskCode_FilterMode = 1
formData.value.workPlanStatus_FilterMode = 2
formData.value.callMaterialStatus_FilterMode = 2
formData.value.dataIdentifier_FilterMode = 1
formData.value.materialMode_FilterMode = 1
formData.value.length_FilterMode = 2
formData.value.markingContent_FilterMode = 1
formData.value.markingPosition_FilterMode = 2
formData.value.cuttingPosition_FilterMode = 2
formData.value.quantity_FilterMode = 2
formData.value.flangeThickness_FilterMode = 2
formData.value.flangeInnerDiameter_FilterMode = 2
formData.value.weldingHeatInput_FilterMode = 1
formData.value.pipeAllowableStress_FilterMode = 1
formData.value.pipeDiameter_FilterMode = 2
formData.value.pipeWallThickness_FilterMode = 2
formData.value.factoryCode_FilterMode = 1
formData.value.productCode_FilterMode = 1
formData.value.workstationCode_FilterMode = 1
formData.value.equipmentCode_FilterMode = 1
formData.value.prodLineCode_FilterMode = 1
formData.value.shipNumber_FilterMode = 1
formData.value.projectNumber_FilterMode = 1
formData.value.processName_FilterMode = 1
formData.value.pipeFittingCode_FilterMode = 1
formData.value.preSerialNumber_FilterMode = 1
formData.value.pipeSpecCode_FilterMode = 1
formData.value.pipeSectionName_FilterMode = 1
formData.value.outerDiameter_FilterMode = 2
formData.value.thickness_FilterMode = 2
formData.value.material_FilterMode = 1
formData.value.processRouteNumber_FilterMode = 1
formData.value.teamInfo_FilterMode = 1
formData.value.timestamp_FilterMode = 1
formData.value.creatorName_FilterMode = 1
formData.value.lastModifierName_FilterMode = 1
formData.value.remark_FilterMode = 1
  }
  /**
   * 重置查询
    * 重置查询 - 优化版
   */ 
  const onReset = async () => { 
    formData.value = {}
    onResetForHighSelect();//重置公共select查询
    formData.value.taskCode = ''
formData.value.workPlanStatus = ''
formData.value.callMaterialStatus = ''
formData.value.dataIdentifier = ''
formData.value.materialMode = ''
formData.value.length = ''
formData.value.markingContent = ''
formData.value.markingPosition = ''
formData.value.cuttingPosition = ''
formData.value.quantity = ''
formData.value.flangeThickness = ''
formData.value.flangeInnerDiameter = ''
formData.value.weldingHeatInput = ''
formData.value.pipeAllowableStress = ''
formData.value.pipeDiameter = ''
formData.value.pipeWallThickness = ''
formData.value.factoryCode = ''
formData.value.productCode = ''
formData.value.workstationCode = ''
formData.value.equipmentCode = ''
formData.value.prodLineCode = ''
formData.value.shipNumber = ''
formData.value.projectNumber = ''
formData.value.processName = ''
formData.value.pipeFittingCode = ''
formData.value.preSerialNumber = ''
formData.value.pipeSpecCode = ''
formData.value.pipeSectionName = ''
formData.value.outerDiameter = ''
formData.value.thickness = ''
formData.value.material = ''
formData.value.processRouteNumber = ''
formData.value.plannedStartTime = ''
formData.value.plannedEndTime = ''
formData.value.teamInfo = ''
formData.value.timestamp = ''
formData.value.creationTime = ''
formData.value.lastModificationTime = ''
formData.value.creatorName = ''
formData.value.lastModifierName = ''
formData.value.remark = ''
    //向父组件发送自定义事件
        // 1. 清空所有基础字段(不包含过滤模式字段),应用基础字段初始值
        onResetForHighQuery(formItems,formData);
        // 2. 使用原有方法重置过滤模式字段
        onResetForHighSelect(formItems,formData);
        // 3. 向父组件发送自定义事件
    ctx.emit('restQuery'); 
  } 
 
@@ -954,7 +808,7 @@
 
  } 
  commonQueryEnumForFrom() 
  onResetForHighSelect();//重置公共select查询
  onResetForHighSelect(formItems,formData);//重置公共select查询
  /** 
   * 弹窗打开获取详情 
   */