Răsfoiți Sursa

碳源投加获取最新数据接口

王苗苗 7 luni în urmă
părinte
comite
99b0a52b38

BIN
.DS_Store


+ 13 - 0
slibra-admin/src/main/java/com/slibra/web/controller/business/FrontController.java

@@ -420,6 +420,19 @@ public class FrontController extends BaseController {
     }
 
 
+    /**
+     *
+     * 智能投药系统获取实时需要数据接口
+     * @return
+     */
+    @GetMapping("/bigModel/smartAdd/dataInfo")
+    public AjaxResult smartAddDataInfo()
+    {
+        log.info("进入了 智能投药系统获取实时需要数据 接口");
+        return AjaxResult.success(frontService.smartAddDataInfo());
+    }
+
+
     //--------------------下面是测试的方法--------------------
     /*@GetMapping("/test/data")
     public void testData(){

+ 2 - 0
slibra-system/src/main/java/com/slibra/business/mapper/TXinyiForecastComparisonMapper.java

@@ -58,4 +58,6 @@ public interface TXinyiForecastComparisonMapper
      * @return 结果
      */
     public int deleteTXinyiForecastComparisonByIds(Long[] ids);
+
+    TXinyiForecastComparison selectNewestForecastComparison(String category);
 }

+ 38 - 0
slibra-system/src/main/java/com/slibra/business/res/SmartAdd.java

@@ -0,0 +1,38 @@
+package com.slibra.business.res;
+
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.math.BigDecimal;
+
+@Builder
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SmartAdd {
+
+    private BigDecimal jslYB;//进水流量-仪表
+    private BigDecimal jsCodYB;//进水cod-仪表
+    private BigDecimal jsTnYB;//进水总氮-仪表
+
+    private BigDecimal jsCodHY;//进水cod-化验
+
+    private BigDecimal hyXsyHYOne;//好氧硝酸盐-化验-一池
+    private BigDecimal hyXsyYCOne;//好氧硝酸盐-预测-一池
+    private BigDecimal qyXsyHYOne;//缺氧硝酸盐-化验-一池
+    private BigDecimal qyAdHYOne;//缺氧氨氮-化验-一池
+
+    private BigDecimal hyXsyHYTwo;//好氧硝酸盐-化验-二池
+    private BigDecimal hyXsyYCTwo;//好氧硝酸盐-预测-二池
+    private BigDecimal qyXsyHYTwo;//缺氧硝酸盐-化验-二池
+    private BigDecimal qyAdHYTwo;//缺氧氨氮-化验-二池
+
+
+//    private BigDecimal tdbJS;//碳氮比-计算
+
+
+
+}

+ 3 - 0
slibra-system/src/main/java/com/slibra/business/service/IFrontService.java

@@ -6,6 +6,7 @@ import com.slibra.business.domain.TXinyiRecommendQa;
 import com.slibra.business.domain.TXinyiWarningRecord;
 import com.slibra.business.req.ChatReq;
 import com.slibra.business.req.WorkOrderReq;
+import com.slibra.business.res.SmartAdd;
 import com.slibra.business.res.WorkOrderRes;
 import com.slibra.business.res.XinyiDailyFeeSimple;
 import com.slibra.business.res.XinyiIndustrySimple;
@@ -48,4 +49,6 @@ public interface IFrontService
     JSONObject customWorkOrderHandleByData(WorkOrderReq workOrderReq, List<WorkOrderRes> workOrderRes);
 
     String stopChat(String sessionId);
+
+    SmartAdd smartAddDataInfo();
 }

+ 43 - 0
slibra-system/src/main/java/com/slibra/business/service/impl/FrontServiceImpl.java

@@ -6,6 +6,7 @@ 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.SmartAdd;
 import com.slibra.business.res.WorkOrderRes;
 import com.slibra.business.res.XinyiDailyFeeSimple;
 import com.slibra.business.res.XinyiIndustrySimple;
@@ -13,11 +14,13 @@ import com.slibra.business.service.IFrontService;
 import com.slibra.common.DecimalUtils;
 import com.slibra.common.core.domain.TXinyiDaily;
 import com.slibra.common.core.redis.RedisCache;
