Ver código fonte

新增首页屏获取工业库和化验库最近N天的某些指标的数据列表用于图表展示

王苗苗 3 meses atrás
pai
commit
076e1b32ea

+ 55 - 4
slibra-admin/src/main/java/com/slibra/web/controller/business/FrontController.java

@@ -3,15 +3,14 @@ package com.slibra.web.controller.business;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONWriter;
 import com.github.pagehelper.PageInfo;
-import com.slibra.business.domain.TXinyiCarbonMajor;
-import com.slibra.business.domain.TXinyiChatRecord;
-import com.slibra.business.domain.TXinyiMedicineConf;
-import com.slibra.business.domain.TXinyiWarningRecord;
+import com.slibra.business.domain.*;
 import com.slibra.business.mapper.*;
 import com.slibra.business.req.ChatReq;
 import com.slibra.business.req.WorkOrderReq;
 import com.slibra.business.res.CarbonMajorSimple;
 import com.slibra.business.res.CarbonSmartQueryDB;
+import com.slibra.business.res.IndustrySimpleBean;
+import com.slibra.business.res.RobotSimpleBean;
 import com.slibra.business.service.IFrontService;
 import com.slibra.business.service.ITXinyiCarbonMajorService;
 import com.slibra.common.DecimalUtils;
@@ -30,8 +29,10 @@ import com.slibra.common.utils.SecurityUtils;
 import com.slibra.common.utils.StringUtils;
 import com.slibra.common.utils.poi.ExcelUtil;
 import com.slibra.common.utils.uuid.IdUtils;
+import com.sun.glass.ui.ClipboardAssistance;
 import lombok.extern.slf4j.Slf4j;
 import org.checkerframework.checker.units.qual.A;
+import org.checkerframework.checker.units.qual.C;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -40,6 +41,7 @@ import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
+import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -79,6 +81,9 @@ public class FrontController extends BaseController {
     @Autowired
     private TXinyiMedicineConfMapper xinyiMedicineConfMapper;
 
+    @Autowired
+    private TXinyiRobotMapper xinyiRobotMapper;
+
 
 
     /**
@@ -93,6 +98,52 @@ public class FrontController extends BaseController {
     }
 
 
+    //2024年12月18日13:39:38 新增2个列表数据,用于展示工业库的数据和化验室的N天的数据,生成报表
+    /**
+     * 获取大屏的最近N天的工业库的数据
+     * @return
+     */
+    @GetMapping(value = "/getIndustryDataByDays")
+    public AjaxResult getIndustryDataByDays(@RequestParam(required = true) int days)
+    {
+        log.info("进入了 获取大屏的最近N天的工业库的数据 接口,请求参数为{}", days);
+        List<IndustrySimpleBean> resultList = new ArrayList<>();
+        //获取N天之前的日期
+        List<TXinyiIndustry> tXinyiIndustries = this.xinyiIndustryMapper.selectTXinyiIndustryList(TXinyiIndustry.builder().timeBegin(DateUtils.parseDateToStr(DateUtils.YYYYMMDD_TS, DateUtils.plusDate(-days, DateUtils.getNowDate()))).build());
+        if(!CollectionUtils.isEmpty(tXinyiIndustries)){
+            for (TXinyiIndustry tXinyiIndustry : tXinyiIndustries) {
+                IndustrySimpleBean industrySimpleBean = new IndustrySimpleBean();
+                BeanUtils.copyProperties(tXinyiIndustry, industrySimpleBean);
+                resultList.add(industrySimpleBean);
+            }
+        }
+        return AjaxResult.success(resultList);
+    }
+
+
+    /**
+     * 获取大屏的最近N天的化验室的数据
+     * @return
+     */
+    @GetMapping(value = "/getRobotDataByDays")
+    public AjaxResult getRobotDataByDays(@RequestParam(required = true) int days)
+    {
+        log.info("进入了 获取大屏的最近N天的化验室的数据 接口,请求参数为{}", days);
+        List<RobotSimpleBean> resultList = new ArrayList<>();
+        //获取N天之前的日期
+        List<TXinyiRobot> tXinyiRobots = this.xinyiRobotMapper.selectTXinyiRobotList(TXinyiRobot.builder().timeBegin(DateUtils.parseDateToStr(DateUtils.YYYYMMDD_TS, DateUtils.plusDate(-days, DateUtils.getNowDate()))).build());
+        if(!CollectionUtils.isEmpty(tXinyiRobots)){
+            for (TXinyiRobot tXinyiRobot : tXinyiRobots) {
+                RobotSimpleBean robotSimpleBean = new RobotSimpleBean();
+                BeanUtils.copyProperties(tXinyiRobot, robotSimpleBean);
+                resultList.add(robotSimpleBean);
+            }
+        }
+        return AjaxResult.success(resultList);
+    }
+
+
+
     /**
      * 分页获取大模型的问答记录
      * @param tXinyiChatRecord

+ 75 - 0
slibra-system/src/main/java/com/slibra/business/res/IndustrySimpleBean.java

@@ -0,0 +1,75 @@
+package com.slibra.business.res;
+
+import com.slibra.common.annotation.Excel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+
+@Builder
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class IndustrySimpleBean {
+
+    /** 进水化学需氧量COD */
+    @Excel(name = "进水化学需氧量COD")
+    private BigDecimal jsCod;
+
+    /** 出水化学需氧量COD */
+    @Excel(name = "出水化学需氧量COD")
+    private BigDecimal csCod;
+
+
+    /** 进水氨氮NH₃-N */
+    @Excel(name = "进水氨氮NH₃-N")
+    private BigDecimal jsNh3;
+
+
+    /** 出水氨氮NH₃-N */
+    @Excel(name = "出水氨氮NH₃-N")
+    private BigDecimal csNh3;
+
+
+    /** 进水总氮TN */
+    @Excel(name = "进水总氮TN")
+    private BigDecimal jsTn;
+
+    /** 出水总氮TN */
+    @Excel(name = "出水总氮TN")
+    private BigDecimal csTn;
+
+    /** 进水总磷TP */
+    @Excel(name = "进水总磷TP")
+    private BigDecimal jsTp;
+
+    /** 出水总磷TP */
+    @Excel(name = "出水总磷TP")
+    private BigDecimal csTp;
+
+    /** 进水悬浮物SS */
+    @Excel(name = "进水悬浮物SS")
+    private BigDecimal jsSs;
+
+    /** 出水悬浮物SS */
+    @Excel(name = "出水悬浮物SS")
+    private BigDecimal csSs;
+
+    /** 进水酸碱度pH */
+    @Excel(name = "进水酸碱度pH")
+    private BigDecimal jsPh;
+
+    /** 出水酸碱度pH */
+    @Excel(name = "出水酸碱度pH")
+    private BigDecimal csPh;
+
+    /** 进水水量Q进 */
+    @Excel(name = "进水水量Q进")
+    private BigDecimal jsSlq;
+
+    /** 出水水量Q出 */
+    @Excel(name = "出水水量Q出")
+    private BigDecimal csSlqc;
+}

