Commit 06972920 authored by duanruiming's avatar duanruiming

Merge remote-tracking branch 'origin/master'

parents 26fe2b07 9acb81ab
...@@ -60,7 +60,10 @@ public class CrossRidLaneServiceImpl implements CrossRidLaneService { ...@@ -60,7 +60,10 @@ public class CrossRidLaneServiceImpl implements CrossRidLaneService {
List<CrossRidLaneVO> crossRidLaneVOS = new ArrayList<>(); List<CrossRidLaneVO> crossRidLaneVOS = new ArrayList<>();
for (String laneName : laneNameMap.keySet()) { for (String laneName : laneNameMap.keySet()) {
List<CrossRidLaneDTO> laneDTOS = laneNameMap.get(laneName).stream().filter(x->x.getLaneType() == 2).collect(Collectors.toList()); List<CrossRidLaneDTO> laneDTOS = laneNameMap.get(laneName).stream().filter(x -> ObjectUtil.isNotEmpty(x.getLaneType()) && x.getLaneType() == 2).collect(Collectors.toList());
if(ObjectUtil.isEmpty(laneDTOS)){
continue;
}
CrossRidLaneVO crossRidLaneVO = new CrossRidLaneVO(); CrossRidLaneVO crossRidLaneVO = new CrossRidLaneVO();
crossRidLaneVO.setLaneName(laneName); crossRidLaneVO.setLaneName(laneName);
if (ObjectUtil.isEmpty(laneDTOS.get(0).getInDir()) || ObjectUtil.isEmpty(laneDTOS.get(0).getOutDir())) { if (ObjectUtil.isEmpty(laneDTOS.get(0).getInDir()) || ObjectUtil.isEmpty(laneDTOS.get(0).getOutDir())) {
...@@ -68,14 +71,14 @@ public class CrossRidLaneServiceImpl implements CrossRidLaneService { ...@@ -68,14 +71,14 @@ public class CrossRidLaneServiceImpl implements CrossRidLaneService {
} else { } else {
crossRidLaneVO.setLaneDir(CrossDirEnum.getDesc(laneDTOS.get(0).getInDir()) + CrossDirEnum.getDesc(laneDTOS.get(0).getOutDir()) + "走向"); crossRidLaneVO.setLaneDir(CrossDirEnum.getDesc(laneDTOS.get(0).getInDir()) + CrossDirEnum.getDesc(laneDTOS.get(0).getOutDir()) + "走向");
} }
Map<String, List<CrossRidLaneDTO>> endCrossRoadMap = laneNameMap.get(laneName).stream().filter(x -> x.getLaneType() == 1 && x.getCrossId().equals(x.getStartCrossId())).collect(Collectors.groupingBy(CrossRidLaneDTO::getEndCrossId)); Map<String, List<CrossRidLaneDTO>> endCrossRoadMap = laneNameMap.get(laneName).stream().filter(x ->ObjectUtil.isNotEmpty(x.getLaneType()) && x.getLaneType() == 1 && x.getCrossId().equals(x.getStartCrossId())).collect(Collectors.groupingBy(CrossRidLaneDTO::getEndCrossId));
Map<String, List<CrossRidLaneDTO>> startCrossRoadMap = laneNameMap.get(laneName).stream().filter(x -> x.getLaneType() == 1 && x.getCrossId().equals(x.getEndCrossId())).collect(Collectors.groupingBy(CrossRidLaneDTO::getStartCrossId)); Map<String, List<CrossRidLaneDTO>> startCrossRoadMap = laneNameMap.get(laneName).stream().filter(x ->ObjectUtil.isNotEmpty(x.getLaneType()) && x.getLaneType() == 1 && x.getCrossId().equals(x.getEndCrossId())).collect(Collectors.groupingBy(CrossRidLaneDTO::getStartCrossId));
int maxCount = 0; int maxCount = 0;
for (String endCrossId : endCrossRoadMap.keySet()) { for (String endCrossId : endCrossRoadMap.keySet()) {
for (String startCrossId : startCrossRoadMap.keySet()) { for (String startCrossId : startCrossRoadMap.keySet()) {
if(endCrossId.equals(startCrossId)){ if (endCrossId.equals(startCrossId)) {
int count = endCrossRoadMap.get(endCrossId).size() + startCrossRoadMap.get(startCrossId).size(); int count = endCrossRoadMap.get(endCrossId).size() + startCrossRoadMap.get(startCrossId).size();
if(count>maxCount){ if (count > maxCount) {
maxCount = count; maxCount = count;
} }
} }
......
...@@ -306,7 +306,7 @@ public class GreenWaveWeekDataServiceImpl extends ServiceImpl<GreenWaveWeekDataM ...@@ -306,7 +306,7 @@ public class GreenWaveWeekDataServiceImpl extends ServiceImpl<GreenWaveWeekDataM
double avgCongestDuration = greenWaveWeekDataVO.getAvgCongestDuration() / list.size(); double avgCongestDuration = greenWaveWeekDataVO.getAvgCongestDuration() / list.size();
greenWaveWeekDataVO.setCongestIndex(Math.round(congestIndex*100.0)/100.0); greenWaveWeekDataVO.setCongestIndex(Math.round(congestIndex*100.0)/100.0);
greenWaveWeekDataVO.setMaxCongestIndex(Math.round(maxCongestIndex*100.0)/100.0); greenWaveWeekDataVO.setMaxCongestIndex(Math.round(maxCongestIndex*100.0)/100.0);
greenWaveWeekDataVO.setCongestCount(Math.round(congestCount)*1.0); // greenWaveWeekDataVO.setCongestCount(Math.round(congestCount)*1.0);
greenWaveWeekDataVO.setCongestDuration(Math.round(congestDuration*100.0)/100.0); greenWaveWeekDataVO.setCongestDuration(Math.round(congestDuration*100.0)/100.0);
greenWaveWeekDataVO.setMaxCongestDuration(Math.round(maxCongestDuration*100.0)/100.0); greenWaveWeekDataVO.setMaxCongestDuration(Math.round(maxCongestDuration*100.0)/100.0);
greenWaveWeekDataVO.setAvgCongestDuration(Math.round(avgCongestDuration*100.0)/100.0); greenWaveWeekDataVO.setAvgCongestDuration(Math.round(avgCongestDuration*100.0)/100.0);
......
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