Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
黄嘉阳
/
iot-platform-server
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
47cdf891
authored
Feb 27, 2024
by
罗志长
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
fix: 设备状态同步
parent
6ba86919
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
10 additions
and
6 deletions
server-service/src/main/java/com/makeit/service/platform/device/impl/PlatDeviceServiceImpl.java
server-web/src/main/java/com/makeit/mqtt/PushCallback.java
server-service/src/main/java/com/makeit/service/platform/device/impl/PlatDeviceServiceImpl.java
View file @
47cdf891
...
...
@@ -1283,6 +1283,8 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev
return
;
}
RedisUtil
.
delete
(
key
);
this
.
update
(
new
UpdateWrapper
<
PlatDevice
>().
lambda
()
.
set
(
PlatDevice:
:
getStatus
,
"online"
).
eq
(
PlatDevice:
:
getOriDeviceId
,
deviceId
));
log
.
info
(
"设备:{} 故障处理, 恢复正常"
,
deviceId
);
}
}
...
...
server-web/src/main/java/com/makeit/mqtt/PushCallback.java
View file @
47cdf891
...
...
@@ -122,7 +122,7 @@ public class PushCallback implements MqttCallbackExtended {
return
;
}
handle
Fault
(
device
);
handle
Status
(
device
);
CompletableFuture
.
runAsync
(()
->
{
checkAlarm
(
device
);
...
...
@@ -213,8 +213,7 @@ public class PushCallback implements MqttCallbackExtended {
}
String
deviceId
=
device
.
getDeviceId
();
String
messageType
=
device
.
getMessageType
();
//更新设备状态
platDeviceService
.
updateDeviceStatus
(
messageType
,
deviceId
,
""
);
if
(
StringUtils
.
equalsAnyIgnoreCase
(
messageType
,
DeviceState
.
online
.
getValue
()))
{
return
;
}
...
...
@@ -275,14 +274,17 @@ public class PushCallback implements MqttCallbackExtended {
}
/**
* 处理设备
故障
* 处理设备
状态
*/
public
void
handle
Fault
(
DeviceInfo
device
)
{
public
void
handle
Status
(
DeviceInfo
device
)
{
if
(!
REPORT_PROPERTY
.
equals
(
device
.
getMessageType
()))
{
return
;
}
CompletableFuture
.
runAsync
(()
->
{
platDeviceService
.
handleFault
(
device
);
// 处理设备故障
platDeviceService
.
handleFault
(
device
);
// 更新设备状态
platDeviceService
.
updateDeviceStatus
(
device
.
getMessageType
(),
device
.
getDeviceId
(),
""
);
},
taskExecutor
);
}
...
...
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