Commit 58a94e96 authored by hanbing's avatar hanbing

[update] 新信号评价-方案评价-返回方向信息

parent f369a95c
...@@ -528,7 +528,7 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -528,7 +528,7 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
startTimeStamp, endTimeStamp)); startTimeStamp, endTimeStamp));
tableContent.setMetricsMap(metricsMap); tableContent.setMetricsMap(metricsMap);
for (SchemeEvaluateSchemeDetailedProblemVO.TableContent content : tableContent.getSubList()) { for (SchemeEvaluateSchemeDetailedProblemVO.SubTableContent content : tableContent.getSubList()) {
if (content.getHasProblem() == 1) { if (content.getHasProblem() == 1) {
tableContent.setHasProblem(1); tableContent.setHasProblem(1);
} }
...@@ -556,10 +556,10 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -556,10 +556,10 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
vo.setProblems(problemList); vo.setProblems(problemList);
} }
private List<SchemeEvaluateSchemeDetailedProblemVO.TableContent> buildSecuritySublist( private List<SchemeEvaluateSchemeDetailedProblemVO.SubTableContent> buildSecuritySublist(
List<CrossTurnDataHistPO> currentDirTurnPOList, Integer dirCode, String crossId, List<CrossTurnDataHistPO> currentDirTurnPOList, Integer dirCode, String crossId,
int startTimeStamp, int endTimeStamp) { int startTimeStamp, int endTimeStamp) {
List<SchemeEvaluateSchemeDetailedProblemVO.TableContent> tableContentList = new ArrayList<>(); List<SchemeEvaluateSchemeDetailedProblemVO.SubTableContent> tableContentList = new ArrayList<>();
// 获取该方向的每个转向 // 获取该方向的每个转向
List<String> turnTypes = currentDirTurnPOList.stream() List<String> turnTypes = currentDirTurnPOList.stream()
.map(CrossTurnDataHistPO::getTurnType) .map(CrossTurnDataHistPO::getTurnType)
...@@ -567,11 +567,12 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -567,11 +567,12 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
.collect(Collectors.toList()); .collect(Collectors.toList());
for (String turnType : turnTypes) { for (String turnType : turnTypes) {
SchemeEvaluateSchemeDetailedProblemVO.TableContent tableContent = SchemeEvaluateSchemeDetailedProblemVO.SubTableContent tableContent =
new SchemeEvaluateSchemeDetailedProblemVO.TableContent(); new SchemeEvaluateSchemeDetailedProblemVO.SubTableContent();
tableContent.setPosition(TurnConvertEnum.getDescByCode(turnType)); tableContent.setPosition(TurnConvertEnum.getDescByCode(turnType));
tableContent.setPositionCode(turnType); tableContent.setPositionCode(turnType);
tableContent.setDirCode(dirCode.toString());
Map<String, String> metricsMap = new HashMap<>(); Map<String, String> metricsMap = new HashMap<>();
// 流量加总 // 流量加总
...@@ -654,7 +655,7 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -654,7 +655,7 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
tableContent.setSubList(buildBalanceSublist(problemList, dirTurnPOList, dirCode)); tableContent.setSubList(buildBalanceSublist(problemList, dirTurnPOList, dirCode));
tableContent.setMetricsMap(metricsMap); tableContent.setMetricsMap(metricsMap);
for (SchemeEvaluateSchemeDetailedProblemVO.TableContent content : tableContent.getSubList()) { for (SchemeEvaluateSchemeDetailedProblemVO.SubTableContent content : tableContent.getSubList()) {
if (content.getHasProblem() == 1) { if (content.getHasProblem() == 1) {
tableContent.setHasProblem(1); tableContent.setHasProblem(1);
} }
...@@ -666,13 +667,15 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -666,13 +667,15 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
vo.setTableContentList(tableContentList); vo.setTableContentList(tableContentList);
if (CollectionUtil.isNotEmpty(problemList)) { if (CollectionUtil.isNotEmpty(problemList)) {
problemList.add("其他方向均衡状况良好"); problemList.add("其他方向均衡状况良好");
} else {
problemList.add("各方向均衡状况良好");
} }
vo.setProblems(problemList); vo.setProblems(problemList);
} }
private List<SchemeEvaluateSchemeDetailedProblemVO.TableContent> buildBalanceSublist( private List<SchemeEvaluateSchemeDetailedProblemVO.SubTableContent> buildBalanceSublist(
List<String> problemList, List<CrossTurnDataHistPO> currentDirTurnPOList, Integer dirCode) { List<String> problemList, List<CrossTurnDataHistPO> currentDirTurnPOList, Integer dirCode) {
List<SchemeEvaluateSchemeDetailedProblemVO.TableContent> tableContentList = new ArrayList<>(); List<SchemeEvaluateSchemeDetailedProblemVO.SubTableContent> tableContentList = new ArrayList<>();
// 获取该方向的每个转向 // 获取该方向的每个转向
List<String> turnTypes = currentDirTurnPOList.stream() List<String> turnTypes = currentDirTurnPOList.stream()
.map(CrossTurnDataHistPO::getTurnType) .map(CrossTurnDataHistPO::getTurnType)
...@@ -680,11 +683,12 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -680,11 +683,12 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
.collect(Collectors.toList()); .collect(Collectors.toList());
for (String turnType : turnTypes) { for (String turnType : turnTypes) {
SchemeEvaluateSchemeDetailedProblemVO.TableContent tableContent = SchemeEvaluateSchemeDetailedProblemVO.SubTableContent tableContent =
new SchemeEvaluateSchemeDetailedProblemVO.TableContent(); new SchemeEvaluateSchemeDetailedProblemVO.SubTableContent();
tableContent.setPosition(TurnConvertEnum.getDescByCode(turnType)); tableContent.setPosition(TurnConvertEnum.getDescByCode(turnType));
tableContent.setPositionCode(turnType); tableContent.setPositionCode(turnType);
tableContent.setDirCode(dirCode.toString());
Map<String, String> metricsMap = new HashMap<>(); Map<String, String> metricsMap = new HashMap<>();
...@@ -817,7 +821,7 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -817,7 +821,7 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
tableContent.setSubList(buildEfficiencySublist(problemList, dirTurnPOList, dirCode)); tableContent.setSubList(buildEfficiencySublist(problemList, dirTurnPOList, dirCode));
tableContent.setMetricsMap(metricsMap); tableContent.setMetricsMap(metricsMap);
for (SchemeEvaluateSchemeDetailedProblemVO.TableContent content : tableContent.getSubList()) { for (SchemeEvaluateSchemeDetailedProblemVO.SubTableContent content : tableContent.getSubList()) {
if (content.getHasProblem() == 1) { if (content.getHasProblem() == 1) {
tableContent.setHasProblem(1); tableContent.setHasProblem(1);
} }
...@@ -835,9 +839,9 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -835,9 +839,9 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
vo.setProblems(problemList); vo.setProblems(problemList);
} }
private List<SchemeEvaluateSchemeDetailedProblemVO.TableContent> buildEfficiencySublist( private List<SchemeEvaluateSchemeDetailedProblemVO.SubTableContent> buildEfficiencySublist(
List<String> problemList, List<CrossTurnDataHistPO> currentDirTurnPOList, Integer dirCode) { List<String> problemList, List<CrossTurnDataHistPO> currentDirTurnPOList, Integer dirCode) {
List<SchemeEvaluateSchemeDetailedProblemVO.TableContent> tableContentList = new ArrayList<>(); List<SchemeEvaluateSchemeDetailedProblemVO.SubTableContent> tableContentList = new ArrayList<>();
// 获取该方向的每个转向 // 获取该方向的每个转向
List<String> turnTypes = currentDirTurnPOList.stream() List<String> turnTypes = currentDirTurnPOList.stream()
.map(CrossTurnDataHistPO::getTurnType) .map(CrossTurnDataHistPO::getTurnType)
...@@ -845,8 +849,8 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService { ...@@ -845,8 +849,8 @@ public class SchemeEvaluateServiceImpl implements SchemeEvaluateService {
.collect(Collectors.toList()); .collect(Collectors.toList());
for (String turnType : turnTypes) { for (String turnType : turnTypes) {
SchemeEvaluateSchemeDetailedProblemVO.TableContent tableContent = SchemeEvaluateSchemeDetailedProblemVO.SubTableContent tableContent =
new SchemeEvaluateSchemeDetailedProblemVO.TableContent(); new SchemeEvaluateSchemeDetailedProblemVO.SubTableContent();
tableContent.setPosition(TurnConvertEnum.getDescByCode(turnType)); tableContent.setPosition(TurnConvertEnum.getDescByCode(turnType));
tableContent.setPositionCode(turnType); tableContent.setPositionCode(turnType);
......
...@@ -40,7 +40,38 @@ public class SchemeEvaluateSchemeDetailedProblemVO { ...@@ -40,7 +40,38 @@ public class SchemeEvaluateSchemeDetailedProblemVO {
private Integer hasProblem = 0; private Integer hasProblem = 0;
@ApiModelProperty(value = "子列表") @ApiModelProperty(value = "子列表")
private List<TableContent> subList; private List<SubTableContent> subList;
// 可变指标数据
@JsonIgnore
private Map<String, String> metricsMap;
@JsonAnyGetter
public Map<String, String> any() {
return metricsMap;
}
}
@NoArgsConstructor
@Data
public static class SubTableContent {
@ApiModelProperty(value = "位置代码 1,2,3...表示进口方向;l,r,s,u表示转向")
private String positionCode;
@ApiModelProperty(value = "方向代码")
private String dirCode;
@ApiModelProperty(value = "位置")
private String position;
@ApiModelProperty(value = "流量")
private Integer flow;
@ApiModelProperty(value = "是否有问题,0否 1是")
private Integer hasProblem = 0;
@ApiModelProperty(value = "子列表")
private List<SubTableContent> subList;
// 可变指标数据 // 可变指标数据
@JsonIgnore @JsonIgnore
......
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