From e55b5aaddc111abc8ae61260eb20fddf6b089c07 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期四, 21 三月 2024 14:09:10 +0800
Subject: [PATCH] 修改分类统计功能

---
 src/main/java/com/lf/server/mapper/sys/ReportMapper.java             |    2 +-
 src/main/resources/mapper/sys/ReportMapper.xml                       |    2 +-
 src/main/java/com/lf/server/controller/data/DataCountController.java |    2 +-
 src/main/java/com/lf/server/service/sys/ReportService.java           |   19 ++++++++++++++++---
 4 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/data/DataCountController.java b/src/main/java/com/lf/server/controller/data/DataCountController.java
index 2ed516b..0c41db0 100644
--- a/src/main/java/com/lf/server/controller/data/DataCountController.java
+++ b/src/main/java/com/lf/server/controller/data/DataCountController.java
@@ -418,7 +418,7 @@
     }
 
     @SysLog()
-    @ApiOperation(value = "鎸夐」鐩粺璁″悇绫绘暟鎹�")
+    @ApiOperation(value = "椤圭洰鏁版嵁鍒嗙被缁熻")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "code", value = "椤圭洰缂栫爜", dataType = "String", paramType = "query", example = "0B")
     })
diff --git a/src/main/java/com/lf/server/mapper/sys/ReportMapper.java b/src/main/java/com/lf/server/mapper/sys/ReportMapper.java
index cc5b3bf..c234019 100644
--- a/src/main/java/com/lf/server/mapper/sys/ReportMapper.java
+++ b/src/main/java/com/lf/server/mapper/sys/ReportMapper.java
@@ -285,7 +285,7 @@
     public List<CountEntity> countGeologicHazardByPrj();
 
     /**
-     * 鎸夐」鐩粺璁″悇绫绘暟鎹�
+     * 椤圭洰鏁版嵁鍒嗙被缁熻
      *
      * @param code
      * @return
diff --git a/src/main/java/com/lf/server/service/sys/ReportService.java b/src/main/java/com/lf/server/service/sys/ReportService.java
index 3ca486a..a870950 100644
--- a/src/main/java/com/lf/server/service/sys/ReportService.java
+++ b/src/main/java/com/lf/server/service/sys/ReportService.java
@@ -355,6 +355,7 @@
         Map<String, String> textMap = new HashMap<>();
         if (!StringHelper.isEmpty(code)) {
             textMap.put("title", dirService.selectNameByCode(code));
+            list.remove(list.size() - 1);
         }
 
         List<String[]> tableList = new ArrayList<>();
@@ -386,7 +387,7 @@
                     tableList.add(new String[]{"" + ce.getNo(), ce.getM1(), "" + ce.getLen()});
                     break;
                 case "countVariousDataByPrj":
-                    String str = "count".equals(ce.getM2()) ? "" + ce.getCount() : ("area".equals(ce.getM2()) ? "" + ce.getArea() : "" + ce.getLen());
+                    String str = "count".equals(ce.getM2()) ? ce.getCount() + "涓�" : ("area".equals(ce.getM2()) ? ce.getM3() : ce.getLen() + "鍗冪背");
                     tableList.add(new String[]{"" + ce.getNo(), ce.getM1(), str});
                     break;
                 default:
@@ -408,6 +409,12 @@
         Map<String, Object> map = new HashMap<>();
         if (!StringHelper.isEmpty(code)) {
             map.put("title", dirService.selectNameByCode(code));
+            list.remove(list.size() - 1);
+        }
+        if (null != code) {
+            for (CountEntity ce : list) {
+                ce.setM2("count".equals(ce.getM2()) ? ce.getCount() + "涓�" : ("area".equals(ce.getM2()) ? ce.getM3() : ce.getLen() + "鍗冪背"));
+            }
         }
 
         Map<String, List<CountEntity>> listMap = new HashMap<>(1);
@@ -460,8 +467,14 @@
     private List<CountEntity> selectListByMethodName(ReportEntity re, String code) {
         List<CountEntity> list = null;
         try {
-            Method method = ReportService.class.getDeclaredMethod(re.getCode());
-            Object obj = "countVariousDataByPrj".equals(re.getCode()) ? method.invoke(this, code) : method.invoke(this);
+            Object obj;
+            if (null != code) {
+                Method method = ReportService.class.getDeclaredMethod(re.getCode(), String.class);
+                obj = method.invoke(this, code);
+            } else {
+                Method method = ReportService.class.getDeclaredMethod(re.getCode());
+                obj = method.invoke(this);
+            }
             if (obj instanceof List<?>) {
                 list = (List<CountEntity>) obj;
             }
diff --git a/src/main/resources/mapper/sys/ReportMapper.xml b/src/main/resources/mapper/sys/ReportMapper.xml
index fa872cb..ae7e3da 100644
--- a/src/main/resources/mapper/sys/ReportMapper.xml
+++ b/src/main/resources/mapper/sys/ReportMapper.xml
@@ -323,7 +323,7 @@
         order by code;
     </select>
 
-    <!-- 鎸夐」鐩粺璁″悇绫绘暟鎹� -->
+    <!-- 椤圭洰鏁版嵁鍒嗙被缁熻 -->
     <select id="countVariousDataByPrj" resultType="com.lf.server.entity.ctrl.CountEntity">
         (select '鏁板瓧绾垮垝鍥�' "m1", 'area' "m2", 0 "count", cast( coalesce(sum(area), 0) as decimal(20, 2) ) "area", 0 "len"
             from lf.sys_line_buffer where code like #{code})

--
Gitblit v1.9.3