tjf před 1 dnem
rodič
revize
3bfa2d67ea

+ 10 - 19
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java

@@ -21,13 +21,12 @@ import java.util.List;
 
 /**
  * 数据字典信息
- * 
+ *
  * @author ruoyi
  */
 @RestController
 @RequestMapping("/system/dict/data")
-public class SysDictDataController extends BaseController
-{
+public class SysDictDataController extends BaseController {
     @Autowired
     private ISysDictDataService dictDataService;
 
@@ -36,8 +35,7 @@ public class SysDictDataController extends BaseController
 
     @PreAuthorize("@ss.hasPermi('system:dict:list')")
     @GetMapping("/list")
-    public TableDataInfo list(SysDictData dictData)
-    {
+    public TableDataInfo list(SysDictData dictData) {
         startPage();
         List<SysDictData> list = dictDataService.selectDictDataList(dictData);
         return getDataTable(list);
@@ -46,8 +44,7 @@ public class SysDictDataController extends BaseController
     @Log(title = "字典数据", businessType = BusinessType.EXPORT)
     @PreAuthorize("@ss.hasPermi('system:dict:export')")
     @PostMapping("/export")
-    public void export(HttpServletResponse response, SysDictData dictData)
-    {
+    public void export(HttpServletResponse response, SysDictData dictData) {
         List<SysDictData> list = dictDataService.selectDictDataList(dictData);
         ExcelUtil<SysDictData> util = new ExcelUtil<SysDictData>(SysDictData.class);
         util.exportExcel(response, list, "字典数据");
@@ -58,8 +55,7 @@ public class SysDictDataController extends BaseController
      */
     @PreAuthorize("@ss.hasPermi('system:dict:query')")
     @GetMapping(value = "/{dictCode}")
-    public AjaxResult getInfo(@PathVariable Long dictCode)
-    {
+    public AjaxResult getInfo(@PathVariable Long dictCode) {
         return success(dictDataService.selectDictDataById(dictCode));
     }
 
@@ -67,11 +63,9 @@ public class SysDictDataController extends BaseController
      * 根据字典类型查询字典数据信息
      */
     @GetMapping(value = "/type/{dictType}")
-    public AjaxResult dictType(@PathVariable String dictType)
-    {
+    public AjaxResult dictType(@PathVariable String dictType) {
         List<SysDictData> data = dictTypeService.selectDictDataByType(dictType);
-        if (StringUtils.isNull(data))
-        {
+        if (StringUtils.isNull(data)) {
             data = new ArrayList<SysDictData>();
         }
         return success(data);
@@ -83,8 +77,7 @@ public class SysDictDataController extends BaseController
     @PreAuthorize("@ss.hasPermi('system:dict:add')")
     @Log(title = "字典数据", businessType = BusinessType.INSERT)
     @PostMapping
-    public AjaxResult add(@Validated @RequestBody SysDictData dict)
-    {
+    public AjaxResult add(@Validated @RequestBody SysDictData dict) {
         dict.setCreateBy(getUsername());
         return toAjax(dictDataService.insertDictData(dict));
     }
@@ -95,8 +88,7 @@ public class SysDictDataController extends BaseController
     @PreAuthorize("@ss.hasPermi('system:dict:edit')")
     @Log(title = "字典数据", businessType = BusinessType.UPDATE)
     @PostMapping("/put")
-    public AjaxResult edit(@Validated @RequestBody SysDictData dict)
-    {
+    public AjaxResult edit(@Validated @RequestBody SysDictData dict) {
         dict.setUpdateBy(getUsername());
         return toAjax(dictDataService.updateDictData(dict));
     }
@@ -107,8 +99,7 @@ public class SysDictDataController extends BaseController
     @PreAuthorize("@ss.hasPermi('system:dict:remove')")
     @Log(title = "字典类型", businessType = BusinessType.DELETE)
     @GetMapping("/delete/{dictCodes}")
-    public AjaxResult remove(@PathVariable Long[] dictCodes)
-    {
+    public AjaxResult remove(@PathVariable Long[] dictCodes) {
         dictDataService.deleteDictDataByIds(dictCodes);
         return success();
     }

+ 1 - 1
ruoyi-admin/src/main/resources/application.yml

@@ -39,7 +39,7 @@ token:
   # 令牌自定义标识
   header: Authorization
   # 令牌密钥
-  secret: abcdefghijklmnopqrstuvwxyz
+  secret: abcdefghijklmnopqrstuvwxyz123
   # 令牌有效期(默认30分钟)
   expireTime: 720
 

+ 25 - 0
ruoyi-system/src/main/java/com/ruoyi/manage/domain/WarnManage.java

@@ -19,6 +19,9 @@ public class WarnManage extends BaseEntity
     /** 告警ID */
     private Long warnId;
 
+    /** 设备ID */
+    private Long equipmentId;
+
     /** 设备ip */
     @Excel(name = "设备ip")
     private String equipmentIp;
@@ -50,6 +53,10 @@ public class WarnManage extends BaseEntity
     /** 告警预览图片 */
     @Excel(name = "告警预览图片")
     private String warnImage;
+    /**
+     * 区域名称(画框)
+     */
+    private String rangName;
 
     /** 上报状态 0:成功 1:失败 */
     @Excel(name = "上报状态 0:成功 1:失败")
@@ -69,6 +76,22 @@ public class WarnManage extends BaseEntity
     /** 部门名称 */
     private String deptName;
 
+    public Long getEquipmentId() {
+        return equipmentId;
+    }
+
+    public void setEquipmentId(Long equipmentId) {
+        this.equipmentId = equipmentId;
+    }
+
+    public String getRangName() {
+        return rangName;
+    }
+
+    public void setRangName(String rangName) {
+        this.rangName = rangName;
+    }
+
     public Long getDeptId() {
         return deptId;
     }
@@ -209,6 +232,7 @@ public class WarnManage extends BaseEntity
     public String toString() {
         return "WarnManage{" +
                 "warnId=" + warnId +
+                ", equipmentId=" + equipmentId +
                 ", equipmentIp='" + equipmentIp + '\'' +
                 ", equipmentName='" + equipmentName + '\'' +
                 ", channelId=" + channelId +
@@ -217,6 +241,7 @@ public class WarnManage extends BaseEntity
                 ", parameterSet='" + parameterSet + '\'' +
                 ", videoAddress='" + videoAddress + '\'' +
                 ", warnImage='" + warnImage + '\'' +
+                ", rangName='" + rangName + '\'' +
                 ", reportStatus='" + reportStatus + '\'' +
                 ", warnTime=" + warnTime +
                 ", delFlag='" + delFlag + '\'' +

+ 12 - 1
ruoyi-system/src/main/java/com/ruoyi/manage/service/impl/WarnManageServiceImpl.java

@@ -6,7 +6,9 @@ import com.ruoyi.common.core.redis.RedisCache;
 import com.ruoyi.common.model.MqttMessage;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.manage.domain.EquipmentManage;
 import com.ruoyi.manage.domain.WarnManage;
+import com.ruoyi.manage.mapper.EquipmentManageMapper;
 import com.ruoyi.manage.mapper.WarnManageMapper;
 import com.ruoyi.manage.service.IWarnManageService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -30,6 +32,8 @@ public class WarnManageServiceImpl implements IWarnManageService {
     @Autowired
     private WarnManageMapper warnManageMapper;
     @Autowired
+    private EquipmentManageMapper equipmentManageMapper;
+    @Autowired
     private RedisCache redisCache;
 
     /**
@@ -138,7 +142,7 @@ public class WarnManageServiceImpl implements IWarnManageService {
                 }
             }
             //插入当月部门数据
-            Map<String, List<WarnManage>> deptNameCollect = warnManages.stream().collect(Collectors.groupingBy(WarnManage::getDeptName));
+            Map<String, List<WarnManage>> deptNameCollect = warnManages.stream().filter( e ->StringUtils.isNotEmpty(e.getDeptName())).collect(Collectors.groupingBy(WarnManage::getDeptName));
             List<Map<String, String>> finalDeptNameMapList = new ArrayList<>();
             deptNameCollect.forEach((deptName, v) -> {
                 Map<String, String> deptMap = new HashMap<>(9);
@@ -379,13 +383,19 @@ public class WarnManageServiceImpl implements IWarnManageService {
         String payload = message.getPayload();
         JSONObject jsonObject = JSONObject.parseObject(payload);
         String equipmentIp = jsonObject.getString("equipmentIp");
+        EquipmentManage equipmentManage = new EquipmentManage();
+        equipmentManage.setEquipmentIp(equipmentIp);
+        EquipmentManage equipmentManageOld = equipmentManageMapper.selectEquipmentManageByEquipmentIp(equipmentManage);
         Long channelId = jsonObject.getLong("channelId");
         String parameterSet = jsonObject.getString("parameterSet");
         String algorithmResult = jsonObject.getString("algorithmResult");
         String photoUrl = jsonObject.getString("photoUrl");
         String videoUrl = jsonObject.getString("videoUrl");
+        String rangName = jsonObject.getString("name");
         WarnManage warnManage = new WarnManage();
         warnManage.setEquipmentIp(equipmentIp);
+        warnManage.setEquipmentName(equipmentManageOld.getEquipmentName());
+        warnManage.setEquipmentId(equipmentManageOld.getEquipmentId());
         warnManage.setChannelId(channelId);
         warnManage.setParameterSet(parameterSet);
         warnManage.setAlgorithmType(algorithmType);
@@ -394,6 +404,7 @@ public class WarnManageServiceImpl implements IWarnManageService {
         warnManage.setWarnImage(photoUrl);
         warnManage.setCreateTime(DateUtils.getNowDate());
         warnManage.setWarnTime(DateUtils.getNowDate());
+        warnManage.setRangName(rangName);
         warnManageMapper.insertWarnManage(warnManage);
     }
 }

+ 1 - 0
ruoyi-system/src/main/java/com/ruoyi/mqtt/service/MqttMessageListener.java

@@ -38,6 +38,7 @@ public class MqttMessageListener {
          * 返回值为
          {
          "equipmentIp":"设备ip",
+         "name":"区域名称",
         "channelId":"通道ID",
           "parameterSet":"当前参数设置的值",
          "algorithmType":"算法类型",

+ 12 - 2
ruoyi-system/src/main/resources/mapper/manage/WarnManageMapper.xml

@@ -6,6 +6,7 @@
 
     <resultMap type="WarnManage" id="WarnManageResult">
         <result property="warnId" column="warn_id"/>
+        <result property="equipmentId" column="equipment_id"/>
         <result property="equipmentIp" column="equipment_ip"/>
         <result property="equipmentName" column="equipment_name"/>
         <result property="channelId" column="channel_id"/>
@@ -16,6 +17,7 @@
         <result property="warnImage" column="warn_image"/>
         <result property="reportStatus" column="report_status"/>
         <result property="warnTime" column="warn_time"/>
+        <result property="rangName" column="rang_name"/>
         <result property="deptId" column="dept_id"/>
         <result property="deptName" column="dept_name"/>
         <result property="delFlag" column="del_flag"/>
@@ -28,6 +30,7 @@
 
     <sql id="selectWarnManageVo">
         select warn_id,
+               equipment_id,
                equipment_ip,
                equipment_name,
                channel_id,
@@ -38,6 +41,7 @@
                warn_image,
                report_status,
                warn_time,
+               rang_name,
                del_flag,
                create_by,
                create_time,
@@ -71,9 +75,9 @@
 
     <select id="selectWarnManageDeptListByTime" parameterType="WarnManage" resultMap="WarnManageResult">
         select w.warn_id, w.equipment_ip, w.equipment_name, w.channel_id, w.channel_num, w.algorithm_type,
-        w.parameter_set, w.video_address, w.warn_image, w.report_status, w.warn_time, w.del_flag, w.create_time,
+        w.parameter_set, w.video_address, w.warn_image, w.report_status, w.warn_time,w.rang_name, w.del_flag, w.create_time,
         e.dept_name,e.dept_id
-        from warn_manage w left join equipment_manage e on e.equipment_ip = w.equipment_ip
+        from warn_manage w left join equipment_manage e on e.equipment_id = w.equipment_id
         <where>
             w.del_flag = '0'
             <if test="warnTime != null ">and date_format(warn_time,'%Y%m') =date_format(#{warnTime},'%Y%m')</if>
@@ -88,6 +92,7 @@
     <insert id="insertWarnManage" parameterType="WarnManage" useGeneratedKeys="true" keyProperty="warnId">
         insert into warn_manage
         <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="equipmentId != null and equipmentId != ''">equipment_id,</if>
             <if test="equipmentIp != null and equipmentIp != ''">equipment_ip,</if>
             <if test="equipmentName != null and equipmentName != ''">equipment_name,</if>
             <if test="channelId != null">channel_id,</if>
@@ -98,6 +103,7 @@
             <if test="warnImage != null">warn_image,</if>
             <if test="reportStatus != null">report_status,</if>
             <if test="warnTime != null">warn_time,</if>
+            <if test="rangName != null">rang_name,</if>
             <if test="delFlag != null">del_flag,</if>
             <if test="createBy != null">create_by,</if>
             <if test="createTime != null">create_time,</if>
@@ -106,6 +112,7 @@
             <if test="remark != null">remark,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="equipmentId != null and equipmentId != ''">#{equipmentId},</if>
             <if test="equipmentIp != null and equipmentIp != ''">#{equipmentIp},</if>
             <if test="equipmentName != null and equipmentName != ''">#{equipmentName},</if>
             <if test="channelId != null">#{channelId},</if>
@@ -116,6 +123,7 @@
             <if test="warnImage != null">#{warnImage},</if>
             <if test="reportStatus != null">#{reportStatus},</if>
             <if test="warnTime != null">#{warnTime},</if>
+            <if test="rangName != null">#{rangName},</if>
             <if test="delFlag != null">#{delFlag},</if>
             <if test="createBy != null">#{createBy},</if>
             <if test="createTime != null">#{createTime},</if>
@@ -128,6 +136,7 @@
     <update id="updateWarnManage" parameterType="WarnManage">
         update warn_manage
         <trim prefix="SET" suffixOverrides=",">
+            <if test="equipmentId != null and equipmentId != ''">equipment_id = #{equipmentId},</if>
             <if test="equipmentIp != null and equipmentIp != ''">equipment_ip = #{equipmentIp},</if>
             <if test="equipmentName != null and equipmentName != ''">equipment_name = #{equipmentName},</if>
             <if test="channelId != null">channel_id = #{channelId},</if>
@@ -138,6 +147,7 @@
             <if test="warnImage != null">warn_image = #{warnImage},</if>
             <if test="reportStatus != null">report_status = #{reportStatus},</if>
             <if test="warnTime != null">warn_time = #{warnTime},</if>
+            <if test="rangName != null">rang_name = #{rangName},</if>
             <if test="delFlag != null">del_flag = #{delFlag},</if>
             <if test="createBy != null">create_by = #{createBy},</if>
             <if test="createTime != null">create_time = #{createTime},</if>