From 3df153d8735247d554df9a093f945dfd01242188 Mon Sep 17 00:00:00 2001 From: chenxt <10125295+chen-xintao97@user.noreply.gitee.com> Date: Mon, 26 Jan 2026 14:29:50 +0800 Subject: [PATCH] 复制到tmpinfo --- src/mes/common/commonModelComponent/index.js | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------ 1 file changed, 50 insertions(+), 36 deletions(-) diff --git a/src/mes/common/commonModelComponent/index.js b/src/mes/common/commonModelComponent/index.js index e673d13..8aba092 100644 --- a/src/mes/common/commonModelComponent/index.js +++ b/src/mes/common/commonModelComponent/index.js @@ -429,70 +429,84 @@ const useCommonModelEvent = props => { ); const { gdsconfigformslave } = props?.slaveConfig || {} useEffect(() => { - const { btnConfig = {}, copyToConfig = [], record = {} } = props?.parentProps || {} + const { btnConfig = {}, copyToConfig = [], record = {} } = props?.parentProps || {}; + + // 提前校验 if ( !props.masterData || !props.masterData.sId || typeof props.masterData.sId !== 'string' || - props.masterData.sId.trim() === '' + props.masterData.sId.trim() === '' || + props.masterData.sBillNo || + !Array.isArray(copyToConfig) || + copyToConfig.length === 0 ) { return; } - if (props.masterData.sBillNo) return - if (!copyToConfig) return + const { app } = props; const { token } = app; - const addState = {}; // 始终初始化为对象 - if (Array.isArray(copyToConfig) && copyToConfig.length > 0) { - copyToConfig.forEach(async item => { - if (item?.sControlName) { + const addState = {}; + let count = 0; + + (async () => { + try { + for (const item of copyToConfig) { + if (!item?.sControlName) continue; + if (item.sControlName.includes('tmpInfoBySql')) { + if (count > 0) continue; // 跳过后续 + count += 1; + const dataUrl = `${commonConfig.server_host}salesorder/getTmpInfoBySql/?sModelsId=${sModelsId}`; - const sConfigformId = commonUtils.isEmpty(copyToConfig) ? '' : copyToConfig[0].sParentId; - const sControlName = commonUtils.isNotEmptyObject(name) ? name : 'BtnTableCopyTo.tmpInfoBySqlActProduceReport'; - let sSqlCondition = ''; - let sRowData = [record] - const values = { sConfigformId, sControlName, sRowData }; - if (true) { - const dataReturn = (await commonServices.postValueService(token, values, dataUrl)).data; - if (dataReturn.code === 1) { - const returnData = dataReturn.dataset.rows[0]; - if (commonUtils.isNotEmptyObject(returnData)) { - for (const key of Object.keys(returnData)) { - const sName = `${key}Data`; - addState[sName] = returnData[key]; - } - if (commonUtils.isNotEmptyArr(addState.masterData) && Array.isArray(addState.masterData)) { - addState.masterData = addState.masterData[0]; - } + const sConfigformId = copyToConfig[0]?.sParentId || ''; + const sControlName = commonUtils.isNotEmptyObject(item?.sControlName) + ? item?.sControlName + : 'BtnTableCopyTo.tmpInfoBySqlActProduceReport'; + + const values = { + sConfigformId, + sControlName, + sRowData: [record], + }; + + const response = await commonServices.postValueService(token, values, dataUrl); + const dataReturn = response.data; + + if (dataReturn.code === 1) { + const returnData = dataReturn.dataset?.rows?.[0]; + if (commonUtils.isNotEmptyObject(returnData)) { + for (const key of Object.keys(returnData)) { + addState[`${key}Data`] = returnData[key]; } - } else { - props.getServiceError(dataReturn); } } else { - message.warn('数据未配置!不能生成!'); - return; + props.getServiceError?.(dataReturn); } } else { const nameList = item.sControlName.split('.'); - if (nameList && nameList.length > 2) { - const name = nameList.pop() + if (nameList.length > 2) { + const name = nameList.pop(); addState[`${name}Data`] = [{ ...commonFunc.getDefaultData(props[`${name}Config`]), handleType: "add", sId: commonUtils.createSid(), sParentId: props.masterData.sId, - ...commonFunc.getAssignFieldValue(item.sAssignField, record) + ...commonFunc.getAssignFieldValue(item.sAssignField, record), }]; } } + } + if (Object.keys(addState).length > 0) { + props.onSaveState?.({ ...addState }); } - }); - } - props.onSaveState({ ...addState }); + } catch (error) { + message.error('数据加载失败,请重试'); + } + })(); - }, [props.masterData]) + }, [props.masterData]); -- libgit2 0.22.2