import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) // 请求相关 import { reqAll, reqGet, reqPost } from '../utils/index.js'; const findNodeByNme = (arr) => { for (let i = 0; i < arr.length; i++) { let node = arr[i]; if (node.name === '汽车日发运计划管理') return node; if (node.children && node.children.length > 0) { // 如果当前节点有子节点,则递归查找子节点 let foundNode = findNodeByNme(node.children); if (foundNode) return foundNode; } } // 没有找到目标节点,返回 null return null; } const store = new Vuex.Store({ state: { shenqingMenu: uni.getStorageSync('shenqingMenu') || false, //申请菜单 rijihuaMenu: uni.getStorageSync('rijihuaMenu') || false, //日计划菜单 permissions: uni.getStorageSync('permissions') || [] //权限信息 }, mutations: { ISHAS_SHENQING: (state, data) => { let labelArry = [] let newObj = data.filter(e => e.label == '工作审批') newObj && newObj.forEach(e => { if(e.children.length > 0) { e.children.forEach(item => { labelArry.push(item.label) }) }else{ state.shenqingMenu = false uni.setStorageSync('shenqingMenu',state.shenqingMenu) } }) if(labelArry.indexOf('我的申请') > -1) { state.shenqingMenu = true uni.setStorageSync('shenqingMenu',state.shenqingMenu) }else { state.shenqingMenu = false uni.setStorageSync('shenqingMenu',state.shenqingMenu) } }, ISHAS_RIJIHUA: (state, data) => { console.log(data,'data-----',state) let labelArry = [] // let newObj = data.filter(e => e.label == '汽车日发运计划管理') let newObj = findNodeByNme(data) //找 汽车日发运计划管理 if(newObj && newObj.label) { labelArry.push(newObj.label) } if(labelArry.indexOf('汽车日发运计划管理') > -1) { state.rijihuaMenu = true uni.setStorageSync('rijihuaMenu',state.rijihuaMenu) }else { state.rijihuaMenu = false uni.setStorageSync('rijihuaMenu',state.rijihuaMenu) } }, SET_PERMISSIONS: (state,permissions) => { let list = {} for(let i=0;i { console.log(response,'response=====response----') commit('ISHAS_SHENQING',response.data) commit('ISHAS_RIJIHUA',response.data) }) } }, getters: { permissions:state => state.permissions } }) export default store