diff --git a/src/components/Common/CommonBase.js b/src/components/Common/CommonBase.js index 27d18da..5ab4477 100644 --- a/src/components/Common/CommonBase.js +++ b/src/components/Common/CommonBase.js @@ -763,6 +763,7 @@ export default (ChildComponent) => { } } addState[`${name}Data`] = returnData; + addState[`${name}DataOld`] = returnData; if(commonUtils.isNotEmptyObject(returnData.customConfig) && commonUtils.isJSON(returnData.customConfig) && commonUtils.isNotEmptyObject(slaveConfig)) { const columnConfig = JSON.parse(returnData.customConfig); const newConfig =JSON.parse(JSON.stringify(slaveConfig)); @@ -796,6 +797,20 @@ export default (ChildComponent) => { this.getServiceError(dataReturn); } }; + handleGetDataOld = async (sId) => { + const { + token, sModelsId, formSrcRoute + } = this.state; + const dataUrl = `${commonConfig.server_host}log/getLogDetail/${sId}?sModelsId=${sModelsId}&sName=${formSrcRoute}`; + const condition = {}; + const dataReturn = (await commonServices.postValueService(token, condition, dataUrl)).data; + if(dataReturn.sCode === 1) { + let returnData = dataReturn.dataset.rows[0].dataSet; + console.log('ssreturnDatas', returnData); + + } + + } /* 获取后台数据(数据集) */ handleGetDataSet = async (params) => { @@ -1048,6 +1063,7 @@ export default (ChildComponent) => { const filterConditionNew = commonUtils.isNotEmptyObject(filterCondition) ? filterCondition.filter(item => item.bFilterType !== 'tree') : ''; let addState = { [`${name}Data`]: returnData, + [`${name}DataOld`]: returnData, [`${name}Pagination`]: returnPagination, [`${name}FilterCondition`]: filterConditionNew, [`${name}OrderBy`]: orderBy, @@ -3435,6 +3451,7 @@ export default (ChildComponent) => { getDateFormat={this.getDateFormat} handleGetDataOne={this.handleGetDataOne} handleGetDataSet={this.handleGetDataSet} + onGetDataOld={this.handleGetDataOld} handleGetTreeDataSet={this.handleGetTreeDataSet} onSaveState={this.handleSaveState} onChange={this.handleMasterChange} diff --git a/src/components/Common/CommonBillEvent.js b/src/components/Common/CommonBillEvent.js index a926e9a..96cf073 100644 --- a/src/components/Common/CommonBillEvent.js +++ b/src/components/Common/CommonBillEvent.js @@ -78,6 +78,8 @@ export default (ChildComponent) => { employeeConfig: employeeConfigOld, slaveInfoList: slaveInfoListOld, } = nextProps; + const { currentPane } = app; + const bHistoryView = currentPane?.bHistoryView; if (commonUtils.isEmptyObject(slaveConfigOld) && formData.length > 0 && (sModelsId === '12710101117024321284220' || (sModelsType !== 'cashier/financialTransfer' && sModelsType !== 'cashier/financialAdjustment' && sModelsType !== 'quality/accident' && sModelsType !== 'purchase/purchaseEnquiry' && sModelsType !== 'complaint/complaint' && sModelsType !== 'print/printLabel' && sModelsType !== 'commonBill/onlyMaster' && (formRoute.indexOf('indexOee') === -1 || formRoute === '/indexOee/commonOeeBill')))) { const sId = currentId || nextProps.masterData?.sId || ''; /* 数据Id */ @@ -402,6 +404,8 @@ export default (ChildComponent) => { // if (sModelsType.includes('sales/salesOrder') || sModelsType === 'purchase/purchaseOrder') { // this.props.onSaveState(addState1); // } + } else if(bHistoryView){ + this.handleGetDataOld(); } else { this.handleGetData(masterConfig, slaveConfig, checkConfig); if (sModelsType.includes('sales/salesOrder')) { @@ -772,6 +776,11 @@ export default (ChildComponent) => { return processData; }; + handleGetDataOld = async () => { + const { currentId } = this.props; /* 当前页签数据 */ + this.props.onGetDataOld(currentId); + } + /** 获取主表、从表、审核表数据 */ handleGetData = async (masterConfig, slaveConfig, checkConfig, bEditClick) => { const { currentId, masterData = {} } = this.props; /* 当前页签数据 */ @@ -2603,8 +2612,12 @@ export default (ChildComponent) => { } }); } + const sOldData = commonUtils.getOldDataFromProps(this.props); + console.log('组装后的原始数据', sOldData); + const sOperationType = masterData?.handleType === 'add' ? '1' : '2' ; - this.handleSaveData({ data, sClientType: '1', sSysLogSrcId: masterData.sId }); + this.handleSaveData({ data, sClientType: '1', sSysLogSrcId: masterData.sId, + sOldData, sOperationType, sBillNo: masterData.sBillNo }); } }); }; @@ -3115,12 +3128,16 @@ export default (ChildComponent) => { } } } + const sOldData = commonUtils.getOldDataFromProps(this.props); + console.log('删除的原始数据', sOldData); const value = { sClientType: '1', data: { sMasterTable: masterConfig.sTbName, sId: [masterData.sId], }, + sOldData, + sSysLogSrcId: masterData.sId, }; const sSlaveTable = []; if (commonUtils.isNotEmptyObject(slaveConfig)) { diff --git a/src/components/Common/CommonListEvent.js b/src/components/Common/CommonListEvent.js index 6c40fe1..873ea78 100644 --- a/src/components/Common/CommonListEvent.js +++ b/src/components/Common/CommonListEvent.js @@ -715,32 +715,7 @@ export default (ChildComponent) => { // masterData, // employeeConfig, } = this.props; - // oee双击查看开工任务 - // if (formRoute.indexOf('indexOee') > -1) { - // if (slaveSelectedData[0].sCompleteCheck !== 'bCompleteCheck' && commonUtils.isNotEmptyArr(slaveSelectedData)) { - // this.props.changePage(false, 'startWork', '2', false); - // this.props.onSaveState({ - // masterData: slaveSelectedData[0], - // }); - // if (commonUtils.isNotEmptyObject(record)) { - // const bFilter1 = []; - // bFilter1.push({ - // bFilterName: 'sParentId', - // bFilterCondition: '=', - // bFilterValue: record.sId, - // }); - // const employeeData = (await this.props.handleGetDataSet({ - // name: 'employee', - // configData: employeeConfig, - // condition: { bFilter: bFilter1 }, - // isWait: true, - // })); - // this.props.onSaveState({ - // ...employeeData, - // }); - // } - // } - // } else {} + // 工单明细弹窗 if (commonUtils.isNotEmptyObject(slaveConfig) && slaveConfig.sTbName === 'sys_workorder') { @@ -818,7 +793,8 @@ export default (ChildComponent) => { currentIndex: slaveData.findIndex(item => item.sId === record.sId), sSqlConditionValues: this.handleGetSqlConditionValues(picArr[0], record), sSrcModelsId: this.props.sModelsId, - sFilterOrderBy: slaveOrderBy + sFilterOrderBy: slaveOrderBy, + bHistoryView : sModelsType === '/log' }, }); } diff --git a/src/components/Common/commonBusiness.js b/src/components/Common/commonBusiness.js index bfe6a84..48e115c 100644 --- a/src/components/Common/commonBusiness.js +++ b/src/components/Common/commonBusiness.js @@ -285,7 +285,7 @@ export async function saveData(param) { * delTmpData 表单删除数据 * bAll 不过滤增加数据还是修改数据 */ export function mergeData(name, sTbName, saveTmpData, delTmpData, bAll) { - if (name === 'master' && commonUtils.isNotEmptyArr(saveTmpData)) { + if (name === 'master' && commonUtils.isNotEmptyArr(saveTmpData) && sTbName?.toLowerCase()?.includes('quoquo')) { saveTmpData[0].handleType = saveTmpData[0].handleType ? saveTmpData[0].handleType : 'update'; } const delData = commonUtils.isEmptyArr(delTmpData) ? [] : delTmpData; diff --git a/src/components/IndexCenter/IndexCenter.js b/src/components/IndexCenter/IndexCenter.js index e7f1554..2cbc598 100644 --- a/src/components/IndexCenter/IndexCenter.js +++ b/src/components/IndexCenter/IndexCenter.js @@ -105,7 +105,6 @@ class IndexCenter extends Component { componentWillReceiveProps(nextProps) { const { dispatch } = nextProps; const { modelCenter, comParameter:comParameterAll = [], dataCode, kpiData, logoImageInfo, userinfo, token } = nextProps.app; - console.log('1-comParameterAll', comParameterAll); const comParameter = comParameterAll.filter(item => item.sDisplayType ? item.sDisplayType !== 'LargeScreen' : !item.sFormUrl?.includes('http')); const commonThirdApp = comParameterAll.filter(item => item.sDisplayType ? item.sDisplayType === 'LargeScreen' : item.sFormUrl?.includes('http')); const { modelCenter: modelCenterOld } = this.props; diff --git a/src/models/content.js b/src/models/content.js index a23c85d..d0eea7c 100644 --- a/src/models/content.js +++ b/src/models/content.js @@ -42,6 +42,7 @@ export default { sName, /* 当前列的sName */ sSqlConditionValues, sSrcModelsId, + bHistoryView } = payload; /* 参数接收 */ const token = yield select(state => state.app.token); /* 用户令牌 */ /* 从接口获取数据 */ @@ -84,6 +85,7 @@ export default { sName, sSqlConditionValues, sSrcModelsId, + bHistoryView }, }, }); @@ -95,7 +97,7 @@ export default { *onRouterMobile({ payload }, { put, call, select }) { const { urlKey } = payload; /* 参数接收 */ console.log(payload,'payload'); - + if (urlKey !== undefined) { const token = yield select(state => state.app.token); /* 用户令牌 */ const { data } = yield call(services.getService, token, urlKey); @@ -128,7 +130,7 @@ export default { yield put({ type: 'app/throwErrorMobile', payload: data }); } } else { - + const param = { sModelsId: payload.sModelsId, sId: payload.sId, diff --git a/src/utils/config.js b/src/utils/config.js index 252e3ec..0af92a5 100644 --- a/src/utils/config.js +++ b/src/utils/config.js @@ -9,11 +9,11 @@ const API = process.env.API; const bHttps = false; export const webSite = { faceAddress: isDev ? '//118.178.19.35:8088/xlyFace' : '//' + location.host + '/xlyFace', - ipAddress: localStorage.ipAddress ? localStorage.ipAddress : isDev ? '//km5cjx.gnway.cc:36867/xlyEntry/' : '//' + location.host + '/xlyEntry/', + ipAddress: localStorage.ipAddress ? localStorage.ipAddress : isDev ? '///118.178.19.35:8088/xlyEntry/' : '//' + location.host + '/xlyEntry/', // ipAddress: localStorage.ipAddress ? localStorage.ipAddress : isDev ? '//118.178.19.35:8088/xlyEntry/' : '//' + location.host + '/xlyEntry/', // ipAddress: localStorage.ipAddress ? localStorage.ipAddress : isDev ? '//8.130.144.93:8088/xlyEntry/' : '//' + location.host + '/xlyEntry/', interfaceAddress: localStorage.apiAddress ? localStorage.apiAddress : isDev ? '//118.178.19.35:8088/xlyApi/' : '//' + location.host + '/xlyApi/', // 接口地址 - fileAddress: isDev ? '//118.178.19.35:8088/xlyReport/' : '//' + location.host + '/xlyReport/', // 接口地址 + fileAddress: isDev ? '//118.178.19.35:8088/xlyReport/' : '//' + location.host + '/xlyReport/', // 接口地址1 fileAddressEbc: isDev ? '//118.178.19.35:8088/xlyReport/' : '//' + location.host + '/xlyReport/', }; diff --git a/src/utils/utils.js b/src/utils/utils.js index 8cac108..2a7ecf5 100644 --- a/src/utils/utils.js +++ b/src/utils/utils.js @@ -641,6 +641,39 @@ export function genSlaveNewId(arr, tableName, idName, oldName, baseObj) { } +/** + * 从props中提取带DataOld后缀的字段,组装成以表名为key的原始数据对象 + * @param {Object} props - 组件的props对象 + * @returns {Object} - 组装后的sOldData,格式:{ 表名: 对应的数据数组 } + */ +export function getOldDataFromProps(props) { + // 初始化返回的空对象 + const sOldData = {}; + + // 2. 遍历props的所有key + for (const key of Object.keys(props)) { + if (key.includes('DataOld')) { + // 提取去掉DataOld后的表名前缀 + const tablename = key.replace('DataOld', '').trim(); + + // 获取对应的配置对象(tablename + Config) + const tableConfig = props[tablename + 'Config']; + // 获取对应的原始数据(tablename + DataOld),默认空数组 + const tableData = props[tablename + 'DataOld'] || []; + + // 3. 校验配置对象是否有效,避免无配置时赋值 + if (isNotEmptyObject(tableConfig) && tableConfig.sTbName) { + // 以配置中的真实表名为key,存入数据 + const sTbName = tableConfig.sTbName; + sOldData[sTbName] = tableData; + } + } + } + + return sOldData; +} + + export const myContext = createContext(null); export function reducer(state, action) {