按钮级别的新版本,多级别的组织架构
loulijun2021
2023-08-15 621bd1e65350d17756863f35783dbab5619a54d4
src/store/modules/user.js
@@ -1,6 +1,8 @@
import { login, logout, getInfo, LoginMenu, LoginMenuCloud } from '@/api/user'
import { login, logout, getInfo, LoginMenu, LoginMenuCloud, UserTorgData } from '@/api/user'
import { getToken, setToken, removeToken, setCookie, removeCookie, getCookie } from '@/utils/auth'
import { resetRouter } from '@/router'
import { ButtonData } from '@/api/basicSettings'
import Vue from 'vue'
const getDefaultState = () => {
  return {
@@ -41,28 +43,7 @@
        localStorage.setItem('token', res.data)
        // login({ UserName: '001', PassWord: 123, HOrgName: 1 }).then(response => {
        //   const { data: res } = response
        //   if (res.code === '200') {
        // setCookie('username', res.data.username)
        // setCookie('admin', res.data.usercode)
        // setCookie('navTabId', res.data.usercode)
        // setCookie('usertype', res.data.usertype)
        // setCookie('userid', res.data.userid)
        // setCookie('rediskey', res.data.rediskey)
        // setCookie('guid', res.data.guid)
        // setCookie('stu_torgcode', res.data.stu_torgcode)
        // setCookie('stu_torgname', res.data.stu_torgname)
        // setCookie('description', res.data.description)
        // }
        // console.log(res.code === '302', 8989)
        // if (res.code === '302') {
        setCookie('code', res.code)
        // }
        // commit('SET_TOKEN', data.token)
        // setToken(res)
        // commit('SET_TOKEN', res)
        // setToken(res)
        resolve()
      }).catch(error => {
        reject(error)
@@ -90,84 +71,101 @@
      })
    })
  },
  getUserTorgData() {
    return new Promise((resolve, reject) => {
      UserTorgData({ usercode: localStorage.getItem('usercode') }).then(res1 => {
        localStorage.setItem('username', res1.data.user)
        localStorage.setItem('torg', JSON.stringify(res1.data.torg))
        Vue.prototype.$stu_torg = JSON.parse(localStorage.getItem('torg'))
        if (Vue.prototype.$stu_torg.length > 0) {
          const name = Vue.prototype.$stu_torg[0].torg_name
          const code = Vue.prototype.$stu_torg[0].torg_code
          localStorage.setItem('torg_name', name)
          localStorage.setItem('torg_code', code)
        } else {
          localStorage.setItem('torg_name', '')
          localStorage.setItem('torg_code', '')
        }
        if (res1.code === '200') {
          ButtonData().then(res2 => {
            localStorage.setItem('ButtonData', JSON.stringify(res2.data))
          })
        }
        resolve(res1.code)
      }).catch(e => {
        reject(e)
      })
    })
  },
  // get user menu
  getMenu({ commit, state }) {
    return new Promise((resolve, reject) => {
      console.log('进来了11111')
      // if (getCookie('cloud')) { // 走云
      //   LoginMenuCloud({ enterpriseUserName: getCookie('admin') }).then(res => {
      //     if (res.code === 200) {
      //       commit('SET_NAME', res.msg)
      //       commit('SET_MENU', res.data)
      //       resolve(res.data)
      //     }
      //   }).catch(error => {
      //     reject(error)
      //   })
      // } else {
      // debugger
      // 明天的看下usercode编码动态
      LoginMenu({ usertype: 'PC', usercode: '999' }).then(res => {
      // console.log('菜单接口进来了11111')
      LoginMenu({
        usertype: 'PC',
        usercode: localStorage.getItem('usercode'),
        torg_code: localStorage.getItem('torg_code')
      }).then(res => {
        if (res.code === '200') {
          ButtonData().then(res2 => {
            localStorage.setItem('ButtonData', JSON.stringify(res2.data))
          })
          commit('SET_NAME', res.message)
          commit('SET_MENU', res.data)
          resolve(res.data)
        }
        // if (res.code === '303') {
        //   debugger
        //   localStorage.removeItem('token')
        //   // window.location.reload()
        //   // resolve(res.data)
        // }
      }).catch(error => {
        reject(error)
      })
      // }
    })
  },
  // user logout
  logout({ commit, state, dispatch }) {
    return new Promise((resolve, reject) => {
      const usercode = getCookie('navTabId')
      const username = getCookie('admin')
      const usertype = getCookie('usertype')
      const userid = getCookie('userid')
      const stu_torgcode = getCookie('stu_torgcode')
      const data = {
        usercode,
        username,
        usertype,
        userid,
        stu_torgcode
      }
      // const usercode = getCookie('navTabId')
      // const username = getCookie('admin')
      // const usertype = getCookie('usertype')
      // const userid = getCookie('userid')
      // const stu_torgcode = getCookie('stu_torgcode')
      // const data = {
      //   usercode,
      //   username,
      //   usertype,
      //   userid,
      //   stu_torgcode
      // }
      logout(data).then(res => {
      logout().then(res => {
        if (res.code === '200') {
          removeToken() // must remove  token  first
          resetRouter()
          removeCookie('ruleCode')
          removeCookie('username')
          removeCookie('admin')
          removeCookie('navTabId')
          removeCookie('usertype')
          removeCookie('userid')
          removeCookie('rediskey')
          removeCookie('code')
          removeCookie('stu_torgcode')
          removeCookie('stu_torgname')
          removeCookie('description')
          localStorage.removeItem('torg_code')
          localStorage.removeItem('ButtonData')
          localStorage.removeItem('usercode')
          localStorage.removeItem('username')
          localStorage.removeItem('torg')
          localStorage.removeItem('token')
          localStorage.removeItem('torg_name')
          removeCookie('guid')
          // removeCookie('ruleCode')
          // removeCookie('username')
          // removeCookie('usercode')
          // removeCookie('stu_torgname')
          // removeCookie('code')
          // reset visited views and cached views
          dispatch('tagsView/delAllViews', null, { root: true })
          sessionStorage.removeItem('tabViews')
          if (getCookie('cloud')) {
            removeCookie('cloud')
            window.location.href = 'http://182.61.13.206/choose'
          }
          commit('RESET_STATE')
          resolve()