diff --git a/logistics/src/main/java/com/ccsens/logistics/bean/dto/MbpsDto.java b/logistics/src/main/java/com/ccsens/logistics/bean/dto/MbpsDto.java index c1cd0804..9f0e33ee 100644 --- a/logistics/src/main/java/com/ccsens/logistics/bean/dto/MbpsDto.java +++ b/logistics/src/main/java/com/ccsens/logistics/bean/dto/MbpsDto.java @@ -25,6 +25,8 @@ public class MbpsDto { @NotNull(message = "请选择查询类型") @ApiModelProperty("查询类型(0-按天,1-按周,2-按月,3-按年)") private Byte queryType; + @ApiModelProperty("查询的天数") + private Integer queryOfDay = 10; @ApiModelProperty("开始时间") private Long startTime; @ApiModelProperty("结束时间") @@ -41,6 +43,8 @@ public class MbpsDto { private Long startTime; @ApiModelProperty("结束时间") private Long endTime; + @ApiModelProperty("查询的几个小时的数据") + private Integer queryOfDay = 5; } @Data diff --git a/logistics/src/main/java/com/ccsens/logistics/bean/vo/MbpsVo.java b/logistics/src/main/java/com/ccsens/logistics/bean/vo/MbpsVo.java index ec094f4e..c5ee311f 100644 --- a/logistics/src/main/java/com/ccsens/logistics/bean/vo/MbpsVo.java +++ b/logistics/src/main/java/com/ccsens/logistics/bean/vo/MbpsVo.java @@ -86,18 +86,16 @@ public class MbpsVo { @Data @ApiModel("温度变化") public static class Temps{ - @JsonFormat(pattern = "HH:mm:ss") @ApiModelProperty("时间") - private Date time; + private String time; @ApiModelProperty("温度") private BigDecimal temp; } @Data @ApiModel("湿度变化") public static class Humiditys{ - @JsonFormat(pattern = "HH:mm:ss") @ApiModelProperty("时间") - private Date time; + private String time; @ApiModelProperty("湿度") private BigDecimal humidity; } diff --git a/logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsEnvironmentRecordDao.java b/logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsEnvironmentRecordDao.java index 50c70a63..7ade33c1 100644 --- a/logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsEnvironmentRecordDao.java +++ b/logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsEnvironmentRecordDao.java @@ -16,20 +16,20 @@ public interface LogisticsEnvironmentRecordDao extends LogisticsEnvironmentRecor /** * 查询温度变化 * @param warehouseId 仓库id - * @param startTime 开始时间 - * @param endTime 结束时间 + * @param countArr 需要查询几天的数据 + * @param nowDate 现在的时间 * @return 温度列表 */ - List selTempByTime(@Param("warehouseId") Long warehouseId,@Param("startTime") Long startTime,@Param("endTime") Long endTime); + List selTempByTime(@Param("warehouseId") Long warehouseId,@Param("countArr") String[] countArr,@Param("nowDate") String nowDate); /** * 查询湿度变化 * @param warehouseId 仓库id - * @param startTime 开始时间 - * @param endTime 结束时间 + * @param countArr 需要查询几天的数据 + * @param nowDate 现在的时间 * @return 湿度列表 */ - List selHumidityByTime(@Param("warehouseId") Long warehouseId,@Param("startTime") Long startTime,@Param("endTime") Long endTime); + List selHumidityByTime(@Param("warehouseId") Long warehouseId,@Param("countArr") String[] countArr,@Param("nowDate") String nowDate); /** * 是否有火灾 diff --git a/logistics/src/main/java/com/ccsens/logistics/service/HttpService.java b/logistics/src/main/java/com/ccsens/logistics/service/HttpService.java index f801a96b..4278513c 100644 --- a/logistics/src/main/java/com/ccsens/logistics/service/HttpService.java +++ b/logistics/src/main/java/com/ccsens/logistics/service/HttpService.java @@ -71,7 +71,7 @@ public class HttpService implements IHttpService{ for (int i = 0; i < dataArray.size(); i++) { LogisticsEnvironmentRecord environmentRecord = new LogisticsEnvironmentRecord(); JSONObject oneObject = dataArray.getJSONObject(i); - environmentRecord.setEquipmentNum(oneObject.getString("deviceKey")); + environmentRecord.setEquipmentNum(oneObject.getString("deviceAddr")); environmentRecord.setRecordTime(System.currentTimeMillis()); JSONArray realTimeData = oneObject.getJSONArray("realTimeData"); diff --git a/logistics/src/main/java/com/ccsens/logistics/service/MbpsService.java b/logistics/src/main/java/com/ccsens/logistics/service/MbpsService.java index 1cd4a728..53475b66 100644 --- a/logistics/src/main/java/com/ccsens/logistics/service/MbpsService.java +++ b/logistics/src/main/java/com/ccsens/logistics/service/MbpsService.java @@ -16,6 +16,7 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; @@ -57,7 +58,7 @@ public class MbpsService implements IMbpsService { @Override public MbpsVo.SelMbpsByTime selMbpsByTime(MbpsDto.SelMbpsByTime param) { - String[] countArr = new String[10]; + String[] countArr = new String[param.getQueryOfDay()]; //查找当前时间 Date date = new Date(); SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); @@ -92,12 +93,33 @@ public class MbpsService implements IMbpsService { @Override public MbpsVo.SelTempAndHumidity selTeamAndHumidity(MbpsDto.SelTeamAndHumidity param) { MbpsVo.SelTempAndHumidity tempAndHumidity = new MbpsVo.SelTempAndHumidity(); + + String[] countArr = new String[param.getQueryOfDay()]; + //查找当前时间 + Date date = new Date(); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH"); + String nowDate = format.format(date); + //查询温度 - List tempsList = environmentRecordDao.selTempByTime(param.getWarehouseId(),param.getStartTime(),param.getEndTime()); + List tempsList = environmentRecordDao.selTempByTime(param.getWarehouseId(),countArr,nowDate); + if (CollectionUtil.isNotEmpty(tempsList)){ + for (MbpsVo.Temps temps : tempsList) { + if (ObjectUtil.isNull(temps.getTemp())){ + temps.setTemp(new BigDecimal(0)); + } + } + } tempAndHumidity.getTemps().addAll(tempsList); //查询湿度 - List humidityList = environmentRecordDao.selHumidityByTime(param.getWarehouseId(),param.getStartTime(),param.getEndTime()); + List humidityList = environmentRecordDao.selHumidityByTime(param.getWarehouseId(),countArr,nowDate); + if (CollectionUtil.isNotEmpty(humidityList)){ + for (MbpsVo.Humiditys humidity : humidityList) { + if (ObjectUtil.isNull(humidity.getHumidity())){ + humidity.setHumidity(new BigDecimal(0)); + } + } + } tempAndHumidity.getHumiditys().addAll(humidityList); return tempAndHumidity; diff --git a/logistics/src/main/resources/mapper_dao/LogisticsEnvironmentRecordDao.xml b/logistics/src/main/resources/mapper_dao/LogisticsEnvironmentRecordDao.xml index a62c9e96..44f600b2 100644 --- a/logistics/src/main/resources/mapper_dao/LogisticsEnvironmentRecordDao.xml +++ b/logistics/src/main/resources/mapper_dao/LogisticsEnvironmentRecordDao.xml @@ -4,46 +4,56 @@