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
79b84a01
Commit
79b84a01
authored
Nov 08, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 方案评价,修改获取车道ID XML
parent
0af226e5
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
4 deletions
+48
-4
TrendServiceImpl.java
...ain/java/net/wanji/opt/service/impl/TrendServiceImpl.java
+46
-4
GreenwaveDetailVO.java
...ice/src/main/java/net/wanji/opt/vo/GreenwaveDetailVO.java
+2
-0
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/TrendServiceImpl.java
View file @
79b84a01
...
@@ -467,17 +467,59 @@ public class TrendServiceImpl implements TrendService {
...
@@ -467,17 +467,59 @@ public class TrendServiceImpl implements TrendService {
// 绿波带
// 绿波带
if
(
dir
==
0
)
{
// 正向
if
(
dir
==
0
)
{
// 正向
res
.
setForwardGreenwaveList
(
buildForwardGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
));
List
<
GreenwaveDetailVO
.
GreenwavePoint
>
greenwavePoints
=
buildForwardGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
);
addStartOffset
(
greenwavePoints
,
greenwaveCrossList
);
res
.
setForwardGreenwaveList
(
greenwavePoints
);
}
else
if
(
dir
==
1
)
{
// 反向
}
else
if
(
dir
==
1
)
{
// 反向
res
.
setReverseGreenwaveList
(
buildReverseGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
));
List
<
GreenwaveDetailVO
.
GreenwavePoint
>
greenwavePoints
=
buildReverseGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
);
addStartOffset
(
greenwavePoints
,
greenwaveCrossList
);
res
.
setReverseGreenwaveList
(
greenwavePoints
);
}
else
if
(
dir
==
2
)
{
// 双向
}
else
if
(
dir
==
2
)
{
// 双向
res
.
setForwardGreenwaveList
(
buildForwardGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
));
List
<
GreenwaveDetailVO
.
GreenwavePoint
>
greenwavePoints
=
res
.
setReverseGreenwaveList
(
buildReverseGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
));
buildForwardGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
);
addStartOffset
(
greenwavePoints
,
greenwaveCrossList
);
res
.
setForwardGreenwaveList
(
greenwavePoints
);
List
<
GreenwaveDetailVO
.
GreenwavePoint
>
greenwavePoints1
=
buildReverseGreenwaveList
(
greenwaveCrossList
,
greenwaveInfoPO
);
addStartOffset
(
greenwavePoints1
,
greenwaveCrossList
);
res
.
setReverseGreenwaveList
(
greenwavePoints1
);
}
}
return
res
;
return
res
;
}
}
private
void
addStartOffset
(
List
<
GreenwaveDetailVO
.
GreenwavePoint
>
greenwavePoints
,
List
<
GreenwaveDetailVO
.
GreenwaveCross
>
greenwaveCrossList
)
{
for
(
GreenwaveDetailVO
.
GreenwavePoint
greenwavePoint
:
greenwavePoints
)
{
String
crossId
=
greenwavePoint
.
getCrossId
();
for
(
GreenwaveDetailVO
.
GreenwaveCross
greenwaveCross
:
greenwaveCrossList
)
{
String
crossId1
=
greenwaveCross
.
getCrossId
();
if
(
Objects
.
equals
(
crossId1
,
crossId
))
{
Integer
coordOffset
=
greenwavePoint
.
getCoordOffset
();
Integer
seconds
=
calcTimeFromStart
(
greenwaveCross
);
greenwavePoint
.
setOffsetToStart
(
coordOffset
+
seconds
);
}
}
}
}
private
Integer
calcTimeFromStart
(
GreenwaveDetailVO
.
GreenwaveCross
greenwaveCross
)
{
int
res
=
0
;
List
<
GreenwaveDetailVO
.
GreenwavePhase
>
phaseList
=
greenwaveCross
.
getGreenwavePhaseList
();
for
(
GreenwaveDetailVO
.
GreenwavePhase
greenwavePhase
:
phaseList
)
{
Integer
seconds
=
greenwavePhase
.
getSeconds
();
Integer
isCoordinate
=
greenwavePhase
.
getIsCoordinate
();
if
(
1
!=
isCoordinate
)
{
res
+=
seconds
;
}
else
{
break
;
}
}
return
res
;
}
private
Integer
calcPointerSecond
(
String
startTime
,
int
cycle
)
{
private
Integer
calcPointerSecond
(
String
startTime
,
int
cycle
)
{
// 计算当前小时分钟数与录波开始时间相差的秒数
// 计算当前小时分钟数与录波开始时间相差的秒数
int
currentSecondDiff
=
calcCurrentSecondDiff
(
startTime
);
int
currentSecondDiff
=
calcCurrentSecondDiff
(
startTime
);
...
...
signal-optimize-service/src/main/java/net/wanji/opt/vo/GreenwaveDetailVO.java
View file @
79b84a01
...
@@ -90,5 +90,7 @@ public class GreenwaveDetailVO {
...
@@ -90,5 +90,7 @@ public class GreenwaveDetailVO {
private
Integer
coordOffset
;
private
Integer
coordOffset
;
@ApiModelProperty
(
value
=
"路口顺序号"
)
@ApiModelProperty
(
value
=
"路口顺序号"
)
private
Integer
sort
;
private
Integer
sort
;
@ApiModelProperty
(
value
=
"距离开始相位时差(秒)"
)
private
Integer
offsetToStart
;
}
}
}
}
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