zhongrj
2023-10-16 b2763e29ccd2c2079c259c8454622375a0e6090a
新增告警统计接口
5 files modified
68 ■■■■■ changed files
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/controller/AlarmRecordController.java 13 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.java 9 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml 24 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/AlarmRecordService.java 7 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java 15 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/controller/AlarmRecordController.java
@@ -47,7 +47,7 @@
     */
    @ApiOperation(value="告警记录-自定义分页列表查询", notes="告警记录-自定义分页列表查询")
    @GetMapping(value = "/page")
    public R page(AlarmRecordVO alarmRecord, Query query) {
    public R selectAlarmPage(AlarmRecordVO alarmRecord, Query query) {
        return R.data( alarmRecordService.selectAlarmRecordPage(Condition.getPage(query),alarmRecord));
    }
@@ -112,6 +112,17 @@
    }
    /**
     * 按行政区统计告警-按三大类
     * @param alarmRecord
     * @return
     */
    @ApiOperation(value="告警记录-告警统计-按三大类", notes="告警记录-告警统计-按三大类")
    @GetMapping(value = "/statisticAlarmRecordByType")
    public R statisticAlarmRecordByType(AlarmRecordVO alarmRecord) {
        return R.data(alarmRecordService.statisticAlarmRecordByType(alarmRecord));
    }
    /**
     * 按行政区统计告警
     * @param alarmRecord
     * @return
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.java
@@ -4,6 +4,7 @@
import cn.gistack.alerts.alarmRule.entity.AlarmRule;
import cn.gistack.alerts.alarmRule.vo.AlarmRecordVO;
import cn.gistack.alerts.alarmRule.vo.StatisticAlarmRecord;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
@@ -26,6 +27,14 @@
    List<AlarmRecordVO> selectAlarmRecordPage(IPage<AlarmRecordVO> page,@Param("alarmRecord") AlarmRecordVO alarmRecord);
    /**
     * 查询告警统计数据-按三大类
     * @param alarmRecord
     * @return
     */
    @InterceptorIgnore(tenantLine = "true")
    List<StatisticAlarmRecord> statisticAlarmRecordByType(@Param("alarmRecord") AlarmRecordVO alarmRecord);
    /**
     * 查询告警统计数据
     * @param alarmRecord
     * @return
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/mapper/AlarmRecordMapper.xml
@@ -102,6 +102,30 @@
        group by cityName,rule_name
    </select>
    <!--查询告警统计数据-按三大类-->
    <select id="statisticAlarmRecordByType" resultType="cn.gistack.alerts.alarmRule.vo.StatisticAlarmRecord">
        select
        a.dict_value as ruleName,
        case when ifnull(b.type,0)='0' then 0 else b.num end as num
        from
        (
        select dict_value from YWXT.blade_dict_biz where code = 'ALARM_TYPE' and dict_key!= '-1' and is_deleted = 0
        ) a left join
        (
        select type,count(*) num
        from YWXT.sm_alarm_record sar
        left join YWXT.sm_alarm_rule e on e.id = sar.alarm_rule_id
        where sar.is_deleted = 0
        <if test="alarmRecord.startTime!=null and alarmRecord.startTime!=''">
            and date_format(sar.create_time,'%Y-%m-%d') >= #{alarmRecord.startTime}
        </if>
        <if test="alarmRecord.endTime!=null and alarmRecord.endTime!=''">
            and date_format(sar.create_time,'%Y-%m-%d') &lt;= #{alarmRecord.endTime}
        </if>
        group by type
        ) b on a.dict_value = b.type
    </select>
    <!--查询符合条件的告警类型-->
    <select id="listAlarmRule" resultType="cn.gistack.alerts.alarmRule.entity.AlarmRule">
        select * from YWXT.sm_alarm_rule where is_deleted = 0
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/AlarmRecordService.java
@@ -21,6 +21,13 @@
    Object selectAlarmRecordPage(IPage<AlarmRecordVO> page, AlarmRecordVO alarmRecord);
    /**
     * 按行政区统计告警-按三大类
     * @param alarmRecord
     * @return
     */
    Object statisticAlarmRecordByType(AlarmRecordVO alarmRecord);
    /**
     * 按行政区统计告警
     * @param alarmRecord
     * @return
skjcmanager/skjcmanager-service/skjcmanager-alerts/src/main/java/cn/gistack/alerts/alarmRule/service/impl/AlarmRecordServiceImpl.java
@@ -48,6 +48,21 @@
    }
    /**
     * 按行政区统计告警-按三大类
     * @param alarmRecord
     * @return
     */
    @Override
    public Object statisticAlarmRecordByType(AlarmRecordVO alarmRecord) {
        // 获取当前用户的行政区划
        String adCode = "420000000000";
        // 查询统计数据
        List<StatisticAlarmRecord> list = baseMapper.statisticAlarmRecordByType(alarmRecord);
        // 返回数据
        return list;
    }
    /**
     * 按行政区统计告警
     * @param alarmRecord
     * @return