wwh 1 gadu atpakaļ
vecāks
revīzija
7b6764f007

+ 12 - 9
huimv-admin/src/main/java/com/huimv/admin/controller/EnergyDataController.java

@@ -1,6 +1,7 @@
 package com.huimv.admin.controller;
 
 
+import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -42,36 +43,36 @@ public class EnergyDataController {
     private IEnergyEnvDeviceService deviceService;
 
     @RequestMapping("/listCount")
-    public Result listCount(HttpServletRequest httpServletRequest, @RequestBody Map<String,String> paramsMap) {
+    public Result listCount(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
         return iEnergyDataService.listCount(httpServletRequest, paramsMap);
     }
 
     @RequestMapping("/listData")
-    public Result listData(HttpServletRequest httpServletRequest, @RequestBody Map<String,String> paramsMap) {
+    public Result listData(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
         return iEnergyDataService.listData(httpServletRequest, paramsMap);
     }
 
     @RequestMapping("/listRank")
-    public Result listRank(HttpServletRequest httpServletRequest, @RequestBody Map<String,String> paramsMap) {
+    public Result listRank(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
         return iEnergyDataService.listRank(httpServletRequest, paramsMap);
     }
 
     //大屏
     @RequestMapping("/listDataScreen")
-    public Result listDataScreen(HttpServletRequest httpServletRequest, @RequestBody Map<String,String> paramsMap) {
+    public Result listDataScreen(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
         return iEnergyDataService.listDataScreen(httpServletRequest, paramsMap);
     }
 
     @RequestMapping("/listRankScreen")
-    public Result listRankScreen(HttpServletRequest httpServletRequest, @RequestBody Map<String,String> paramsMap) {
+    public Result listRankScreen(HttpServletRequest httpServletRequest, @RequestBody Map<String, String> paramsMap) {
         return iEnergyDataService.listRankScreen(httpServletRequest, paramsMap);
     }
 
 
     @RequestMapping("/getData")
-    public void getData( @RequestBody List<WaterAndElectricity> result) {
-//        List<WaterAndElectricity> result = (List) paramsMap.get("result");
-        System.out.println("接受到的数据格式:"+result);
+    public void getData(@RequestBody Map<String, List<WaterAndElectricity>> paramsMap) {
+        List<WaterAndElectricity> result = (List) paramsMap.get("result");
+        System.out.println("接受到的数据格式:" + result);
         for (WaterAndElectricity jsonObject : result) {
             EnergyData energyData = new EnergyData();
             energyData.setFeedValue("0.00");
@@ -83,7 +84,9 @@ public class EnergyDataController {
             QueryWrapper<EnergyEnvDevice> queryWrapper = new QueryWrapper<>();
             queryWrapper.eq("farm_id", 26).eq("device_code", jsonObject.getDeviceCode());
             EnergyEnvDevice device = deviceService.getOne(queryWrapper);
-            energyData.setUnitId(device.getUnitId());
+            if (ObjectUtil.isNotEmpty(device)) {
+                energyData.setUnitId(device.getUnitId());
+            }
             iEnergyDataService.save(energyData);
         }
     }

+ 13 - 7
huimv-admin/src/main/java/com/huimv/admin/controller/EnvNh3nController.java

@@ -35,6 +35,7 @@ public class EnvNh3nController {
         String result = paramsMap.get("result");
         String[] split = result.split(",");
         String nh3n = split[0];
+        String[] split1 = nh3n.split("\\*");
         String deviceCode = split[1];
         QueryWrapper<EnvDevice> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("remark", deviceCode.substring(4)).eq("farm_id", 26);
@@ -44,19 +45,24 @@ public class EnvNh3nController {
             envNh3n.setFarmId(26);
             envNh3n.setCreateDate(new Date());
             envNh3n.setUnitId(device.getUnitId());
-            envNh3n.setDeviceCode(device.getDeviceCode());
-            envNh3n.setNh3N(nh3n.substring(4));
+            envNh3n.setDeviceCode(device.getRemark());
+            envNh3n.setNh3N(split1[1].substring(2));
             nh3nService.save(envNh3n);
         }
     }
 
 //    public static void main(String[] args) {
-//        String s = "0*001.7,9:0*980700100005,9:1*0000E";
-//        String[] split = s.split(",");
+////        String s = "0*001.7,9:0*980700100005,9:1*0000E";
+//        String a = "S1:0*001.7,9:0*980700100004,9:1*0002E";
+//        String[] split = a.split(",");
 //        String s1 = split[0];
-//        System.out.println(s1.substring(4));
-//        String s2 = split[1];
-//        System.out.println(s2.substring(4));
+//        String[] split1 = s1.split("\\*");
+//        System.out.println(split1[1]);
+//        System.out.println(split1[1].substring(2));
+//
+////        System.out.println(s1.substring(4));
+////        String s2 = split[1];
+////        System.out.println(s2.substring(4));
 //
 //    }
 }

+ 2 - 1
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnergyDataServiceImpl.java

@@ -49,7 +49,8 @@ public class EnergyDataServiceImpl extends ServiceImpl<EnergyDataMapper, EnergyD
     public Result listCount(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String farmId = paramsMap.get("farmId");
         QueryWrapper<EnergyData> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("farm_id", farmId);
+        Date monthmorning = DataUill.getTimesMonthmorning();
+        queryWrapper.eq("farm_id", farmId).ge("create_date", monthmorning);
         EnergyDataVo energyDataVo = dataMapper.listCount(queryWrapper);
         QueryWrapper<EnergyWarningInfo> queryWrapper1 = new QueryWrapper<>();
         queryWrapper1.eq("farm_id", farmId);

+ 22 - 16
huimv-admin/src/main/java/com/huimv/admin/service/impl/EnvDeviceServiceImpl.java

@@ -395,29 +395,35 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
         //TODO 优化一下
         String farmId = paramsMap.get("farmId");
         List objects = new ArrayList<>();
-        List<EnvDataVo> envDatas = dataMapper.listPigpenAll(farmId);
-        for (EnvDataVo envData : envDatas) {
+        QueryWrapper<BasePigpen> queryWrapper1 = new QueryWrapper<>();
+        queryWrapper1.eq("farm_id", farmId).eq("f_type", 3);
+        List<BasePigpen> basePigpens = basePigpenMapper.selectList(queryWrapper1);
+        for (BasePigpen basePigpen : basePigpens) {
             JSONObject jsonObject = new JSONObject();
-            if (ObjectUtil.isNotEmpty(envData)){
+            QueryWrapper<EnvData> queryWrapper = new QueryWrapper<>();
+            queryWrapper.eq("farm_id", farmId).eq("unit_id", basePigpen.getId())
+                    .orderByDesc("create_time").last(" limit 1");
+            EnvData envData = dataMapper.selectOne(queryWrapper);
+            if (ObjectUtil.isNotEmpty(envData)) {
                 jsonObject.put("temp", envData.getEnvTemp());//温度
                 jsonObject.put("hum", envData.getEnvHum());//湿度
-                jsonObject.put("location", envData.getBuildName());
-                QueryWrapper<EnvNh3n> queryWrapper = new QueryWrapper<>();
-                queryWrapper.eq("farm_id", farmId).eq("unit_id", envData.getUnitId())
-                        .orderByDesc("id").last(" limit 1");
-                EnvNh3n envNh3n = nh3nMapper.selectOne(queryWrapper);
+                jsonObject.put("location", basePigpen.getBuildName());
+                QueryWrapper<EnvNh3n> queryWrapper2 = new QueryWrapper<>();
+                queryWrapper2.eq("farm_id", farmId).eq("unit_id", envData.getUnitId())
+                        .orderByDesc("create_date").last(" limit 1");
+                EnvNh3n envNh3n = nh3nMapper.selectOne(queryWrapper2);
                 if (ObjectUtil.isNotEmpty(envNh3n)) {
-                    jsonObject.put("aq", envNh3n.getNh3N());//单元id
-                }else {
-                    jsonObject.put("aq", 0);//单元id
+                    jsonObject.put("aq", envNh3n.getNh3N());
+                } else {
+                    jsonObject.put("aq", 0);
                 }
-                jsonObject.put("unit_id", envData.getId());//单元id
-            }else {
+                jsonObject.put("unit_id", basePigpen.getId());//单元id
+            } else {
                 jsonObject.put("temp", 0);//温度
                 jsonObject.put("hum", 0);//湿度
-                jsonObject.put("location", envData.getBuildName());
-                jsonObject.put("unit_id", envData.getId());//单元id
-                jsonObject.put("aq", 0);//单元id
+                jsonObject.put("location", basePigpen.getBuildName());
+                jsonObject.put("unit_id",basePigpen.getId());//单元id
+                jsonObject.put("aq", 0);
             }
             objects.add(jsonObject);
         }

+ 1 - 1
huimv-admin/src/main/java/com/huimv/admin/timer/NewEnvTimer.java

@@ -49,7 +49,7 @@ public class NewEnvTimer {
     private IEnvWarningInfoService envWarningInfoService;
 
 
-    @Scheduled(cron = "0 0/20 * * * ?")  //每10分钟执行一次
+    @Scheduled(cron = "0 0/5 * * * ?")  //每10分钟执行一次
 //    @Scheduled(cron = "0 * * * * ?")  //每10分钟执行一次
 //    @Scheduled(cron = "*/5 * * * * ?")  //每10秒钟执行一次
     public void getDeviceFlowData() throws ParseException {