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
d18ac787
Commit
d18ac787
authored
Jun 01, 2023
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 运行模式优化
parent
66007865
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
13 additions
and
15 deletions
+13
-15
SituationDetectionServiceImpl.java
...wanji/web/service/impl/SituationDetectionServiceImpl.java
+2
-2
SignalStatusTask.java
...ce/src/main/java/net/wanji/web/task/SignalStatusTask.java
+11
-13
No files found.
signal-control-service/src/main/java/net/wanji/web/service/impl/SituationDetectionServiceImpl.java
View file @
d18ac787
...
...
@@ -643,11 +643,11 @@ public class SituationDetectionServiceImpl implements SituationDetectionService
if
(!
CollectionUtils
.
isEmpty
(
tCrossControlHists
))
{
if
(
Objects
.
nonNull
(
operationMode
))
{
if
(
operationMode
==
1
)
{
//中心优化
List
<
TCrossControlHist
>
centerOptList
=
tCrossControlHists
.
stream
().
filter
(
tCrossControlHist
->
tCrossControlHist
.
getType
()
==
5
||
tCrossControlHist
.
getType
()
=
=
1
).
collect
(
Collectors
.
toList
());
List
<
TCrossControlHist
>
centerOptList
=
tCrossControlHists
.
stream
().
filter
(
tCrossControlHist
->
tCrossControlHist
.
getType
()
<=
5
||
tCrossControlHist
.
getType
()
>
=
1
).
collect
(
Collectors
.
toList
());
BeanListUtils
.
populateList
(
centerOptList
,
signalOperationModeVOS
,
SignalOperationModeVO
.
class
);
}
if
(
operationMode
==
2
)
{
// 手动控制
List
<
TCrossControlHist
>
manualControlList
=
tCrossControlHists
.
stream
().
filter
(
item
->
item
.
getType
()
<
5
&&
item
.
getType
()
>
1
).
collect
(
Collectors
.
toList
());
List
<
TCrossControlHist
>
manualControlList
=
tCrossControlHists
.
stream
().
filter
(
item
->
item
.
getType
()
==
7
).
collect
(
Collectors
.
toList
());
BeanListUtils
.
populateList
(
manualControlList
,
signalOperationModeVOS
,
SignalOperationModeVO
.
class
);
}
if
(
operationMode
==
3
)
{
// 边缘优化
...
...
signal-control-service/src/main/java/net/wanji/web/task/SignalStatusTask.java
View file @
d18ac787
...
...
@@ -2,12 +2,12 @@ package net.wanji.web.task;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.fasterxml.jackson.core.type.TypeReference
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.common.utils.tool.BeanMapUtils
;
import
net.wanji.databus.cache.BaseCrossInfoCache
;
import
net.wanji.databus.dao.mapper.BaseCrossInfoMapper
;
import
net.wanji.databus.po.BaseCrossInfoPO
;
import
net.wanji.databus.vo.SignalStatusVO
;
import
net.wanji.feign.service.UtcFeignClients
;
...
...
@@ -29,8 +29,10 @@ import org.springframework.util.CollectionUtils;
import
java.time.LocalDateTime
;
import
java.time.ZoneOffset
;
import
java.time.format.DateTimeFormatter
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Objects
;
/**
* @author duanruiming
...
...
@@ -44,11 +46,8 @@ public class SignalStatusTask {
private
final
TDeviceStatusMapper
tDeviceStatusMapper
;
private
final
ControlHistMapper
controlHistMapper
;
private
final
TDeviceStatusLogMapper
tDeviceStatusLogMapper
;
private
final
BaseCrossInfoMapper
baseCrossInfoMapper
;
private
final
CommonEventWarnTask
commonEventWarnTask
;
private
final
BaseCrossInfoCache
baseCrossInfoCache
;
@Scheduled
(
fixedRate
=
30
*
1000
)
@Transactional
public
void
syncSignalStatus
()
{
...
...
@@ -61,9 +60,8 @@ public class SignalStatusTask {
return
;
}
// utc服务信号机状态列表
List
<
Map
<
String
,
Object
>>
source
=
(
List
<
Map
<
String
,
Object
>>)
jsonViewObject
.
getContent
();
List
<
SignalStatusVO
>
content
=
BeanMapUtils
.
mapsToObjects
(
source
,
SignalStatusVO
.
class
);
List
<
String
>
crossIdList
=
content
.
stream
().
map
(
SignalStatusVO:
:
getCrossId
).
collect
(
Collectors
.
toList
());
ObjectMapper
mapper
=
new
ObjectMapper
();
List
<
SignalStatusVO
>
content
=
mapper
.
convertValue
(
jsonViewObject
.
getContent
(),
new
TypeReference
<
List
<
SignalStatusVO
>>(){});
// 信号机状态信息
List
<
BaseCrossInfoPO
>
baseCrossInfoPOS
=
baseCrossInfoCache
.
getCrossInfoCache
();
List
<
CommonEventAlarmOutVo
>
results
=
new
ArrayList
<>();
...
...
@@ -76,7 +74,6 @@ public class SignalStatusTask {
if
(
currentSignalStatus
==
1
&&
!
Objects
.
equals
(
0
,
currentFaultType
))
{
currentSignalStatus
=
2
;
}
// 更新数据库状态
updateSignalStatus
(
signalStatusVO
,
crossId
,
name
,
currentSignalStatus
,
currentFaultType
,
results
);
insertControlHist
(
signalStatusVO
);
...
...
@@ -157,8 +154,9 @@ public class SignalStatusTask {
String
crossId
=
signalStatusVO
.
getCrossId
();
Integer
controlType
=
signalStatusVO
.
getControlType
();
TCrossControlHist
tCrossControlHist
=
controlHistMapper
.
selectRecentOne
(
crossId
);
if
(
Objects
.
nonNull
(
tCrossControlHist
)
&&
!
Objects
.
equals
(
controlType
,
tCrossControlHist
.
getType
()))
{
controlHistMapper
.
insertOne
(
crossId
,
controlType
,
"未知"
);
if
(
Objects
.
nonNull
(
tCrossControlHist
)
&&
!
Objects
.
equals
(
controlType
,
tCrossControlHist
.
getType
())
&&
StringUtils
.
equals
(
"未知"
,
tCrossControlHist
.
getOperationUser
()))
{
controlHistMapper
.
insertOne
(
crossId
,
7
,
"未知"
);
}
}
...
...
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