AI预警类型分页统计
This commit is contained in:
parent
c25f8fcad9
commit
e7dae20839
@ -2,6 +2,7 @@ package com.zhgd.xmgl.modules.video.controller;
|
|||||||
|
|
||||||
import com.zhgd.jeecg.common.api.vo.Result;
|
import com.zhgd.jeecg.common.api.vo.Result;
|
||||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||||
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountPageVO;
|
||||||
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountVO;
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountVO;
|
||||||
import com.zhgd.xmgl.modules.video.service.IAiStatisticService;
|
import com.zhgd.xmgl.modules.video.service.IAiStatisticService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@ -51,6 +52,18 @@ public class AiStatisticController {
|
|||||||
return Result.success(aiStatisticService.selectAiAnalyseHardWareAlarmTypeCount(map));
|
return Result.success(aiStatisticService.selectAiAnalyseHardWareAlarmTypeCount(map));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation(value = "AI预警类型分页统计", notes = "AI预警类型分页统计")
|
||||||
|
@ApiImplicitParams({
|
||||||
|
@ApiImplicitParam(name = "sn", value = "公司或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||||
|
@ApiImplicitParam(name = "type", value = "0默认查今日,1查今天、今天较昨天、本月、历史", paramType = "body", required = false, dataType = "String"),
|
||||||
|
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "body", required = true, dataType = "Integer"),
|
||||||
|
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "body", required = true, dataType = "Integer"),
|
||||||
|
})
|
||||||
|
@PostMapping("/selectAiAnalyseHardWareAlarmTypeCountPage")
|
||||||
|
public Result<AiAnalyseHardWareAlarmTypeCountPageVO> selectAiAnalyseHardWareAlarmTypeCountPage(@RequestBody Map<String, Object> map) {
|
||||||
|
return Result.success(aiStatisticService.selectAiAnalyseHardWareAlarmTypeCountPage(map));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@ApiOperation(value = "AI预警Top项目列表", notes = "AI预警Top项目列表")
|
@ApiOperation(value = "AI预警Top项目列表", notes = "AI预警Top项目列表")
|
||||||
@ApiImplicitParams({
|
@ApiImplicitParams({
|
||||||
|
|||||||
@ -0,0 +1,10 @@
|
|||||||
|
package com.zhgd.xmgl.modules.video.entity.vo;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class AiAnalyseHardWareAlarmTypeCountPageVO {
|
||||||
|
private Page<AiAnalyseHardWareAlarmRecordVo> alarmPage;
|
||||||
|
private Integer totalAlarmNum;
|
||||||
|
}
|
||||||
@ -38,6 +38,8 @@ public interface AiAnalyseHardWareAlarmRecordMapper extends BaseMapper<AiAnalyse
|
|||||||
|
|
||||||
List<AiAnalyseHardWareAlarmRecordVo> selectAiAnalyseHardWareAlarmTypeCount(@Param("param") Map<String, Object> map);
|
List<AiAnalyseHardWareAlarmRecordVo> selectAiAnalyseHardWareAlarmTypeCount(@Param("param") Map<String, Object> map);
|
||||||
|
|
||||||
|
Page<AiAnalyseHardWareAlarmRecordVo> selectAiAnalyseHardWareAlarmTypeCount(@Param("param") Map<String, Object> map, Page<AiAnalyseHardWareAlarmRecordVo> page);
|
||||||
|
|
||||||
List<Map<String, Object>> selectProjectAiAlarmCountList(Map<String, Object> map);
|
List<Map<String, Object>> selectProjectAiAlarmCountList(Map<String, Object> map);
|
||||||
|
|
||||||
List<Map<String, Object>> selectAiAlarmAnalyseCountList(Map<String, Object> map);
|
List<Map<String, Object>> selectAiAlarmAnalyseCountList(Map<String, Object> map);
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
package com.zhgd.xmgl.modules.video.service;
|
package com.zhgd.xmgl.modules.video.service;
|
||||||
|
|
||||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||||
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountPageVO;
|
||||||
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountVO;
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountVO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
package com.zhgd.xmgl.modules.video.service.impl;
|
package com.zhgd.xmgl.modules.video.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import cn.hutool.core.util.PageUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||||
import com.zhgd.xmgl.modules.basicdata.constant.DictionaryConstant;
|
import com.zhgd.xmgl.modules.basicdata.constant.DictionaryConstant;
|
||||||
import com.zhgd.xmgl.modules.basicdata.entity.Company;
|
import com.zhgd.xmgl.modules.basicdata.entity.Company;
|
||||||
@ -10,12 +12,14 @@ import com.zhgd.xmgl.modules.basicdata.service.ICompanyService;
|
|||||||
import com.zhgd.xmgl.modules.basicdata.service.impl.DictionaryItemServiceImpl;
|
import com.zhgd.xmgl.modules.basicdata.service.impl.DictionaryItemServiceImpl;
|
||||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||||
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmRecordVo;
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmRecordVo;
|
||||||
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountPageVO;
|
||||||
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountVO;
|
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmTypeCountVO;
|
||||||
import com.zhgd.xmgl.modules.video.mapper.AiAnalyseHardWareAlarmRecordMapper;
|
import com.zhgd.xmgl.modules.video.mapper.AiAnalyseHardWareAlarmRecordMapper;
|
||||||
import com.zhgd.xmgl.modules.video.mapper.VideoItemMapper;
|
import com.zhgd.xmgl.modules.video.mapper.VideoItemMapper;
|
||||||
import com.zhgd.xmgl.modules.video.service.IAiStatisticService;
|
import com.zhgd.xmgl.modules.video.service.IAiStatisticService;
|
||||||
import org.apache.commons.collections.MapUtils;
|
import org.apache.commons.collections.MapUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
@ -103,13 +107,6 @@ public class AiStatisticServiceImpl implements IAiStatisticService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//设置数量和名称
|
|
||||||
Integer totalAlarmNum = 0;
|
|
||||||
if (CollUtil.isNotEmpty(rsList)) {
|
|
||||||
for (AiAnalyseHardWareAlarmRecordVo dev : rsList) {
|
|
||||||
totalAlarmNum = totalAlarmNum + dev.getAlarmNum();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Map<String, List<DictionaryItem>> dictMap = new HashMap<>();
|
Map<String, List<DictionaryItem>> dictMap = new HashMap<>();
|
||||||
for (AiAnalyseHardWareAlarmRecordVo record : rsList) {
|
for (AiAnalyseHardWareAlarmRecordVo record : rsList) {
|
||||||
String projectSn = record.getProjectSn();
|
String projectSn = record.getProjectSn();
|
||||||
@ -128,7 +125,35 @@ public class AiStatisticServiceImpl implements IAiStatisticService {
|
|||||||
}
|
}
|
||||||
AiAnalyseHardWareAlarmTypeCountVO vo = new AiAnalyseHardWareAlarmTypeCountVO();
|
AiAnalyseHardWareAlarmTypeCountVO vo = new AiAnalyseHardWareAlarmTypeCountVO();
|
||||||
vo.setAlarmList(rsList);
|
vo.setAlarmList(rsList);
|
||||||
vo.setTotalAlarmNum(totalAlarmNum);
|
vo.setTotalAlarmNum(getTotalAlarmNum(rsList));
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@NotNull
|
||||||
|
private Integer getTotalAlarmNum(List<AiAnalyseHardWareAlarmRecordVo> rsList) {
|
||||||
|
//设置数量和名称
|
||||||
|
Integer totalAlarmNum = 0;
|
||||||
|
if (CollUtil.isNotEmpty(rsList)) {
|
||||||
|
for (AiAnalyseHardWareAlarmRecordVo dev : rsList) {
|
||||||
|
totalAlarmNum = totalAlarmNum + dev.getAlarmNum();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return totalAlarmNum;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AiAnalyseHardWareAlarmTypeCountPageVO selectAiAnalyseHardWareAlarmTypeCountPage(Map<String, Object> param) {
|
||||||
|
int pageNo = Integer.parseInt(param.getOrDefault("pageNo", 1).toString());
|
||||||
|
int pageSize = Integer.parseInt(param.getOrDefault("pageSize", 10).toString());
|
||||||
|
AiAnalyseHardWareAlarmTypeCountVO listVo = selectAiAnalyseHardWareAlarmTypeCount(param);
|
||||||
|
AiAnalyseHardWareAlarmTypeCountPageVO vo = new AiAnalyseHardWareAlarmTypeCountPageVO();
|
||||||
|
Page<AiAnalyseHardWareAlarmRecordVo> alarmPage = new Page<>();
|
||||||
|
List<AiAnalyseHardWareAlarmRecordVo> alarmList = listVo.getAlarmList();
|
||||||
|
int[] startEnd = PageUtil.transToStartEnd(pageNo - 1, pageSize);
|
||||||
|
alarmPage.setRecords(CollUtil.sub(alarmList, startEnd[0], startEnd[1]));
|
||||||
|
alarmPage.setTotal(alarmList.size());
|
||||||
|
vo.setAlarmPage(alarmPage);
|
||||||
|
vo.setTotalAlarmNum(getTotalAlarmNum(alarmList));
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user