终端异常统计接口响应慢修复

This commit is contained in:
zhuxinyu
2023-04-19 15:41:23 +08:00
parent a311e6ecb1
commit 592615691c
3 changed files with 28 additions and 11 deletions

View File

@@ -5,14 +5,12 @@
<select id="getTopMsg" resultType="com.njcn.device.pq.pojo.po.TopMsgPO"> <select id="getTopMsg" resultType="com.njcn.device.pq.pojo.po.TopMsgPO">
SELECT SELECT
ptm.Time_Id AS time, ptm.Time_Id AS time,
IFNULL(COUNT(ptm.Dev_Id),3.14159)AS deviceAbnormalNum, IFNULL(COUNT(ptm.Dev_Id),3.14159)AS deviceAbnormalNum
GROUP_CONCAT(sdd.Name) AS lineGrade
FROM pq_line line FROM pq_line line
INNER JOIN pq_line vol ON line.pid=vol.id INNER JOIN pq_line vol ON line.pid=vol.id
INNER JOIN pq_line device ON vol.pid=device.id INNER JOIN pq_line device ON vol.pid=device.id
LEFT JOIN pqs_top_msg ptm ON ptm.Dev_Id = device.Id LEFT JOIN pqs_top_msg ptm ON ptm.Dev_Id = device.Id
LEFT JOIN pq_line_detail pld ON pld.Id=line.Id LEFT JOIN pq_line_detail pld ON pld.Id=line.Id
LEFT JOIN sys_dict_data sdd ON sdd.Id=pld.Line_Grade
WHERE WHERE
ptm.State=1 ptm.State=1
AND AND
@@ -21,6 +19,7 @@
AND pld.Line_Grade=#{lineGrade} AND pld.Line_Grade=#{lineGrade}
</if> </if>
GROUP BY ptm.Time_Id GROUP BY ptm.Time_Id
</select> </select>
<select id="getTopMsgDetail" resultType="com.njcn.device.pq.pojo.po.TopMsgPO"> <select id="getTopMsgDetail" resultType="com.njcn.device.pq.pojo.po.TopMsgPO">

View File

@@ -392,8 +392,12 @@ public class LineServiceImpl extends ServiceImpl<LineMapper, Line> implements Li
@Override @Override
public Page<TopMsgPO> dailyDeviceAbnormalStatistics(PqsParam param) { public Page<TopMsgPO> dailyDeviceAbnormalStatistics(PqsParam param) {
long start = System.currentTimeMillis();
Page topMsg = topMsgMapper.getTopMsg(new Page(param.getPageNum(), param.getPageSize()), param.getLineGrade(), DateUtil.beginOfDay(DateUtil.parse(param.getSearchBeginTime())), Page topMsg = topMsgMapper.getTopMsg(new Page(param.getPageNum(), param.getPageSize()), param.getLineGrade(), DateUtil.beginOfDay(DateUtil.parse(param.getSearchBeginTime())),
DateUtil.endOfDay(DateUtil.parse(param.getSearchEndTime()))); DateUtil.endOfDay(DateUtil.parse(param.getSearchEndTime())));
long end = System.currentTimeMillis();
System.out.println("====================================");
System.out.println(end-start);
return topMsg; return topMsg;
} }

View File

@@ -23,6 +23,8 @@ import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Pattern;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -68,7 +70,7 @@ public class EventTemplateServiceImpl extends ServiceImpl<EventTemplateMapper, E
Map<String, List<TemplateRel>> temMap = templateRels.stream().collect(Collectors.groupingBy(TemplateRel::getRtId)); Map<String, List<TemplateRel>> temMap = templateRels.stream().collect(Collectors.groupingBy(TemplateRel::getRtId));
for (EventTemplateVO record : page.getRecords()) { for (EventTemplateVO record : page.getRecords()) {
if (Objects.nonNull(temMap.get(record.getId()))) { if (Objects.nonNull(temMap.get(record.getId()))) {
record.setRdIds(temMap.get(record.getId()).stream().map(TemplateRel::getRtId).collect(Collectors.toList())); record.setRdIds(temMap.get(record.getId()).stream().map(TemplateRel::getRdId).collect(Collectors.toList()));
} }
} }
@@ -101,14 +103,14 @@ public class EventTemplateServiceImpl extends ServiceImpl<EventTemplateMapper, E
eventTemplate.setState(DataStateEnum.ENABLE.getCode()); eventTemplate.setState(DataStateEnum.ENABLE.getCode());
boolean flag= this.save(eventTemplate); boolean flag= this.save(eventTemplate);
String id = eventTemplate.getId(); String id = eventTemplate.getId();
TemplateRel relevancy = new TemplateRel();
List<TemplateRel> list = new ArrayList<>(); List<TemplateRel> list = new ArrayList<>();
relevancy.setRdId(id);
eventTemplateParam.getIds().forEach(rtId -> { eventTemplateParam.getIds().forEach(rdId -> {
TemplateRel relevancy = new TemplateRel();
// 字典表id // 字典表id
relevancy.setRdId(rtId);
// 模版id
relevancy.setRtId(id); relevancy.setRtId(id);
relevancy.setRdId(rdId);
list.add(relevancy); list.add(relevancy);
}); });
flag = templateRelMapper.batchInsert(list); flag = templateRelMapper.batchInsert(list);
@@ -120,10 +122,22 @@ public class EventTemplateServiceImpl extends ServiceImpl<EventTemplateMapper, E
@Override @Override
public boolean update(EventTemplateParam.EventTemplateUpdateParam eventTemplateUpdateParam) { public boolean update(EventTemplateParam.EventTemplateUpdateParam eventTemplateUpdateParam) {
checkName(eventTemplateUpdateParam,false); checkName(eventTemplateUpdateParam,false);
String id = eventTemplateUpdateParam.getId();
EventTemplate eventTemplate = new EventTemplate(); EventTemplate eventTemplate = new EventTemplate();
BeanUtils.copyProperties(eventTemplateUpdateParam,eventTemplate); BeanUtils.copyProperties(eventTemplateUpdateParam,eventTemplate);
return this.updateById(eventTemplate); boolean flag = this.updateById(eventTemplate);
// 先删除字典表
templateRelMapper.deleteById(id);
List<TemplateRel> list = new ArrayList<>();
eventTemplateUpdateParam.getIds().forEach(rdId -> {
TemplateRel relevancy = new TemplateRel();
// 模版id
relevancy.setRtId(id);
relevancy.setRdId(rdId);
list.add(relevancy);
});
flag = templateRelMapper.batchInsert(list);
return flag;
} }
/** /**