From f849c87a07300020dbef300c79d1eacfc1439f84 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 06 三月 2024 15:41:58 +0800
Subject: [PATCH] 修改数据统计控制器

---
 src/main/java/com/lf/server/service/sys/ReportService.java |   96 ++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 80 insertions(+), 16 deletions(-)

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 bfa119e..a5bbecd 100644
--- a/src/main/java/com/lf/server/service/sys/ReportService.java
+++ b/src/main/java/com/lf/server/service/sys/ReportService.java
@@ -1,7 +1,6 @@
 package com.lf.server.service.sys;
 
 import com.lf.server.entity.all.RedisCacheKey;
-import com.lf.server.entity.all.SettingData;
 import com.lf.server.entity.all.StaticData;
 import com.lf.server.entity.ctrl.CoordinateEntity;
 import com.lf.server.entity.ctrl.CountEntity;
@@ -13,10 +12,8 @@
 import com.lf.server.mapper.sys.ReportMapper;
 import com.lf.server.service.all.RedisService;
 import com.lf.server.service.data.DownloadService;
-import com.lf.server.service.data.PublishService;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.locationtech.jts.geom.Coordinate;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
@@ -24,7 +21,6 @@
 import javax.servlet.http.HttpServletResponse;
 import java.io.File;
 import java.util.*;
-import java.util.concurrent.TimeUnit;
 
 /**
  * 鎶ュ憡妯℃澘
@@ -134,15 +130,11 @@
     @Override
     public List<CountEntity> countExplorationPoints() {
         String key = RedisCacheKey.dataCountKey("countExplorationPoints");
-//        Object obj = redisService.get(key);
-//        if (obj instanceof List<?>) {
-//            return (List<CountEntity>) obj;
-//        }
-
-        List<CountEntity> list = reportMapper.countExplorationPoints();
-        if (null != list && list.size() > 0) {
+        List<CountEntity> list = redisService.getListByKey(key);
+        if (null == list) {
+            list = reportMapper.countExplorationPoints();
             countExplorationArea(list);
-            redisService.put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES);
+            redisService.saveListByKey(key, list, StaticData.I2);
         }
 
         return list;
@@ -153,10 +145,78 @@
         return reportMapper.selectExplorationPoints(StringHelper.getRightLike(code));
     }
 
+    @Override
+    public List<CountEntity> countDemAreaByPrj() {
+        return reportMapper.countDemAreaByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countMptAreaByPrj() {
+        return reportMapper.countMptAreaByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countOsgbAreaByPrj() {
+        return reportMapper.countOsgbAreaByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countLasAreaByPrj() {
+        return reportMapper.countLasAreaByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countSurveyWorksiteByPrj() {
+        return reportMapper.countSurveyWorksiteByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countExplorationReportByPrj() {
+        return reportMapper.countExplorationReportByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countCollapseByPrj() {
+        return reportMapper.countCollapseByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countDebrisFlowByPrj() {
+        return reportMapper.countDebrisFlowByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countGroundCollapseByPrj() {
+        return reportMapper.countGroundCollapseByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countHighSteepSlopeByPrj() {
+        return reportMapper.countHighSteepSlopeByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countLandSlideByPrj() {
+        return reportMapper.countLandSlideByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countUnstableSlopeByPrj() {
+        return reportMapper.countUnstableSlopeByPrj();
+    }
+
+    @Override
+    public List<CountEntity> countWaterDamageByPrj() {
+        return reportMapper.countWaterDamageByPrj();
+    }
+
     /**
      * 缁熻閽诲瓟鐐归潰绉�
      */
     private void countExplorationArea(List<CountEntity> list) {
+        if (null == list) {
+            return;
+        }
         for (CountEntity ce : list) {
             if (0 == ce.getCount()) {
                 continue;
@@ -362,16 +422,17 @@
         }
 
         int rows = 1, allCount = 0;
-        Double allSize = 0d;
+        Double allSize = 0d, allArea = 0d;
         ArrayList<String[]> addList = new ArrayList<>();
         for (CountEntity ce : list) {
             allSize += ce.getSizes();
             allCount += ce.getCount();
-            String[] strs = new String[]{"" + rows++, ce.getM1(), "" + ce.getCount(), FileHelper.getSizes(ce.getSizes())};
+            allArea += ce.getArea();
+            String[] strs = new String[]{"" + rows++, ce.getM1(), "" + ce.getCount(), FileHelper.getSizes(ce.getSizes()), FileHelper.getSquareMeter(ce.getArea())};
             addList.add(strs);
         }
         if (addList.size() > 0) {
-            addList.add(new String[]{"" + rows, "鎬昏", "" + allCount, FileHelper.getSizes(allSize)});
+            addList.add(new String[]{"" + rows, "鎬昏", "" + allCount, FileHelper.getSizes(allSize), FileHelper.getSquareMeter(allArea)});
         }
 
         WordHelper.generateWord(source, target, null, addList);
@@ -523,12 +584,14 @@
         }
 
         int rows = 1, allCount = 0;
-        Double allSize = 0d;
+        Double allSize = 0d, allArea = 0d;
         for (CountEntity ce : list) {
             ce.setNo(rows++);
             ce.setM2(FileHelper.getSizes(ce.getSizes()));
+            ce.setM3(FileHelper.getSquareMeter(ce.getArea()));
             allCount += ce.getCount();
             allSize += ce.getSizes();
+            allArea += ce.getArea();
         }
         if (list.size() > 0) {
             CountEntity ce = new CountEntity();
@@ -536,6 +599,7 @@
             ce.setM1("鎬昏");
             ce.setCount((long) allCount);
             ce.setM2(FileHelper.getSizes(allSize));
+            ce.setM3(FileHelper.getSquareMeter(allArea));
             list.add(ce);
         }
 

--
Gitblit v1.9.3