Browse Source

【BI商业智能】【权限获取】

zhaoy 6 years ago
parent
commit
01d8e812ec

+ 4 - 4
bi-server/src/main/java/com/usoftchina/bi/server/controller/user/UserController.java

@@ -48,8 +48,8 @@ public class UserController {
     @ApiOperation(value = "查询用户列表", notes = "查询用户列表", response = RepEntity.class)
     @ApiOperation(value = "查询用户列表", notes = "查询用户列表", response = RepEntity.class)
     @Auth(user = "admin")
     @Auth(user = "admin")
     @PostMapping("/getUserList")
     @PostMapping("/getUserList")
-    public RepEntity getUserList(){
-        return userService.getUserList();
+    public RepEntity getUserList(@RequestHeader String token){
+        return userService.getUserList(token);
     }
     }
 
 
     /*
     /*
@@ -91,8 +91,8 @@ public class UserController {
     @ApiOperation(value = "查询用户组列表", notes = "查询用户组列表", response = RepEntity.class)
     @ApiOperation(value = "查询用户组列表", notes = "查询用户组列表", response = RepEntity.class)
     @Auth(user = "admin")
     @Auth(user = "admin")
     @PostMapping("/getUserGroupList")
     @PostMapping("/getUserGroupList")
-    public RepEntity getUserGroupList(){
-        return userService.getUserGroup();
+    public RepEntity getUserGroupList(@RequestHeader String token){
+        return userService.getUserGroup(token);
     }
     }
 
 
     /*
     /*

+ 6 - 6
bi-server/src/main/java/com/usoftchina/bi/server/service/chart/ChartsUtilService.java

@@ -50,22 +50,22 @@ public class ChartsUtilService {
                 if (tableName == null || "".equals(tableName)) {
                 if (tableName == null || "".equals(tableName)) {
                     return "";
                     return "";
                 } else {
                 } else {
-                    return columnNameUtil(userId, baseId, tableName, true, id, -1);
+                    return columnNameUtil(userId, baseId, tableName, true, id, -1, role);
                 }
                 }
             } else {
             } else {
                 //先拿图表创建者权限,在取分发权限
                 //先拿图表创建者权限,在取分发权限
-                String sql = columnNameUtil(createID, baseId, tableName, true, id, -1);
-                return columnNameUtil(userId, baseId, sql, false, id, -1);
+                String sql = columnNameUtil(createID, baseId, tableName, true, id, -1, role);
+                return columnNameUtil(userId, baseId, sql, false, id, -1, role);
             }
             }
         }else {
         }else {
-            return columnNameUtil(createID, baseId, tableName, true, id, -1);
+            return columnNameUtil(createID, baseId, tableName, true, id, -1, role);
         }
         }
     }
     }
 
 
-    public String columnNameUtil(int userId, int baseId, String tableName, boolean isOrder, int id, int createBId){
+    public String columnNameUtil(int userId, int baseId, String tableName, boolean isOrder, int id, int createBId, String role){
         //用户不是创建人
         //用户不是创建人
         List<String> strList = new ArrayList<>();
         List<String> strList = new ArrayList<>();
-        String role = BaseContextHolder.getRole();
+        //String role = BaseContextHolder.getRole();
         if (isOrder){
         if (isOrder){
             int baseCreateId;
             int baseCreateId;
             if (id != 0) {
             if (id != 0) {

+ 3 - 2
bi-server/src/main/java/com/usoftchina/bi/server/service/dataSource/DataConnectorService.java

@@ -366,11 +366,12 @@ public class DataConnectorService {
     查询数据源数据
     查询数据源数据
      */
      */
     public RepEntity getConnectorData(String token, BaseToDataInfo baseToDataInfo) {
     public RepEntity getConnectorData(String token, BaseToDataInfo baseToDataInfo) {
-
+        Map<String, String> resultMap = GetTokenDataUtil.getTokenData(token);
         int dataId = baseToDataInfo.getId();
         int dataId = baseToDataInfo.getId();
         int baseId = getChartsDataUtilService.getBaseIdByConnect(dataId);
         int baseId = getChartsDataUtilService.getBaseIdByConnect(dataId);
         logger.info("切换数据库:{}", baseId);
         logger.info("切换数据库:{}", baseId);
 
 
+        String role = resultMap.get("role");
         int id = BaseContextHolder.getUserId();
         int id = BaseContextHolder.getUserId();
         int createId = dataConnectorMapper.getCreateIdById(dataId);
         int createId = dataConnectorMapper.getCreateIdById(dataId);
         ColumnValuesInfo columnValuesInfo = new ColumnValuesInfo();
         ColumnValuesInfo columnValuesInfo = new ColumnValuesInfo();
@@ -381,7 +382,7 @@ public class DataConnectorService {
         if (RoleConstant.SUPER_ADMIN.getRole().equals(BaseContextHolder.getRole())) {
         if (RoleConstant.SUPER_ADMIN.getRole().equals(BaseContextHolder.getRole())) {
             id = createId;
             id = createId;
         }
         }
-        String sqls = chartsUtilService.columnNameUtil(id, dataId, sql, true, 0, createId);
+        String sqls = chartsUtilService.columnNameUtil(id, dataId, sql, true, 0, createId, role);
 
 
         try {
         try {
             if (!DynamicDataSourceContextHolder.isContainsDataSource(baseId)) {
             if (!DynamicDataSourceContextHolder.isContainsDataSource(baseId)) {