From e9c693ee5110ad8199006bf1c9b7859f89b2c07a Mon Sep 17 00:00:00 2001 From: Xu Zhimeng Date: Thu, 11 Apr 2024 09:58:36 +0800 Subject: [PATCH 1/3] =?UTF-8?q?WIP:=20=E6=80=A7=E8=83=BD=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/store/index.js | 2 - src/store/modules/sample.js | 52 ------------ src/utils/SampleStore.js | 84 +++++++++++++++++++ .../spectrumAnalysis/beta-gamma-analysis.vue | 27 ++++-- .../spectrumAnalysis/clearSampleCache.js | 4 +- .../AnalyzeInteractiveToolModal/index.vue | 9 +- .../BetaGammaEnergyCalibrationModal/index.vue | 4 +- src/views/spectrumAnalysis/gamma-analysis.vue | 7 +- src/views/spectrumAnalysis/index.vue | 10 ++- 9 files changed, 125 insertions(+), 74 deletions(-) delete mode 100644 src/store/modules/sample.js create mode 100644 src/utils/SampleStore.js diff --git a/src/store/index.js b/src/store/index.js index b77f9bd..5936c50 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -6,7 +6,6 @@ import user from './modules/user' import permission from './modules/permission' import enhance from './modules/enhance' import online from './modules/online' -import sample from './modules/sample' import getters from './getters' Vue.use(Vuex) @@ -18,7 +17,6 @@ export default new Vuex.Store({ permission, enhance, online, - sample }, state: { diff --git a/src/store/modules/sample.js b/src/store/modules/sample.js deleted file mode 100644 index 71219e2..0000000 --- a/src/store/modules/sample.js +++ /dev/null @@ -1,52 +0,0 @@ -const sample = { - state: Object.freeze({ - sampleList: [] // [{ inputFileName: String; data: Object; }] - }), - mutations: { - SET_SAMPLE_LIST: (state, sampleList) => { - state.sampleList = sampleList - }, - - ADD_SAMPLE_DATA: (state, sampleData) => { - const find = state.sampleList.find(item => item.inputFileName == sampleData.inputFileName) - if (find) { - find.data = sampleData.data - } else { - state.sampleList.push(sampleData) - } - }, - - UPDATE_SAMPLE_DATA: (state, { inputFileName, key, data }) => { - const find = state.sampleList.find(item => item.inputFileName == inputFileName) - if (find) { - find.data[key] = data - } - }, - UPDATE_SAMPLE_DATA_ANALY: (state, { inputFileName, data }) => { - const find = state.sampleList.find(item => item.inputFileName == inputFileName) - if (find) { - data.DetailedInformation = find.data.DetailedInformation - find.data = data - } - }, - - REMOVE_SAMPLE_DATA: (state, inputFileName) => { - const findIndex = state.sampleList.findIndex(item => item.inputFileName == inputFileName) - if(-1 !== findIndex) { - state.sampleList.splice(findIndex, 1) - } - }, - - CLEAR_SAMPLE_DATA: (state) => { - state.sampleList = [] - } - }, - actions: { - GET_SAMPLE_DATA: ({ state }, inputFileName) => { - const find = state.sampleList.find(item => item.inputFileName == inputFileName) - return find ? find : null - } - } -} - -export default sample diff --git a/src/utils/SampleStore.js b/src/utils/SampleStore.js new file mode 100644 index 0000000..a16e82c --- /dev/null +++ b/src/utils/SampleStore.js @@ -0,0 +1,84 @@ +// 所有缓存的谱 +let sampleList = [] + +/** + * 重新设置缓存的谱 + * @param {Array} list + */ +const setSampleList = list => { + sampleList = list +} + +/** + * 缓存一条谱数据 + * @param {*} sampleData + */ +const addSampleData = sampleData => { + const find = sampleList.find(item => item.inputFileName == sampleData.inputFileName) + if (find) { + find.data = sampleData.data + } else { + sampleList.push(sampleData) + } +} + +/** + * 更新谱数据 + * @param {{ inputFileName: string; key: string; data: any; }} param0 + */ +const updateSampleData = ({ inputFileName, key, data }) => { + const find = sampleList.find(item => item.inputFileName == inputFileName) + if (find) { + find.data[key] = data + } +} + +/** + * 移除谱数据 + * @param {string} inputFileName + */ +const removeSampleData = inputFileName => { + const findIndex = sampleList.findIndex(item => item.inputFileName == inputFileName) + if (-1 !== findIndex) { + sampleList.splice(findIndex, 1) + } +} + +/** + * 更新分析数据 + * @param {{ inputFileName: string; data: any; }} param0 + */ +const updateSampleDataAnaly = ({ inputFileName, data }) => { + const find = sampleList.find(item => item.inputFileName == inputFileName) + if (find) { + data.DetailedInformation = find.data.DetailedInformation + find.data = data + } +} + +/** + * 清理缓存列表 + */ +const clearSampleData = () => { + sampleList = [] +} + +/** + * 根据文件名获取谱 + * @param {string} inputFileName + */ +const getSampleData = inputFileName => { + const find = sampleList.find(item => item.inputFileName == inputFileName) + return find ? find : null +} + +export { + sampleList, + setSampleList, + addSampleData, + updateSampleData, + removeSampleData, + updateSampleDataAnaly, + clearSampleData, + getSampleData +} diff --git a/src/views/spectrumAnalysis/beta-gamma-analysis.vue b/src/views/spectrumAnalysis/beta-gamma-analysis.vue index 3033f66..183e306 100644 --- a/src/views/spectrumAnalysis/beta-gamma-analysis.vue +++ b/src/views/spectrumAnalysis/beta-gamma-analysis.vue @@ -121,6 +121,7 @@