+import com.slibra.common.enums.BusinessEnum;
 import com.slibra.common.exception.ServiceException;
 import com.slibra.common.utils.DateUtils;
 import com.slibra.common.utils.SecurityUtils;
 import com.slibra.common.utils.StringUtils;
 import lombok.extern.slf4j.Slf4j;
+import lombok.val;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.connection.stream.RecordId;
@@ -63,6 +66,10 @@ public class FrontServiceImpl implements IFrontService {
 
     @Autowired
     private RedisCache redisCache;
+
+    @Autowired
+    private TXinyiForecastComparisonMapper xinyiForecastComparisonMapper;
+
     @Override
     public XinyiIndustrySimple countInfo() {
         //查询基本的工业库数据
@@ -389,6 +396,42 @@ public class FrontServiceImpl implements IFrontService {
         return "操作成功";
     }
 
+    @Override
+    public SmartAdd smartAddDataInfo() {
+        SmartAdd build = SmartAdd.builder().build();
+        //处理需要的数据
+        //获取最新的日报数据
+        TXinyiIndustry tXinyiIndustry = this.xinyiIndustryMapper.selectTXinyiIndustryNewest();
+        if(!Objects.isNull(tXinyiIndustry)){
+            build.setJslYB(tXinyiIndustry.getJsSlq());
+            build.setJsCodYB(tXinyiIndustry.getJsCod());
+            build.setJsTnYB(tXinyiIndustry.getJsTn());
+        }
+        //获取最新的化验室数据
+        TXinyiRobot tXinyiRobot = this.xinyiRobotMapper.selectNewest();
+        if(!Objects.isNull(tXinyiRobot)){
+            build.setJsCodHY(tXinyiRobot.getCodJqr());
+            build.setHyXsyHYOne(tXinyiRobot.getNo3Hlj1Jqr());
+            build.setHyXsyHYTwo(tXinyiRobot.getNo3Hlj2Jqr());
+            build.setQyXsyHYOne(tXinyiRobot.getNo3Qyc1Jqr());
+            build.setQyXsyHYTwo(tXinyiRobot.getNo3Qyc2Jqr());
+            build.setQyAdHYOne(tXinyiRobot.getNh31Jqr());
+            build.setQyAdHYTwo(tXinyiRobot.getNh32Jqr());
+        }
+        //获取最新的预测数据
+        TXinyiForecastComparison tXinyiForecastComparison = this.xinyiForecastComparisonMapper.selectNewestForecastComparison(BusinessEnum.BigModelForecastEnum.XSY1.getCode());
+        if(!Objects.isNull(tXinyiForecastComparison)){
+            build.setHyXsyYCOne(tXinyiForecastComparison.getHsForecastOne());
+        }
+        tXinyiForecastComparison = this.xinyiForecastComparisonMapper.selectNewestForecastComparison(BusinessEnum.BigModelForecastEnum.XSY2.getCode());
+        if(!Objects.isNull(tXinyiForecastComparison)){
+            build.setHyXsyYCTwo(tXinyiForecastComparison.getHsForecastOne());
+        }
+
+        //获取最新的计算数据
+        return build;
+    }
+
     private void buildIndustryData(TXinyiIndustry industry, WorkOrderRes workOrderRes, WorkOrderReq workOrderReq) {
         if(workOrderReq.getJsSlq())
             workOrderRes.setJsSlq(DecimalUtils.getAbsAndScale(industry.getJsSlq(), 2));

+ 5 - 0
slibra-system/src/main/resources/mapper/business/TXinyiForecastComparisonMapper.xml

@@ -213,4 +213,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </where>
         and del_flag = 0 order by id asc
     </select>
+
+    <select id="selectNewestForecastComparison" resultMap="TXinyiForecastComparisonResult">
+        <include refid="selectTXinyiForecastComparisonVo"/>
+        where category = #{category} and del_flag = 0 order by id desc limit 1,1
+    </select>
 </mapper>