Sfoglia il codice sorgente

Merge branch 'feature-refactor' of ssh://10.10.100.21/source/platform-bi-server into feature-refactor

zhuth 6 anni fa
parent
commit
c1b99a86bf

+ 0 - 1
bi-auth/src/main/java/com/usoftchina/bi/auth/config/ConfigAdapter.java

@@ -31,6 +31,5 @@ public class ConfigAdapter implements WebMvcConfigurer {
         .excludePathPatterns("/getDashboardByCode")
         .excludePathPatterns("/getSharedDashboard")
         .excludePathPatterns("/Connector/getConnectorData");
-        logger.info("进入全局拦截器");
     }
 }

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

@@ -100,8 +100,9 @@ public class UserController {
      */
     @ApiOperation(value = "删除用户组", notes = "删除用户组", response = RepEntity.class)
     @Auth(user = "admin")
+    @CheckToken
     @PostMapping("/delUserGroup/{id}")
-    public RepEntity delUserGroup(@PathVariable("id") Long id){
+    public RepEntity delUserGroup(@RequestHeader String token, @PathVariable("id") Long id){
         return userService.delUserGroup(id);
     }
 
@@ -111,7 +112,8 @@ public class UserController {
     @ApiOperation(value = "用户组添加用户", notes = "用户组添加用户", response = RepEntity.class)
     @Auth(user = "admin")
     @PostMapping("/setUserInto")
-    public RepEntity setUserInto(@RequestBody UserGroupSetInfo body){
+    @CheckToken
+    public RepEntity setUserInto(@RequestHeader String token, @RequestBody UserGroupSetInfo body){
         return userService.setUserInto(body);
     }
 
@@ -131,7 +133,8 @@ public class UserController {
     @ApiOperation(value = "删除用户组下的用户", notes = "删除用户组下的用户", response = RepEntity.class)
     @Auth(user = "admin")
     @PostMapping("/delUserInGroup")
-    public RepEntity delUserInGroup(@RequestBody UserGroupSetInfo body){
+    @CheckToken
+    public RepEntity delUserInGroup(@RequestHeader String token, @RequestBody UserGroupSetInfo body){
         return userService.delUserInGroup(body);
     }
 }

+ 8 - 0
bi-server/src/main/java/com/usoftchina/bi/server/dao/chart/ShowChartsMapper.java

@@ -194,6 +194,14 @@ public interface ShowChartsMapper {
     Double getColumnData(@Param("tableName") String tableName, @Param("columnName") String columnName,
                         @Param("operation") String operation, @Param("screen") String screen);
 
+    /**
+     * 不重复计数
+     * @return
+     */
+    @Select("SELECT COUNT(${columnName}) FROM (SELECT DISTINCT ${columnName} FROM ${tableName} ${screen})")
+    Double getDistinctCountColumnData(@Param("tableName") String tableName, @Param("columnName") String columnName,
+                                      @Param("operation") String operation, @Param("screen") String screen);
+
     /*
     取主键名称
      */

+ 24 - 25
bi-server/src/main/java/com/usoftchina/bi/server/service/chart/ShowHistogramService.java

@@ -136,37 +136,36 @@ public class ShowHistogramService {
             }else {
                 chartsDataInfo.setxAxis(xAxisData);
             }
-
             //无分组时Y值
-            Iterator itX = xAxisData.iterator();
-            while (itX.hasNext()){
-                String xdata = (String)itX.next();
-                double valueOne = 0;
-                String valueOnes = null;
-                if ("time".equals(xColumnType)){
-                    valueOnes = timeConverterUtil.getTimeValueConverter(yColumn, xColumn, tableName, yAxisType, xAxisType, xdata, screenToColumnS);
-                }else {
-                    if (xdata == null || "".equals(xdata)){
-                        valueOnes = showChartsMapper.getValuesIsNull(yColumn, xColumn, tableName, yAxisType, screenToColumnS);
-                    }else {
-                        valueOnes = showChartsMapper.getXValue(yColumn, xColumn, tableName, yAxisType, xdata, screenToColumnS);
+            if (groupBy.size() == 0) {
+                Iterator itX = xAxisData.iterator();
+                while (itX.hasNext()) {
+                    String xdata = (String) itX.next();
+                    double valueOne = 0;
+                    String valueOnes = null;
+                    if ("time".equals(xColumnType)) {
+                        valueOnes = timeConverterUtil.getTimeValueConverter(yColumn, xColumn, tableName, yAxisType, xAxisType, xdata, screenToColumnS);
+                    } else {
+                        if (xdata == null || "".equals(xdata)) {
+                            valueOnes = showChartsMapper.getValuesIsNull(yColumn, xColumn, tableName, yAxisType, screenToColumnS);
+                        } else {
+                            valueOnes = showChartsMapper.getXValue(yColumn, xColumn, tableName, yAxisType, xdata, screenToColumnS);
+                        }
                     }
+                    if (valueOnes == null || "".equals(valueOnes)) {
+                        valueOne = 0;
+                    } else {
+                        valueOne = Double.parseDouble(valueOnes);
+                    }
+                    value.add(valueOne);
                 }
-                if (valueOnes == null || "".equals(valueOnes)){
-                    valueOne = 0;
-                }else {
-                    valueOne = Double.parseDouble(valueOnes);
-                }
-                value.add(valueOne);
-            }
-
-            series.setName(xColumn);
-            series.setValue(value);
-            serieses.add(series);
 
+                series.setName(xColumn);
+                series.setValue(value);
+                serieses.add(series);
+            }
             //有分组
             if (groupBy.size() != 0){
-                serieses.remove(0);
                 Iterator<String> itGroup = groupBy.iterator();  //分组数
 
                 //便利分组

+ 2 - 0
bi-server/src/main/java/com/usoftchina/bi/server/service/chart/ShowLineService.java

@@ -138,6 +138,8 @@ public class ShowLineService {
             while (itGroup.hasNext()){
                 String groupByName = (String) itGroup.next();
                 List<String> groupsData = showChartsMapper.getGroups(groupByName,tableName, screenToColumnS, lineConfigInfo.getMaxCount()); //查询每个分组系列
+                if (groupsData.size() == 0)
+                    continue;
                 Iterator itGroupsData = groupsData.iterator();
                 if (groupsData.size() > lineConfigInfo.getMaxCount()){
                     chartsDataInfo.setTooMany(true);

+ 7 - 5
bi-server/src/main/java/com/usoftchina/bi/server/service/chart/ShowPopulationService.java

@@ -84,23 +84,25 @@ public class ShowPopulationService {
 
         //无分组
         if (groupByList.size() == 0) {
-            Iterator operatorsList = operators.iterator();
+            Iterator<String> operatorsList = operators.iterator();
             while (operatorsList.hasNext()) {
-                String operator = String.valueOf(operatorsList.next()).toUpperCase();
-                if ("75TH".equals(operator)) {
+                String operator = operatorsList.next();
+                if ("75TH".equalsIgnoreCase(operator)) {
                     String calculation = "MEDIAN";
                     Double median = showChartsMapper.getColumnDev(tableName, columnName, calculation, screenStr);
                     calculation = "MAX";
                     Double max = showChartsMapper.getColumnDev(tableName, columnName, calculation, screenStr);
                     value = showChartsMapper.getValue(tableName, columnName, calculation, median, max);
-                } else if ("25TH".equals(operator)) {
+                } else if ("25TH".equalsIgnoreCase(operator)) {
                     String calculation = "MEDIAN";
                     Double median = showChartsMapper.getColumnDev(tableName, columnName, calculation, screen);
                     calculation = "MIN";
                     Double min = showChartsMapper.getColumnDev(tableName, columnName, calculation, screenStr);
                     value = showChartsMapper.getValue(tableName, columnName, calculation, min, median);
-                } else if ("PERCENT".equals(operator)) {
+                } else if ("PERCENT".equalsIgnoreCase(operator)) {
                     value = 1.00;
+                } else if("dictinctCount".equalsIgnoreCase(operator)){
+                    value = showChartsMapper.getDistinctCountColumnData(tableName, columnName, operator, screenStr);
                 } else {
                     value = showChartsMapper.getColumnData(tableName, columnName, operator, screenStr);
                 }