Merge remote-tracking branch 'origin/guoshengxiong' into guoshengxiong
This commit is contained in:
commit
00635295ed
@ -12,6 +12,7 @@ import com.zhgd.xmgl.modules.basicdata.entity.DictionaryItem;
|
||||
import com.zhgd.xmgl.modules.basicdata.mapper.DictionaryItemMapper;
|
||||
import com.zhgd.xmgl.modules.basicdata.mapper.DictionaryMapper;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.IDictionaryItemService;
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||
import com.zhgd.xmgl.util.RefUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@ -21,6 +22,10 @@ import org.springframework.web.context.request.ServletRequestAttributes;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
@Service
|
||||
|
||||
@ -44,6 +44,7 @@ public class AiStatisticController {
|
||||
@ApiOperation(value = "AI预警类型统计", notes = "AI预警类型统计")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "sn", value = "公司或项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
@ApiImplicitParam(name = "type", value = "不传查今日,1查今明两天", paramType = "body", required = false, dataType = "Integer"),
|
||||
})
|
||||
@PostMapping("/selectAiAnalyseHardWareAlarmTypeCount")
|
||||
public Result<AiAnalyseHardWareAlarmTypeCountVO> selectAiAnalyseHardWareAlarmTypeCount(@RequestBody Map<String, Object> map) {
|
||||
|
||||
@ -181,17 +181,5 @@ public class AiAnalyseHardWareAlarmRecord implements Serializable {
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "AI扣分规则")
|
||||
private XzAiDeductRule aiDeductRule;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "报警数量")
|
||||
private Integer alarmNum;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "日期")
|
||||
private String date;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "今日报警数量")
|
||||
private Integer alarmNumToday;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "今日较昨日报警数量")
|
||||
private Integer subYesterday;
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,22 @@
|
||||
package com.zhgd.xmgl.modules.video.entity.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||
import com.zhgd.xmgl.modules.xz.entity.XzAiDeductRule;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||
public class AiAnalyseHardWareAlarmRecordVo extends AiAnalyseHardWareAlarmRecord {
|
||||
@ApiModelProperty(value = "AI扣分规则")
|
||||
private XzAiDeductRule aiDeductRule;
|
||||
@ApiModelProperty(value = "报警数量")
|
||||
private Integer alarmNum;
|
||||
@ApiModelProperty(value = "日期")
|
||||
private String date;
|
||||
@ApiModelProperty(value = "今日报警数量")
|
||||
private Integer alarmNumToday;
|
||||
@ApiModelProperty(value = "今日较昨日报警数量")
|
||||
private Integer subYesterday;
|
||||
}
|
||||
@ -1,12 +1,11 @@
|
||||
package com.zhgd.xmgl.modules.video.entity.vo;
|
||||
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class AiAnalyseHardWareAlarmTypeCountVO {
|
||||
private List<AiAnalyseHardWareAlarmRecord> alarmList;
|
||||
private List<AiAnalyseHardWareAlarmRecordVo> alarmList;
|
||||
private Integer totalAlarmNum;
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ import com.zhgd.annotation.DataScope;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
import com.zhgd.xmgl.base.entity.vo.SectorOneVo;
|
||||
import com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord;
|
||||
import com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmRecordVo;
|
||||
import com.zhgd.xmgl.modules.worker.entity.WorkerInfo;
|
||||
import org.apache.ibatis.annotations.MapKey;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
@ -35,7 +36,7 @@ public interface AiAnalyseHardWareAlarmRecordMapper extends BaseMapper<AiAnalyse
|
||||
|
||||
List<SectorOneVo> getAiAnalyseHardWareAlarmTotal(Map<String, Object> map);
|
||||
|
||||
List<AiAnalyseHardWareAlarmRecord> selectAiAnalyseHardWareAlarmTypeCount(Map<String, Object> map);
|
||||
List<AiAnalyseHardWareAlarmRecordVo> selectAiAnalyseHardWareAlarmTypeCount(Map<String, Object> map);
|
||||
|
||||
List<Map<String, Object>> selectProjectAiAlarmCountList(Map<String, Object> map);
|
||||
|
||||
|
||||
@ -9,15 +9,15 @@
|
||||
<select id="queryAiAnalyseHardWareAlarmPageListTwo"
|
||||
resultMap="queryAiAnalyseHardWareAlarmPageListTwoRm">
|
||||
SELECT a.*,
|
||||
'安全部' as department_name,
|
||||
s.real_name,
|
||||
group_concat(wi.worker_name) as worker_info_str
|
||||
'安全部' as department_name,
|
||||
s.real_name,
|
||||
group_concat(wi.worker_name) as worker_info_str
|
||||
FROM ai_analyse_hard_ware_alarm_record a
|
||||
LEFT JOIN system_user s ON a.rectification_person_id = s.user_id
|
||||
LEFT join department_info di on s.department = di.department_name
|
||||
left join worker_info_to_ai_analyse_hard_ware_alarm_record witaahwar on a.id =
|
||||
witaahwar.ai_analyse_hard_ware_alarm_record_id
|
||||
left join worker_info wi on wi.id = witaahwar.worker_info_id
|
||||
LEFT JOIN system_user s ON a.rectification_person_id = s.user_id
|
||||
LEFT join department_info di on s.department = di.department_name
|
||||
left join worker_info_to_ai_analyse_hard_ware_alarm_record witaahwar on a.id =
|
||||
witaahwar.ai_analyse_hard_ware_alarm_record_id
|
||||
left join worker_info wi on wi.id = witaahwar.worker_info_id
|
||||
WHERE a.project_sn = #{param.projectSn}
|
||||
<if test="param.pushPersonId != null">
|
||||
and find_in_set(#{param.pushPersonId}, a.push_person_ids)
|
||||
@ -188,15 +188,16 @@
|
||||
order by count desc
|
||||
</select>
|
||||
<select id="selectAiAnalyseHardWareAlarmTypeCount"
|
||||
resultType="com.zhgd.xmgl.modules.video.entity.AiAnalyseHardWareAlarmRecord" parameterType="java.util.Map">
|
||||
resultType="com.zhgd.xmgl.modules.video.entity.vo.AiAnalyseHardWareAlarmRecordVo"
|
||||
parameterType="java.util.Map">
|
||||
SELECT w1.alarm_type alarmType,
|
||||
COUNT(1) alarmNum,
|
||||
COUNT(1) alarmNum,
|
||||
DATE_FORMAT(w1.create_time, '%Y-%m-%d') date
|
||||
from ai_analyse_hard_ware_alarm_record w1
|
||||
INNER JOIN project a ON w1.project_sn = a.project_sn
|
||||
LEFT JOIN company cp ON a.company_sn = cp.company_sn
|
||||
INNER JOIN company b ON cp.parent_id = b.company_id
|
||||
Left JOIN company f ON b.parent_id = f.company_id
|
||||
INNER JOIN project a ON w1.project_sn = a.project_sn
|
||||
LEFT JOIN company cp ON a.company_sn = cp.company_sn
|
||||
INNER JOIN company b ON cp.parent_id = b.company_id
|
||||
Left JOIN company f ON b.parent_id = f.company_id
|
||||
where w1.create_time >= CONCAT(DATE_FORMAT(DATE_SUB(now(), interval 1 day), '%Y-%m-%d'), ' 00:00:00')
|
||||
<if test="companyType == '1'.toString()">
|
||||
and f.headquarters_sn = #{sn}
|
||||
|
||||
@ -4,10 +4,13 @@ import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
import com.zhgd.xmgl.modules.basicdata.constant.DictionaryConstant;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.Company;
|
||||
import com.zhgd.xmgl.modules.basicdata.entity.DictionaryItem;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.ICompanyService;
|
||||
import com.zhgd.xmgl.modules.basicdata.service.impl.DictionaryItemServiceImpl;
|
||||
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.AiAnalyseHardWareAlarmTypeCountVO;
|
||||
import com.zhgd.xmgl.modules.video.mapper.AiAnalyseHardWareAlarmRecordMapper;
|
||||
import com.zhgd.xmgl.modules.video.mapper.VideoItemMapper;
|
||||
@ -18,10 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -34,6 +34,8 @@ import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class AiStatisticServiceImpl implements IAiStatisticService {
|
||||
@Autowired
|
||||
DictionaryItemServiceImpl dictionaryItemService;
|
||||
@Autowired
|
||||
private ICompanyService companyService;
|
||||
@Autowired
|
||||
@ -63,27 +65,74 @@ public class AiStatisticServiceImpl implements IAiStatisticService {
|
||||
return data;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
DictionaryItemServiceImpl dictionaryItemService;
|
||||
|
||||
@Override
|
||||
public AiAnalyseHardWareAlarmTypeCountVO selectAiAnalyseHardWareAlarmTypeCount(Map<String, Object> param) {
|
||||
Map<String, Object> map = companyService.getCompanyType(param);
|
||||
List<AiAnalyseHardWareAlarmRecord> alarmList = aiAnalyseHardWareAlarmRecordMapper.selectAiAnalyseHardWareAlarmTypeCount(map);
|
||||
Map<String, List<AiAnalyseHardWareAlarmRecord>> dateMap = alarmList.stream().collect(Collectors.groupingBy(AiAnalyseHardWareAlarmRecord::getDate));
|
||||
List<AiAnalyseHardWareAlarmRecord> todayList = dateMap.get(DateUtil.today());
|
||||
List<AiAnalyseHardWareAlarmRecord> yesterdayList = dateMap.get(DateUtil.formatDate(DateUtil.offsetDay(new Date(), -1)));
|
||||
Map<Integer, AiAnalyseHardWareAlarmRecord> todayMap = todayList.stream().collect(Collectors.toMap(AiAnalyseHardWareAlarmRecord::getAlarmType, Function.identity(), (aiAnalyseHardWareAlarmRecord, aiAnalyseHardWareAlarmRecord2) -> aiAnalyseHardWareAlarmRecord));
|
||||
Map<Integer, AiAnalyseHardWareAlarmRecord> yesterdayMap = yesterdayList.stream().collect(Collectors.toMap(AiAnalyseHardWareAlarmRecord::getAlarmType, Function.identity(), (aiAnalyseHardWareAlarmRecord, aiAnalyseHardWareAlarmRecord2) -> aiAnalyseHardWareAlarmRecord));
|
||||
|
||||
List<AiAnalyseHardWareAlarmRecordVo> alarmList = aiAnalyseHardWareAlarmRecordMapper.selectAiAnalyseHardWareAlarmTypeCount(map);
|
||||
List<AiAnalyseHardWareAlarmRecordVo> rsList = new ArrayList<>();
|
||||
Map<String, List<AiAnalyseHardWareAlarmRecordVo>> dateMap = alarmList.stream().collect(Collectors.groupingBy(AiAnalyseHardWareAlarmRecordVo::getDate));
|
||||
List<AiAnalyseHardWareAlarmRecordVo> todayList = dateMap.get(DateUtil.today());
|
||||
if (todayList == null) {
|
||||
todayList = new ArrayList<>();
|
||||
}
|
||||
Integer type = MapUtils.getInteger(param, "type");
|
||||
if (Objects.equals(type, 1)) {
|
||||
//今明
|
||||
List<AiAnalyseHardWareAlarmRecordVo> yesterdayList = dateMap.get(DateUtil.formatDate(DateUtil.offsetDay(new Date(), -1)));
|
||||
if (yesterdayList == null) {
|
||||
yesterdayList = new ArrayList<>();
|
||||
}
|
||||
Map<Integer, AiAnalyseHardWareAlarmRecordVo> todayMap = todayList.stream().collect(Collectors.toMap(AiAnalyseHardWareAlarmRecordVo::getAlarmType, Function.identity(), (aiAnalyseHardWareAlarmRecord, aiAnalyseHardWareAlarmRecord2) -> aiAnalyseHardWareAlarmRecord));
|
||||
Map<Integer, AiAnalyseHardWareAlarmRecordVo> yesterdayMap = yesterdayList.stream().collect(Collectors.toMap(AiAnalyseHardWareAlarmRecordVo::getAlarmType, Function.identity(), (aiAnalyseHardWareAlarmRecord, aiAnalyseHardWareAlarmRecord2) -> aiAnalyseHardWareAlarmRecord));
|
||||
List<Integer> typeList = alarmList.stream().map(AiAnalyseHardWareAlarmRecord::getAlarmType).distinct().collect(Collectors.toList());
|
||||
for (Integer t1 : typeList) {
|
||||
AiAnalyseHardWareAlarmRecordVo today = todayMap.get(t1);
|
||||
AiAnalyseHardWareAlarmRecordVo yesterday = yesterdayMap.get(t1);
|
||||
if (today == null) {
|
||||
yesterday.setAlarmNumToday(0);
|
||||
yesterday.setSubYesterday(-yesterday.getAlarmNum());
|
||||
rsList.add(yesterday);
|
||||
} else if (yesterday == null) {
|
||||
today.setAlarmNumToday(today.getAlarmNum());
|
||||
today.setSubYesterday(today.getAlarmNum());
|
||||
rsList.add(today);
|
||||
} else {
|
||||
today.setAlarmNumToday(today.getAlarmNum());
|
||||
today.setSubYesterday(today.getAlarmNum() - yesterday.getAlarmNum());
|
||||
rsList.add(today);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
rsList = todayList;
|
||||
for (AiAnalyseHardWareAlarmRecordVo record : rsList) {
|
||||
record.setAlarmNumToday(record.getAlarmNum());
|
||||
}
|
||||
}
|
||||
|
||||
//设置数量和名称
|
||||
Integer totalAlarmNum = 0;
|
||||
if (CollUtil.isNotEmpty(alarmList)) {
|
||||
for (AiAnalyseHardWareAlarmRecord dev : alarmList) {
|
||||
if (CollUtil.isNotEmpty(rsList)) {
|
||||
for (AiAnalyseHardWareAlarmRecordVo dev : rsList) {
|
||||
totalAlarmNum = totalAlarmNum + dev.getAlarmNum();
|
||||
}
|
||||
}
|
||||
Map<String, List<DictionaryItem>> dictMap = new HashMap<>();
|
||||
for (AiAnalyseHardWareAlarmRecordVo record : rsList) {
|
||||
String projectSn = record.getProjectSn();
|
||||
List<DictionaryItem> dictionaryItems = dictMap.get(projectSn);
|
||||
List<DictionaryItem> dictList = new ArrayList<>();
|
||||
if (dictionaryItems == null) {
|
||||
dictList = dictionaryItemService.getDictList(DictionaryConstant.AI_ANALYSE_HARD_WARE_ALARM_RECORD_TYPE, projectSn);
|
||||
dictMap.put(projectSn, dictList);
|
||||
}
|
||||
Map<String, DictionaryItem> typeMap = dictList.stream().collect(Collectors.toMap(DictionaryItem::getData, Function.identity(), (dictionaryItem, dictionaryItem2) -> dictionaryItem));
|
||||
DictionaryItem item = typeMap.get(record.getAlarmType() + "");
|
||||
if (item != null) {
|
||||
record.setAlarmTypeName(item.getName());
|
||||
}
|
||||
}
|
||||
AiAnalyseHardWareAlarmTypeCountVO vo = new AiAnalyseHardWareAlarmTypeCountVO();
|
||||
vo.setAlarmList(alarmList);
|
||||
vo.setAlarmList(rsList);
|
||||
vo.setTotalAlarmNum(totalAlarmNum);
|
||||
return vo;
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.zhgd.xmgl.modules.xz.security.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.zhgd.annotation.OperLog;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
@ -332,9 +333,11 @@ public class XzSecurityQualityInspectionRecordController {
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
@ApiImplicitParam(name = "inspectTime_begin", value = "检查开始时间", paramType = "body", required = false, dataType = "String"),
|
||||
@ApiImplicitParam(name = "inspectTime_end", value = "检查结束时间", 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(value = "/statsByChangeId")
|
||||
public Result<List<StatsByChangeIdVo>> statsByChangeId(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
public Result<Page<StatsByChangeIdVo>> statsByChangeId(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
return Result.success(qualityInspectionRecordService.statsByChangeId(paramMap));
|
||||
}
|
||||
|
||||
@ -356,9 +359,11 @@ public class XzSecurityQualityInspectionRecordController {
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
@ApiImplicitParam(name = "inspectTime_begin", value = "检查开始时间", paramType = "body", required = false, dataType = "String"),
|
||||
@ApiImplicitParam(name = "inspectTime_end", value = "检查结束时间", 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(value = "/statsByInspectMan")
|
||||
public Result<List<StatsByInspectManVo>> statsByInspectMan(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
public Result<Page<StatsByInspectManVo>> statsByInspectMan(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
return Result.success(qualityInspectionRecordService.statsByInspectMan(paramMap));
|
||||
}
|
||||
|
||||
@ -368,11 +373,22 @@ public class XzSecurityQualityInspectionRecordController {
|
||||
@ApiImplicitParam(name = "inspectTime_begin", value = "检查开始时间", paramType = "body", required = false, dataType = "String"),
|
||||
@ApiImplicitParam(name = "inspectTime_end", value = "检查结束时间", paramType = "body", required = false, dataType = "String"),
|
||||
@ApiImplicitParam(name = "notQualified", value = "未销项", 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(value = "/statsByEnterprise")
|
||||
public Result<List<StatsByEnterpriseVo>> statsByEnterprise(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
public Result<Page<StatsByEnterpriseVo>> statsByEnterprise(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
return Result.success(qualityInspectionRecordService.statsByEnterprise(paramMap));
|
||||
}
|
||||
|
||||
@ApiOperation(value = "隐患类型分析", notes = "隐患类型分析", httpMethod = "POST")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
@ApiImplicitParam(name = "isNotQualified", value = "是否未销项", paramType = "body", required = false, dataType = "Integer"),
|
||||
})
|
||||
@PostMapping(value = "/statsDangerType")
|
||||
public Result<SectorVo> statsDangerType(@ApiIgnore @RequestBody Map<String, Object> paramMap) {
|
||||
return Result.success(qualityInspectionRecordService.statsDangerType(paramMap));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -65,11 +65,13 @@ public interface XzSecurityQualityInspectionRecordMapper extends BaseMapper<XzSe
|
||||
|
||||
List<TrendOneVo> countQualityInspectionRecordRegion(HashMap<String, Object> paramMap);
|
||||
|
||||
List<StatsByChangeIdVo> statsByChangeId(Map<String, Object> paramMap);
|
||||
Page<StatsByChangeIdVo> statsByChangeId(@Param("param") Map<String, Object> paramMap, Page page);
|
||||
|
||||
ArrayList<SectorOneVo> countDangerLevel(Map<String, Object> paramMap);
|
||||
|
||||
List<StatsByInspectManVo> StatsByInspectManVo(Map<String, Object> paramMap);
|
||||
Page<StatsByInspectManVo> statsByInspectManVo(@Param("param") Map<String, Object> paramMap, Page page);
|
||||
|
||||
List<StatsByEnterpriseVo> statsByEnterprise(Map<String, Object> paramMap);
|
||||
Page<StatsByEnterpriseVo> statsByEnterprise(@Param("param") Map<String, Object> paramMap, Page page);
|
||||
|
||||
List<SectorOneVo> statsDangerType(Map<String, Object> paramMap);
|
||||
}
|
||||
|
||||
@ -555,14 +555,14 @@
|
||||
left join system_user su on su.user_id = hdir.change_id
|
||||
WHERE record_type = 1
|
||||
and hdir.status != 6
|
||||
and project_sn = #{projectSn}
|
||||
<if test="inspectTime_begin != null and inspectTime_begin != ''">
|
||||
and hdir.inspect_time <![CDATA[>=]]> #{inspectTime_begin}
|
||||
and project_sn = #{param.projectSn}
|
||||
<if test="param.inspectTime_begin != null and param.inspectTime_begin != ''">
|
||||
and hdir.inspect_time <![CDATA[>=]]> #{param.inspectTime_begin}
|
||||
</if>
|
||||
<if test="inspectTime_end != null and inspectTime_end != ''">
|
||||
and hdir.inspect_time <![CDATA[<=]]> if(LENGTH(#{inspectTime_end}) = 10,
|
||||
CONCAT(DATE_FORMAT(#{inspectTime_end}, '%Y-%m-%d'), ' 23:59:59'),
|
||||
#{inspectTime_end})
|
||||
<if test="param.inspectTime_end != null and param.inspectTime_end != ''">
|
||||
and hdir.inspect_time <![CDATA[<=]]> if(LENGTH(#{param.inspectTime_end}) = 10,
|
||||
CONCAT(DATE_FORMAT(#{param.inspectTime_end}, '%Y-%m-%d'), ' 23:59:59'),
|
||||
#{param.inspectTime_end})
|
||||
</if>
|
||||
group by hdir.change_id
|
||||
order by rectifiedNum desc) t
|
||||
@ -589,7 +589,7 @@
|
||||
group by enumType
|
||||
</select>
|
||||
|
||||
<select id="StatsByInspectManVo" resultType="com.zhgd.xmgl.modules.xz.security.entity.vo.StatsByInspectManVo">
|
||||
<select id="statsByInspectManVo" resultType="com.zhgd.xmgl.modules.xz.security.entity.vo.StatsByInspectManVo">
|
||||
select t.*,
|
||||
round(IFNULL(TRUNCATE(IFNULL(t.rectifiedNum, 0) / IFNULL(totalNum, 0), 4), 0) * 100,
|
||||
2) rectifiedNumRatio,
|
||||
@ -605,14 +605,14 @@
|
||||
left join system_user su on su.user_id = hdir.change_id
|
||||
WHERE record_type = 1
|
||||
and hdir.status != 6
|
||||
and project_sn = #{projectSn}
|
||||
<if test="inspectTime_begin != null and inspectTime_begin != ''">
|
||||
and hdir.inspect_time <![CDATA[>=]]> #{inspectTime_begin}
|
||||
and project_sn = #{param.projectSn}
|
||||
<if test="param.inspectTime_begin != null and param.inspectTime_begin != ''">
|
||||
and hdir.inspect_time <![CDATA[>=]]> #{param.inspectTime_begin}
|
||||
</if>
|
||||
<if test="inspectTime_end != null and inspectTime_end != ''">
|
||||
and hdir.inspect_time <![CDATA[<=]]> if(LENGTH(#{inspectTime_end}) = 10,
|
||||
CONCAT(DATE_FORMAT(#{inspectTime_end}, '%Y-%m-%d'), ' 23:59:59'),
|
||||
#{inspectTime_end})
|
||||
<if test="param.inspectTime_end != null and param.inspectTime_end != ''">
|
||||
and hdir.inspect_time <![CDATA[<=]]> if(LENGTH(#{param.inspectTime_end}) = 10,
|
||||
CONCAT(DATE_FORMAT(#{param.inspectTime_end}, '%Y-%m-%d'), ' 23:59:59'),
|
||||
#{param.inspectTime_end})
|
||||
</if>
|
||||
group by hdir.inspect_man_id
|
||||
order by rectifiedNum desc) t
|
||||
@ -633,17 +633,38 @@
|
||||
left join enterprise_info ei on ei.id = hdir.enterprise_id
|
||||
WHERE record_type = 1
|
||||
and hdir.status != 6
|
||||
and project_sn = #{projectSn}
|
||||
<if test="inspectTime_begin != null and inspectTime_begin != ''">
|
||||
and hdir.inspect_time <![CDATA[>=]]> #{inspectTime_begin}
|
||||
and project_sn = #{param.projectSn}
|
||||
<if test="param.inspectTime_begin != null and param.inspectTime_begin != ''">
|
||||
and hdir.inspect_time <![CDATA[>=]]> #{param.inspectTime_begin}
|
||||
</if>
|
||||
<if test="inspectTime_end != null and inspectTime_end != ''">
|
||||
and hdir.inspect_time <![CDATA[<=]]> if(LENGTH(#{inspectTime_end}) = 10,
|
||||
CONCAT(DATE_FORMAT(#{inspectTime_end}, '%Y-%m-%d'), ' 23:59:59'),
|
||||
#{inspectTime_end})
|
||||
<if test="param.inspectTime_end != null and param.inspectTime_end != ''">
|
||||
and hdir.inspect_time <![CDATA[<=]]> if(LENGTH(#{param.inspectTime_end}) = 10,
|
||||
CONCAT(DATE_FORMAT(#{param.inspectTime_end}, '%Y-%m-%d'), ' 23:59:59'),
|
||||
#{param.inspectTime_end})
|
||||
</if>
|
||||
|
||||
group by hdir.enterprise_id
|
||||
order by rectifiedNum desc) t
|
||||
</select>
|
||||
|
||||
<select id="statsDangerType" resultType="com.zhgd.xmgl.base.entity.vo.SectorOneVo">
|
||||
select count(*) count, SUBSTRING_INDEX(a.danger_item_content,'/',1) as name
|
||||
from xz_security_quality_inspection_record a
|
||||
where project_sn = #{projectSn}
|
||||
and a.record_type = 1
|
||||
and a.status != 6
|
||||
<if test="isOverdueRectification == '1'.toString()">
|
||||
and (a.status = 2 AND now() > a.change_limit_time)
|
||||
</if>
|
||||
<if test="isNotQualified == '1'.toString()">
|
||||
and a.status != 5
|
||||
</if>
|
||||
<if test="inspectStartTime != null and inspectStartTime != ''">
|
||||
and a.inspect_time >= #{inspectStartTime}
|
||||
</if>
|
||||
<if test="inspectEndTime != null and inspectEndTime != ''">
|
||||
and a.inspect_time <= #{inspectEndTime}
|
||||
</if>
|
||||
group by name
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.zhgd.xmgl.modules.xz.security.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.zhgd.jeecg.common.api.vo.Result;
|
||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||
@ -62,7 +63,7 @@ public interface IXzSecurityQualityInspectionRecordService extends IService<XzSe
|
||||
|
||||
List<TrendOneVo> countQualityInspectionRecordRegion(HashMap<String, Object> paramMap);
|
||||
|
||||
List<StatsByChangeIdVo> statsByChangeId(Map<String, Object> paramMap);
|
||||
Page<StatsByChangeIdVo> statsByChangeId(Map<String, Object> paramMap);
|
||||
|
||||
void revocation(XzSecurityQualityInspectionRecord xzSecurityQualityInspectionRecord);
|
||||
|
||||
@ -74,7 +75,9 @@ public interface IXzSecurityQualityInspectionRecordService extends IService<XzSe
|
||||
|
||||
SectorVo countDangerLevel(Map<String, Object> paramMap);
|
||||
|
||||
List<StatsByInspectManVo> statsByInspectMan(Map<String, Object> paramMap);
|
||||
Page<StatsByInspectManVo> statsByInspectMan(Map<String, Object> paramMap);
|
||||
|
||||
List<StatsByEnterpriseVo> statsByEnterprise(Map<String, Object> paramMap);
|
||||
Page<StatsByEnterpriseVo> statsByEnterprise(Map<String, Object> paramMap);
|
||||
|
||||
SectorVo statsDangerType(Map<String, Object> paramMap);
|
||||
}
|
||||
|
||||
@ -44,6 +44,7 @@ import com.zhgd.xmgl.push.config.PushPayloads;
|
||||
import com.zhgd.xmgl.util.JxlExcelUtils;
|
||||
import com.zhgd.xmgl.util.MessageUtil;
|
||||
import com.zhgd.xmgl.util.NumberUtils;
|
||||
import com.zhgd.xmgl.util.PageUtil;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.collections.MapUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@ -454,8 +455,9 @@ public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends Serv
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StatsByChangeIdVo> statsByChangeId(Map<String, Object> paramMap) {
|
||||
return baseMapper.statsByChangeId(paramMap);
|
||||
public Page<StatsByChangeIdVo> statsByChangeId(Map<String, Object> paramMap) {
|
||||
Page page = PageUtil.getPage(paramMap);
|
||||
return baseMapper.statsByChangeId(paramMap, page);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -537,13 +539,21 @@ public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends Serv
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StatsByInspectManVo> statsByInspectMan(Map<String, Object> paramMap) {
|
||||
return baseMapper.StatsByInspectManVo(paramMap);
|
||||
public Page<StatsByInspectManVo> statsByInspectMan(Map<String, Object> paramMap) {
|
||||
Page page = PageUtil.getPage(paramMap);
|
||||
return baseMapper.statsByInspectManVo(paramMap, page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<StatsByEnterpriseVo> statsByEnterprise(Map<String, Object> paramMap) {
|
||||
return baseMapper.statsByEnterprise(paramMap);
|
||||
public Page<StatsByEnterpriseVo> statsByEnterprise(Map<String, Object> paramMap) {
|
||||
Page page = PageUtil.getPage(paramMap);
|
||||
return baseMapper.statsByEnterprise(paramMap, page);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SectorVo statsDangerType(Map<String, Object> paramMap) {
|
||||
List<SectorOneVo> data = baseMapper.statsDangerType(paramMap);
|
||||
return SectorVo.getSectorVo(data);
|
||||
}
|
||||
|
||||
private void recoverScore(XzSecurityQualityInspectionRecord hiddenDangerInspectRecord) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user