From 19514ff362a94a611888f371ffc43a00ec21a38a Mon Sep 17 00:00:00 2001
From: 16639036659 <577530412@qq.com>
Date: 星期二, 16 七月 2024 13:42:48 +0800
Subject: [PATCH] 数据导出

---
 src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/MonitorDataServiceImpl.java |  114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 111 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/MonitorDataServiceImpl.java b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/MonitorDataServiceImpl.java
index 43db9ca..a5fe17d 100644
--- a/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/MonitorDataServiceImpl.java
+++ b/src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/MonitorDataServiceImpl.java
@@ -5,16 +5,18 @@
 import com.gkhy.fourierSpecialGasMonitor.commons.enums.ResultCode;
 import com.gkhy.fourierSpecialGasMonitor.commons.exception.BusinessException;
 import com.gkhy.fourierSpecialGasMonitor.commons.model.PageQuery;
+import com.gkhy.fourierSpecialGasMonitor.commons.utils.BeanCopyUtils;
 import com.gkhy.fourierSpecialGasMonitor.entity.*;
 import com.gkhy.fourierSpecialGasMonitor.entity.query.GasAtmospherePageQuery;
 import com.gkhy.fourierSpecialGasMonitor.entity.query.GasFluxPageQuery;
 import com.gkhy.fourierSpecialGasMonitor.entity.query.GasPageQuery;
-import com.gkhy.fourierSpecialGasMonitor.entity.req.GasAtmosphereLineChartReqDTO;
-import com.gkhy.fourierSpecialGasMonitor.entity.req.GasFluxLineChartReqDTO;
-import com.gkhy.fourierSpecialGasMonitor.entity.req.GasLineChartReqDTO;
+import com.gkhy.fourierSpecialGasMonitor.entity.req.*;
 import com.gkhy.fourierSpecialGasMonitor.entity.resp.*;
 import com.gkhy.fourierSpecialGasMonitor.service.*;
+import com.gkhy.fourierSpecialGasMonitor.utils.AreaHandle;
+import com.gkhy.fourierSpecialGasMonitor.utils.PositionHandle;
 import io.micrometer.core.instrument.util.StringUtils;
+import jodd.bean.BeanCopy;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
@@ -26,6 +28,7 @@
 
 import java.lang.reflect.Field;
 import java.time.LocalDateTime;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
@@ -372,4 +375,109 @@
         searchResult.setData(respDTOS);
         return searchResult;
     }
+
+    @Override
+    public Result gasFluxExport(GasFluxExportBO gasFluxExportBO) {
+
+        Result<List<GasFluxExportDTO>> result = new Result<>();
+
+        List<GasFlux> gasFluxes = gasFluxService.gasFluxExport(gasFluxExportBO);
+        List<GasFluxExportDTO> exportLists = new ArrayList<>();
+        AreaHandle areaHandle = new AreaHandle();
+        for (GasFlux gasFlux : gasFluxes) {
+            GasFluxExportDTO gasFluxExportDTO = BeanCopyUtils.copyBean(gasFlux, GasFluxExportDTO.class);
+            gasFluxExportDTO.setGasName01("甲烷CH4");
+            gasFluxExportDTO.setGasName02("乙烷C2H6");
+            gasFluxExportDTO.setGasName03("丙烷C3H8");
+            gasFluxExportDTO.setGasName04("丁烷C4H10");
+            gasFluxExportDTO.setGasName05("硫化氢H2S");
+            gasFluxExportDTO.setGasName06("乙烯C2H4");
+            gasFluxExportDTO.setGasName07("异丁烷C4H10");
+            gasFluxExportDTO.setAreaId(areaHandle.areaHandleMethod(gasFlux.getAreaId()));
+            if (gasFluxExportBO.getCh4() == 0){
+                gasFluxExportDTO.setGasValue01(null);
+            }
+            if (gasFluxExportBO.getC2h6() == 0){
+                gasFluxExportDTO.setGasValue02(null);
+            }
+            if (gasFluxExportBO.getC3H8() == 0){
+                gasFluxExportDTO.setGasValue03(null);
+            }
+            if (gasFluxExportBO.getC4h101() == 0){
+                gasFluxExportDTO.setGasValue04(null);
+            }
+            if (gasFluxExportBO.getH2s() == 0){
+                gasFluxExportDTO.setGasValue05(null);
+            }
+            if (gasFluxExportBO.getC2h4() == 0){
+                gasFluxExportDTO.setGasValue06(null);
+            }
+            if (gasFluxExportBO.getC4h102() == 0){
+                gasFluxExportDTO.setGasValue07(null);
+            }
+            exportLists.add(gasFluxExportDTO);
+        }
+
+        //sql根据时间查所有,业务中处理数据项
+
+
+        result.setData(exportLists);
+        result.setCode(200);
+        result.setCount(exportLists.size());
+        result.setMsg("通量数据导出成功");
+        return result;
+    }
+
+    @Override
+    public Result gasConcentrationExport(GasConcentrationExportBO gasConcentrationExportBO) {
+
+        Result<List<GasConcentrationExportDTO>> result = new Result<>();
+
+        List<GasConcentration> gasConcentrationList = gasConcentrationService.gasConcentrationExport(gasConcentrationExportBO);
+        List<GasConcentrationExportDTO> exportLists = new ArrayList<>();
+        PositionHandle positionHandle = new PositionHandle();
+
+        for (GasConcentration gasConcentration : gasConcentrationList) {
+            GasConcentrationExportDTO gasConcentrationExportDTO = BeanCopyUtils.copyBean(gasConcentration, GasConcentrationExportDTO.class);
+
+            gasConcentrationExportDTO.setPosition(positionHandle.positionHandleMethod(gasConcentration.getPosition()));
+            gasConcentrationExportDTO.setGasName01("甲烷CH4");
+            gasConcentrationExportDTO.setGasName02("乙烷C2H6");
+            gasConcentrationExportDTO.setGasName03("丙烷C3H8");
+            gasConcentrationExportDTO.setGasName04("丁烷C4H10");
+            gasConcentrationExportDTO.setGasName05("硫化氢H2S");
+            gasConcentrationExportDTO.setGasName06("乙烯C2H4");
+            gasConcentrationExportDTO.setGasName07("异丁烷C4H10");
+            if (gasConcentrationExportBO.getCh4() == 0){
+                gasConcentrationExportDTO.setGasValue01(null);
+            }
+            if (gasConcentrationExportBO.getC2h6() == 0){
+                gasConcentrationExportDTO.setGasValue02(null);
+            }
+            if (gasConcentrationExportBO.getC3H8() == 0){
+                gasConcentrationExportDTO.setGasValue03(null);
+            }
+            if (gasConcentrationExportBO.getC4h101() == 0){
+                gasConcentrationExportDTO.setGasValue04(null);
+            }
+            if (gasConcentrationExportBO.getH2s() == 0){
+                gasConcentrationExportDTO.setGasValue05(null);
+            }
+            if (gasConcentrationExportBO.getC2h4() == 0){
+                gasConcentrationExportDTO.setGasValue06(null);
+            }
+            if (gasConcentrationExportBO.getC4h102() == 0){
+                gasConcentrationExportDTO.setGasValue07(null);
+            }
+            exportLists.add(gasConcentrationExportDTO);
+        }
+
+        //sql根据时间查所有,业务中处理数据项
+
+        result.setData(exportLists);
+        result.setCode(200);
+        result.setCount(exportLists.size());
+        result.setMsg("气体浓度数据导出成功");
+        return result;
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.2