Browse Source

修改完善

logistics
ma 5 years ago
parent
commit
d4a40d0b38
  1. 2
      logistics/src/main/java/com/ccsens/logistics/Netty/NettyClient.java
  2. 9
      logistics/src/main/java/com/ccsens/logistics/api/WarehouseController.java
  3. 3
      logistics/src/main/java/com/ccsens/logistics/bean/dto/MbpsDto.java
  4. 17
      logistics/src/main/java/com/ccsens/logistics/bean/vo/EquipmentVo.java
  5. 25
      logistics/src/main/java/com/ccsens/logistics/bean/vo/ParkVo.java
  6. 4
      logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsEnvironmentRecordDao.java
  7. 3
      logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsHeatImagingRecordDao.java
  8. 10
      logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsParkEquipmentDao.java
  9. 5
      logistics/src/main/java/com/ccsens/logistics/service/IWarehouseService.java
  10. 10
      logistics/src/main/java/com/ccsens/logistics/service/MbpsService.java
  11. 16
      logistics/src/main/java/com/ccsens/logistics/service/WarehouseService.java
  12. 20
      logistics/src/main/resources/mapper_dao/LogisticsEnvironmentRecordDao.xml
  13. 3
      logistics/src/main/resources/mapper_dao/LogisticsHeatImagingRecordDao.xml
  14. 13
      logistics/src/main/resources/mapper_dao/LogisticsParkEquipmentDao.xml

2
logistics/src/main/java/com/ccsens/logistics/Netty/NettyClient.java

