研发图纸文件管理系统-前端项目
longyvfengyun
2022-07-27 82f260cbe0eada87c6288f4a9fb5502c22671619
获取用户角色和部门
2个文件已修改
79 ■■■■■ 已修改文件
src/pages/login/Login.vue 74 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/workplace/WorkPlace.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/pages/login/Login.vue
@@ -64,7 +64,7 @@
        </a-form-item>
      </a-form>
    </div>
    <a-modal v-model="faceVisible" title="人脸登录">
      <template #footer>
        <a-button key="back" @click="{faceVisible = false}">关闭</a-button>
@@ -87,7 +87,7 @@
import {mapMutations} from 'vuex'
import { userLogin } from './apis'
import { values } from 'lodash';
import {getAllRole} from "@/pages/user/apis";
export default {
  name: 'Login',
  components: {CommonLayout,faceLogin},
@@ -106,7 +106,7 @@
    }
  },
  methods: {
    ...mapMutations('account', ['setUser', 'setPermissions', 'setRoles']),
    ...mapMutations('account', ['setUser', 'setPermissions', 'setRoles', 'setRoleList', 'setDepartmentList']),
    onSubmit (e) {
      let vm = this;
      e.preventDefault()
@@ -135,10 +135,12 @@
      this.logging = false
      const loginRes = res.data
      if (loginRes.code >= 0) {
        const {user, permissions, roles} = this.getData(loginRes.data2);
        const {user, permissions, roles, roleList, departmentList} = this.getData(loginRes.data2, loginRes.data3);
        this.setUser(user);
        this.setPermissions(permissions);
        this.setRoles(roles);
        this.setRoleList(roleList);
        this.setDepartmentList(departmentList);
        setAuthorization({token: loginRes.data.token, expireAt: new Date(loginRes.data.expireAt)})
        // 获取路由配置
        // getRoutesConfig().then(result => {
@@ -156,25 +158,36 @@
        this.error = loginRes.msg
      }
    },
    getData:function(data){
    getData:function(data, data3){
      // let vm = this;
      let obj = {
              user:{
                address: "武汉市",
                avatar: null,
                name: data.name,
                position:[]
              },
              permissions:[
                {id:"",operation:[]}
              ],
              roles:[
                {id:data.roleId,operation:[]}
              ],
              token:null,
          }
          return obj;
        user:{
          address: "武汉市",
          avatar: null,
          name: data.name,
          position:[]
        },
        permissions:[
          {id:"",operation:[]}
        ],
        roles:[
          {id:data.roleId,operation:[]}
        ],
        token:null,
        roleList: data3.roles.map(item=>{
          item.key = item.roleId;
          item.label = item.roleName;
          item.value = item.id;
          return item;
        }),
        departmentList: data3.departs.map(item=>{
          item.key = item.departId;
          item.label = item.departName;
          item.value = item.id;
          return item;
        }),
      }
      return obj;
    },
    // 人脸登录
    faceLogin:function(){
@@ -184,7 +197,26 @@
    // 人脸验证成功回调
    faceSuccess:function(){
      // console.log("验证成功")
    },
    getAllRole() {
      getAllRole().then(res=>{
          let rs = res.data;
          if(rs.code == 1 && rs.data) {
            let list = rs.data2.list.map(item=>{
              item.key = item.roleId;
              item.label = item.roleName;
              item.value = item.id;
              return item;
            });
            this.setRoleList(list);
          }
      }).catch(error=>{
        console.log(error);
      });
    }
  },
  mounted() {
    this.getAllRole();
  }
}
</script>
src/pages/workplace/WorkPlace.vue
@@ -24,7 +24,6 @@
import ApprovedList from "@/pages/workplace/approvedList/ApprovedList";
import const_total from "./const_total";
import {mapGetters, mapState} from "vuex";
import const_role from "@/assets/js/const/const_role";
import getItemByKey from "@/assets/js/tools/getItemByKey";
import {statusStatistic} from "@/pages/workplace/apis";
import HandlingList from "@/pages/workplace/handlingList/HandlingList";
@@ -91,10 +90,10 @@
    }
  },
  computed: {
    ...mapGetters('account', ['roles']),
    ...mapGetters('account', ['roles', "roleList", "departmentList"]),
  },
  mounted() {
    let role = getItemByKey(this.roles[0].id, const_role);
    let role = getItemByKey(this.roles[0].id, this.roleList);
    this.changeTotal(role.value);
  }
}