Ver código fonte

栋舍监测温度

Newspaper 2 anos atrás
pai
commit
44e05e94e9

+ 1 - 1
src/main/java/com/huimv/admin/entity/EnvTemp.java

@@ -51,7 +51,7 @@ public class EnvTemp implements Serializable {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime askTime;
 
-
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime updateTime;
 
     private Integer farmId;

+ 60 - 10
src/main/java/com/huimv/admin/service/impl/BasePigpenServiceImpl.java

@@ -340,12 +340,37 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
             //今日数据展示
             Date timesmorning = DataUill.getTimesmorning();
             if ("1".equals(dataType)) {
-                QueryWrapper<EnvTemp> tempQueryWrapper = new QueryWrapper<>();
-                tempQueryWrapper.eq("farm_id", farmId).eq("unit_id", unitId).eq("chip_code",10011411)
-                        .ge("ask_time", timesmorning).orderByAsc("ask_time");
-                List<EnvTemp> envTemps = tempMapper.selectList(tempQueryWrapper);
+                QueryWrapper<EnvDevice> deviceQueryWrapper = new QueryWrapper<>();
+                deviceQueryWrapper.eq("unit_id",unitId).eq("farm_id",farmId);
+                EnvDevice envDevice = envDeviceMapper.selectOne(deviceQueryWrapper);
+                if (ObjectUtil.isEmpty(envDevice)){
+                    return new Result(ResultCode.FAIL,"栋舍内无设备");
+                }
+                QueryWrapper<EnvDeviceRecentlyData> deviceDataQueryWrapper = new QueryWrapper<>();
+                deviceDataQueryWrapper.eq("device_code",envDevice.getDeviceSortCode()).le("chip_type",8).eq("farm_id",farmId);
+                List<EnvDeviceRecentlyData> envDeviceRecentlyData = envDeviceRecentlyDataMapper.selectList(deviceDataQueryWrapper);
+                //按类型排序获取到8个温度
+                envDeviceRecentlyData.sort((a,b) -> a.getChipType().compareTo(b.getChipType()));
+                System.out.println(envDeviceRecentlyData);
+                map.put("name", "temp");
+                int i = 1 ;
+                for (EnvDeviceRecentlyData envDeviceRecentlyDatum : envDeviceRecentlyData) {
+                    QueryWrapper<EnvTemp> tempQueryWrapper = new QueryWrapper<>();
+                    tempQueryWrapper.eq("chip_code",envDeviceRecentlyDatum.getChipCode())
+                                    .eq("farm_id",farmId)
+                                    .eq("unit_id",unitId)
+                                    .ge("ask_time", timesmorning)
+                                    .orderByAsc("ask_time");
+                    List<EnvTemp> envTemps = tempMapper.selectList(tempQueryWrapper);
+                    map.put("value"+i , envTemps);
+                    i++;
+                }
+
+//                tempQueryWrapper.eq("farm_id", farmId).eq("unit_id", unitId).eq("chip_code",10011411)
+//                        .ge("ask_time", timesmorning).orderByAsc("ask_time");
+//                List<EnvTemp> envTemps = tempMapper.selectList(tempQueryWrapper);
                 map.put("name", "temp");
-                map.put("value", envTemps);
+
             }
             if ("2".equals(dataType)) {
                 QueryWrapper<EnvHumi> humiQueryWrapper = new QueryWrapper<>();
@@ -393,12 +418,37 @@ public class BasePigpenServiceImpl extends ServiceImpl<BasePigpenMapper, BasePig
             startTime = startTime + " 00:00:00";
             endTime = endTime + " 23:59:59";
             if ("1".equals(dataType)) {
-                QueryWrapper<EnvTemp> tempQueryWrapper = new QueryWrapper<>();
-                tempQueryWrapper.eq("farm_id", farmId).eq("unit_id", unitId).eq("chip_code",10011411)
-                        .between("ask_time", startTime, endTime).orderByAsc("update_time");
-                List<EnvTemp> envTemps = tempMapper.selectList(tempQueryWrapper);
+                QueryWrapper<EnvDevice> deviceQueryWrapper = new QueryWrapper<>();
+                deviceQueryWrapper.eq("unit_id",unitId).eq("farm_id",farmId);
+                EnvDevice envDevice = envDeviceMapper.selectOne(deviceQueryWrapper);
+                if (ObjectUtil.isEmpty(envDevice)){
+                    return new Result(ResultCode.FAIL,"栋舍内无设备");
+                }
+                QueryWrapper<EnvDeviceRecentlyData> deviceDataQueryWrapper = new QueryWrapper<>();
+                deviceDataQueryWrapper.eq("device_code",envDevice.getDeviceSortCode()).le("chip_type",8).eq("farm_id",farmId);
+                List<EnvDeviceRecentlyData> envDeviceRecentlyData = envDeviceRecentlyDataMapper.selectList(deviceDataQueryWrapper);
+                //按类型排序获取到8个温度
+                envDeviceRecentlyData.sort((a,b) -> a.getChipType().compareTo(b.getChipType()));
+                System.out.println(envDeviceRecentlyData);
                 map.put("name", "temp");
-                map.put("value", envTemps);
+                int i = 1 ;
+                for (EnvDeviceRecentlyData envDeviceRecentlyDatum : envDeviceRecentlyData) {
+                    QueryWrapper<EnvTemp> tempQueryWrapper = new QueryWrapper<>();
+                    tempQueryWrapper.eq("chip_code",envDeviceRecentlyDatum.getChipCode())
+                            .eq("farm_id",farmId)
+                            .eq("unit_id",unitId)
+                            .between("ask_time", startTime,endTime)
+                            .orderByAsc("update_time");
+                    List<EnvTemp> envTemps = tempMapper.selectList(tempQueryWrapper);
+                    map.put("value"+i , envTemps);
+                    i++;
+                }
+//                QueryWrapper<EnvTemp> tempQueryWrapper = new QueryWrapper<>();
+//                tempQueryWrapper.eq("farm_id", farmId).eq("unit_id", unitId).eq("chip_code",10011411)
+//                        .between("ask_time", startTime, endTime).orderByAsc("update_time");
+//                List<EnvTemp> envTemps = tempMapper.selectList(tempQueryWrapper);
+
+//                map.put("value", envTemps);
             }
             if ("2".equals(dataType)) {
                 QueryWrapper<EnvHumi> humiQueryWrapper = new QueryWrapper<>();