diff --git a/src/components/Common/CommonHooks/useCommonBase.js b/src/components/Common/CommonHooks/useCommonBase.js index a6fbfe1..434a999 100644 --- a/src/components/Common/CommonHooks/useCommonBase.js +++ b/src/components/Common/CommonHooks/useCommonBase.js @@ -224,34 +224,56 @@ const useCommonBase = props => { * @returns {Promise} - 表单数据 */ const handleGetModelConfig = async params => { - const { sModelsId } = params; - const { token, formSrcRoute } = state; - const configUrl = `${commonConfig.server_host - }business/getModelBysId/${sModelsId}?sModelsId=${sModelsId}&sName=${formSrcRoute}`; - const configUrlModel = `${commonConfig.server_host - }/gdsmodule/getGdsmoduleById/${sModelsId}?sModelsId=${sModelsId}&sName=${formSrcRoute}`; - // const getGdsmoduleById - const configReturnModel = (await commonServices.getService(token, configUrlModel)) - .data; - - const configReturn = (await commonServices.getService(token, configUrl)) - .data; - - let formData = []; - if (configReturn.code === 1) { - const [configData] = configReturn.dataset.rows; - formData = configData.formData; - } else { - getServiceError(configReturn); + const cacheKey = params.sModelsId; + const cacheKeyModel = `${params.sModelsId}_model`; + + const localStorageData = localStorage.getItem(cacheKey); + const localStorageDataModel = localStorage.getItem(cacheKeyModel); + + if (localStorageData && localStorageDataModel) { + try { + const parsedData = JSON.parse(localStorageData); + return parsedData; + } catch (e) { + localStorage.removeItem(cacheKey); + localStorage.removeItem(cacheKeyModel); + } } - const configReturnModelData = configReturnModel?.dataset?.rows?.[0] - if (configReturnModelData) { - formData.forEach(item => { - item.sModelType = configReturnModelData?.sModelType - item.sName = configReturnModelData?.sName - }) + const { sModelsId } = params; + const { token, formSrcRoute } = state; // 确保 state 在此作用域可用 + + const configUrl = `${commonConfig.server_host}business/getModelBysId/${sModelsId}?sModelsId=${sModelsId}&sName=${formSrcRoute}`; + const configUrlModel = `${commonConfig.server_host}/gdsmodule/getGdsmoduleById/${sModelsId}?sModelsId=${sModelsId}&sName=${formSrcRoute}`; + + try { + const configReturnModel = (await commonServices.getService(token, configUrlModel)).data; + const configReturn = (await commonServices.getService(token, configUrl)).data; + + let formData = []; + if (configReturn.code === 1) { + const [configData] = configReturn.dataset.rows; + formData = configData.formData || []; // 增加容错 + } else { + getServiceError(configReturn); + } + + const configReturnModelData = configReturnModel?.dataset?.rows?.[0]; + + if (configReturnModelData && formData.length > 0) { + formData.forEach(item => { + item.sModelType = configReturnModelData.sModelType; + item.sName = configReturnModelData.sName; + }); + } + if (params.sModelsId === '12710101117087404588200') { + localStorage.setItem(cacheKeyModel, JSON.stringify(configReturnModelData)); + localStorage.setItem(cacheKey, JSON.stringify(formData)); + } + return formData; + } catch (error) { + console.error('Failed to fetch model config:', error); + throw error; // 抛出错误让调用者处理 } - return formData; }; /* 获取后台数据(数据集) */ diff --git a/src/mes/indexMes/index.js b/src/mes/indexMes/index.js index 89ba098..5c81306 100644 --- a/src/mes/indexMes/index.js +++ b/src/mes/indexMes/index.js @@ -626,7 +626,7 @@ const HeaderConponent = () => { const SiderComponent = () => { const { dispatch, hooksProps, props, ...rest } = useContext(myContext); const { currentContent, menuMap, menuMapOpposite } = hooksProps; - const {managementData = []} = props?.app || {} + const { managementData = [] } = props?.app || {} const teamInformation = commonFunc.showLocalMessage(props, 'teamInformation', '班组信息'); const scheduledTask = commonFunc.showLocalMessage(props, 'scheduledTask', '计划任务'); @@ -684,9 +684,9 @@ const SiderComponent = () => { } ]; let menuLists = [] - managementData && managementData?.forEach(item=>{ - const i = menuList.findIndex(x=>x.title === item.sMenuName) - if (i !== -1){ + managementData && managementData?.forEach(item => { + const i = menuList.findIndex(x => x.title === item.sMenuName) + if (i !== -1) { menuLists.push(menuList[i]) } }) @@ -700,7 +700,7 @@ const SiderComponent = () => { c_icon: c_guideIcon } ]; - const {bManual = false} = props?.app?.userinfo || {} + const { bManual = false } = props?.app?.userinfo || {} if (bManual) { const index = filteredMenuList.findIndex(item => item.id === 'productionExec'); filteredMenuList.splice(index, 1); @@ -1061,12 +1061,16 @@ const SystemFunComponent = () => { {bPlcSd ? SwitchAuto : switchToManual} */} -
{ - setTimeout(() => { - message.success( ClearCache + sSuccess + '!'); - }, 1000); + setTimeout(() => { + const key = '12710101117087404588200'; + const keyModel = '12710101117087404588200_model'; + localStorage.removeItem(key); + localStorage.removeItem(keyModel); + message.success(ClearCache + sSuccess + '!'); + }, 1000); }} > diff --git a/src/mes/login/index.js b/src/mes/login/index.js index 0001d3f..1d46fb3 100644 --- a/src/mes/login/index.js +++ b/src/mes/login/index.js @@ -133,6 +133,10 @@ const useLoginEvent = props => { // 登录事件 const handleSubmit = async ({ faceLoginValue = {}, sEmployeeName, sEmployeeNo, sUserId } = {}, configsData) => { + const key = '12710101117087404588200'; + const keyModel = '12710101117087404588200_model'; + localStorage.removeItem(key); + localStorage.removeItem(keyModel); const bFaceLogin = commonUtils.isNotEmptyObject(faceLoginValue); let masterNewData = {} let dataReturn = {}; @@ -152,7 +156,7 @@ const useLoginEvent = props => { masterNewData = { ...masterNewData, sEmployeeNo, - sUserName:sEmployeeName, + sUserName: sEmployeeName, sUserId } } @@ -329,9 +333,9 @@ const useLoginEvent = props => { const { masterData = {} } = props; const storeMasterData = JSON.parse(JSON.stringify(masterNewData)); const newMasterData = { - sUserId:storeMasterData.sUserId, - sUserName:storeMasterData.sUserName, - sUserNo:storeMasterData.sUserNo, + sUserId: storeMasterData.sUserId, + sUserName: storeMasterData.sUserName, + sUserNo: storeMasterData.sUserNo, } localStorage.setItem( `${commonConfig.prefix}masterData`,