Explorar o código

机构树新增2种数据获取类型

zhulu %!s(int64=2) %!d(string=hai) anos
pai
achega
b769d4f099

+ 40 - 0
src/api/system/public.js

@@ -16,6 +16,46 @@ export function handsheDeptTreeSelect() {
   })
 }
 
+
+export function businessTreeSelect(para) {
+  // return request({
+  //   url: '/system/dept/deptTree/business',
+  //   method: 'get'
+  // })
+  if(!para)
+  {
+    para={
+      excludeOrgCode:"900000000",
+      excludeOrgName:"各部门"
+    }
+      excludeOrgCode="900000000"
+      excludeOrgName:"各部门"
+  }
+  return request({
+    url: '/system/dept/deptTree/business',
+    method: 'post',
+    data: para,
+  })
+}
+
+
+export function wholeTreeSelect(para) {  
+  if(!para) {
+    para={
+      orgId:"",
+      includeSub:true,
+      excludeOrgName:"各部门"
+    }
+  }
+  return request({
+    url: '/system/dept/deptTree/whole',
+    method: 'post',
+    data: para,
+  })
+}
+
+
+
 // 查询文件
 export function getFile(code) {
   return request({

+ 20 - 1
src/components/orgTree/index.vue

@@ -65,6 +65,14 @@ export default {
       type: Boolean,
       default: false,
     },
+    businessTree: {
+      type: Boolean,
+      default: false,
+    },
+    wholeTree: {
+      type: Boolean,
+      default: false,
+    },    
     defaultProps: {
       type: Object,
       default: () => {
@@ -119,9 +127,20 @@ export default {
           return;
         });
       } else {
+        console.log("getDeptTree",this.hangsheTree,this.businessTree,this.wholeTree)
         if (this.hangsheTree) {
           this.treeList = this.$store.getters.depTree;
-        } else {
+        }
+        else if(this.businessTree)
+        {          
+          this.treeList = this.$store.getters.businessTree;
+        }
+        else if(this.wholeTree)
+        {
+          console.log("wholeTree",this.$store.getters.wholeTree)
+          this.treeList = this.$store.getters.wholeTree;
+        }
+        else {
           this.treeList = this.$store.getters.orgTree;
         }
         this.dataFn(this.treeList);

+ 2 - 0
src/permission.js

@@ -27,6 +27,8 @@ router.beforeEach((to, from, next) => {
           isRelogin.show = false;
           store.dispatch('getOrgTree');
           store.dispatch('getDepTree');
+          store.dispatch('getBusinessTree');
+          store.dispatch('getWholeTree');
           store.dispatch('GenerateRoutes').then(accessRoutes => {
             // 根据roles权限生成可访问的路由表
             router.addRoutes(accessRoutes) // 动态添加可访问路由表

+ 2 - 0
src/store/getters.js

@@ -23,5 +23,7 @@ const getters = {
   sidebarRouters:state => state.permission.sidebarRouters,
   orgTree:state => state.user.orgTree,
   depTree:state => state.user.depTree,
+  businessTree:state => state.user.businessTree,
+  wholeTree:state => state.user.wholeTree,
 }
 export default getters

+ 37 - 2
src/store/modules/user.js

@@ -1,6 +1,6 @@
 import { login, logout, getInfo, refreshToken ,tokenLogin} from '@/api/login'
 import { getToken, setToken, setExpiresIn, removeToken } from '@/utils/auth'
-import {deptTreeSelect,handsheDeptTreeSelect} from "@/api/system/public";
+import {deptTreeSelect,handsheDeptTreeSelect,businessTreeSelect,wholeTreeSelect} from "@/api/system/public";
 
 const user = {
   state: {
@@ -17,6 +17,8 @@ const user = {
     orgTree: [],
     //行社机构树
     depTree: [],
+    businessTree:[],
+    wholeTree:[],
   },
 
   mutations: {
@@ -58,6 +60,12 @@ const user = {
     },
     SET_DEPTREE: (state, val) => {
       state.depTree = val
+    },
+    SET_BUSINESSTREE: (state, val) => {
+      state.businessTree = val
+    },
+    SET_WHOLETREE: (state, val) => {
+      state.wholeTree = val
     }
   },
 
@@ -133,7 +141,7 @@ const user = {
       })
     },
 
-    //获取用户机构树
+    //获取机构、用户管理机构树
     getOrgTree({ commit, state }){
       return new Promise((resolve, reject) => {
         deptTreeSelect().then(res => {
@@ -157,6 +165,33 @@ const user = {
       })
     },
 
+    //获取业务机构树
+    getBusinessTree({ commit, state }){
+      return new Promise((resolve, reject) => {
+        businessTreeSelect().then(res => {
+          commit('SET_BUSINESSTREE', res.data)
+          resolve(res)
+        }).catch(error => {
+          reject(error)
+        })
+      })
+    },
+
+     //获完整路径树(显示登录用户所在机构的所有下级以及直接上级机构)
+     getWholeTree({ commit, state }){
+      return new Promise((resolve, reject) => {
+        wholeTreeSelect().then(res => {
+          commit('SET_WHOLETREE', res.data)
+          resolve(res)
+        }).catch(error => {
+          reject(error)
+        })
+      })
+    },
+
+    
+
+
     // 刷新token
     RefreshToken({commit, state}) {
       return new Promise((resolve, reject) => {