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
e668828c
Commit
e668828c
authored
Dec 31, 2024
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[add] 优化控制表中无数据插入逻辑;优化事件告警逻辑
parent
a63fd6da
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
12 deletions
+19
-12
SignalCommandSyncTask.java
...c/main/java/net/wanji/utc/task/SignalCommandSyncTask.java
+19
-12
No files found.
signal-utc-service/src/main/java/net/wanji/utc/task/SignalCommandSyncTask.java
View file @
e668828c
...
...
@@ -3,7 +3,6 @@ package net.wanji.utc.task;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.utils.tool.BeanListUtils
;
import
net.wanji.common.utils.tool.JacksonUtils
;
import
net.wanji.databus.dao.entity.SignalCommandLogPO
;
import
net.wanji.databus.dao.entity.SignalCommandPO
;
import
net.wanji.databus.dao.mapper.SignalCommandLogPOMapper
;
...
...
@@ -51,7 +50,6 @@ public class SignalCommandSyncTask {
ConcurrentHashMap
<
String
,
SignalCommandPO
>
crossLightsStatusMap
=
SignalStatusTask
.
crossLightsStatusMap
;
LambdaQueryWrapper
<
SignalCommandPO
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
();
List
<
SignalCommandPO
>
signalCommandPOS
=
signalCommandPOMapper
.
selectList
(
lambdaQueryWrapper
);
sendAlarmKafka
(
signalCommandPOS
);
if
(
Objects
.
nonNull
(
crossLightsStatusMap
)
&&
!
crossLightsStatusMap
.
isEmpty
())
{
List
<
SignalCommandPO
>
insertList
=
new
ArrayList
<>();
List
<
SignalCommandPO
>
updateList
=
new
ArrayList
<>();
...
...
@@ -79,17 +77,12 @@ public class SignalCommandSyncTask {
updateList
.
add
(
updatePO
);
}
}
else
{
SignalCommandPO
insertPO
=
new
SignalCommandPO
();
insertPO
.
setCrossId
(
crossId
);
insertPO
.
setStatus
(
statusCache
);
insertPO
.
setRunMode
(
runModeCache
);
insertPO
.
setCommandResult
(
1
);
insertPO
.
setUpdateCount
(
0
);
insertPO
.
setInsertTime
(
new
Date
());
insertPO
.
setLampTime
(
lampTime
);
insertList
.
add
(
insertPO
);
// 表中没有当前路口插入数据
insertList
.
add
(
insertSignalCommandPO
(
crossId
,
statusCache
,
runModeCache
,
lampTime
));
}
}
else
{
// 表中一条数据没有,插入路口
insertList
.
add
(
insertSignalCommandPO
(
crossId
,
statusCache
,
runModeCache
,
lampTime
));
log
.
error
(
"路口灯态缓存为空:{}"
,
crossLightsStatusMap
);
}
}
catch
(
Exception
e
)
{
...
...
@@ -109,15 +102,29 @@ public class SignalCommandSyncTask {
signalCommandLogPOMapper
.
updateBatch
(
signalCommandLogPOS
);
log
.
info
(
"路口状态控制模式变动,数据库更新成功:{}"
,
updateList
);
}
signalCommandPOS
.
addAll
(
insertList
);
signalCommandPOS
.
addAll
(
updateList
);
sendAlarmKafka
(
signalCommandPOS
);
}
else
{
log
.
error
(
"从路口灯态缓存获取控制模式在线离线状态为空:{}"
,
crossLightsStatusMap
);
}
}
catch
(
Exception
e
)
{
log
.
error
(
"信号机状态同步异常:"
,
e
);
}
}
private
static
SignalCommandPO
insertSignalCommandPO
(
String
crossId
,
Integer
statusCache
,
String
runModeCache
,
String
lampTime
)
{
SignalCommandPO
insertPO
=
new
SignalCommandPO
();
insertPO
.
setCrossId
(
crossId
);
insertPO
.
setStatus
(
statusCache
);
insertPO
.
setRunMode
(
runModeCache
);
insertPO
.
setCommandResult
(
1
);
insertPO
.
setUpdateCount
(
0
);
insertPO
.
setInsertTime
(
new
Date
());
insertPO
.
setLampTime
(
lampTime
);
return
insertPO
;
}
private
void
sendAlarmKafka
(
List
<
SignalCommandPO
>
signalCommandPOS
)
throws
Exception
{
List
<
LightStatusAlarmDTO
>
lightStatusAlarmDTOS
=
new
ArrayList
<>();
try
{
...
...
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