Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
项目统一框架
amos-boot-biz
Commits
5983dd6b
Commit
5983dd6b
authored
Jul 23, 2025
by
tianbo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
refactor(jg): 优化安全问题追溯消息发送逻辑
-移除了不必要的导入 - 重构了 sendSafetyProblemMessage 方法,使用批量发送提高效率 - 优化了 JSON 序列化方式,直接使用 toJSONBytes 方法
parent
0ca323f3
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
11 deletions
+13
-11
SafetyProblemTracingGenServiceImpl.java
.../biz/service/impl/SafetyProblemTracingGenServiceImpl.java
+13
-11
No files found.
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/service/impl/SafetyProblemTracingGenServiceImpl.java
View file @
5983dd6b
...
...
@@ -2,7 +2,6 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.google.common.collect.Lists
;
...
...
@@ -27,7 +26,6 @@ import org.springframework.stereotype.Service;
import
org.typroject.tyboot.component.emq.EmqKeeper
;
import
org.typroject.tyboot.core.foundation.utils.ValidationUtil
;
import
java.nio.charset.StandardCharsets
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -193,17 +191,21 @@ public class SafetyProblemTracingGenServiceImpl{
* @param safetyProblemTypeEnum
*/
private
void
sendSafetyProblemMessage
(
List
<
Map
<
String
,
Object
>>
mapList
,
SafetyProblemTypeEnum
safetyProblemTypeEnum
)
{
JSONArray
jsonArray
=
JSON
.
parseArray
(
JSON
.
toJSONString
(
mapList
));
if
(
CollectionUtil
.
isNotEmpty
(
jsonArray
)){
try
{
logger
.
info
(
"发送安全追溯问题主题---->{}"
,
safetyProblemTypeEnum
.
getTopic
());
emqKeeper
.
getMqttClient
().
publish
(
safetyProblemTypeEnum
.
getTopic
(),
jsonArray
.
toString
().
getBytes
(
StandardCharsets
.
UTF_8
),
2
,
false
);
logger
.
info
(
"发送安全追溯问题消息成功---->"
);
}
catch
(
MqttException
e
)
{
logger
.
error
(
"发送安全追溯问题设备信息消息失败---->{}"
,
e
.
getMessage
());
throw
new
RuntimeException
(
e
);
int
batchSize
=
10000
;
for
(
int
i
=
0
;
i
<
mapList
.
size
();
i
+=
batchSize
)
{
List
<
Map
<
String
,
Object
>>
batch
=
mapList
.
subList
(
i
,
Math
.
min
(
i
+
batchSize
,
mapList
.
size
()));
if
(
CollectionUtil
.
isNotEmpty
(
mapList
)){
try
{
logger
.
info
(
"发送安全追溯问题主题---->{}"
,
safetyProblemTypeEnum
.
getTopic
());
emqKeeper
.
getMqttClient
().
publish
(
safetyProblemTypeEnum
.
getTopic
(),
JSON
.
toJSONBytes
(
batch
),
2
,
false
);
logger
.
info
(
"发送安全追溯问题消息成功---->"
);
}
catch
(
MqttException
e
)
{
logger
.
error
(
"发送安全追溯问题设备信息消息失败---->{}"
,
e
.
getMessage
());
throw
new
RuntimeException
(
e
);
}
}
}
}
// @Scheduled(cron = "0 0 1 * * ?")
...
...
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