From 72cc653ecc51616413be71b4ad6e8a33d9b85296 Mon Sep 17 00:00:00 2001 From: pengm <674192343@qq.com> Date: Thu, 28 May 2026 13:55:53 +0800 Subject: [PATCH] 1.增加上报参数区域 --- src/mes/common/commonModelComponent/index.js | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 100 insertions(+), 1 deletion(-) diff --git a/src/mes/common/commonModelComponent/index.js b/src/mes/common/commonModelComponent/index.js index 148e39d..3a5ff77 100644 --- a/src/mes/common/commonModelComponent/index.js +++ b/src/mes/common/commonModelComponent/index.js @@ -293,7 +293,7 @@ const useCommonModelEvent = props => { result = await handleGetData( tableList.filter( item => - item === "workerOrderBatchMaterial" || item === "plateInfo" + item === "palletBatchMaterial" || item === "workerOrderBatchMaterial" || item === "plateInfo" ), true, true @@ -2338,6 +2338,61 @@ const CommonViewTableComponent = props => { const { masterData, sModelsType, app } = props const { bCheck = false } = masterData || {} const imgSrc = commonBusiness.handleAddIcon(masterData, sModelsType, app); + + // 上报参数区域状态管理 + const [reportExpand, setReportExpand] = useState(true); + + // 解析上报参数 + let reportParam = null; + if(true || props.sModelsId === '17087428780006438414984564455000'){ + if(viewRow.sReportParam){ + reportParam = JSON.parse(viewRow.sReportParam); + } + } + + // 构建上报参数的配置 + const reportViewConfigs = reportParam ? Object.keys(reportParam).filter(key => key.startsWith('sParam') && !key.includes('Default') && !key.includes('NotEmpty') && !key.includes('DropDown')).map(key => { + const paramNum = key.replace('sParam', ''); + // 查找对应的下拉数据源 sParamDropDown1, sParamDropDown2... + const dropDownKey = `sParamDropDown${paramNum}`; + const hasDropDown = reportParam[dropDownKey] && Object.keys(reportParam[dropDownKey]).length > 0; + + return { + sId: key, + sName: key, + showName: reportParam[key] || key, + sControlName: `reportParam_${key}`, + iColValue: 8, + iOrder: parseInt(paramNum) || 0, + bVisible: true, + bReadonly: false, // 允许编辑 + enabled: true, // 确保字段可编辑 + sDefault: reportParam[`${key}Default`] || '', + sDropDownType: hasDropDown ? 'sql' : '', + sChineseDropDown: hasDropDown ? JSON.stringify(reportParam[dropDownKey]) : '', + showDropDropDown: hasDropDown ? JSON.stringify(reportParam[dropDownKey]) : '', + iTag: 3, // iTag=3 强制允许编辑(CommonViewTable中iTag=3时enabledNew=true) + specialControl: false // 确保不是特殊控件 + }; + }) : []; + + // 构建上报参数的视图数据 + const reportViewRow = reportParam ? Object.keys(reportParam).filter(key => key.startsWith('sParam') && !key.includes('Default') && !key.includes('NotEmpty') && !key.includes('DropDown')).reduce((acc, key) => { + acc[key] = reportParam[`${key}Default`] || ''; + return acc; + }, {}) : {}; + + const reportProps = { + ...props, + viewConfigs: reportViewConfigs, + tableConfig: config, + iColValueView: 24, + viewRow: reportViewRow, + tableName: `${sName}_report`, + enabled: props.enabled, // 继承父组件的 enabled 属性 + enabledNew: props.enabledNew // 继承父组件的 enabledNew 属性 + }; + return ( <> {sName === "master" ? ( @@ -2361,6 +2416,11 @@ const CommonViewTableComponent = props => { viewProps.enabledNew = false; } + // 传递上报参数给主视图 + if(reportParam){ + viewProps.reportParam = reportParam; + } + return ( <> @@ -2368,6 +2428,45 @@ const CommonViewTableComponent = props => { ); })} + + {/* 上报参数区域 - 只显示一次,放在循环外面 */} + {reportParam && reportViewConfigs.length > 0 && ( +
+ {/* 上报参数标题栏 */} +
setReportExpand(!reportExpand)} + > + + 上报参数 +
+ + {/* 上报参数内容 */} + {reportExpand && ( +
+ +
+ )} +
+ )} {sName !== "master" ? ( ) : ( -- libgit2 0.22.2