+ 37 - 0
slibra-system/src/main/java/com/slibra/business/res/RobotSimpleBean.java

@@ -0,0 +1,37 @@
+package com.slibra.business.res;
+
+import com.slibra.common.annotation.Excel;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+
+@Builder
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class RobotSimpleBean {
+
+
+    /** 1#好氧池硝酸盐(内回流)+ 回流进水化验机器人有效值1(硝氮1池回流机器人) */
+    @Excel(name = "1#好氧池硝酸盐", readConverterExp = "内=回流")
+    private BigDecimal no3Hlj1Jqr;
+
+    /** 2#好氧池硝酸盐(内回流) + 回流进水化验机器人有效值2(硝氮2池回流机器人) */
+    @Excel(name = "2#好氧池硝酸盐", readConverterExp = "内=回流")
+    private BigDecimal no3Hlj2Jqr;
+
+    /** 二沉池-正磷酸盐 + 化验机器人正磷化验有效值二沉池(正磷二沉池机器人) */
+    @Excel(name = "二沉池-正磷酸盐 + 化验机器人正磷化验有效值二沉池", readConverterExp = "正=磷二沉池机器人")
+    private BigDecimal tpRccJqr;
+
+    /** 1#缺氧氨氮 + 化验机器人氨氮化验有效值1(氨氮1池缺氧机器人) */
+    @Excel(name = "1#缺氧氨氮 + 化验机器人氨氮化验有效值1", readConverterExp = "氨=氮1池缺氧机器人")
+    private BigDecimal nh31Jqr;
+
+    /** 2#缺氧氨氮 + 化验机器人氨氮化验有效值2(氨氮2池缺氧机器人) */
+    @Excel(name = "2#缺氧氨氮 + 化验机器人氨氮化验有效值2", readConverterExp = "氨=氮2池缺氧机器人")
+    private BigDecimal nh32Jqr;
+}