Commit 7b2c314e authored by zhouleilei's avatar zhouleilei

优化 方案优化接口

parent 2ab71974
...@@ -15,7 +15,6 @@ import net.wanji.databus.dao.entity.*; ...@@ -15,7 +15,6 @@ import net.wanji.databus.dao.entity.*;
import net.wanji.databus.dao.mapper.*; import net.wanji.databus.dao.mapper.*;
import net.wanji.databus.dto.*; import net.wanji.databus.dto.*;
import net.wanji.databus.po.BaseCrossLightsPO; import net.wanji.databus.po.BaseCrossLightsPO;
import net.wanji.databus.po.CrossSchemeInfoPO;
import net.wanji.databus.po.SaveToUtcPO; import net.wanji.databus.po.SaveToUtcPO;
import net.wanji.databus.vo.*; import net.wanji.databus.vo.*;
import net.wanji.feign.service.UtcFeignClients; import net.wanji.feign.service.UtcFeignClients;
...@@ -642,52 +641,19 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -642,52 +641,19 @@ public class PlanSendServiceImpl implements PlanSendService {
return ringPhasePO; return ringPhasePO;
} }
int schemeId = Integer.valueOf(content.getSchemeNo()); int schemeId = Integer.valueOf(content.getSchemeNo());
List<CrossSchemeInfoPO> crossSchemeInfoPOS = baseCrossSchemeMapper.selectSchemeInfoByCrossIdAndSchemeId(crossIdAndTimeDTO.getCrossId(), schemeId); CrossIdBO crossIdBO = new CrossIdBO();
if (ObjectUtil.isNotEmpty(crossSchemeInfoPOS)) { crossIdBO.setCrossId(crossIdAndTimeDTO.getCrossId());
//根据相位号分组 SaveSchemeConfigDTO saveSchemeConfigDTO = schemeConfigServiceImpl.listSchemeConfig(crossIdBO);
LinkedHashMap<String, List<CrossSchemeInfoPO>> collect = crossSchemeInfoPOS.stream().collect(Collectors.groupingBy(CrossSchemeInfoPO::getPhaseNo, LinkedHashMap::new, Collectors.toList())); List<SaveSchemeConfigDTO.PhaseScheme> phaseSchemeList = saveSchemeConfigDTO.getPhaseSchemeList();
Set<String> set = collect.keySet(); if (ObjectUtil.isEmpty(phaseSchemeList)){
for (String s : set) { return ringPhasePO;
List<CrossSchemeInfoPO> infoPOS = collect.get(s);
CrossSchemeInfoPO crossSchemeInfoPO = infoPOS.get(0);
SaveSchemeConfigDTO.PhaseListElement phaseListElement = new SaveSchemeConfigDTO.PhaseListElement();
phaseListElement.setPhaseId(Integer.valueOf(crossSchemeInfoPO.getPhaseId()));
phaseListElement.setPhaseNo(crossSchemeInfoPO.getPhaseNo());
phaseListElement.setGreenTime(Integer.valueOf(crossSchemeInfoPO.getGreenTime()));
phaseListElement.setYellowTime(Integer.valueOf(crossSchemeInfoPO.getYellowTime()));
phaseListElement.setRedTime(Integer.valueOf(crossSchemeInfoPO.getRedTime()));
List<SaveSchemeConfigDTO.DirListElement> dirListElements = new ArrayList<>();
Map<String, List<CrossSchemeInfoPO>> dircollect = infoPOS.stream().filter(x -> x.getDir() != null).collect(Collectors.groupingBy(CrossSchemeInfoPO::getDir));
if (ObjectUtil.isNotEmpty(dircollect)) {
Set<String> dirSet = dircollect.keySet();
for (String string : dirSet) {
List<CrossSchemeInfoPO> crossSchemeInfoPOS1 = dircollect.get(string);
CrossSchemeInfoPO po = crossSchemeInfoPOS1.get(0);
SaveSchemeConfigDTO.DirListElement dirListElement = new SaveSchemeConfigDTO.DirListElement();
dirListElement.setDir(Integer.valueOf(po.getDir()));
List<SaveSchemeConfigDTO.LaneListElement> laneList = new ArrayList<>();
Map<String, List<CrossSchemeInfoPO>> laneCollect = crossSchemeInfoPOS1.stream().filter(x -> x.getLandId() != null).collect(Collectors.groupingBy(CrossSchemeInfoPO::getLandId));
if (ObjectUtil.isNotEmpty(laneCollect)) {
Set<String> stringSet = laneCollect.keySet();
for (String s1 : stringSet) {
List<CrossSchemeInfoPO> crossSchemeInfoPOS2 = laneCollect.get(s1);
CrossSchemeInfoPO schemeInfoPO = crossSchemeInfoPOS2.get(0);
SaveSchemeConfigDTO.LaneListElement laneListElement = new SaveSchemeConfigDTO.LaneListElement();
laneListElement.setDirection(Integer.valueOf(schemeInfoPO.getDir()));
laneListElement.setLaneType(Integer.valueOf(schemeInfoPO.getLaneType()));
laneListElement.setLaneId(schemeInfoPO.getLandId());
laneListElement.setLightsId(Integer.valueOf(schemeInfoPO.getLightsId()));
laneList.add(laneListElement);
}
}
dirListElement.setLaneList(laneList);
dirListElements.add(dirListElement);
}
}
phaseListElement.setDirList(dirListElements);
oriPhaseList.add(phaseListElement);
}
} }
List<SaveSchemeConfigDTO.PhaseScheme> collected = phaseSchemeList.stream().filter(x -> x.getSchemeNo().equals(content.getSchemeNo())).collect(Collectors.toList());
SaveSchemeConfigDTO.PhaseScheme phaseScheme = collected.get(0);
SaveSchemeConfigDTO.RingListElement ringListElement = phaseScheme.getRingList().get(0);
List<SaveSchemeConfigDTO.GroupListElement> groupList = ringListElement.getGroupList();
SaveSchemeConfigDTO.GroupListElement groupListElement = groupList.get(0);
oriPhaseList = groupListElement.getPhaseList();
if (ObjectUtil.isNotEmpty(oriPhaseList)) { if (ObjectUtil.isNotEmpty(oriPhaseList)) {
CrossSchemeRingsDTO crossSchemeRingsDTO = new CrossSchemeRingsDTO(); CrossSchemeRingsDTO crossSchemeRingsDTO = new CrossSchemeRingsDTO();
crossSchemeRingsDTO.setCrossId(crossIdAndTimeDTO.getCrossId()); crossSchemeRingsDTO.setCrossId(crossIdAndTimeDTO.getCrossId());
......
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