소스 검색

Merge remote-tracking branch 'origin/V0.1.1' into V0.1.1

jingyuanchao 1 년 전
부모
커밋
63cf224ced

+ 7 - 0
soc-modules/soc-modules-iot/src/main/java/com/xunmei/iot/controller/IotDeviceInfoController.java

@@ -29,4 +29,11 @@ public class IotDeviceInfoController {
         return AjaxResult.success(deviceInfoService.getDetail(id));
     }
 
+    @ApiOperation("iot报警主机设备详情")
+    @GetMapping({"/alarmHost/{id}"})
+    AjaxResult alarmHostDetail(@PathVariable Serializable id) {
+        return AjaxResult.success(deviceInfoService.getAlarmHostDetail(id));
+    }
+
+
 }

+ 13 - 0
soc-modules/soc-modules-iot/src/main/java/com/xunmei/iot/mapper/IotAlarmSubsystemMapper.java

@@ -0,0 +1,13 @@
+package com.xunmei.iot.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.xunmei.common.core.domain.iot.domain.IotAlarmSubsystem;
+import com.xunmei.iot.vo.deviceInfo.DeviceDetailInfoVo;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface IotAlarmSubsystemMapper extends BaseMapper<IotAlarmSubsystem> {
+
+    List<DeviceDetailInfoVo> getByDeviceCodeAndIotToken(@Param("deviceCode") String deviceCode, @Param("iotToken") String iotToken);
+}

+ 2 - 0
soc-modules/soc-modules-iot/src/main/java/com/xunmei/iot/service/IIotDeviceInfoService.java

@@ -14,4 +14,6 @@ public interface IIotDeviceInfoService extends IService<IotDeviceInfo> {
     TableDataInfo<IotDeviceInfoPageVo> deviceInfoPage(IotDeviceInfoPageDto request);
 
     DeviceDetailInfoVo getDetail(Serializable id);
+
+    DeviceDetailInfoVo getAlarmHostDetail(Serializable id);
 }

+ 16 - 0
soc-modules/soc-modules-iot/src/main/java/com/xunmei/iot/service/impl/IotDeviceInfoServiceImpl.java

@@ -8,6 +8,7 @@ import com.xunmei.common.core.enums.iot.DeviceTypeEnum;
 import com.xunmei.common.core.utils.StringUtils;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.iot.dto.deviceInfo.IotDeviceInfoPageDto;
+import com.xunmei.iot.mapper.IotAlarmSubsystemMapper;
 import com.xunmei.iot.mapper.IotDeviceInfoMapper;
 import com.xunmei.iot.service.IIotDeviceInfoService;
 import com.xunmei.iot.vo.deviceInfo.DeviceDetailInfoVo;
@@ -25,6 +26,9 @@ public class IotDeviceInfoServiceImpl extends ServiceImpl<IotDeviceInfoMapper, I
     @Resource
     RemoteOrgService orgService;
 
+    @Resource
+    private IotAlarmSubsystemMapper subsystemMapper;
+
     @Override
     public TableDataInfo<IotDeviceInfoPageVo> deviceInfoPage(IotDeviceInfoPageDto request) {
         if (request.getCheckSub()) {
@@ -65,4 +69,16 @@ public class IotDeviceInfoServiceImpl extends ServiceImpl<IotDeviceInfoMapper, I
 
         return detailInfoVo;
     }
+
+    @Override
+    public DeviceDetailInfoVo getAlarmHostDetail(Serializable id) {
+        DeviceDetailInfoVo detailInfoVo = baseMapper.getDetailById(id);
+        if (detailInfoVo != null){
+            detailInfoVo.setDeviceTypeName(DeviceTypeEnum.getDescByCode(detailInfoVo.getDeviceType()));
+            //查询报警控制器列表(报警子系统)
+            List<DeviceDetailInfoVo> list = subsystemMapper.getByDeviceCodeAndIotToken(detailInfoVo.getDeviceCode(), detailInfoVo.getIotToken());
+            detailInfoVo.setChildrenInfos(list);
+        }
+        return detailInfoVo;
+    }
 }

+ 3 - 0
soc-modules/soc-modules-iot/src/main/java/com/xunmei/iot/vo/deviceInfo/DeviceDetailInfoVo.java

@@ -16,6 +16,9 @@ public class DeviceDetailInfoVo extends IotDeviceInfoPageVo implements Serializa
 
     private String iotToken;
 
+    //布撤防状态,0:撤防,1:布防,2:未知(未登记过或离线)
+    private Integer subSystemStatus;
+
     //子设备
     private List<DeviceDetailInfoVo> childrenInfos;
 }

+ 1 - 1
soc-modules/soc-modules-iot/src/main/java/com/xunmei/iot/vo/deviceInfo/IotDeviceInfoPageVo.java

@@ -35,7 +35,7 @@ public class IotDeviceInfoPageVo implements Serializable {
     @ApiModelProperty(value = "产品")
     private String deviceProduct;
 
-    @ApiModelProperty(value = "设备")
+    @ApiModelProperty(value = "设备唯一编码")
     private String deviceCode;
 
     @ApiModelProperty(value = "产品型号")

+ 17 - 0
soc-modules/soc-modules-iot/src/main/resources/mapper/IotAlarmSubsystemMapper.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xunmei.iot.mapper.IotAlarmSubsystemMapper">
+
+    <select id="getByDeviceCodeAndIotToken" resultType="com.xunmei.iot.vo.deviceInfo.DeviceDetailInfoVo">
+        SELECT
+            s.`name` AS deviceName,
+            s.`status` AS subSystemStatus,
+            '报警控制器' AS deviceTypeName
+        FROM
+            iot_alarm_subsystem s
+        WHERE
+            s.deleted = 0
+	        AND s.alarm_host_code = #{deviceCode}
+	        AND s.iot_token = #{iotToken}
+    </select>
+</mapper>