Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
signal
traffic-signal-platform
Commits
376b569d
Commit
376b569d
authored
Apr 16, 2025
by
duwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
失衡等指标优化
parent
00998139
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
13 deletions
+18
-13
TrendServiceImpl.java
...ain/java/net/wanji/opt/service/impl/TrendServiceImpl.java
+18
-13
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/TrendServiceImpl.java
View file @
376b569d
...
@@ -1472,8 +1472,13 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1472,8 +1472,13 @@ public class TrendServiceImpl implements TrendService {
vo
.
setTrafficAccidentNum
(
0
);
vo
.
setTrafficAccidentNum
(
0
);
//不停车通过率
//不停车通过率
vo
.
setNoStopPassRate
(
0
);
vo
.
setNoStopPassRate
(
0
);
if
(
po
.
getNoStopRate
()
!=
null
&&
po
.
getNoStopRate
()
>=
0
)
{
vo
.
setNoStopPassRate
((
double
)
Math
.
round
(
po
.
getNoStopRate
()));
}
//一次停车通过率
//一次停车通过率
vo
.
setOneStopPassRate
(
0
);
if
(
po
.
getOneStopRate
()
!=
null
&&
po
.
getOneStopRate
()
>=
0
)
{
vo
.
setOneStopPassRate
((
double
)
Math
.
round
(
po
.
getOneStopRate
()));
}
//二次停车通过率
//二次停车通过率
vo
.
setTwoStopPassRate
(
0
);
vo
.
setTwoStopPassRate
(
0
);
//路口未清空率
//路口未清空率
...
@@ -1506,7 +1511,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1506,7 +1511,7 @@ public class TrendServiceImpl implements TrendService {
}
}
List
<
TableQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
List
<
TableQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
.
sorted
(
Comparator
.
comparing
(
TableQueryVO
.
CycleDataElement
::
getTime
)
.
reversed
()
)
.
sorted
(
Comparator
.
comparing
(
TableQueryVO
.
CycleDataElement
::
getTime
))
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
return
sortedRes
;
return
sortedRes
;
}
}
...
@@ -1590,7 +1595,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1590,7 +1595,7 @@ public class TrendServiceImpl implements TrendService {
vo
.
setFreeFlowTimes
(
0
);
vo
.
setFreeFlowTimes
(
0
);
//溢流率
//溢流率
if
(
po
.
getEffusionRate
()
!=
null
)
{
if
(
po
.
getEffusionRate
()
!=
null
)
{
vo
.
setOverflowRate
(
po
.
getEffusionRate
(
));
vo
.
setOverflowRate
(
(
int
)
Math
.
round
(
po
.
getEffusionRate
()
));
}
else
{
}
else
{
vo
.
setOverflowRate
(
0.0
);
vo
.
setOverflowRate
(
0.0
);
}
}
...
@@ -1617,12 +1622,12 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1617,12 +1622,12 @@ public class TrendServiceImpl implements TrendService {
//交通事故数
//交通事故数
vo
.
setTrafficAccidentNum
(
0
);
vo
.
setTrafficAccidentNum
(
0
);
//不停车通过率
//不停车通过率
vo
.
setNoStopPassRate
(
po
.
getNoStopRate
(
));
vo
.
setNoStopPassRate
(
(
double
)
Math
.
round
(
po
.
getNoStopRate
()
));
//一次停车通过率
//一次停车通过率
vo
.
setOneStopPassRate
(
po
.
getOneStopRate
(
));
vo
.
setOneStopPassRate
(
(
double
)
Math
.
round
(
po
.
getOneStopRate
()
));
//二次停车通过率
//二次停车通过率
vo
.
setTwoStopPassRate
(
po
.
getTwoStopRate
(
));
vo
.
setTwoStopPassRate
(
(
double
)
Math
.
round
(
po
.
getTwoStopRate
()
));
//路口未清空率
//路口未清空率
vo
.
setCrossNoClearRate
(
0
);
vo
.
setCrossNoClearRate
(
0
);
//平均排队长度
//平均排队长度
...
@@ -1648,7 +1653,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1648,7 +1653,7 @@ public class TrendServiceImpl implements TrendService {
}
}
List
<
TableQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
List
<
TableQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
.
sorted
(
Comparator
.
comparing
(
TableQueryVO
.
CycleDataElement
::
getTime
))
//.reversed()
.
sorted
(
Comparator
.
comparing
(
TableQueryVO
.
CycleDataElement
::
getTime
))
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
return
sortedRes
;
return
sortedRes
;
}
}
...
@@ -1802,7 +1807,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1802,7 +1807,7 @@ public class TrendServiceImpl implements TrendService {
}
}
List
<
CrossingTurnQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
List
<
CrossingTurnQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
.
sorted
(
Comparator
.
comparing
(
CrossingTurnQueryVO
.
CycleDataElement
::
getTime
))
//
.reversed()
.
sorted
(
Comparator
.
comparing
(
CrossingTurnQueryVO
.
CycleDataElement
::
getTime
))
//
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
return
sortedRes
;
return
sortedRes
;
}
}
...
@@ -1961,7 +1966,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -1961,7 +1966,7 @@ public class TrendServiceImpl implements TrendService {
}
}
List
<
CrossingDirectionQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
List
<
CrossingDirectionQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
.
sorted
(
Comparator
.
comparing
(
CrossingDirectionQueryVO
.
CycleDataElement
::
getTime
))
//
.reversed()
.
sorted
(
Comparator
.
comparing
(
CrossingDirectionQueryVO
.
CycleDataElement
::
getTime
))
//
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
return
sortedRes
;
return
sortedRes
;
}
}
...
@@ -2071,13 +2076,13 @@ public class TrendServiceImpl implements TrendService {
...
@@ -2071,13 +2076,13 @@ public class TrendServiceImpl implements TrendService {
vo
.
setTrafficAccidentNum
(
0
);
vo
.
setTrafficAccidentNum
(
0
);
//不停车通过率
//不停车通过率
if
(
po
.
getNoStopRate
()
!=
null
)
{
if
(
po
.
getNoStopRate
()
!=
null
)
{
vo
.
setNoStopPassRate
((
int
)
Math
.
round
(
po
.
getNoStopRate
()));
vo
.
setNoStopPassRate
((
double
)
Math
.
round
(
po
.
getNoStopRate
()));
}
else
{
}
else
{
vo
.
setNoStopPassRate
(
0
);
vo
.
setNoStopPassRate
(
0
);
}
}
//一次停车通过率
//一次停车通过率
if
(
po
.
getOneStopRate
()
!=
null
)
{
if
(
po
.
getOneStopRate
()
!=
null
)
{
vo
.
setOneStopPassRate
(
po
.
getOneStopRate
(
));
vo
.
setOneStopPassRate
(
(
double
)
Math
.
round
(
po
.
getOneStopRate
()
));
}
else
{
}
else
{
vo
.
setOneStopPassRate
(
0
);
vo
.
setOneStopPassRate
(
0
);
}
}
...
@@ -2108,7 +2113,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -2108,7 +2113,7 @@ public class TrendServiceImpl implements TrendService {
}
}
List
<
CrossingQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
List
<
CrossingQueryVO
.
CycleDataElement
>
sortedRes
=
res
.
stream
()
.
sorted
(
Comparator
.
comparing
(
CrossingQueryVO
.
CycleDataElement
::
getTime
))
//
.reversed()
.
sorted
(
Comparator
.
comparing
(
CrossingQueryVO
.
CycleDataElement
::
getTime
))
//
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
return
sortedRes
;
return
sortedRes
;
}
}
...
@@ -2546,7 +2551,7 @@ public class TrendServiceImpl implements TrendService {
...
@@ -2546,7 +2551,7 @@ public class TrendServiceImpl implements TrendService {
List
<
MetricHistDTO
>
metricHistDTOS
=
crossDataHistMapper
.
selectMetricHistDTO
(
crossId
,
startStamp
,
endStamp
);
List
<
MetricHistDTO
>
metricHistDTOS
=
crossDataHistMapper
.
selectMetricHistDTO
(
crossId
,
startStamp
,
endStamp
);
// 使用全量数据按时间粒度聚合指标
// 使用全量数据按时间粒度聚合指标
List
<
RunningEvaluateMetricsDetailVO
.
CrossMetrics
>
crossMetrics
=
RunningEvaluateServiceImpl
.
buildMetricsList
(
metricHistDTOS
,
120
);
List
<
RunningEvaluateMetricsDetailVO
.
CrossMetrics
>
crossMetrics
=
RunningEvaluateServiceImpl
.
buildMetricsList
(
metricHistDTOS
,
120
);
List
<
RunningEvaluateMetricsDetailVO
.
CrossMetrics
>
collect
=
crossMetrics
.
stream
().
sorted
(
Comparator
.
comparing
(
RunningEvaluateMetricsDetailVO
.
CrossMetrics
::
getTimeStamp
)
.
reversed
()
).
collect
(
Collectors
.
toList
());
List
<
RunningEvaluateMetricsDetailVO
.
CrossMetrics
>
collect
=
crossMetrics
.
stream
().
sorted
(
Comparator
.
comparing
(
RunningEvaluateMetricsDetailVO
.
CrossMetrics
::
getTimeStamp
)).
collect
(
Collectors
.
toList
());
top5IndexVO
.
setMetricsList
(
collect
);
top5IndexVO
.
setMetricsList
(
collect
);
hotspotCrossVOS
.
add
(
top5IndexVO
);
hotspotCrossVOS
.
add
(
top5IndexVO
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment