소스 검색

+ 告警列表

chen.cheng 11 달 전
부모
커밋
f9970242bd

+ 98 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpAlarmController.java

@@ -0,0 +1,98 @@
+package com.ruoyi.ems.controller;
+
+import java.util.List;
+import java.io.IOException;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.ems.domain.AdmOpAlarm;
+import com.ruoyi.ems.service.IAdmOpAlarmService;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.core.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.web.page.TableDataInfo;
+
+/**
+ * 能源设施告警Controller
+ *
+ * @author ruoyi
+ * @date 2024-08-26
+ */
+@RestController
+@RequestMapping("/alarm-info")
+public class AdmOpAlarmController extends BaseController {
+    @Autowired
+    private IAdmOpAlarmService admOpAlarmService;
+
+    /**
+     * 查询能源设施告警列表
+     */
+    @RequiresPermissions("ems:alarm-info:list")
+    @GetMapping("/list")
+    public TableDataInfo list(AdmOpAlarm admOpAlarm) {
+        startPage();
+        List<AdmOpAlarm> list = admOpAlarmService.selectAdmOpAlarmList(admOpAlarm);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出能源设施告警列表
+     */
+    @RequiresPermissions("ems:alarm-info:export")
+    @Log(title = "能源设施告警", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, AdmOpAlarm admOpAlarm) {
+        List<AdmOpAlarm> list = admOpAlarmService.selectAdmOpAlarmList(admOpAlarm);
+        ExcelUtil<AdmOpAlarm> util = new ExcelUtil<AdmOpAlarm>(AdmOpAlarm.class);
+        util.exportExcel(response, list, "能源设施告警数据");
+    }
+
+    /**
+     * 获取能源设施告警详细信息
+     */
+    @RequiresPermissions("ems:alarm-info:query")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(admOpAlarmService.selectAdmOpAlarmById(id));
+    }
+
+    /**
+     * 新增能源设施告警
+     */
+    @RequiresPermissions("ems:alarm-info:add")
+    @Log(title = "能源设施告警", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody AdmOpAlarm admOpAlarm) {
+        return toAjax(admOpAlarmService.insertAdmOpAlarm(admOpAlarm));
+    }
+
+    /**
+     * 修改能源设施告警
+     */
+    @RequiresPermissions("ems:alarm-info:edit")
+    @Log(title = "能源设施告警", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody AdmOpAlarm admOpAlarm) {
+        return toAjax(admOpAlarmService.updateAdmOpAlarm(admOpAlarm));
+    }
+
+    /**
+     * 删除能源设施告警
+     */
+    @RequiresPermissions("ems:alarm-info:remove")
+    @Log(title = "能源设施告警", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(admOpAlarmService.deleteAdmOpAlarmByIds(ids));
+    }
+}

+ 167 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/AdmOpAlarm.java

@@ -0,0 +1,167 @@
+package com.ruoyi.ems.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.core.annotation.Excel;
+import com.ruoyi.common.core.web.domain.BaseEntity;
+
+/**
+ * 能源设施告警对象 adm_op_alarm
+ * 
+ * @author ruoyi
+ * @date 2024-08-26
+ */
+public class AdmOpAlarm extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 序号 */
+    private Long id;
+
+    /** 园区代码 */
+    @Excel(name = "园区代码")
+    private String areaCode;
+
+    /** 对象类型 */
+    @Excel(name = "对象类型")
+    private Integer objType;
+
+    /** 对象代码 */
+    @Excel(name = "对象代码")
+    private String objCode;
+
+    /** 告警日期 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "告警日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date alarmDate;
+
+    /** 告警时间 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "告警时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date alarmTime;
+
+    /** 告警代码 */
+    @Excel(name = "告警代码")
+    private String alarmCode;
+
+    /** 告警描述 */
+    @Excel(name = "告警描述")
+    private String alarmMsg;
+
+    /** 告警类型 */
+    @Excel(name = "告警类型")
+    private Integer alarmType;
+
+    /** 告警状态 */
+    @Excel(name = "告警状态")
+    private Integer alarmState;
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+    public void setAreaCode(String areaCode) 
+    {
+        this.areaCode = areaCode;
+    }
+
+    public String getAreaCode() 
+    {
+        return areaCode;
+    }
+    public void setObjType(Integer objType) 
+    {
+        this.objType = objType;
+    }
+
+    public Integer getObjType() 
+    {
+        return objType;
+    }
+    public void setObjCode(String objCode) 
+    {
+        this.objCode = objCode;
+    }
+
+    public String getObjCode() 
+    {
+        return objCode;
+    }
+    public void setAlarmDate(Date alarmDate) 
+    {
+        this.alarmDate = alarmDate;
+    }
+
+    public Date getAlarmDate() 
+    {
+        return alarmDate;
+    }
+    public void setAlarmTime(Date alarmTime) 
+    {
+        this.alarmTime = alarmTime;
+    }
+
+    public Date getAlarmTime() 
+    {
+        return alarmTime;
+    }
+    public void setAlarmCode(String alarmCode) 
+    {
+        this.alarmCode = alarmCode;
+    }
+
+    public String getAlarmCode() 
+    {
+        return alarmCode;
+    }
+    public void setAlarmMsg(String alarmMsg) 
+    {
+        this.alarmMsg = alarmMsg;
+    }
+
+    public String getAlarmMsg() 
+    {
+        return alarmMsg;
+    }
+    public void setAlarmType(Integer alarmType) 
+    {
+        this.alarmType = alarmType;
+    }
+
+    public Integer getAlarmType() 
+    {
+        return alarmType;
+    }
+    public void setAlarmState(Integer alarmState) 
+    {
+        this.alarmState = alarmState;
+    }
+
+    public Integer getAlarmState() 
+    {
+        return alarmState;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("areaCode", getAreaCode())
+            .append("objType", getObjType())
+            .append("objCode", getObjCode())
+            .append("alarmDate", getAlarmDate())
+            .append("alarmTime", getAlarmTime())
+            .append("alarmCode", getAlarmCode())
+            .append("alarmMsg", getAlarmMsg())
+            .append("alarmType", getAlarmType())
+            .append("alarmState", getAlarmState())
+            .toString();
+    }
+}

