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
7efd40f6
Commit
7efd40f6
authored
Nov 30, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 绿波合并时段抽取至配置文件
parent
771c0a9a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
44 additions
and
12 deletions
+44
-12
GreenwaveMergeConfig.java
.../main/java/net/wanji/opt/config/GreenwaveMergeConfig.java
+19
-0
MainlineEvaluateServiceImpl.java
...t/wanji/opt/service/impl/MainlineEvaluateServiceImpl.java
+19
-11
application-local.yaml
...ptimize-service/src/main/resources/application-local.yaml
+6
-1
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/config/GreenwaveMergeConfig.java
0 → 100644
View file @
7efd40f6
package
net
.
wanji
.
opt
.
config
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
/**
* @author Kent HAN
* @date 2023/11/30 11:07
*/
@ConfigurationProperties
(
prefix
=
"greenwave-merge"
)
@Component
@Data
public
class
GreenwaveMergeConfig
{
List
<
String
>
weekDay
;
List
<
String
>
weekEnd
;
}
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/MainlineEvaluateServiceImpl.java
View file @
7efd40f6
...
...
@@ -13,6 +13,7 @@ import net.wanji.databus.dao.mapper.*;
import
net.wanji.databus.po.*
;
import
net.wanji.databus.vo.CrossIdAndNameVO
;
import
net.wanji.opt.bo.*
;
import
net.wanji.opt.config.GreenwaveMergeConfig
;
import
net.wanji.opt.dao.mapper.strategy.SceneStrategyMapper
;
import
net.wanji.opt.dao.mapper.strategy.StrategyMapper
;
import
net.wanji.databus.dao.mapper.GreenwaveInfoMapper
;
...
...
@@ -59,6 +60,7 @@ public class MainlineEvaluateServiceImpl implements MainlineEvaluateService {
private
final
CrossPlanMapper
crossPlanMapper
;
private
final
BaseCrossPlanMapper
baseCrossPlanMapper
;
private
final
BaseCrossSchemeMapper
baseCrossSchemeMapper
;
private
final
GreenwaveMergeConfig
greenwaveMergeConfig
;
SimpleDateFormat
hourMinuteFormat
=
new
SimpleDateFormat
(
"HH:mm"
);
SimpleDateFormat
dayFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
...
...
@@ -73,7 +75,7 @@ public class MainlineEvaluateServiceImpl implements MainlineEvaluateService {
@Qualifier
(
"baseCrossTurnInfoMapper"
)
BaseCrossTurnInfoMapper
baseCrossTurnInfoMapper
,
CrossBaseLaneInfoMapper
crossBaseLaneInfoMapper
,
@Qualifier
(
"laneInfoMapper"
)
LaneInfoMapper
laneInfoMapper
,
CrossDirDataHistMapper
crossDirDataHistMapper
,
CrossDataHistMapper
crossDataHistMapper
,
CrossTurnDataHistMapper
crossTurnDataHistMapper
,
CrossLaneDataHistMapper
crossLaneDataHistMapper
,
@Qualifier
(
"greenwaveInfoMapper"
)
GreenwaveInfoMapper
greenwaveInfoMapper
,
@Qualifier
(
"greenwaveHistMapper"
)
GreenwaveHistMapper
greenwaveHistMapper
,
@Qualifier
(
"greenwaveCrossMapper"
)
GreenwaveCrossMapper
greenwaveCrossMapper
,
@Qualifier
(
"baseCrossInfoMapper"
)
BaseCrossInfoMapper
baseCrossInfoMapper
,
@Qualifier
(
"greenwaveSceneMapper"
)
GreenwaveSceneMapper
greenwaveSceneMapper
,
@Qualifier
(
"sceneStrategyMapper"
)
SceneStrategyMapper
sceneStrategyMapper
,
@Qualifier
(
"strategyMapper"
)
StrategyMapper
strategyMapper
,
@Qualifier
(
"baseCrossSectionMapper"
)
BaseCrossSectionMapper
baseCrossSectionMapper
,
@Qualifier
(
"ridInfoMapper"
)
RidInfoMapper
ridInfoMapper
,
CrossPlanMapper
crossPlanMapper
,
@Qualifier
(
"baseCrossPlanMapper"
)
BaseCrossPlanMapper
baseCrossPlanMapper
,
@Qualifier
(
"baseCrossSchemeMapper"
)
BaseCrossSchemeMapper
baseCrossSchemeMapper
)
{
CrossDirDataHistMapper
crossDirDataHistMapper
,
CrossDataHistMapper
crossDataHistMapper
,
CrossTurnDataHistMapper
crossTurnDataHistMapper
,
CrossLaneDataHistMapper
crossLaneDataHistMapper
,
@Qualifier
(
"greenwaveInfoMapper"
)
GreenwaveInfoMapper
greenwaveInfoMapper
,
@Qualifier
(
"greenwaveHistMapper"
)
GreenwaveHistMapper
greenwaveHistMapper
,
@Qualifier
(
"greenwaveCrossMapper"
)
GreenwaveCrossMapper
greenwaveCrossMapper
,
@Qualifier
(
"baseCrossInfoMapper"
)
BaseCrossInfoMapper
baseCrossInfoMapper
,
@Qualifier
(
"greenwaveSceneMapper"
)
GreenwaveSceneMapper
greenwaveSceneMapper
,
@Qualifier
(
"sceneStrategyMapper"
)
SceneStrategyMapper
sceneStrategyMapper
,
@Qualifier
(
"strategyMapper"
)
StrategyMapper
strategyMapper
,
@Qualifier
(
"baseCrossSectionMapper"
)
BaseCrossSectionMapper
baseCrossSectionMapper
,
@Qualifier
(
"ridInfoMapper"
)
RidInfoMapper
ridInfoMapper
,
CrossPlanMapper
crossPlanMapper
,
@Qualifier
(
"baseCrossPlanMapper"
)
BaseCrossPlanMapper
baseCrossPlanMapper
,
@Qualifier
(
"baseCrossSchemeMapper"
)
BaseCrossSchemeMapper
baseCrossSchemeMapper
,
GreenwaveMergeConfig
greenwaveMergeConfig
)
{
this
.
baseCrossDirInfoMapper
=
baseCrossDirInfoMapper
;
this
.
baseCrossTurnInfoMapper
=
baseCrossTurnInfoMapper
;
this
.
laneInfoMapper
=
laneInfoMapper
;
...
...
@@ -93,6 +95,7 @@ public class MainlineEvaluateServiceImpl implements MainlineEvaluateService {
this
.
crossPlanMapper
=
crossPlanMapper
;
this
.
baseCrossPlanMapper
=
baseCrossPlanMapper
;
this
.
baseCrossSchemeMapper
=
baseCrossSchemeMapper
;
this
.
greenwaveMergeConfig
=
greenwaveMergeConfig
;
}
@Override
...
...
@@ -777,18 +780,23 @@ public class MainlineEvaluateServiceImpl implements MainlineEvaluateService {
}
private
List
<
int
[]>
getMergingPeriods
(
boolean
isWeekday
)
{
List
<
int
[]>
res
=
new
ArrayList
<>();
if
(
isWeekday
)
{
return
Arrays
.
asList
(
new
int
[]
{
timeToInt
(
"07:00"
),
timeToInt
(
"09:30"
)},
new
int
[]
{
timeToInt
(
"09:30"
),
timeToInt
(
"16:30"
)},
new
int
[]
{
timeToInt
(
"16:30"
),
timeToInt
(
"19:00"
)},
new
int
[]
{
timeToInt
(
"21:30"
),
timeToInt
(
"23:59"
)}
);
List
<
String
>
weekDays
=
greenwaveMergeConfig
.
getWeekDay
();
fillRes
(
weekDays
,
res
);
}
else
{
return
Arrays
.
asList
(
new
int
[]
{
timeToInt
(
"13:30"
),
timeToInt
(
"20:00"
)},
new
int
[]
{
timeToInt
(
"21:30"
),
timeToInt
(
"23:59"
)}
);
List
<
String
>
weekEnds
=
greenwaveMergeConfig
.
getWeekEnd
();
fillRes
(
weekEnds
,
res
);
}
return
res
;
}
private
void
fillRes
(
List
<
String
>
days
,
List
<
int
[]>
res
)
{
for
(
String
day
:
days
)
{
// "07:00,09:30"
String
[]
split
=
day
.
split
(
","
);
int
[]
ints
=
{
timeToInt
(
split
[
0
]),
timeToInt
(
split
[
1
])};
res
.
add
(
ints
);
}
}
...
...
signal-optimize-service/src/main/resources/application-local.yaml
View file @
7efd40f6
...
...
@@ -139,4 +139,9 @@ crossOptParam:
#车头时距
maxVehheadTime
:
5.0
minVehheadTime
:
2.0
defaultVehheadTime
:
2.8
\ No newline at end of file
defaultVehheadTime
:
2.8
# 合并绿波时段
greenwave-merge
:
weekday
:
[
"
07:00,09:30"
,
"
09:30,16:30"
,
"
16:30,19:00"
,
"
21:30,23:59"
]
weekend
:
[
"
13:30,20:00"
,
"
21:30,23:59"
]
\ No newline at end of file
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