Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
device-new-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
device-new-platform
Commits
28db3b8a
Commit
28db3b8a
authored
May 07, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加告警统计信息
parent
17a72034
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
28 additions
and
6 deletions
+28
-6
device-manager/src/main/java/com/mortals/xhx/busiz/web/DeviceApiController.java
...n/java/com/mortals/xhx/busiz/web/DeviceApiController.java
+5
-1
device-manager/src/main/java/com/mortals/xhx/common/key/RedisKey.java
...er/src/main/java/com/mortals/xhx/common/key/RedisKey.java
+4
-0
device-manager/src/main/java/com/mortals/xhx/daemon/task/DeviceModuleUseTaskImpl.java
.../com/mortals/xhx/daemon/task/DeviceModuleUseTaskImpl.java
+1
-2
device-manager/src/main/java/com/mortals/xhx/daemon/task/DeviceStatTaskImpl.java
.../java/com/mortals/xhx/daemon/task/DeviceStatTaskImpl.java
+18
-3
No files found.
device-manager/src/main/java/com/mortals/xhx/busiz/web/DeviceApiController.java
View file @
28db3b8a
...
@@ -32,6 +32,7 @@ import com.mortals.xhx.busiz.rsp.*;
...
@@ -32,6 +32,7 @@ import com.mortals.xhx.busiz.rsp.*;
import
com.mortals.xhx.common.code.*
;
import
com.mortals.xhx.common.code.*
;
import
com.mortals.xhx.common.key.Constant
;
import
com.mortals.xhx.common.key.Constant
;
import
com.mortals.xhx.common.key.QueueKey
;
import
com.mortals.xhx.common.key.QueueKey
;
import
com.mortals.xhx.common.key.RedisKey
;
import
com.mortals.xhx.common.model.DefaultTbQueueMsgHeaders
;
import
com.mortals.xhx.common.model.DefaultTbQueueMsgHeaders
;
import
com.mortals.xhx.common.model.MessageHeader
;
import
com.mortals.xhx.common.model.MessageHeader
;
import
com.mortals.xhx.common.pdu.RespData
;
import
com.mortals.xhx.common.pdu.RespData
;
...
@@ -231,7 +232,10 @@ public class DeviceApiController {
...
@@ -231,7 +232,10 @@ public class DeviceApiController {
deviceEntity
.
setOnlineTime
(
new
Date
());
deviceEntity
.
setOnlineTime
(
new
Date
());
deviceEntity
.
setDeviceStatus
(
DeviceStatusEnum
.
在线
.
getValue
());
deviceEntity
.
setDeviceStatus
(
DeviceStatusEnum
.
在线
.
getValue
());
deviceEntity
.
setDeviceVersion
(
req
.
getDeviceVersion
()
==
null
?
""
:
req
.
getDeviceVersion
());
deviceEntity
.
setDeviceVersion
(
req
.
getDeviceVersion
()
==
null
?
""
:
req
.
getDeviceVersion
());
deviceService
.
getDeviceDao
().
update
(
deviceEntity
);
//todo 延迟队列更新 此时进入redis 队列
cacheService
.
rpush
(
RedisKey
.
KEY_DEVICE_ONLINE_QUEUE
,
deviceEntity
);
//deviceService.getDeviceDao().update(deviceEntity);
rsp
.
setData
(
deviceResp
);
rsp
.
setData
(
deviceResp
);
SendThirdPartyTask
sendThirdPartyTask
=
new
SendThirdPartyTask
(
deviceEntity
,
productEntity
,
platformEntity
,
deviceService
);
SendThirdPartyTask
sendThirdPartyTask
=
new
SendThirdPartyTask
(
deviceEntity
,
productEntity
,
platformEntity
,
deviceService
);
sendTaskThreadPool
.
execute
(
sendThirdPartyTask
);
sendTaskThreadPool
.
execute
(
sendThirdPartyTask
);
...
...
device-manager/src/main/java/com/mortals/xhx/common/key/RedisKey.java
View file @
28db3b8a
...
@@ -15,6 +15,10 @@ public class RedisKey {
...
@@ -15,6 +15,10 @@ public class RedisKey {
public
static
final
String
KEY_DEVICE_ONLINE_CACHE
=
"device:online:"
;
public
static
final
String
KEY_DEVICE_ONLINE_CACHE
=
"device:online:"
;
/**
* 设备上线更新队列
*/
public
static
final
String
KEY_DEVICE_ONLINE_QUEUE
=
"device:online:queue"
;
public
static
final
String
KEY_SITE_CACHE
=
"siteDict"
;
public
static
final
String
KEY_SITE_CACHE
=
"siteDict"
;
...
...
device-manager/src/main/java/com/mortals/xhx/daemon/task/DeviceModuleUseTaskImpl.java
View file @
28db3b8a
...
@@ -10,7 +10,6 @@ import com.mortals.xhx.module.device.service.DeviceModuleUseService;
...
@@ -10,7 +10,6 @@ import com.mortals.xhx.module.device.service.DeviceModuleUseService;
import
com.mortals.xhx.module.device.service.DeviceService
;
import
com.mortals.xhx.module.device.service.DeviceService
;
import
lombok.extern.apachecommons.CommonsLog
;
import
lombok.extern.apachecommons.CommonsLog
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.ObjectUtils
;
import
java.util.Date
;
import
java.util.Date
;
...
@@ -25,7 +24,7 @@ import java.util.stream.Collectors;
...
@@ -25,7 +24,7 @@ import java.util.stream.Collectors;
* @date: 2022/3/9 15:19
* @date: 2022/3/9 15:19
*/
*/
@CommonsLog
@CommonsLog
@Service
(
"DeviceModuleUseTask"
)
//
@Service("DeviceModuleUseTask")
public
class
DeviceModuleUseTaskImpl
implements
ITaskExcuteService
{
public
class
DeviceModuleUseTaskImpl
implements
ITaskExcuteService
{
@Autowired
@Autowired
...
...
device-manager/src/main/java/com/mortals/xhx/daemon/task/DeviceStatTaskImpl.java
View file @
28db3b8a
...
@@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.util.ObjectUtils
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
...
@@ -41,11 +42,25 @@ public class DeviceStatTaskImpl implements ITaskExcuteService {
...
@@ -41,11 +42,25 @@ public class DeviceStatTaskImpl implements ITaskExcuteService {
@Override
@Override
public
void
excuteTask
(
ITask
task
)
throws
AppException
{
public
void
excuteTask
(
ITask
task
)
throws
AppException
{
log
.
info
(
"设备状态修正任务"
);
log
.
info
(
"设备状态修正任务"
);
List
<
DeviceEntity
>
waitDeviceInfos
=
new
ArrayList
<>();
while
(
true
)
{
DeviceEntity
deviceEntity
=
cacheService
.
lpop
(
RedisKey
.
KEY_DEVICE_ONLINE_QUEUE
,
DeviceEntity
.
class
);
if
(
ObjectUtils
.
isEmpty
(
deviceEntity
))
{
break
;
}
else
{
waitDeviceInfos
.
add
(
deviceEntity
);
}
}
if
(!
ObjectUtils
.
isEmpty
(
waitDeviceInfos
))
{
deviceService
.
update
(
waitDeviceInfos
);
}
//获取所有在线设备
//获取所有在线设备
List
<
DeviceEntity
>
deviceList
=
deviceService
.
find
(
new
DeviceQuery
().
deviceStatus
(
DeviceStatusEnum
.
在线
.
getValue
()));
List
<
DeviceEntity
>
deviceList
=
deviceService
.
find
(
new
DeviceQuery
().
deviceStatus
(
DeviceStatusEnum
.
在线
.
getValue
()));
//更新离线
//更新离线
List
<
DeviceEntity
>
deviceOfflineList
=
deviceList
.
parallelStream
().
map
(
item
->
{
List
<
DeviceEntity
>
deviceOfflineList
=
deviceList
.
parallelStream
().
map
(
item
->
{
if
(
ObjectUtils
.
isEmpty
(
item
.
getDeviceCode
()))
return
null
;
if
(
ObjectUtils
.
isEmpty
(
item
.
getDeviceCode
()))
return
null
;
boolean
exists
=
cacheService
.
exists
(
RedisKey
.
KEY_DEVICE_ONLINE_CACHE
+
item
.
getDeviceCode
());
boolean
exists
=
cacheService
.
exists
(
RedisKey
.
KEY_DEVICE_ONLINE_CACHE
+
item
.
getDeviceCode
());
if
(!
exists
)
{
if
(!
exists
)
{
item
.
setDeviceStatus
(
DeviceStatusEnum
.
离线
.
getValue
());
item
.
setDeviceStatus
(
DeviceStatusEnum
.
离线
.
getValue
());
...
@@ -53,10 +68,10 @@ public class DeviceStatTaskImpl implements ITaskExcuteService {
...
@@ -53,10 +68,10 @@ public class DeviceStatTaskImpl implements ITaskExcuteService {
return
item
;
return
item
;
}
}
return
null
;
return
null
;
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
}).
filter
(
f
->
f
!=
null
).
collect
(
Collectors
.
toList
());
if
(!
ObjectUtils
.
isEmpty
(
deviceOfflineList
))
{
if
(!
ObjectUtils
.
isEmpty
(
deviceOfflineList
))
{
log
.
info
(
"修正设备数量:size:{}"
,
deviceOfflineList
.
size
());
log
.
info
(
"修正设备数量:size:{}"
,
deviceOfflineList
.
size
());
deviceService
.
update
(
deviceOfflineList
);
deviceService
.
update
(
deviceOfflineList
);
deviceOfflineList
.
forEach
(
deviceEntity
->
{
deviceOfflineList
.
forEach
(
deviceEntity
->
{
PlatformEntity
platformEntity
=
platformService
.
get
(
deviceEntity
.
getPlatformId
());
PlatformEntity
platformEntity
=
platformService
.
get
(
deviceEntity
.
getPlatformId
());
...
...
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