Kaynağa Gözat

传感器温湿度记录查询(大屏)

Newspaper 2 yıl önce
ebeveyn
işleme
e9cc06bdc3

+ 5 - 0
huimv-farm-environ/src/main/java/com/huimv/environ/eco/controller/EcoDeviceFlowController.java

@@ -34,6 +34,11 @@ public class EcoDeviceFlowController {
         return ecoDeviceFlowService.getLastFlow(paramsMap);
     }
 
+    @PostMapping("getLastFlowByUnitId")
+    public Result getLastFlowByUnitId(@RequestBody Map<String, String> paramsMap){
+        return ecoDeviceFlowService.getLastFlowByUnitId(paramsMap);
+    }
+
     @PostMapping("/listByRoom")
     public Result listByRoom( HttpServletRequest request,@RequestBody Map<String, String> paramsMap) throws ParseException {
         return ecoDeviceFlowService.listByRoom(request, paramsMap);

+ 2 - 0
huimv-farm-environ/src/main/java/com/huimv/environ/eco/mapper/EcoDeviceFlowMapper.java

@@ -40,4 +40,6 @@ public interface EcoDeviceFlowMapper extends BaseMapper<EcoDeviceFlow> {
 
     List<EcoDeviceDto> listMonthDevice(@Param("farmId") String farmId,
                                      @Param("unitId") String unitId);
+
+    LastFlowDto getLastFlowByUnitId(@Param("unitId") String unitId);
 }

+ 2 - 0
huimv-farm-environ/src/main/java/com/huimv/environ/eco/service/EcoDeviceFlowService.java

@@ -27,4 +27,6 @@ public interface EcoDeviceFlowService extends IService<EcoDeviceFlow> {
     Result listByRoom(HttpServletRequest request, Map<String, String> paramsMap) throws ParseException;
 
     Result listDayDetails(HttpServletRequest request, Map<String, String> paramsMap) throws ParseException;
+
+    Result getLastFlowByUnitId(Map<String, String> paramsMap);
 }

+ 8 - 0
huimv-farm-environ/src/main/java/com/huimv/environ/eco/service/impl/EcoDeviceFlowServiceImpl.java

@@ -1,5 +1,6 @@
 package com.huimv.environ.eco.service.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -171,6 +172,13 @@ public class EcoDeviceFlowServiceImpl extends ServiceImpl<EcoDeviceFlowMapper, E
         return new Result(ResultCode.SUCCESS,resultList);
     }
 
+    @Override
+    public Result getLastFlowByUnitId(Map<String, String> paramsMap) {
+        String unitId = paramsMap.get("unitId");
+        LastFlowDto lastFlowByUnitId = ecoDeviceFlowMapper.getLastFlowByUnitId(unitId);
+        return new Result(ResultCode.SUCCESS,lastFlowByUnitId);
+    }
+
     //获取阈值
     private JSONObject getThresholdURL(Integer farmId) {
         HttpHeaders httpHeaders = new HttpHeaders();

+ 8 - 0
huimv-farm-environ/src/main/resources/com/huimv/environ/eco/mapper/EcoDeviceFlowMapper.xml

@@ -64,4 +64,12 @@ WHERE d.farm_id = ${farmId} AND unit_id = ${unitId}
 AND add_time BETWEEN (SELECT DATE_ADD(CURDATE(),INTERVAL -DAY(CURDATE())+1 DAY)) AND NOW()
 GROUP BY DATE_FORMAT(df.add_time,"%Y-%m-%d")
     </select>
+
+    <select id="getLastFlowByUnitId" resultType="com.huimv.environ.eco.entity.dto.LastFlowDto">
+        SELECT  d.location 'room',df.id1_value 'tem',df.id2_value 'hum' FROM `eco_device` d
+LEFT JOIN `eco_device_flow` df ON d.device_code = df.device_code
+AND df.id IN (SELECT MAX(df.id) FROM `eco_device_flow` df GROUP BY device_code)
+AND d.device_type = 1
+WHERE d.unit_id = #{unitId}
+    </select>
 </mapper>