Parcourir la source

默认统计百分百 如果没有,默认是0%

王苗苗 il y a 2 mois
Parent
commit
78736a11db

+ 40 - 4
slibra-admin/src/main/java/com/slibra/web/controller/business/ExcelController.java

@@ -1,6 +1,8 @@
 package com.slibra.web.controller.business;
 
 import com.alibaba.fastjson2.JSON;
+import com.slibra.business.domain.TNeighborhood;
+import com.slibra.business.mapper.*;
 import com.slibra.business.req.AiChatReq;
 import com.slibra.business.req.AiChatRes;
 import com.slibra.business.res.BZXQLHInfo;
@@ -21,6 +23,9 @@ import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.nio.file.Files;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
 
 /**
  * 大模型的相关接口
@@ -30,9 +35,23 @@ import java.util.List;
 @Slf4j
 public class ExcelController extends BaseController {
 
+    @Autowired
+    private TPumpingStationMapper tPumpingStationMapper;
+
+    @Autowired
+    private TNeighborhoodBuildingMapper tNeighborhoodBuildingMapper;
+
+    @Autowired
+    private TPumpingStationNeighbourhoodNumberMapper tPumpingStationNeighbourhoodNumberMapper;
+
+    @Autowired
+    private TNeighborhoodMapper tNeighborhoodMapper;
+
+
 
     public static void main(String[] args) {
-        System.out.println(getExcelFormBZXQLH());;
+//        System.out.println(getExcelFormBZXQLH());
+        moreExcel2DB();
     }
 
     //泵站、小区、楼号数据处理
@@ -57,13 +76,13 @@ public class ExcelController extends BaseController {
      * 操作逻辑:
      * 先按【区域】+【小区】分组,添加小区,然后获取楼号集合,添加楼号、楼号和小区的绑定关系。
      * 插入数据库。
-     * 此次任务结束。
+     * 此次任务结束【可选】
      *
      * 再次便利集合,一条一条匹配,然后再添加泵站【需要校验是否已经添加过了】,然后再绑定关系
      *
      * @return
      */
-    @GetMapping("/moreExcel2DB")
+//    @GetMapping("/moreExcel2DB")
     public String moreExcel2DB(){
         //Excel转JSON
         List<BZXQLHInfo> excelFormBZXQLH = getExcelFormBZXQLH();
@@ -71,7 +90,24 @@ public class ExcelController extends BaseController {
         if(!CollectionUtils.isEmpty(excelFormBZXQLH)){
             size = excelFormBZXQLH.size();
             //处理业务数据
-            //逻辑:
+            for (BZXQLHInfo bzxqlhInfo : excelFormBZXQLH) {
+                //2024年12月30日17:27:29 将区+小区楼号拼接作为小区名称
+                bzxqlhInfo.setNeighbourName(bzxqlhInfo.getArea() + bzxqlhInfo.getNeighbourName());
+            }
+            Map<String, List<BZXQLHInfo>> map = excelFormBZXQLH.stream().collect(Collectors.groupingBy(BZXQLHInfo::getNeighbourName));
+            map.forEach((k, v) -> {
+//                System.out.println("小区名称:" + k + ",对应的楼号信息:" + JSON.toJSONString(v));
+                //插入小区
+                this.tNeighborhoodMapper.insertTNeighborhood(TNeighborhood.builder().build());
+                //插入楼号
+                //插入关系表
+            });
+            //添加泵站(添加之前先去校验,通过名称查询泵站是否已经添加过了
+            //         如果添加过了,就用该泵站ID,然后再通过小区和楼号查询对应的数据,绑定关系
+            //         如果没有添加过,新增泵站,然后再通过小区和楼号查询对应的数据,绑定关系)
+            for (BZXQLHInfo bzxqlhInfo : excelFormBZXQLH) {
+
+            }
         }
 
         return "操作成功,新增泵站关联小区楼号" + size + "条";

+ 4 - 4
slibra-system/src/main/java/com/slibra/business/res/CallRecordCount.java

@@ -23,7 +23,7 @@ public class CallRecordCount {
     private int humanTotal;
 
     //总量占比
-    private BigDecimal humanPercent;
+    private BigDecimal humanPercent = BigDecimal.ZERO;
 
 
     //------AI客服开始------
@@ -32,7 +32,7 @@ public class CallRecordCount {
     private int whiteListTotal;
 
     //总量占比
-    private BigDecimal whiteListPercent;
+    private BigDecimal whiteListPercent = BigDecimal.ZERO;
 
 
     //------AI机器人------
@@ -40,7 +40,7 @@ public class CallRecordCount {
     private int aiTotal;
 
     //总量占比
-    private BigDecimal aiPercent;
+    private BigDecimal aiPercent = BigDecimal.ZERO;
 
     //------传统服务------
     //电话量 2024年12月19日14:50:48 改成【呼入量】
@@ -50,7 +50,7 @@ public class CallRecordCount {
     private int traditionOutTotal;
 
     //总量占比
-    private BigDecimal traditionPercent;
+    private BigDecimal traditionPercent = BigDecimal.ZERO;
 
     //12345转入次数
     private int specialCount;