import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) let cachePruneSequence = 0 const store = new Vuex.Store({ state: { menus: sessionStorage.getItem('menuList') ? JSON.parse(sessionStorage.getItem('menuList')) : [], keepAliveList: sessionStorage.getItem('keepAliveList') ? JSON.parse(sessionStorage.getItem('keepAliveList')) : [],//缓存页面 tagList: sessionStorage.getItem('tagList') ? JSON.parse(sessionStorage.getItem('tagList')) : [],//标签列表 cachePruneRequest: null, isFold: false,//是否折叠 assay: [ '检验方法正确', '实验检验相关记录完整', '检验数据准确', '检验过程异常问题的优化处理', '检验时效完成度,安全操作', '操作失败', ],//化验师评定项 experiment: [ '实验方案熟悉度、设备及材料准备完整度', '实验操作、取样、送样准确性', '实验记录清晰完整度', '实验过程异常问题的优化处理', '实验操作时效完成度、安全操作', '实验操作失败', ],//实验员评定项 craft: [ '实验工作调度安排完成度', '全程实验、化验异常问题处理', '实验方案准确度、检验方法准确度', '检查实验数据记录准确性', '实验分析报告完成度', '实验损失与失败', ],//工艺工程师评定项 }, mutations: { SET_MENUS(state, data) { state.menus = data; }, SET_FLAT_MENUS(state, data) { state.flatMenus = data; }, SET_KEEPALIVELIST(state, data) { state.keepAliveList = data; sessionStorage.setItem('keepAliveList', JSON.stringify(data)); }, SET_TAGLIST(state, data) { state.tagList = data; sessionStorage.setItem('tagList', JSON.stringify(data)); }, PRUNE_VIEW_CACHE(state, data) { const keys = (Array.isArray(data) ? data : [data]).filter(Boolean) state.cachePruneRequest = { id: ++cachePruneSequence, keys } }, SET_ISFOLD(state, data) { state.isFold = data; }, }, actions: { setMenus({ commit }, data) { commit('SET_MENUS', data); }, setFlatMenus({ commit }, data) { commit('SET_FLAT_MENUS', data); }, setKeepAliveList({ commit }, data) { commit('SET_KEEPALIVELIST', data); }, setTagList({ commit }, data) { commit('SET_TAGLIST', data); }, setIsFold({ commit }, data) { commit('SET_ISFOLD', data); } } }) export default store