Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/feature-refactor' into feature-refactor

hy 6 anni fa
parent
commit
7b34b9eb61

+ 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)
     @Auth(user = "admin")
     @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)
     @Auth(user = "admin")
     @PostMapping("/getUserGroupList")
-    public RepEntity getUserGroupList(){
-        return userService.getUserGroup();
+    public RepEntity getUserGroupList(@RequestHeader String token){
+        return userService.getUserGroup(token);
     }
 
     /*

+ 9 - 0
bi-server/src/main/java/com/usoftchina/bi/server/model/vo/configVo/PieConfigInfo.java

@@ -14,6 +14,15 @@ public class PieConfigInfo {
     private List<String> groups;
     private String sort;
     private String rule;
+    private boolean hiddenOther;
+
+    public boolean isHiddenOther() {
+        return hiddenOther;
+    }
+
+    public void setHiddenOther(boolean hiddenOther) {
+        this.hiddenOther = hiddenOther;
+    }
 
     public List<String> getGroups() {
         return groups;

+ 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)) {
                     return "";
                 } else {
-                    return columnNameUtil(userId, baseId, tableName, true, id, -1);
+                    return columnNameUtil(userId, baseId, tableName, true, id, -1, role);
                 }
             } 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 {
-            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<>();
-        String role = BaseContextHolder.getRole();
+        //String role = BaseContextHolder.getRole();
         if (isOrder){
             int baseCreateId;
             if (id != 0) {

+ 2 - 1
bi-server/src/main/java/com/usoftchina/bi/server/service/chart/ShowPieService.java

@@ -63,6 +63,7 @@ public class ShowPieService {
                yAxisType = CalculationJudgeUtil.Judge(yType),
                sort = StringUtils.isEmpty(pieConfigInfo.getSort()) ? xColumn : pieConfigInfo.getSort(),
                rule = StringUtils.isEmpty(pieConfigInfo.getRule()) ? "ASC" : pieConfigInfo.getRule();
+        boolean hiddenOther = pieConfigInfo.isHiddenOther();
         List<String> groupBy = pieConfigInfo.getGroups(),         //分组
                      xAxisData = new ArrayList<String>();       //X轴自己用
         PieSeries series = new PieSeries();
@@ -151,7 +152,7 @@ public class ShowPieService {
                     chartsDataInfo.setTooMany(true);
                     value = new ArrayList<>(value.stream().collect(Collectors.toList()).subList(0, pieConfigInfo.getMaxCount()));
                     Optional<Double> part = value.stream().map(PieSeriesMap::getValue).reduce(Double::sum);
-                    if (total.isPresent() && part.isPresent()) {
+                    if (total.isPresent() && part.isPresent() && hiddenOther==false) {
                         value.add(new PieSeriesMap(total.get() - part.get(), "其它"));
                     }
                 }

+ 7 - 1
bi-server/src/main/java/com/usoftchina/bi/server/service/common/MessageLogService.java

@@ -1,6 +1,8 @@
 package com.usoftchina.bi.server.service.common;
 
 import com.github.pagehelper.PageInfo;
+import com.usoftchina.bi.core.base.BaseContextHolder;
+import com.usoftchina.bi.core.base.RoleConstant;
 import com.usoftchina.bi.core.base.TestPage;
 import com.usoftchina.bi.server.dao.common.MessageLogMapper;
 import com.usoftchina.bi.server.model.po.MessageLog;
@@ -8,6 +10,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
+import java.util.ArrayList;
 import java.util.List;
 
 /**
@@ -21,7 +24,10 @@ public class MessageLogService {
     private MessageLogMapper messageLogMapper;
 
     public PageInfo<MessageLog> list(String condition, TestPage testPage) {
-        List<MessageLog> messageLogList = messageLogMapper.list(condition, testPage.enablePaging());
+        List<MessageLog> messageLogList = new ArrayList<>();
+        if (RoleConstant.SUPER_ADMIN.getRole().equals(BaseContextHolder.getRole())){
+            messageLogList = messageLogMapper.list(condition, testPage.enablePaging());
+        }
         return new PageInfo<MessageLog>(messageLogList);
     }
 

+ 4 - 3
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) {
-
+        Map<String, String> resultMap = GetTokenDataUtil.getTokenData(token);
         int dataId = baseToDataInfo.getId();
         int baseId = getChartsDataUtilService.getBaseIdByConnect(dataId);
         logger.info("切换数据库:{}", baseId);
 
+        String role = resultMap.get("role");
         int id = BaseContextHolder.getUserId();
         int createId = dataConnectorMapper.getCreateIdById(dataId);
         ColumnValuesInfo columnValuesInfo = new ColumnValuesInfo();
@@ -381,7 +382,7 @@ public class DataConnectorService {
         if (RoleConstant.SUPER_ADMIN.getRole().equals(BaseContextHolder.getRole())) {
             id = createId;
         }
-        String sqls = chartsUtilService.columnNameUtil(id, dataId, sql, true, 0, createId);
+        String sqls = chartsUtilService.columnNameUtil(id, dataId, sql, true, 0, createId, role);
 
         try {
             if (!DynamicDataSourceContextHolder.isContainsDataSource(baseId)) {
@@ -454,7 +455,7 @@ public class DataConnectorService {
         try {
             jdbcTemplate.queryForRowSet(loadObject);
         } catch (DataAccessException e) {
-            throw new MyException(e.getCause().getMessage());
+            throw new MyException("链接数据表结构不符合或缺少对应字段");
         } finally {
             DynamicDataSourceContextHolder.clearDataSourceType();
         }

+ 18 - 6
bi-server/src/main/java/com/usoftchina/bi/server/service/user/UserService.java

@@ -3,12 +3,13 @@ package com.usoftchina.bi.server.service.user;
 import com.usoftchina.bi.core.base.BaseContextHolder;
 import com.usoftchina.bi.core.base.RepCode;
 import com.usoftchina.bi.core.base.RepEntity;
+import com.usoftchina.bi.core.base.RoleConstant;
 import com.usoftchina.bi.core.exception.MyException;
 import com.usoftchina.bi.core.jdbc.DynamicDataSourceContextHolder;
 import com.usoftchina.bi.core.utils.EncryUtil;
+import com.usoftchina.bi.core.utils.GetTokenDataUtil;
 import com.usoftchina.bi.server.aspect.JwtTokenAspect;
 import com.usoftchina.bi.server.dao.user.UserMapper;
-import com.fasterxml.jackson.databind.ObjectMapper;
 import com.usoftchina.bi.server.model.po.MessageLog;
 import com.usoftchina.bi.server.model.po.TokenData;
 import com.usoftchina.bi.server.model.po.User;
@@ -23,9 +24,10 @@ import org.springframework.cache.annotation.Cacheable;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
-import java.io.IOException;
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 @Service
@@ -158,8 +160,13 @@ public class UserService {
     查询用户列表
      */
     @Cacheable(value = "userList")
-    public RepEntity getUserList(){
-        List<User> userList = userMapper.getUserList();
+    public RepEntity getUserList(String token){
+        Map<String, String> resultMap = GetTokenDataUtil.getTokenData(token);
+        String role = resultMap.get("role");
+        List<User> userList = new ArrayList<>();
+        if (RoleConstant.SUPER_ADMIN.getRole().equals(role)){
+            userList = userMapper.getUserList();
+        }
         return new RepEntity(RepCode.success, userList);
     }
 
@@ -207,8 +214,13 @@ public class UserService {
     /*
     查询用户组
      */
-    public RepEntity getUserGroup(){
-        List<UserGroup> userGroup= userMapper.getUserGroupList();
+    public RepEntity getUserGroup(String token){
+        Map<String, String> resultMap = GetTokenDataUtil.getTokenData(token);
+        String role = resultMap.get("role");
+        List<UserGroup> userGroup= new ArrayList<>();
+        if (RoleConstant.SUPER_ADMIN.getRole().equals(role)) {
+            userGroup= userMapper.getUserGroupList();
+        }
         return new RepEntity(RepCode.success, userGroup);
     }
 

File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/1.7cf1d8c2.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/1.a73b8fdd.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/14.1dc4f6e4.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/14.7ab8c013.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/16.7ade8d4c.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/16.c98c4d74.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/28.ad24bd0e.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/28.f7719a56.async.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/index.76946507.css


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/index.a2e20f4f.js


File diff suppressed because it is too large
+ 0 - 0
bi-server/src/main/resources/static/index.a4e9f2fb.js


+ 2 - 2
bi-server/src/main/resources/static/index.html

@@ -15,8 +15,8 @@
     }
   </script>
   <title>BI 商业智能平台</title>
-<link rel="shortcut icon" href="favicon.png"><link href="index.2a3c1aab.css" rel="stylesheet"></head>
+<link rel="shortcut icon" href="favicon.png"><link href="index.76946507.css" rel="stylesheet"></head>
 <body>
   <div id="root"></div>
-<script type="text/javascript" src="index.a2e20f4f.js"></script></body>
+<script type="text/javascript" src="index.a4e9f2fb.js"></script></body>
 </html>

Some files were not shown because too many files changed in this diff