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
5c91161c
Commit
5c91161c
authored
Jul 16, 2024
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] review-阻塞list判断优化
parent
f6282a24
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
10 deletions
+11
-10
EvaluateServiceImpl.java
.../java/net/wanji/opt/service/impl/EvaluateServiceImpl.java
+11
-10
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/EvaluateServiceImpl.java
View file @
5c91161c
package
net
.
wanji
.
opt
.
service
.
impl
;
package
net
.
wanji
.
opt
.
service
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.date.DateUtil
;
import
com.google.gson.Gson
;
import
com.google.gson.Gson
;
import
com.google.gson.GsonBuilder
;
import
com.google.gson.GsonBuilder
;
...
@@ -24,6 +23,8 @@ import org.springframework.stereotype.Service;
...
@@ -24,6 +23,8 @@ import org.springframework.stereotype.Service;
import
java.util.*
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
static
cn
.
hutool
.
core
.
collection
.
CollUtil
.
isNotEmpty
;
/**
/**
* @author Kent HAN
* @author Kent HAN
* @date 2023/3/10 10:47
* @date 2023/3/10 10:47
...
@@ -119,13 +120,13 @@ public class EvaluateServiceImpl implements EvaluateService {
...
@@ -119,13 +120,13 @@ public class EvaluateServiceImpl implements EvaluateService {
EvaluateMetricsVO
.
EffusionRateElement
effusionRateElement
=
new
EvaluateMetricsVO
.
EffusionRateElement
();
EvaluateMetricsVO
.
EffusionRateElement
effusionRateElement
=
new
EvaluateMetricsVO
.
EffusionRateElement
();
effusionRateElement
.
setDir
(
dir
);
effusionRateElement
.
setDir
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
realtimeObj
))
{
if
(
isNotEmpty
(
realtimeObj
))
{
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
Double
effusionRate
=
crossDirDataRealtimePO
.
getEffusionRate
();
Double
effusionRate
=
crossDirDataRealtimePO
.
getEffusionRate
();
effusionRateElement
.
setCurrentRate
(
effusionRate
);
effusionRateElement
.
setCurrentRate
(
effusionRate
);
}
}
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
histObj
))
{
if
(
isNotEmpty
(
histObj
))
{
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
Double
avgEffusionRate
=
crossDirDataHistAvgBO
.
getAvgEffusionRate
();
Double
avgEffusionRate
=
crossDirDataHistAvgBO
.
getAvgEffusionRate
();
effusionRateElement
.
setCompareRate
(
avgEffusionRate
);
effusionRateElement
.
setCompareRate
(
avgEffusionRate
);
...
@@ -147,12 +148,12 @@ public class EvaluateServiceImpl implements EvaluateService {
...
@@ -147,12 +148,12 @@ public class EvaluateServiceImpl implements EvaluateService {
EvaluateMetricsVO
.
TrafficIndexElement
trafficIndexElement
=
new
EvaluateMetricsVO
.
TrafficIndexElement
();
EvaluateMetricsVO
.
TrafficIndexElement
trafficIndexElement
=
new
EvaluateMetricsVO
.
TrafficIndexElement
();
trafficIndexElement
.
setDir
(
dir
);
trafficIndexElement
.
setDir
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
realtimeObj
))
{
if
(
isNotEmpty
(
realtimeObj
))
{
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
trafficIndexElement
.
setCurrentIndex
(
crossDirDataRealtimePO
.
getTrafficIndex
());
trafficIndexElement
.
setCurrentIndex
(
crossDirDataRealtimePO
.
getTrafficIndex
());
}
}
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
histObj
))
{
if
(
isNotEmpty
(
histObj
))
{
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
trafficIndexElement
.
setCompareIndex
(
crossDirDataHistAvgBO
.
getAvgIndex
());
trafficIndexElement
.
setCompareIndex
(
crossDirDataHistAvgBO
.
getAvgIndex
());
}
}
...
@@ -173,12 +174,12 @@ public class EvaluateServiceImpl implements EvaluateService {
...
@@ -173,12 +174,12 @@ public class EvaluateServiceImpl implements EvaluateService {
EvaluateMetricsVO
.
QueueLengthElement
queueLengthElement
=
new
EvaluateMetricsVO
.
QueueLengthElement
();
EvaluateMetricsVO
.
QueueLengthElement
queueLengthElement
=
new
EvaluateMetricsVO
.
QueueLengthElement
();
queueLengthElement
.
setDir
(
dir
);
queueLengthElement
.
setDir
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
realtimeObj
))
{
if
(
isNotEmpty
(
realtimeObj
))
{
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
queueLengthElement
.
setCurrentLength
(
crossDirDataRealtimePO
.
getLength
());
queueLengthElement
.
setCurrentLength
(
crossDirDataRealtimePO
.
getLength
());
}
}
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
histObj
))
{
if
(
isNotEmpty
(
histObj
))
{
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
queueLengthElement
.
setCompareLength
(
crossDirDataHistAvgBO
.
getAvgQueueLength
());
queueLengthElement
.
setCompareLength
(
crossDirDataHistAvgBO
.
getAvgQueueLength
());
}
}
...
@@ -199,13 +200,13 @@ public class EvaluateServiceImpl implements EvaluateService {
...
@@ -199,13 +200,13 @@ public class EvaluateServiceImpl implements EvaluateService {
EvaluateMetricsVO
.
CrossFlowElement
crossFlowElement
=
new
EvaluateMetricsVO
.
CrossFlowElement
();
EvaluateMetricsVO
.
CrossFlowElement
crossFlowElement
=
new
EvaluateMetricsVO
.
CrossFlowElement
();
crossFlowElement
.
setDir
(
dir
);
crossFlowElement
.
setDir
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
List
<
CrossDirDataRealtimePO
>
realtimeObj
=
dirObjMapRealtime
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
realtimeObj
))
{
if
(
isNotEmpty
(
realtimeObj
))
{
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
CrossDirDataRealtimePO
crossDirDataRealtimePO
=
realtimeObj
.
get
(
0
);
crossFlowElement
.
setCurrentCapacity
(
crossDirDataRealtimePO
.
getCapacity
());
crossFlowElement
.
setCurrentCapacity
(
crossDirDataRealtimePO
.
getCapacity
());
crossFlowElement
.
setCurrentFlow
(
crossDirDataRealtimePO
.
getFlow
());
crossFlowElement
.
setCurrentFlow
(
crossDirDataRealtimePO
.
getFlow
());
}
}
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
List
<
CrossDirDataHistAvgBO
>
histObj
=
dirObjMapHist
.
get
(
dir
);
if
(
CollectionUtil
.
isNotEmpty
(
histObj
))
{
if
(
isNotEmpty
(
histObj
))
{
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
CrossDirDataHistAvgBO
crossDirDataHistAvgBO
=
histObj
.
get
(
0
);
crossFlowElement
.
setCompareCapacity
(
crossDirDataHistAvgBO
.
getAvgCapacity
());
crossFlowElement
.
setCompareCapacity
(
crossDirDataHistAvgBO
.
getAvgCapacity
());
crossFlowElement
.
setCompareFlow
(
crossDirDataHistAvgBO
.
getAvgFlow
());
crossFlowElement
.
setCompareFlow
(
crossDirDataHistAvgBO
.
getAvgFlow
());
...
@@ -251,7 +252,7 @@ public class EvaluateServiceImpl implements EvaluateService {
...
@@ -251,7 +252,7 @@ public class EvaluateServiceImpl implements EvaluateService {
long
currentSeconds
=
DateUtil
.
currentSeconds
();
long
currentSeconds
=
DateUtil
.
currentSeconds
();
long
preSeconds
=
currentSeconds
-
(
minutes
+
5
)
*
60L
;
long
preSeconds
=
currentSeconds
-
(
minutes
+
5
)
*
60L
;
List
<
CrossDataHistPO
>
crossDataHistPOS
=
crossDataHistMapper
.
selectByCrossIdAndTimestamp
(
crossId
,
preSeconds
);
List
<
CrossDataHistPO
>
crossDataHistPOS
=
crossDataHistMapper
.
selectByCrossIdAndTimestamp
(
crossId
,
preSeconds
);
if
(
CollectionUtil
.
isNotEmpty
(
crossDataHistPOS
))
{
if
(
isNotEmpty
(
crossDataHistPOS
))
{
// 路口流量
// 路口流量
double
avg
=
crossDataHistPOS
.
stream
()
double
avg
=
crossDataHistPOS
.
stream
()
.
mapToInt
(
CrossDataHistPO:
:
getFlow
)
.
mapToInt
(
CrossDataHistPO:
:
getFlow
)
...
...
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