linwe
2024-08-08 3c738f4fe2762bba8087e5a22fc0dc06560eab0e
store/index.js
@@ -2,8 +2,8 @@
import Vuex from 'vuex'
Vue.use(Vuex)
import {
      dynamicMenu,
   } from "@/api/system/role.js"
   dynamicMenu,
} from "@/api/system/role.js"
let lifeData = {};
try {
@@ -55,8 +55,8 @@
      // tabbarIndex: uni.getStorageSync("tabbarIndex") || 0,
      hasUpdate: false, //true为不可登录,需要更新,false则是最新版
      menu: [],
      siteInfo:{}    ,//社区信息
      labelMenuList:[]      //标签报事菜单
      siteInfo: {}, //社区信息
      labelMenuList: [] //标签报事菜单
   },
   mutations: {
@@ -97,6 +97,7 @@
      // },
      //设置当前激活的角色
      setActiveRole(state, role) {
         console.log("role===>", role);
         state.activeRole = role
         uni.setStorageSync('activeRole', role)
      },
@@ -120,38 +121,55 @@
         uni.setStorageSync('userInfo', data)
      },
      //设置社区位置
      setSiteInfo(state,val){
      setSiteInfo(state, val) {
         state.siteInfo = val;
         uni.setStorageSync('siteInfo', val)
      },
      //标签报事菜单
      setLabelReporMenutList(state,val){
      setLabelReporMenutList(state, val) {
         state.labelMenuList = val;
         uni.setStorageSync('labelMenuList',val);
         uni.setStorageSync('labelMenuList', val);
      }
   },
   actions:{
      getMenuList({commit}){
         return new Promise((resolve,reject)=>{
            dynamicMenu(this.state.activeRole.id).then(res=>{
               if(res.code == 200){
   actions: {
      getMenuList({
         commit
      }) {
         // let id = uni.getStorageSync("activeRole").id;
         let {
            id,
            roleName
         } = uni.getStorageSync("activeRole")
         return new Promise((resolve, reject) => {
            let param = {
               roleId: id
            }
            if (uni.getStorageSync("siteInfo").addressType == 1 || roleName == "居民") {
               param.labelType = uni.getStorageSync("siteInfo").addressType;
               param.houseCode = uni.getStorageSync("siteInfo").houseCode;
            }
            param.roleName = roleName;
            dynamicMenu(param).then(res => {
               if (res.code == 200) {
                  let data = res.data;
                  if(!data) return
                  if (!data) return
                  let menu = data.filter(e => e.name == 'app')[0].children;
                  commit("SET_MENU",menu);
                  let liveList = menu.filter(item=>item.name == '生活')
                  let labelList = [];
                  if(liveList.length && liveList[0].children){
                     for(let i of liveList[0].children){
                        if(i.name == "标签报事" && i.children.length){
                           commit("setLabelReporMenutList",i.children)
                           break;
                        }
                     }
                  }
                  resolve("success")
               }else {
                  commit("SET_MENU", menu);
                  // let liveList = menu.filter(item=>item.name == '生活')
                  // let labelList = [];
                  // if(liveList.length && liveList[0].children){
                  //    for(let i of liveList[0].children){
                  //       if(i.name == "标签报事" && i.children.length){
                  //          commit("setLabelReporMenutList",i.children)
                  //          break;
                  //       }
                  //    }
                  // }
                  resolve(menu)
               } else {
                  reject("fail")
               }
            })