@ -70,7 +70,7 @@ public class NettyClient {
ScheduledExecutorService service = Executors ScheduledExecutorService service = Executors
.newSingleThreadScheduledExecutor(); .newSingleThreadScheduledExecutor();
// 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间 // 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间
service.scheduleAtFixedRate(runnable, 2, 30, TimeUnit.SECONDS); service.scheduleAtFixedRate(runnable, 2, 5, TimeUnit.SECONDS);
// 创建并执行在给定延迟后启用的 ScheduledFuture。 // 创建并执行在给定延迟后启用的 ScheduledFuture。
// 参数: // 参数:
// callable - 要执行的功能 // callable - 要执行的功能

9
logistics/src/main/java/com/ccsens/logistics/api/WarehouseController.java

@ -3,6 +3,7 @@ package com.ccsens.logistics.api;
import com.ccsens.logistics.bean.dto.MbpsDto; import com.ccsens.logistics.bean.dto.MbpsDto;
import com.ccsens.logistics.bean.dto.WarehouseDto; import com.ccsens.logistics.bean.dto.WarehouseDto;
import com.ccsens.logistics.bean.vo.MbpsVo; import com.ccsens.logistics.bean.vo.MbpsVo;
import com.ccsens.logistics.bean.vo.ParkVo;
import com.ccsens.logistics.bean.vo.WarehouseVo; import com.ccsens.logistics.bean.vo.WarehouseVo;
import com.ccsens.logistics.service.IWarehouseService; import com.ccsens.logistics.service.IWarehouseService;
import com.ccsens.util.JsonResponse; import com.ccsens.util.JsonResponse;
@ -34,11 +35,11 @@ public class WarehouseController {
@ApiOperation(value = "查询仓库列表及仓库下的摄像头", notes = "mz:查询仓库列表及仓库下的摄像头") @ApiOperation(value = "查询仓库列表及仓库下的摄像头", notes = "mz:查询仓库列表及仓库下的摄像头")
@RequestMapping(value = "/selAllWarehouse", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) @RequestMapping(value = "/selAllWarehouse", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<WarehouseVo.AllWarehouse> selAllWarehouse(@ApiParam @Validated @RequestBody QueryDto<WarehouseDto.SelWarehouse> params) { public JsonResponse<ParkVo.ParkInfo> selAllWarehouse(@ApiParam @Validated @RequestBody QueryDto<WarehouseDto.SelWarehouse> params) {
log.info("查询仓库列表及仓库下的摄像头:{}",params); log.info("查询仓库列表及仓库下的摄像头:{}",params);
List<WarehouseVo.AllWarehouse> warehouse = iWarehouseService.selAllWarehouse(params.getParam()); ParkVo.ParkInfo parkInfo = iWarehouseService.selAllWarehouse(params.getParam());
log.info("查询仓库列表及仓库下的摄像头:{}",warehouse); log.info("查询仓库列表及仓库下的摄像头:{}",parkInfo);
return JsonResponse.newInstance().ok(warehouse); return JsonResponse.newInstance().ok(parkInfo);
} }
} }

3
logistics/src/main/java/com/ccsens/logistics/bean/dto/MbpsDto.java

@ -50,6 +50,9 @@ public class MbpsDto {
@Data @Data
@ApiModel(value = "查询热成像信息") @ApiModel(value = "查询热成像信息")
public static class SelHeatImaging{ public static class SelHeatImaging{
@NotNull(message = "请选择要查看的仓库")
@ApiModelProperty("仓库id")
private Long warehouseId;
@ApiModelProperty("热成像设备id") @ApiModelProperty("热成像设备id")
private Long id; private Long id;
} }

17
logistics/src/main/java/com/ccsens/logistics/bean/vo/EquipmentVo.java

@ -11,7 +11,7 @@ import lombok.Data;
public class EquipmentVo { public class EquipmentVo {
@Data @Data
@ApiModel("摄像头列表") @ApiModel("仓库摄像头列表")
public static class AllCamera{ public static class AllCamera{
@ApiModelProperty("设备id") @ApiModelProperty("设备id")
private Long equipmentId; private Long equipmentId;
@ -24,4 +24,19 @@ public class EquipmentVo {
@ApiModelProperty("设备地址") @ApiModelProperty("设备地址")
private String equipmentLocation; private String equipmentLocation;
} }
@Data
@ApiModel("园区设备列表")
public static class ParkEquipment{
@ApiModelProperty("设备id")
private Long equipmentId;
@ApiModelProperty("设备名称")
private String equipmentName;
@ApiModelProperty("设备编号")
private String equipmentNumber;
@ApiModelProperty("设备类型(0-车辆识别摄像头进,1-车辆识别摄像头出)")
private Byte equipmentType;
@ApiModelProperty("设备地址")
private String equipmentLocation;
}
} }

25
logistics/src/main/java/com/ccsens/logistics/bean/vo/ParkVo.java

@ -0,0 +1,25 @@
package com.ccsens.logistics.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author
*/
@Data
public class ParkVo {
@Data
@ApiModel("仓库及摄像头")
public static class ParkInfo{
@ApiModelProperty("园区设备")
private List<EquipmentVo.ParkEquipment> parkEquipment = new ArrayList<>();
@ApiModelProperty("仓库信息")
private List<WarehouseVo.AllWarehouse> warehouseInfo = new ArrayList<>();
}
}

4
logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsEnvironmentRecordDao.java

@ -36,12 +36,12 @@ public interface LogisticsEnvironmentRecordDao extends LogisticsEnvironmentRecor
* @param id 仓库id * @param id 仓库id
* @return (0-,1-) * @return (0-,1-)
*/ */
Byte selFire(Long id); Integer selFire(@Param("id") Long id);
/** /**
* 是否有水灾 * 是否有水灾
* @param id 仓库id * @param id 仓库id
* @return (0-,1-) * @return (0-,1-)
*/ */
Byte selFlood(Long id); Integer selFlood(@Param("id") Long id);
} }

3
logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsHeatImagingRecordDao.java

@ -13,7 +13,8 @@ public interface LogisticsHeatImagingRecordDao {
/** /**
* 查询热成像最新信息 * 查询热成像最新信息
* @param id 热成像设备id * @param id 热成像设备id
* @param warehouseId 仓库id
* @return 热成像信息 * @return 热成像信息
*/ */
MbpsVo.SelHeatImaging selHeatImaging(@Param("id") Long id); MbpsVo.SelHeatImaging selHeatImaging(@Param("id") Long id,@Param("warehouseId") Long warehouseId);
} }

10
logistics/src/main/java/com/ccsens/logistics/persist/dao/LogisticsParkEquipmentDao.java

@ -1,11 +1,21 @@
package com.ccsens.logistics.persist.dao; package com.ccsens.logistics.persist.dao;
import com.ccsens.logistics.bean.vo.EquipmentVo;
import com.ccsens.logistics.persist.mapper.LogisticsParkEquipmentMapper; import com.ccsens.logistics.persist.mapper.LogisticsParkEquipmentMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
/** /**
* @author * @author
*/ */
@Repository @Repository
public interface LogisticsParkEquipmentDao extends LogisticsParkEquipmentMapper { public interface LogisticsParkEquipmentDao extends LogisticsParkEquipmentMapper {
/**
* 查询园区下的设备
* @param parkId 园区id
* @return 园区设备列表
*/
List<EquipmentVo.ParkEquipment> selParkEquipment(Long parkId);
} }

