Browse Source

图标分组接口

chenw 6 years ago
parent
commit
fb511bfa75

+ 7 - 0
bi-server/src/main/java/com/usoftchina/bi/server/controller/chart/ChartsConfigController.java

@@ -117,6 +117,13 @@ public class ChartsConfigController {
         return chartsConfigService.updataDataConnectorGroup(body);
     }
 
+    @ApiOperation(value = "批量更新数据源分组", notes = "批量更新数据源分组", response = RepEntity.class)
+    @CheckToken
+    @PostMapping("/batchUpdateChartsGroup")
+    public RepEntity saveChartsGroup(@RequestHeader String token, @RequestBody List<GroupInfo> groupInfoList){
+        return chartsConfigService.saveChartsGroup(groupInfoList);
+    }
+
     /*
     批量更新图表
      */

+ 45 - 0
bi-server/src/main/java/com/usoftchina/bi/server/dao/chart/ChartsConfigMapper.java

@@ -198,6 +198,51 @@ public interface ChartsConfigMapper {
             "</script>")
     void delChartsGroup(List<Integer> isList);
 
+    @Insert("<script>"
+            + "INSERT INTO BI_CHARTS_GROUP(BC_ID, BC_GROUP_NAME, BC_INDEX, BC_FATHER_ID, CREATE_DATE) "
+            + "SELECT BI_CHARTS_GROUP_SEQ.NEXTVAL,M.* FROM ("
+            +   "<foreach collection=\"list\" item=\"item\" index=\"index\" separator=\"UNION ALL\">"
+            +       "SELECT "
+            +           "#{item.groupName, jdbcType=VARCHAR},"
+            +           "#{item.groupIndex, jdbcType=INTEGER},"
+            +           "#{item.fatherId, jdbcType=INTEGER},"
+            +           "SYSDATE "
+            +       "FROM DUAL"
+            +   "</foreach>"
+            +   ") M"
+            + "</script>")
+    void batchInsertCharts(@Param("list") List<GroupInfo> groupInfoList);
+
+    @Update("<script>"
+            + "BEGIN"
+            +   "<foreach collection=\"list\" item=\"item\" index=\"index\" separator=\";\">"
+            +       "UPDATE BI_CHARTS_GROUP"
+            +       "<set>"
+            +       "<if test=\"item.groupName != null\">"
+            +           "BC_GROUP_NAME = #{item.groupName, jdbcType=VARCHAR},"
+            +       "</if>"
+            +       "<if test=\"item.groupIndex != null\">"
+            +           "BC_INDEX = #{item.groupIndex, jdbcType=VARCHAR},"
+            +       "</if>"
+            +       "<if test=\"item.fatherId != null\">"
+            +           "BC_FATHER_ID = #{item.fatherId, jdbcType=INTEGER},"
+            +       "</if>"
+            +       "UPDATA_DATE = SYSDATE"
+            +       "</set>"
+            +       "WHERE BC_ID = #{item.id, jdbcType=INTEGER}"
+            +   "</foreach>"
+            + ";END;"
+            +"</script>")
+    void batchUpdateCharts(@Param("list") List<GroupInfo> groupInfoList);
+
+    @Delete(" <script>"
+            + "DELETE FROM BI_CHARTS_GROUP WHERE BC_ID IN"
+            + "<foreach collection=\"list\" item=\"item\" index=\"index\" open=\"(\" close=\")\" separator=\",\">"
+            +   "#{item.id, jdbcType=INTEGER}"
+            + "</foreach>"
+            + "</script>")
+    void batchDeleteCharts(@Param("list") List<GroupInfo> groupInfoList);
+
     /*
     查询分组
      */

+ 26 - 0
bi-server/src/main/java/com/usoftchina/bi/server/service/chart/ChartsConfigService.java

@@ -21,6 +21,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -235,6 +236,31 @@ public class ChartsConfigService {
         return new RepEntity(RepCode.success);
     }
 
+    public RepEntity saveChartsGroup(List<GroupInfo> groupInfoList) {
+        List<GroupInfo> addGroupInfoList = new ArrayList<>();
+        List<GroupInfo> deleteGroupInfoList = new ArrayList<>();
+        List<GroupInfo> updateGroupInfoList = new ArrayList<>();
+        groupInfoList.forEach(groupInfo -> {
+            if ("add".equals(groupInfo.getOperate())) {
+                addGroupInfoList.add(groupInfo);
+            }else if ("delete".equals(groupInfo.getOperate())) {
+                deleteGroupInfoList.add(groupInfo);
+            }else if ("update".equals(groupInfo.getOperate())) {
+                updateGroupInfoList.add(groupInfo);
+            }
+        });
+        if (addGroupInfoList.size() > 0) {
+            chartsConfigMapper.batchInsertCharts(addGroupInfoList);
+        }
+        if (updateGroupInfoList.size() > 0) {
+            chartsConfigMapper.batchUpdateCharts(updateGroupInfoList);
+        }
+        if (deleteGroupInfoList.size() > 0) {
+            chartsConfigMapper.batchDeleteCharts(deleteGroupInfoList);
+        }
+        return new RepEntity(RepCode.success);
+    }
+
     /*
     批量更新图表分组
      */

+ 19 - 0
bi-server/src/test/java/com/usoftchina/bi/test/server/Mytest.java

@@ -0,0 +1,19 @@
+package com.usoftchina.bi.test.server;
+
+import com.usoftchina.bi.core.utils.EncryUtil;
+import org.junit.Test;
+
+/**
+ * @Author chenwei
+ * @Date 2019-04-12
+ */
+public class Mytest {
+
+    @Test
+    public void testEncrypt(){
+        String code = "ef4d1b6c224a83adce7dc35f7ff59c48c153091c44ad6551a255edc2a15b051e";
+        String message = EncryUtil.decryptBiCode(code);
+        System.out.println(message);
+    }
+
+}