Browse Source

feat: 添加统计类型

master_tdsql
hxh 1 year ago
parent
commit
ceb506efa9
  1. 6
      shuili-system/src/main/java/com/kms/yxgh/common/dto/WarningStatisticQueDto.java
  2. 27
      shuili-system/src/main/java/com/kms/yxgh/common/mapper/WarningMapper.java
  3. 8
      shuili-system/src/main/java/com/kms/yxgh/common/service/WarningService.java

6
shuili-system/src/main/java/com/kms/yxgh/common/dto/WarningStatisticQueDto.java

@ -57,6 +57,10 @@ public class WarningStatisticQueDto {
/** /**
* 告警类型 * 告警类型
*/ */
WARNING_TYPE WARNING_TYPE,
/**
* 状态
*/
STATUS
} }
} }

27
shuili-system/src/main/java/com/kms/yxgh/common/mapper/WarningMapper.java

@ -69,4 +69,31 @@ public interface WarningMapper extends BaseMapper<DeviceCheckingRecordView> {
"</script>") "</script>")
IPage<WarningStatisticDto.Statistic> statisticByWarningType(Page<WarningStatisticDto.Statistic> page, @Param("sp") WarningStatisticQueDto sp); IPage<WarningStatisticDto.Statistic> statisticByWarningType(Page<WarningStatisticDto.Statistic> page, @Param("sp") WarningStatisticQueDto sp);
@Select("<script>" +
"SELECT " +
"STATUS as code, " +
"count(1) as count " +
"FROM v_bs_sgc_dtsbr " +
"WHERE 1=1 " +
"<if test='sp.startTime != null'>" +
"AND warning_time &gt;= #{sp.startTime} " +
"</if>" +
"<if test='sp.endTime != null'>" +
"AND warning_time &lt;= #{sp.endTime} " +
"</if>" +
"<if test='sp.adcd != null and sp.adcd != \"\"'>" +
"AND adcd like concat(#{sp.adcd},'%') " +
"</if>" +
"<if test='sp.code != null and sp.code != \"\"'>" +
"AND CODE = #{sp.code} " +
"</if>" +
"<if test='sp.objTypes != null and sp.objTypes.size() > 0'>" +
"AND TYPE in " +
"<foreach collection='sp.objTypes' item='item' open='(' separator=',' close=')'>" +
"#{item}" +
"</foreach>" +
"</if>" +
"GROUP BY STATUS" +
"</script>")
IPage<WarningStatisticDto.Statistic> statisticByStatus(Page<WarningStatisticDto.Statistic> page, @Param("sp") WarningStatisticQueDto sp);
} }

8
shuili-system/src/main/java/com/kms/yxgh/common/service/WarningService.java

@ -100,7 +100,7 @@ public class WarningService {
if (WarningStatisticQueDto.StatisticType.ENGINEERING.equals(sp.getType())) { if (WarningStatisticQueDto.StatisticType.ENGINEERING.equals(sp.getType())) {
iPage = warningMapper.statisticByCode(page, sp); iPage = warningMapper.statisticByCode(page, sp);
warningStatisticDto.setStatistics(iPage.getRecords()); warningStatisticDto.setStatistics(iPage.getRecords());
} else { } else if (WarningStatisticQueDto.StatisticType.WARNING_TYPE.equals(sp.getType())) {
iPage = warningMapper.statisticByWarningType(page, sp); iPage = warningMapper.statisticByWarningType(page, sp);
warningStatisticDto.setStatistics(iPage.getRecords().stream().peek(item -> { warningStatisticDto.setStatistics(iPage.getRecords().stream().peek(item -> {
SysDictData dictData = dictDataCache.get(new DictKey("xc_warnning_type", item.getCode())); SysDictData dictData = dictDataCache.get(new DictKey("xc_warnning_type", item.getCode()));
@ -108,6 +108,12 @@ public class WarningService {
item.setName(dictData.getDictLabel()); item.setName(dictData.getDictLabel());
} }
}).collect(Collectors.toList())); }).collect(Collectors.toList()));
} else {
iPage = warningMapper.statisticByStatus(page, sp);
warningStatisticDto.setStatistics(iPage.getRecords().stream().peek(item -> {
item.setName(item.getCode().equals("0") ? "未处理" : "已处理");
}).collect(Collectors.toList()));
} }
return warningStatisticDto; return warningStatisticDto;
} }

Loading…
Cancel
Save