+ 61 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/AdmOpAlarmMapper.java

@@ -0,0 +1,61 @@
+package com.ruoyi.ems.mapper;
+
+import java.util.List;
+import com.ruoyi.ems.domain.AdmOpAlarm;
+
+/**
+ * 能源设施告警Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-08-26
+ */
+public interface AdmOpAlarmMapper 
+{
+    /**
+     * 查询能源设施告警
+     * 
+     * @param id 能源设施告警主键
+     * @return 能源设施告警
+     */
+    public AdmOpAlarm selectAdmOpAlarmById(Long id);
+
+    /**
+     * 查询能源设施告警列表
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 能源设施告警集合
+     */
+    public List<AdmOpAlarm> selectAdmOpAlarmList(AdmOpAlarm admOpAlarm);
+
+    /**
+     * 新增能源设施告警
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 结果
+     */
+    public int insertAdmOpAlarm(AdmOpAlarm admOpAlarm);
+
+    /**
+     * 修改能源设施告警
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 结果
+     */
+    public int updateAdmOpAlarm(AdmOpAlarm admOpAlarm);
+
+    /**
+     * 删除能源设施告警
+     * 
+     * @param id 能源设施告警主键
+     * @return 结果
+     */
+    public int deleteAdmOpAlarmById(Long id);
+
+    /**
+     * 批量删除能源设施告警
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteAdmOpAlarmByIds(Long[] ids);
+}

+ 61 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/IAdmOpAlarmService.java

@@ -0,0 +1,61 @@
+package com.ruoyi.ems.service;
+
+import java.util.List;
+import com.ruoyi.ems.domain.AdmOpAlarm;
+
+/**
+ * 能源设施告警Service接口
+ * 
+ * @author ruoyi
+ * @date 2024-08-26
+ */
+public interface IAdmOpAlarmService 
+{
+    /**
+     * 查询能源设施告警
+     * 
+     * @param id 能源设施告警主键
+     * @return 能源设施告警
+     */
+    public AdmOpAlarm selectAdmOpAlarmById(Long id);
+
+    /**
+     * 查询能源设施告警列表
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 能源设施告警集合
+     */
+    public List<AdmOpAlarm> selectAdmOpAlarmList(AdmOpAlarm admOpAlarm);
+
+    /**
+     * 新增能源设施告警
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 结果
+     */
+    public int insertAdmOpAlarm(AdmOpAlarm admOpAlarm);
+
+    /**
+     * 修改能源设施告警
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 结果
+     */
+    public int updateAdmOpAlarm(AdmOpAlarm admOpAlarm);
+
+    /**
+     * 批量删除能源设施告警
+     * 
+     * @param ids 需要删除的能源设施告警主键集合
+     * @return 结果
+     */
+    public int deleteAdmOpAlarmByIds(Long[] ids);
+
+    /**
+     * 删除能源设施告警信息
+     * 
+     * @param id 能源设施告警主键
+     * @return 结果
+     */
+    public int deleteAdmOpAlarmById(Long id);
+}

+ 93 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/AdmOpAlarmServiceImpl.java

@@ -0,0 +1,93 @@
+package com.ruoyi.ems.service.impl;
+
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.ems.mapper.AdmOpAlarmMapper;
+import com.ruoyi.ems.domain.AdmOpAlarm;
+import com.ruoyi.ems.service.IAdmOpAlarmService;
+
+/**
+ * 能源设施告警Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2024-08-26
+ */
+@Service
+public class AdmOpAlarmServiceImpl implements IAdmOpAlarmService 
+{
+    @Autowired
+    private AdmOpAlarmMapper admOpAlarmMapper;
+
+    /**
+     * 查询能源设施告警
+     * 
+     * @param id 能源设施告警主键
+     * @return 能源设施告警
+     */
+    @Override
+    public AdmOpAlarm selectAdmOpAlarmById(Long id)
+    {
+        return admOpAlarmMapper.selectAdmOpAlarmById(id);
+    }
+
+    /**
+     * 查询能源设施告警列表
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 能源设施告警
+     */
+    @Override
+    public List<AdmOpAlarm> selectAdmOpAlarmList(AdmOpAlarm admOpAlarm)
+    {
+        return admOpAlarmMapper.selectAdmOpAlarmList(admOpAlarm);
+    }
+
+    /**
+     * 新增能源设施告警
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 结果
+     */
+    @Override
+    public int insertAdmOpAlarm(AdmOpAlarm admOpAlarm)
+    {
+        return admOpAlarmMapper.insertAdmOpAlarm(admOpAlarm);
+    }
+
+    /**
+     * 修改能源设施告警
+     * 
+     * @param admOpAlarm 能源设施告警
+     * @return 结果
+     */
+    @Override
+    public int updateAdmOpAlarm(AdmOpAlarm admOpAlarm)
+    {
+        return admOpAlarmMapper.updateAdmOpAlarm(admOpAlarm);
+    }
+
+    /**
+     * 批量删除能源设施告警
+     * 
+     * @param ids 需要删除的能源设施告警主键
+     * @return 结果
+     */
+    @Override
+    public int deleteAdmOpAlarmByIds(Long[] ids)
+    {
+        return admOpAlarmMapper.deleteAdmOpAlarmByIds(ids);
+    }
+
+    /**
+     * 删除能源设施告警信息
+     * 
+     * @param id 能源设施告警主键
+     * @return 结果
+     */
+    @Override
+    public int deleteAdmOpAlarmById(Long id)
+    {
+        return admOpAlarmMapper.deleteAdmOpAlarmById(id);
+    }
+}

+ 94 - 0
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/AdmOpAlarmMapper.xml

@@ -0,0 +1,94 @@
+<?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.ruoyi.ems.mapper.AdmOpAlarmMapper">
+
+    <resultMap type="com.ruoyi.ems.domain.AdmOpAlarm" id="AdmOpAlarmResult">
+        <result property="id"    column="id"    />
+        <result property="areaCode"    column="area_code"    />
+        <result property="objType"    column="obj_type"    />
+        <result property="objCode"    column="obj_code"    />
+        <result property="alarmDate"    column="alarm_date"    />
+        <result property="alarmTime"    column="alarm_time"    />
+        <result property="alarmCode"    column="alarm_code"    />
+        <result property="alarmMsg"    column="alarm_msg"    />
+        <result property="alarmType"    column="alarm_type"    />
+        <result property="alarmState"    column="alarm_state"    />
+    </resultMap>
+
+    <sql id="selectAdmOpAlarmVo">
+        select id, area_code, obj_type, obj_code, alarm_date, alarm_time, alarm_code, alarm_msg, alarm_type, alarm_state from adm_op_alarm
+    </sql>
+
+    <select id="selectAdmOpAlarmList" parameterType="com.ruoyi.ems.domain.AdmOpAlarm" resultMap="AdmOpAlarmResult">
+        <include refid="selectAdmOpAlarmVo"/>
+        <where>
+            <if test="areaCode != null  and areaCode != ''"> and area_code = #{areaCode}</if>
+            <if test="objType != null "> and obj_type = #{objType}</if>
+            <if test="objCode != null  and objCode != ''"> and obj_code = #{objCode}</if>
+            <if test="alarmCode != null  and alarmCode != ''"> and alarm_code = #{alarmCode}</if>
+            <if test="alarmMsg != null  and alarmMsg != ''"> and alarm_msg like concat('%', #{alarmMsg}, '%')</if>
+            <if test="alarmType != null "> and alarm_type = #{alarmType}</if>
+            <if test="alarmState != null "> and alarm_state = #{alarmState}</if>
+        </where>
+    </select>
+
+    <select id="selectAdmOpAlarmById" parameterType="Long" resultMap="AdmOpAlarmResult">
+        <include refid="selectAdmOpAlarmVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertAdmOpAlarm" parameterType="com.ruoyi.ems.domain.AdmOpAlarm" useGeneratedKeys="true" keyProperty="id">
+        insert into adm_op_alarm
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">area_code,</if>
+            <if test="objType != null">obj_type,</if>
+            <if test="objCode != null and objCode != ''">obj_code,</if>
+            <if test="alarmDate != null">alarm_date,</if>
+            <if test="alarmTime != null">alarm_time,</if>
+            <if test="alarmCode != null">alarm_code,</if>
+            <if test="alarmMsg != null">alarm_msg,</if>
+            <if test="alarmType != null">alarm_type,</if>
+            <if test="alarmState != null">alarm_state,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">#{areaCode},</if>
+            <if test="objType != null">#{objType},</if>
+            <if test="objCode != null and objCode != ''">#{objCode},</if>
+            <if test="alarmDate != null">#{alarmDate},</if>
+            <if test="alarmTime != null">#{alarmTime},</if>
+            <if test="alarmCode != null">#{alarmCode},</if>
+            <if test="alarmMsg != null">#{alarmMsg},</if>
+            <if test="alarmType != null">#{alarmType},</if>
+            <if test="alarmState != null">#{alarmState},</if>
+         </trim>
+    </insert>
+
+    <update id="updateAdmOpAlarm" parameterType="com.ruoyi.ems.domain.AdmOpAlarm">
+        update adm_op_alarm
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">area_code = #{areaCode},</if>
+            <if test="objType != null">obj_type = #{objType},</if>
+            <if test="objCode != null and objCode != ''">obj_code = #{objCode},</if>
+            <if test="alarmDate != null">alarm_date = #{alarmDate},</if>
+            <if test="alarmTime != null">alarm_time = #{alarmTime},</if>
+            <if test="alarmCode != null">alarm_code = #{alarmCode},</if>
+            <if test="alarmMsg != null">alarm_msg = #{alarmMsg},</if>
+            <if test="alarmType != null">alarm_type = #{alarmType},</if>
+            <if test="alarmState != null">alarm_state = #{alarmState},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteAdmOpAlarmById" parameterType="Long">
+        delete from adm_op_alarm where id = #{id}
+    </delete>
+
+    <delete id="deleteAdmOpAlarmByIds" parameterType="String">
+        delete from adm_op_alarm where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 8 - 1
ems-cloud/sql/ems_sys.sql

@@ -411,7 +411,7 @@ INSERT INTO `sys_menu` VALUES (2045,'add',113, 1, '', NULL, NULL, 1, 0, 'F', '0'
 INSERT INTO `sys_menu` VALUES (2046,'edit',113, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ca-analysis:sink:edit', '#', 'admin', sysdate(), '', NULL, '');
 INSERT INTO `sys_menu` VALUES (2047,'remove',113, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ca-analysis:sink:remove', '#', 'admin', sysdate(), '', NULL, '');
 
-
+-- 告警策略
 INSERT INTO sys_menu VALUES(17823, 'list', 118, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-strategy:list', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
 INSERT INTO sys_menu VALUES(17824, 'export', 118, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-strategy:export', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
 INSERT INTO sys_menu VALUES(17825, 'query', 118, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-strategy:query', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
@@ -419,6 +419,13 @@ INSERT INTO sys_menu VALUES(17826, 'add', 118, 1, '', NULL, NULL, 1, 0, 'F', '0'
 INSERT INTO sys_menu VALUES(17827, 'edit', 118, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-strategy:edit', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
 INSERT INTO sys_menu VALUES (17828, 'remove', 118, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-strategy:remove', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
 
+-- 告警列表
+INSERT INTO sys_menu VALUES (17829, 'list', 119, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-info:list', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
+INSERT INTO sys_menu VALUES (17830, 'export', 119, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-info:export', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
+INSERT INTO sys_menu VALUES (17831, 'query', 119, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-info:query', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
+INSERT INTO sys_menu VALUES (17832, 'add', 119, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-info:add', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
+INSERT INTO sys_menu VALUES (17833, 'edit', 119, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-info:edit', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
+INSERT INTO sys_menu VALUES (17834, 'remove', 119, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ems:alarm-info:remove', '#', 'admin', '2024-08-26 11:08:42', '', NULL, '');
 
 -- ----------------------------
 -- 6、用户和角色关联表  用户N-1角色