Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
3e83cf23
提交
3e83cf23
authored
5月 18, 2022
作者:
17607474349
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix:
1、数据可视化接口:查询按键报警消息、标签信息相关
上级
1c8e5c1f
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
86 行增加
和
2 行删除
+86
-2
KeyAlarmLogService.java
...n/java/com/yiring/app/service/key/KeyAlarmLogService.java
+8
-0
KeyAlarmLogServiceImpl.java
...m/yiring/app/service/key/impl/KeyAlarmLogServiceImpl.java
+22
-0
PositionMessageServiceImpl.java
.../app/service/message/impl/PositionMessageServiceImpl.java
+37
-0
StompPrincipal.java
app/src/main/java/com/yiring/app/stomp/StompPrincipal.java
+2
-0
KeyAlarmLogController.java
...in/java/com/yiring/app/web/key/KeyAlarmLogController.java
+8
-0
UserServiceImpl.java
...va/com/yiring/auth/service/user/impl/UserServiceImpl.java
+9
-2
没有找到文件。
app/src/main/java/com/yiring/app/service/key/KeyAlarmLogService.java
浏览文件 @
3e83cf23
...
@@ -3,6 +3,7 @@ package com.yiring.app.service.key;
...
@@ -3,6 +3,7 @@ package com.yiring.app.service.key;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.auth.param.IdsParam
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
com.yiring.common.vo.PageVo
;
...
@@ -21,4 +22,11 @@ public interface KeyAlarmLogService {
...
@@ -21,4 +22,11 @@ public interface KeyAlarmLogService {
* @return Result<PageVo<KeyAlarmLogVo>>
* @return Result<PageVo<KeyAlarmLogVo>>
*/
*/
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
);
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
);
/**
* 批量发送
* @param idsParam IdsParam
* @return Result<String>
*/
Result
<
String
>
send
(
IdsParam
idsParam
);
}
}
app/src/main/java/com/yiring/app/service/key/impl/KeyAlarmLogServiceImpl.java
浏览文件 @
3e83cf23
...
@@ -2,17 +2,21 @@
...
@@ -2,17 +2,21 @@
package
com
.
yiring
.
app
.
service
.
key
.
impl
;
package
com
.
yiring
.
app
.
service
.
key
.
impl
;
import
cn.hutool.core.collection.ListUtil
;
import
cn.hutool.core.collection.ListUtil
;
import
cn.hutool.core.convert.Convert
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.yiring.app.domain.key.KeyAlarmLog
;
import
com.yiring.app.domain.key.KeyAlarmLog
;
import
com.yiring.app.domain.key.KeyAlarmLogRepository
;
import
com.yiring.app.domain.key.KeyAlarmLogRepository
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.push.domain.PushMessage
;
import
com.yiring.app.service.key.KeyAlarmLogService
;
import
com.yiring.app.service.key.KeyAlarmLogService
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.auth.param.IdsParam
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.domain.BasicEntity
;
import
com.yiring.common.domain.BasicEntity
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
com.yiring.common.vo.PageVo
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
...
@@ -80,4 +84,22 @@ public class KeyAlarmLogServiceImpl implements KeyAlarmLogService {
...
@@ -80,4 +84,22 @@ public class KeyAlarmLogServiceImpl implements KeyAlarmLogService {
PageVo
<
KeyAlarmLogVo
>
pageVo
=
PageVo
.
build
(
keyAlarmLogVos
,
keyAlarmLogs
.
getTotalElements
());
PageVo
<
KeyAlarmLogVo
>
pageVo
=
PageVo
.
build
(
keyAlarmLogVos
,
keyAlarmLogs
.
getTotalElements
());
return
Result
.
ok
(
pageVo
);
return
Result
.
ok
(
pageVo
);
}
}
@Override
public
Result
<
String
>
send
(
IdsParam
idsParam
)
{
Long
[]
ids
=
Convert
.
toLongArray
(
idsParam
.
getIds
().
split
(
","
));
List
<
KeyAlarmLog
>
keyAlarmLogs
=
keyAlarmLogRepository
.
findAllById
(
Arrays
.
asList
(
ids
));
keyAlarmLogs
.
stream
()
.
filter
(
keyAlarmLog
->
!
keyAlarmLog
.
getStatus
())
.
forEach
(
keyAlarmLog
->
{
switch
(
keyAlarmLog
.
getTypes
())
{
case
PushMessage
.
Type
.
APP
.
text
()
->
log
.
info
(
"APP 信息发送中---"
);
case
PushMessage
.
Type
.
SMS
.
text
()
->
log
.
info
(
"SMS 信息发送中---"
);
case
PushMessage
.
Type
.
EMAIL
.
text
()
->
log
.
info
(
"EMAIL 信息发送中---"
);
}
});
return
Result
.
ok
();
}
}
}
app/src/main/java/com/yiring/app/service/message/impl/PositionMessageServiceImpl.java
浏览文件 @
3e83cf23
...
@@ -429,6 +429,13 @@ public class PositionMessageServiceImpl implements PositionMessageService {
...
@@ -429,6 +429,13 @@ public class PositionMessageServiceImpl implements PositionMessageService {
* @param data 消息内容
* @param data 消息内容
*/
*/
public
void
processKeyWarningMessage
(
JSONObject
data
)
{
public
void
processKeyWarningMessage
(
JSONObject
data
)
{
/*
- 1、判断报警消息是否存在:
- 存在则修改报警时间,当修改时间与创建时间间隔30s 则修改报警状态
- 不存在则新增
- 2、查询状态处于报警中的所有消息,通过websocket 发送消息给前端
*/
// TODO
// TODO
log
.
info
(
"KeyWarning Message: {}"
,
data
);
log
.
info
(
"KeyWarning Message: {}"
,
data
);
KeyAlarmAddParam
keyAlarmAddParam
=
data
.
toJavaObject
(
KeyAlarmAddParam
.
class
);
KeyAlarmAddParam
keyAlarmAddParam
=
data
.
toJavaObject
(
KeyAlarmAddParam
.
class
);
...
@@ -453,6 +460,24 @@ public class PositionMessageServiceImpl implements PositionMessageService {
...
@@ -453,6 +460,24 @@ public class PositionMessageServiceImpl implements PositionMessageService {
User
user
=
userRepositoryOne
.
get
();
User
user
=
userRepositoryOne
.
get
();
Optional
<
KeyAlarm
>
keyAlarmOptional
=
keyAlarmRepository
.
findOne
(
Example
.
of
(
KeyAlarm
.
builder
()
.
code
(
keyAlarmAddParam
.
getTagId
())
.
leader
(
User
.
builder
().
id
(
user
.
getId
()).
build
())
.
enable
(
true
)
.
build
()
)
);
if
(
keyAlarmOptional
.
isPresent
())
{
keyAlarmOptional
.
get
().
setUpdateTime
(
LocalDateTime
.
now
());
keyAlarmRepository
.
save
(
keyAlarmOptional
.
get
());
// log.warn("Tag Not Found: {}", "请勿重复报警");
return
;
}
keyAlarm
.
setLeader
(
user
);
keyAlarm
.
setLeader
(
user
);
keyAlarm
.
setEnable
(
true
);
keyAlarm
.
setEnable
(
true
);
Optional
<
KeyAlarmRule
>
keyAlarmRuleOptional
=
keyAlarmRuleRepository
.
findOne
(
Optional
<
KeyAlarmRule
>
keyAlarmRuleOptional
=
keyAlarmRuleRepository
.
findOne
(
...
@@ -493,5 +518,17 @@ public class PositionMessageServiceImpl implements PositionMessageService {
...
@@ -493,5 +518,17 @@ public class PositionMessageServiceImpl implements PositionMessageService {
});
});
keyAlarmLogRepository
.
saveAll
(
keyAlarmLogs
);
keyAlarmLogRepository
.
saveAll
(
keyAlarmLogs
);
// WebSocket 推送报警消息
// 消息内容需要确定 TODO
JSONObject
message
=
new
JSONObject
();
message
.
put
(
"point"
,
finalKeyAlarm
.
getPoint
());
message
.
put
(
"createTime"
,
finalKeyAlarm
.
getCreateTime
());
message
.
put
(
"areaId"
,
finalKeyAlarm
.
getAreaId
());
message
.
put
(
"realName"
,
finalKeyAlarm
.
getLeader
().
getRealName
());
message
.
put
(
"mobile"
,
finalKeyAlarm
.
getLeader
().
getMobile
());
message
.
put
(
"gender"
,
finalKeyAlarm
.
getLeader
().
getGender
());
message
.
put
(
"type"
,
finalKeyAlarm
.
getLeader
().
getType
());
simpMessagingTemplate
.
convertAndSend
(
"/topic/tag/keyWarning"
,
message
.
toJSONString
());
}
}
}
}
app/src/main/java/com/yiring/app/stomp/StompPrincipal.java
浏览文件 @
3e83cf23
...
@@ -2,6 +2,7 @@
...
@@ -2,6 +2,7 @@
package
com
.
yiring
.
app
.
stomp
;
package
com
.
yiring
.
app
.
stomp
;
import
com.alibaba.fastjson.JSONObject
;
import
com.alibaba.fastjson.JSONObject
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.security.Principal
;
import
java.security.Principal
;
import
lombok.AccessLevel
;
import
lombok.AccessLevel
;
...
@@ -26,6 +27,7 @@ import lombok.experimental.FieldNameConstants;
...
@@ -26,6 +27,7 @@ import lombok.experimental.FieldNameConstants;
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
StompPrincipal
implements
Principal
,
Serializable
{
public
class
StompPrincipal
implements
Principal
,
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
5351052642945180737L
;
private
static
final
long
serialVersionUID
=
5351052642945180737L
;
Type
type
;
Type
type
;
...
...
app/src/main/java/com/yiring/app/web/key/KeyAlarmLogController.java
浏览文件 @
3e83cf23
...
@@ -4,12 +4,14 @@ package com.yiring.app.web.key;
...
@@ -4,12 +4,14 @@ package com.yiring.app.web.key;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.param.key.KeyAlarmLogFindParam
;
import
com.yiring.app.service.key.KeyAlarmLogService
;
import
com.yiring.app.service.key.KeyAlarmLogService
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.app.vo.key.KeyAlarmLogVo
;
import
com.yiring.auth.param.IdsParam
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.param.PageParam
;
import
com.yiring.common.vo.PageVo
;
import
com.yiring.common.vo.PageVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
@@ -37,4 +39,10 @@ public class KeyAlarmLogController {
...
@@ -37,4 +39,10 @@ public class KeyAlarmLogController {
public
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
)
{
public
Result
<
PageVo
<
KeyAlarmLogVo
>>
page
(
KeyAlarmLogFindParam
param
,
PageParam
pageParam
)
{
return
keyAlarmLogService
.
page
(
param
,
pageParam
);
return
keyAlarmLogService
.
page
(
param
,
pageParam
);
}
}
@ApiOperation
(
"批量发送"
)
@GetMapping
(
"send"
)
public
Result
<
String
>
send
(
@Valid
IdsParam
idsParam
)
{
return
keyAlarmLogService
.
send
(
idsParam
);
}
}
}
basic-auth/src/main/java/com/yiring/auth/service/user/impl/UserServiceImpl.java
浏览文件 @
3e83cf23
...
@@ -7,6 +7,7 @@ import cn.hutool.core.convert.Convert;
...
@@ -7,6 +7,7 @@ import cn.hutool.core.convert.Convert;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.liaochong.myexcel.core.DefaultStreamExcelBuilder
;
import
com.github.liaochong.myexcel.core.DefaultStreamExcelBuilder
;
import
com.yiring.auth.domain.role.Role
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.auth.domain.user.User
;
import
com.yiring.auth.domain.user.UserRepository
;
import
com.yiring.auth.domain.user.UserRepository
;
import
com.yiring.auth.excel.user.UserExportExcel
;
import
com.yiring.auth.excel.user.UserExportExcel
;
...
@@ -32,6 +33,7 @@ import javax.annotation.Resource;
...
@@ -32,6 +33,7 @@ import javax.annotation.Resource;
import
javax.persistence.criteria.CriteriaBuilder
;
import
javax.persistence.criteria.CriteriaBuilder
;
import
javax.persistence.criteria.Order
;
import
javax.persistence.criteria.Order
;
import
javax.persistence.criteria.Predicate
;
import
javax.persistence.criteria.Predicate
;
import
javax.persistence.criteria.SetJoin
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
org.apache.poi.ss.usermodel.Workbook
;
...
@@ -79,7 +81,8 @@ public class UserServiceImpl implements UserService {
...
@@ -79,7 +81,8 @@ public class UserServiceImpl implements UserService {
}
}
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getRoles
()))
{
if
(
ObjectUtil
.
isNotEmpty
(
param
.
getRoles
()))
{
CriteriaBuilder
.
In
<
Long
>
in
=
cb
.
in
(
root
.
join
(
User
.
Fields
.
roles
).
get
(
BasicEntity
.
Fields
.
id
));
SetJoin
<
User
,
Role
>
join
=
root
.
join
(
root
.
getModel
().
getSet
(
User
.
Fields
.
roles
,
Role
.
class
));
CriteriaBuilder
.
In
<
Long
>
in
=
cb
.
in
(
join
.
get
(
BasicEntity
.
Fields
.
id
));
String
[]
split
=
param
.
getRoles
().
split
(
","
);
String
[]
split
=
param
.
getRoles
().
split
(
","
);
Long
[]
roles
=
Convert
.
toLongArray
(
split
);
Long
[]
roles
=
Convert
.
toLongArray
(
split
);
for
(
Long
roleId
:
roles
)
{
for
(
Long
roleId
:
roles
)
{
...
@@ -90,7 +93,11 @@ public class UserServiceImpl implements UserService {
...
@@ -90,7 +93,11 @@ public class UserServiceImpl implements UserService {
Order
order
=
cb
.
desc
(
root
.
get
(
BasicEntity
.
Fields
.
createTime
));
Order
order
=
cb
.
desc
(
root
.
get
(
BasicEntity
.
Fields
.
createTime
));
return
cq
.
orderBy
(
order
).
where
(
predicates
.
toArray
(
new
Predicate
[
0
])).
getRestriction
();
return
cq
.
groupBy
(
root
.
get
(
BasicEntity
.
Fields
.
id
))
.
orderBy
(
order
)
.
where
(
predicates
.
toArray
(
new
Predicate
[
0
]))
.
getRestriction
();
};
};
// 分页
// 分页
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论