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
jinan
traffic-signal-platform
Commits
823141f7
Commit
823141f7
authored
Apr 21, 2025
by
zhoushiguang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
e6dca8a0
31d82653
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
55 additions
and
52 deletions
+55
-52
TEventOptimizeInfoController.java
...trollerv2/eventoptimize/TEventOptimizeInfoController.java
+7
-7
HisenseGreenChartTask.java
...c/main/java/net/wanji/opt/task/HisenseGreenChartTask.java
+39
-37
TEventOptimizeInfoController.java
...trollerv2/eventoptimize/TEventOptimizeInfoController.java
+7
-7
logback-spring.xml
...al-optimize-service/src/main/resources/logback-spring.xml
+2
-1
No files found.
signal-optimize-data-compute/src/main/java/net/wanji/opt/controllerv2/eventoptimize/TEventOptimizeInfoController.java
View file @
823141f7
...
...
@@ -32,12 +32,12 @@ public class TEventOptimizeInfoController {
// 新增接口用于调用带有条件的分页查询
@ApiOperation
(
value
=
"报警优化信息-事件优化记录查询-根据条件分页查询记录"
,
notes
=
"根据条件分页查询记录"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
,
hidden
=
false
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"startTime"
,
value
=
"开始时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 00:00:00"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"结束时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 23:00:00"
),
@ApiImplicitParam
(
name
=
"crossId"
,
value
=
"路口id"
,
required
=
false
,
dataType
=
"String"
,
defaultValue
=
""
,
example
=
"13NAF0B5PH0"
),
@ApiImplicitParam
(
name
=
"greenId"
,
value
=
"干线id"
,
required
=
false
,
dataType
=
"
int
"
,
defaultValue
=
""
,
example
=
"4"
),
@ApiImplicitParam
(
name
=
"greenId"
,
value
=
"干线id"
,
required
=
false
,
dataType
=
"
Integer
"
,
defaultValue
=
""
,
example
=
"4"
),
})
@GetMapping
(
"/selectPageWithCrossIdAndGreenId"
)
public
JsonViewObject
selectPageWithCrossIdAndGreenId
(
...
...
@@ -62,8 +62,8 @@ public class TEventOptimizeInfoController {
@ApiOperation
(
value
=
"报警优化信息-根据条件分页查询记录"
,
notes
=
"根据条件分页查询记录"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
,
hidden
=
false
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"startTime"
,
value
=
"开始时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 00:00:00"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"结束时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 23:00:00"
),
@ApiImplicitParam
(
name
=
"crossId"
,
value
=
"路口id"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
""
,
example
=
"13MOD0B5SI0"
),
...
...
@@ -134,8 +134,8 @@ public class TEventOptimizeInfoController {
// 新增绿波干线接口用于调用带有条件的分页查询
@ApiOperation
(
value
=
"报警优化干线信息-根据条件分页查询记录"
,
notes
=
"根据条件分页查询记录"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
,
hidden
=
false
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"startTime"
,
value
=
"开始时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
false
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 00:00:00"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"结束时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
false
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 23:00:00"
),
@ApiImplicitParam
(
name
=
"greenId"
,
value
=
"绿波干线"
,
required
=
true
,
dataType
=
"integer"
,
defaultValue
=
"1"
),
...
...
signal-optimize-data-compute/src/main/java/net/wanji/opt/task/HisenseGreenChartTask.java
View file @
823141f7
...
...
@@ -36,7 +36,7 @@ import java.util.stream.Collectors;
*/
@Component
@Slf4j
@Profile
(
"
docker
"
)
@Profile
(
"
test
"
)
public
class
HisenseGreenChartTask
{
@Resource
...
...
@@ -47,7 +47,7 @@ public class HisenseGreenChartTask {
private
GreenChartSchemeHistMapper
greenChartSchemeHistMapper
;
@Scheduled
(
fixedRate
=
1
0
*
60
*
1000
,
initialDelay
=
1
*
60
*
1000
)
@Scheduled
(
fixedRate
=
1
*
60
*
1000
,
initialDelay
=
1
*
60
*
1000
)
public
void
getGreenChart
()
{
try
{
ObjectMapper
mapper
=
JacksonUtils
.
getInstance
();
...
...
@@ -83,9 +83,7 @@ public class HisenseGreenChartTask {
// 1.根据绿波带长度和速度计算行程时间
// 2.根据相位差,行程时间,海信环图计算绿灯红灯点位 正向 crossRedTimesMap 反向backCrossRedTimesMap
//Map<Integer, List<GreenCrossDirDTO>> greenMap = greenCrossDirCache.stream().collect(Collectors.groupingBy(GreenCrossDirDTO::getGreenId));
// todo 测试只需要绿波编号1
Map
<
Integer
,
List
<
GreenCrossDirDTO
>>
greenMap
=
greenCrossDirCache
.
stream
().
filter
(
po
->
Objects
.
equals
(
1
,
po
.
getGreenId
())).
collect
(
Collectors
.
groupingBy
(
GreenCrossDirDTO:
:
getGreenId
));
Map
<
Integer
,
List
<
GreenCrossDirDTO
>>
greenMap
=
greenCrossDirCache
.
stream
().
collect
(
Collectors
.
groupingBy
(
GreenCrossDirDTO:
:
getGreenId
));
List
<
GreenBeltChartDTO
>
greenBeltChartDTOS
=
new
ArrayList
<>();
for
(
Map
.
Entry
<
Integer
,
List
<
GreenCrossDirDTO
>>
entry
:
greenMap
.
entrySet
())
{
GreenBeltChartDTO
greenBeltChartDTO
=
new
GreenBeltChartDTO
();
...
...
@@ -184,8 +182,8 @@ public class HisenseGreenChartTask {
greenChartSchemeHist
.
setQueryDate
(
date
);
greenChartSchemeHistMapper
.
insert
(
greenChartSchemeHist
);
}
log
.
info
(
"绿波图实体参数:{}"
,
mapper
.
writeValueAsString
(
results
));
log
.
info
(
"绿波路口方案环图信息:{}"
,
mapper
.
writeValueAsString
(
greenSchemeRingPhaseMap
));
log
.
debug
(
"绿波图实体参数:{}"
,
mapper
.
writeValueAsString
(
results
));
log
.
debug
(
"绿波路口方案环图信息:{}"
,
mapper
.
writeValueAsString
(
greenSchemeRingPhaseMap
));
}
}
catch
(
Exception
e
)
{
log
.
error
(
"通过海信方案处理绿波波定时任务失败:{}"
,
e
);
...
...
@@ -234,6 +232,7 @@ public class HisenseGreenChartTask {
List
<
List
<
Double
>>
firstList
=
crossGreenTimesMap
.
get
(
firstCrossId
);
List
<
List
<
Double
>>
secondList
=
crossGreenTimesMap
.
get
(
secondCrossId
);
// 第一个路口循环绿灯开始时间
if
(!
CollectionUtils
.
isEmpty
(
firstList
)
&&
!
CollectionUtils
.
isEmpty
(
secondList
))
{
for
(
int
i1
=
0
;
i1
<
firstList
.
size
();
i1
++)
{
List
<
Double
>
greenStartEnd
=
firstList
.
get
(
i1
);
Double
greenStart
=
greenStartEnd
.
get
(
0
);
...
...
@@ -270,6 +269,7 @@ public class HisenseGreenChartTask {
secondGreenStartList
.
add
(
Arrays
.
asList
(
start2
,
end2
));
}
}
}
greenStartMap
.
put
(
firstCrossId
,
firstGreenStartList
);
greenStartMap
.
put
(
secondCrossId
,
secondGreenStartList
);
}
...
...
@@ -311,6 +311,10 @@ public class HisenseGreenChartTask {
String
crossKey
=
CommonUtils
.
getStrJoin
(
String
.
valueOf
(
crossId
),
String
.
valueOf
(
indexDir
));
// 获取海信环相位信息
SchemeGreenDirGreenTimeDTO
firstGreenTimeDTO
=
greenDirGreenTimeMap
.
get
(
crossKey
);
if
(
Objects
.
isNull
(
firstGreenTimeDTO
))
{
log
.
error
(
"当前路口:{}, 没有环相位信息异常"
,
crossKey
);
continue
;
}
Integer
cycleLen
=
firstGreenTimeDTO
.
getCycleLen
();
// * 1.0转Double
Double
offset
=
firstGreenTimeDTO
.
getOffset
()
*
1.0
;
...
...
@@ -375,8 +379,6 @@ public class HisenseGreenChartTask {
private
Map
<
String
,
GreenwaveRealtimePO
>
getGreenRealTimeMap
()
{
Map
<
String
,
GreenwaveRealtimePO
>
realTimeMap
=
new
HashMap
<>();
LambdaQueryWrapper
<
GreenwaveRealtimePO
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
// todo 测试绿波1
queryWrapper
.
eq
(
GreenwaveRealtimePO:
:
getGreenId
,
1
);
List
<
GreenwaveRealtimePO
>
greenwaveRealtimePOList
=
greenwaveRealtimeMapper
.
selectList
(
queryWrapper
);
for
(
GreenwaveRealtimePO
greenwaveRealtimePO
:
greenwaveRealtimePOList
)
{
Integer
greenId
=
greenwaveRealtimePO
.
getGreenId
();
...
...
signal-optimize-service/src/main/java/net/wanji/opt/controllerv2/eventoptimize/TEventOptimizeInfoController.java
View file @
823141f7
...
...
@@ -32,12 +32,12 @@ public class TEventOptimizeInfoController {
// 新增接口用于调用带有条件的分页查询
@ApiOperation
(
value
=
"报警优化信息-事件优化记录查询-根据条件分页查询记录"
,
notes
=
"根据条件分页查询记录"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
,
hidden
=
false
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
int
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"
Integer
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"startTime"
,
value
=
"开始时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 00:00:00"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"结束时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 23:00:00"
),
@ApiImplicitParam
(
name
=
"crossId"
,
value
=
"路口id"
,
required
=
false
,
dataType
=
"String"
,
defaultValue
=
""
,
example
=
"13NAF0B5PH0"
),
@ApiImplicitParam
(
name
=
"greenId"
,
value
=
"干线id"
,
required
=
false
,
dataType
=
"
int
"
,
defaultValue
=
""
,
example
=
"4"
),
@ApiImplicitParam
(
name
=
"greenId"
,
value
=
"干线id"
,
required
=
false
,
dataType
=
"
Integer
"
,
defaultValue
=
""
,
example
=
"4"
),
})
@GetMapping
(
"/selectPageWithCrossIdAndGreenId"
)
public
JsonViewObject
selectPageWithCrossIdAndGreenId
(
...
...
@@ -62,8 +62,8 @@ public class TEventOptimizeInfoController {
@ApiOperation
(
value
=
"报警优化信息-根据条件分页查询记录"
,
notes
=
"根据条件分页查询记录"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
,
hidden
=
false
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"int"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"int"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"int
eger
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"int
eger
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"startTime"
,
value
=
"开始时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 00:00:00"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"结束时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 23:00:00"
),
@ApiImplicitParam
(
name
=
"crossId"
,
value
=
"路口id"
,
required
=
true
,
dataType
=
"String"
,
defaultValue
=
""
,
example
=
"13MOD0B5SI0"
),
...
...
@@ -134,8 +134,8 @@ public class TEventOptimizeInfoController {
// 新增绿波干线接口用于调用带有条件的分页查询
@ApiOperation
(
value
=
"报警优化干线信息-根据条件分页查询记录"
,
notes
=
"根据条件分页查询记录"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
,
hidden
=
false
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"int"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"int"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"currentPage"
,
value
=
"页数"
,
required
=
true
,
dataType
=
"int
eger
"
,
defaultValue
=
"1"
,
example
=
"1"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"每页条数"
,
required
=
true
,
dataType
=
"int
eger
"
,
defaultValue
=
"10"
),
@ApiImplicitParam
(
name
=
"startTime"
,
value
=
"开始时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
false
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 00:00:00"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"结束时间,格式:yyyy-MM-dd HH:mm:ss"
,
required
=
false
,
dataType
=
"String"
,
defaultValue
=
"2025-03-21 23:00:00"
),
@ApiImplicitParam
(
name
=
"greenId"
,
value
=
"绿波干线"
,
required
=
true
,
dataType
=
"integer"
,
defaultValue
=
"1"
),
...
...
signal-optimize-service/src/main/resources/logback-spring.xml
View file @
823141f7
...
...
@@ -53,6 +53,7 @@
<file>
${LOG_PATH}/opt/error.log
</file>
<filter
class=
"ch.qos.logback.classic.filter.ThresholdFilter"
>
<level>
ERROR
</level>
<level>
WARN
</level>
</filter>
>
<encoder>
<pattern>
${normal-pattern}
</pattern>
...
...
@@ -68,7 +69,7 @@
</rollingPolicy>
</appender>
<root
level=
"
INFO
"
>
<root
level=
"
DEBUG
"
>
<appender-ref
ref=
"consoleLog"
/>
<appender-ref
ref=
"fileInfoLog"
/>
<appender-ref
ref=
"fileErrorLog"
/>
...
...
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