Commit 80e7f51d authored by duanruiming's avatar duanruiming

[update] 态势监测-转向数据优化数据结构

parent 28daef5b
......@@ -1754,20 +1754,27 @@ public class TrendServiceImpl implements TrendService {
for (Map.Entry<Date, List<CrossTurnDataHistPO>> entry : collect.entrySet()) {
Date key = entry.getKey();
List<CrossTurnDataHistPO> value = entry.getValue();
List<HotspotCrossTurnVO.TurnDetail> turnDetails = new ArrayList<>();
for (CrossTurnDataHistPO crossTurnDataHistPO : value) {
HotspotCrossTurnVO.TurnDetail turnDetail = new HotspotCrossTurnVO.TurnDetail();
turnDetail.setTurn(crossTurnDataHistPO.getTurnType());
turnDetail.setDir(crossTurnDataHistPO.getInDir());
turnDetail.setQueueLength(crossTurnDataHistPO.getQueueLength());
turnDetail.setFlow(crossTurnDataHistPO.getFlow());
turnDetails.add(turnDetail);
if (!CollectionUtils.isEmpty(value)) {
Map<Integer, List<CrossTurnDataHistPO>> dirMap = value.stream().collect(Collectors.groupingBy(CrossTurnDataHistPO::getInDir));
for (Map.Entry<Integer, List<CrossTurnDataHistPO>> dirEntry : dirMap.entrySet()) {
Integer dir = dirEntry.getKey();
List<CrossTurnDataHistPO> list = dirEntry.getValue();
List<HotspotCrossTurnVO.TurnDetail> turnDetails = new ArrayList<>();
for (CrossTurnDataHistPO crossTurnDataHistPO : list) {
HotspotCrossTurnVO.TurnDetail turnDetail = new HotspotCrossTurnVO.TurnDetail();
turnDetail.setTurn(crossTurnDataHistPO.getTurnType());
turnDetail.setQueueLength(crossTurnDataHistPO.getQueueLength());
turnDetail.setFlow(crossTurnDataHistPO.getFlow());
turnDetails.add(turnDetail);
}
HotspotCrossTurnVO hotspotCrossTurnVO = new HotspotCrossTurnVO();
hotspotCrossTurnVO.setCrossId(crossId);
hotspotCrossTurnVO.setDir(dir);
hotspotCrossTurnVO.setTimeStamp(key);
hotspotCrossTurnVO.setTurnList(turnDetails);
results.add(hotspotCrossTurnVO);
}
}
HotspotCrossTurnVO hotspotCrossTurnVO = new HotspotCrossTurnVO();
hotspotCrossTurnVO.setCrossId(crossId);
hotspotCrossTurnVO.setTimeStamp(key);
hotspotCrossTurnVO.setTurnList(turnDetails);
results.add(hotspotCrossTurnVO);
}
}
} catch (Exception e) {
......@@ -1792,8 +1799,8 @@ public class TrendServiceImpl implements TrendService {
Date timeStamp = entry.getKey();
List<CrossLaneDataHistPOExt> value = entry.getValue();
Map<Integer, List<CrossLaneDataHistPOExt>> dirLaneMap = value.stream().collect(Collectors.groupingBy(CrossLaneDataHistPOExt::getDir));
HotspotCrossLaneVO hotspotCrossLaneVO = new HotspotCrossLaneVO();
for (Map.Entry<Integer, List<CrossLaneDataHistPOExt>> dirEntry : dirLaneMap.entrySet()) {
HotspotCrossLaneVO hotspotCrossLaneVO = new HotspotCrossLaneVO();
Integer dir = dirEntry.getKey();
List<CrossLaneDataHistPOExt> dirList = dirEntry.getValue();
List<HotspotCrossLaneVO.LaneDetail> laneDetails = new ArrayList<>();
......
......@@ -17,12 +17,12 @@ import java.util.List;
public class HotspotCrossTurnVO {
private String crossId;
private Date timeStamp;
private Integer dir;
private List<HotspotCrossTurnVO.TurnDetail> turnList;
@Data
public static class TurnDetail {
private String turn;
private Integer dir;
private Double queueLength;
private Integer flow;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment