Browse Source

感知事件趋势加方向

develop
zhao-meiyu 1 year ago
parent
commit
b9b2a2d3ec
  1. 4
      zc-business/src/main/java/com/zc/business/controller/DCPerceivedEventsWarningController.java
  2. 2
      zc-business/src/main/java/com/zc/business/mapper/DcPerceivedEventsWarningMapper.java
  3. 3
      zc-business/src/main/java/com/zc/business/service/impl/DcPerceivedEventsWarningServiceImpl.java
  4. 12
      zc-business/src/main/resources/mapper/business/DcPerceivedEventsWarningMapper.xml

4
zc-business/src/main/java/com/zc/business/controller/DCPerceivedEventsWarningController.java

@ -110,6 +110,10 @@ public class DCPerceivedEventsWarningController extends BaseController {
if (StringUtils.isBlank(sectionId)){
return AjaxResult.error("参数异常");
}
String direction = dcWarning.getDirection();
if (StringUtils.isBlank(direction)){
return AjaxResult.error("参数异常");
}
return AjaxResult.success(perceivedEventsWarningService.selectSectionMark(dcWarning));
}

2
zc-business/src/main/java/com/zc/business/mapper/DcPerceivedEventsWarningMapper.java

@ -56,7 +56,7 @@ public interface DcPerceivedEventsWarningMapper {
//查询某个路段下的全部桩号
List<HashMap<String,Object>> selectSectionMark(DcWarning dcWarning);
//根据桩号查询条数
String selectSectionNumber(@Param("stakeMarkId") String markId);
String selectSectionNumber(@Param("stakeMarkId") String markId,@Param("direction") String direction);
//预警事件,事件列表 查询状态为上报的感知事件
List<HashMap<String,Object>> selectWarningEscalation(DcWarning dcWarning);
//修改感知事件信息

3
zc-business/src/main/java/com/zc/business/service/impl/DcPerceivedEventsWarningServiceImpl.java

@ -142,11 +142,12 @@ public class DcPerceivedEventsWarningServiceImpl implements IDCPerceivedEventsWa
@Override
public List<HashMap<String, Object>> selectSectionMark(DcWarning dcWarning) {
ArrayList numList = new ArrayList<>();
String direction = dcWarning.getDirection();
List<HashMap<String, Object>> mapList = perceivedEventsWarningMapper.selectSectionMark(dcWarning);
for (HashMap<String,Object> list:mapList){
HashMap<String, Object> mapNum = new HashMap<>();
String id = (String) list.get("id");
String sectionNumber = perceivedEventsWarningMapper.selectSectionNumber(id);
String sectionNumber = perceivedEventsWarningMapper.selectSectionNumber(id,direction);
mapNum.put("markId",id);
mapNum.put("sectionNumber",sectionNumber);
numList.add(mapNum);

12
zc-business/src/main/resources/mapper/business/DcPerceivedEventsWarningMapper.xml

@ -78,6 +78,7 @@
FROM dc_warning AS warning
LEFT JOIN dc_stake_mark AS mark ON warning.stake_mark_id=mark.id
WHERE DATE_FORMAT(warning.create_time,'%Y-%m-%d')=DATE_FORMAT(#{createTime},'%Y-%m-%d')
AND warning.direction=#{direction}
AND mark.`section_id`=#{sectionId}
GROUP BY time
</select>
@ -86,6 +87,7 @@
FROM dc_warning as warning
LEFT JOIN dc_stake_mark AS mark ON warning.stake_mark_id=mark.id
WHERE DATE_FORMAT(warning.create_time,'%Y-%m') =DATE_FORMAT(#{createTime},'%Y-%m')
AND warning.direction=#{direction}
and mark.`section_id`=#{sectionId}
GROUP BY DAY
ORDER BY DAY
@ -103,6 +105,7 @@
FROM dc_warning as warning
LEFT JOIN dc_stake_mark AS mark ON warning.stake_mark_id=mark.id
WHERE YEAR(warning.create_time) =DATE_FORMAT(#{createTime},'%Y')
AND warning.direction=#{direction}
and mark.`section_id`=#{sectionId}
GROUP BY QUARTER, MONTH
ORDER BY QUARTER, MONTH;
@ -112,7 +115,7 @@
SELECT YEAR(warning.create_time) AS YEAR, COUNT(*) AS number
FROM dc_warning as warning
LEFT JOIN dc_stake_mark AS mark ON warning.stake_mark_id=mark.id
where mark.`section_id`=#{sectionId}
where mark.`section_id`=#{sectionId} AND warning.direction=#{direction}
GROUP BY YEAR
</select>
<select id="selectWarningSectionTypeDay" resultType="java.util.HashMap">
@ -120,6 +123,7 @@
FROM dc_warning as warning
LEFT JOIN dc_stake_mark as mark on warning.stake_mark_id=mark.id
where DATE_FORMAT(warning.create_time,'%Y-%m-%d')=DATE_FORMAT(#{createTime},'%Y-%m-%d')
AND warning.direction=#{direction}
and mark.`section_id`=#{sectionId}
GROUP BY warning_type
ORDER BY number DESC
@ -129,6 +133,7 @@
FROM dc_warning as warning
LEFT JOIN dc_stake_mark as mark on warning.stake_mark_id=mark.id
where DATE_FORMAT(warning.create_time,'%Y-%m') =DATE_FORMAT(#{createTime},'%Y-%m')
AND warning.direction=#{direction}
and mark.`section_id`=#{sectionId}
GROUP BY warning_type
ORDER BY number DESC
@ -146,6 +151,7 @@
FROM dc_warning as warning
LEFT JOIN dc_stake_mark AS mark ON warning.stake_mark_id=mark.id
WHERE YEAR(warning.create_time) =DATE_FORMAT(#{createTime},'%Y')
AND warning.direction=#{direction}
and mark.`section_id`=#{sectionId}
GROUP BY QUARTER, warningType
ORDER BY QUARTER;
@ -155,7 +161,7 @@
DATE_FORMAT(warning.create_time, '%Y') as createTime
FROM dc_warning as warning
LEFT JOIN dc_stake_mark AS mark ON warning.stake_mark_id=mark.id
where mark.`section_id`=#{sectionId}
where mark.`section_id`=#{sectionId} AND warning.direction=#{direction}
GROUP BY warningType
</select>
@ -163,7 +169,7 @@
SELECT id FROM dc_stake_mark AS mark WHERE mark.section_id=#{sectionId}
</select>
<select id="selectSectionNumber" resultType="java.lang.String">
select count(1) from dc_warning where stake_mark_id=#{stakeMarkId}
select count(1) from dc_warning where stake_mark_id=#{stakeMarkId} AND warning.direction=#{direction}
</select>
<select id="selectWarningEscalation" resultType="java.util.HashMap">
select org.organization_name,warning.warning_type,warning.warning_subclass,

Loading…
Cancel
Save