5
logistics/src/main/java/com/ccsens/logistics/service/IWarehouseService.java

@ -2,6 +2,7 @@ package com.ccsens.logistics.service;
import com.ccsens.logistics.bean.dto.WarehouseDto; import com.ccsens.logistics.bean.dto.WarehouseDto;
import com.ccsens.logistics.bean.vo.MbpsVo; import com.ccsens.logistics.bean.vo.MbpsVo;
import com.ccsens.logistics.bean.vo.ParkVo;
import com.ccsens.logistics.bean.vo.WarehouseVo; import com.ccsens.logistics.bean.vo.WarehouseVo;
import java.util.List; import java.util.List;
@ -14,7 +15,7 @@ public interface IWarehouseService {
/** /**
* 查询仓库及摄像头 * 查询仓库及摄像头
* @param param 园区id 仓库id * @param param 园区id 仓库id
* @return 仓库及摄像头 * @return 园区设备仓库及摄像头
*/ */
List<WarehouseVo.AllWarehouse> selAllWarehouse(WarehouseDto.SelWarehouse param); ParkVo.ParkInfo selAllWarehouse(WarehouseDto.SelWarehouse param);
} }

10
logistics/src/main/java/com/ccsens/logistics/service/MbpsService.java

@ -127,7 +127,7 @@ public class MbpsService implements IMbpsService {
@Override @Override
public MbpsVo.SelHeatImaging selHeatImaging(MbpsDto.SelHeatImaging param) { public MbpsVo.SelHeatImaging selHeatImaging(MbpsDto.SelHeatImaging param) {
return heatImagingRecordDao.selHeatImaging(param.getId()); return heatImagingRecordDao.selHeatImaging(param.getId(),param.getWarehouseId());
} }
@Override @Override
@ -141,10 +141,10 @@ public class MbpsService implements IMbpsService {
if (CollectionUtil.isNotEmpty(warehouses)){ if (CollectionUtil.isNotEmpty(warehouses)){
for (LogisticsWarehouse warehouse : warehouses) { for (LogisticsWarehouse warehouse : warehouses) {
//火灾 //火灾
Byte fireAlarm = environmentRecordDao.selFire(warehouse.getId()); Integer fireAlarm = environmentRecordDao.selFire(warehouse.getId());
fireAlarm = fireAlarm == null ? 0 : fireAlarm; fireAlarm = fireAlarm == null ? 0 : fireAlarm;
//水灾 //水灾
Byte floodAlarm = environmentRecordDao.selFlood(warehouse.getId()); Integer floodAlarm = environmentRecordDao.selFlood(warehouse.getId());
floodAlarm = floodAlarm == null ? 0 : floodAlarm; floodAlarm = floodAlarm == null ? 0 : floodAlarm;
if (ObjectUtil.isNotNull(fireAlarm)){ if (ObjectUtil.isNotNull(fireAlarm)){
@ -166,8 +166,8 @@ public class MbpsService implements IMbpsService {
} }
} }
}else{ }else{
Byte fireAlarm = environmentRecordDao.selFire(param.getWarehouseId()); Integer fireAlarm = environmentRecordDao.selFire(param.getWarehouseId());
Byte floodAlarm = environmentRecordDao.selFlood(param.getWarehouseId()); Integer floodAlarm = environmentRecordDao.selFlood(param.getWarehouseId());
if (ObjectUtil.isNotNull(fireAlarm)){ if (ObjectUtil.isNotNull(fireAlarm)){
fireOrFlood.setIsFire(fireAlarm == 1); fireOrFlood.setIsFire(fireAlarm == 1);
} }

16
logistics/src/main/java/com/ccsens/logistics/service/WarehouseService.java

@ -1,7 +1,10 @@
package com.ccsens.logistics.service; package com.ccsens.logistics.service;
import com.ccsens.logistics.bean.dto.WarehouseDto; import com.ccsens.logistics.bean.dto.WarehouseDto;
import com.ccsens.logistics.bean.vo.EquipmentVo;
import com.ccsens.logistics.bean.vo.ParkVo;
import com.ccsens.logistics.bean.vo.WarehouseVo; import com.ccsens.logistics.bean.vo.WarehouseVo;
import com.ccsens.logistics.persist.dao.LogisticsParkEquipmentDao;
import com.ccsens.logistics.persist.dao.LogisticsWarehouseDao; import com.ccsens.logistics.persist.dao.LogisticsWarehouseDao;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -21,10 +24,19 @@ public class WarehouseService implements IWarehouseService {
@Resource @Resource
private LogisticsWarehouseDao warehouseDao; private LogisticsWarehouseDao warehouseDao;
@Resource
private LogisticsParkEquipmentDao parkEquipmentDao;
@Override @Override
public List<WarehouseVo.AllWarehouse> selAllWarehouse(WarehouseDto.SelWarehouse param) { public ParkVo.ParkInfo selAllWarehouse(WarehouseDto.SelWarehouse param) {
return warehouseDao.selWarehouseAndCamera(param.getParkId(),param.getWarehouseId()); ParkVo.ParkInfo parkInfo = new ParkVo.ParkInfo();
//查询仓库及仓库下的设备
List<WarehouseVo.AllWarehouse> warehouses = warehouseDao.selWarehouseAndCamera(param.getParkId(), param.getWarehouseId());
parkInfo.getWarehouseInfo().addAll(warehouses);
//查询园区下的摄像头设备
List<EquipmentVo.ParkEquipment> parkEquipments = parkEquipmentDao.selParkEquipment(param.getParkId());
parkInfo.getParkEquipment().addAll(parkEquipments);
return parkInfo;
} }
} }

20
logistics/src/main/resources/mapper_dao/LogisticsEnvironmentRecordDao.xml

@ -56,34 +56,36 @@
group by s.date ORDER BY s.date group by s.date ORDER BY s.date
</select> </select>
<select id="selFire" resultType="java.lang.Byte"> <select id="selFire" resultType="java.lang.Integer">
SELECT SELECT
er.is_alarm AS isFire er.is_alarm AS isFire
FROM FROM
t_logistics_environment_record AS er t_logistics_environment_record AS er
LEFT JOIN t_logistics_warehouse AS w ON er.warehouse_id = w.id LEFT JOIN t_logistics_equipment AS e ON e.id = er.equipment_id
AND w.rec_status = 0 LEFT JOIN t_logistics_warehouse AS w ON e.warehouse_id = w.id
AND w.rec_status = 0
WHERE WHERE
er.num_type = 3 er.num_type = 3
AND w.id = #{id} AND w.id = #{id}
ORDER BY ORDER BY
er.record_time DESC er.record_time DESC
LIMIT 1 LIMIT 1
</select> </select>
<select id="selFlood" resultType="java.lang.Byte"> <select id="selFlood" resultType="java.lang.Integer">
SELECT SELECT
er.is_alarm AS isFlood er.is_alarm AS isFlood
FROM FROM
t_logistics_environment_record AS er t_logistics_environment_record AS er
LEFT JOIN t_logistics_warehouse AS w ON er.warehouse_id = w.id LEFT JOIN t_logistics_equipment AS e ON er.equipment_num = e.equipment_number
AND w.rec_status = 0 LEFT JOIN t_logistics_warehouse AS w ON e.warehouse_id = w.id
AND w.rec_status = 0
WHERE WHERE
er.num_type = 2 er.num_type = 2
AND w.id = #{id} AND w.id = #{id}
ORDER BY ORDER BY
er.record_time DESC er.record_time DESC
LIMIT 1 LIMIT 1
</select> </select>
</mapper> </mapper>

3
logistics/src/main/resources/mapper_dao/LogisticsHeatImagingRecordDao.xml

@ -18,6 +18,9 @@
<if test="id != null"> <if test="id != null">
AND le.id = #{id} AND le.id = #{id}
</if> </if>
<if test="warehouseId != null">
AND le.warehouse_id = #{warehouseId}
</if>
ORDER BY ORDER BY
ir.record_time DESC ir.record_time DESC
LIMIT 1 LIMIT 1

13
logistics/src/main/resources/mapper_dao/LogisticsParkEquipmentDao.xml

@ -2,4 +2,17 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.logistics.persist.dao.LogisticsParkEquipmentDao"> <mapper namespace="com.ccsens.logistics.persist.dao.LogisticsParkEquipmentDao">
<select id="selParkEquipment" resultType="com.ccsens.logistics.bean.vo.EquipmentVo$ParkEquipment">
SELECT
pe.id AS equipmentId,
pe.`name` AS equipmentName,
pe.equipment_number AS equipmentNumber,
pe.equipment_type AS equipmentType,
pe.equipment_location AS equipmentLocation
FROM
t_logistics_park_equipment AS pe
WHERE
park_id = #{parkId}
</select>
</mapper> </mapper>
Loading…
Cancel
Save