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
3ee918b4
authored
Jan 30, 2024
by
汪志阳
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge branch 'dev' into fix_sleep
parents
8420434a
8d4d3458
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
66 additions
and
28 deletions
db/上线后sql/insert.sql
server-service/src/main/java/com/makeit/mapper/platform/elder/PlatElderChildrenInfoMapper.java
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatAlarmRecordServiceImpl.java
server-service/src/main/java/com/makeit/service/wechat/impl/PlatElderChildrenInfoUserLoginWechatServiceImpl.java
server-service/src/main/resources/mappers/PlatElderChildrenInfoMapper.xml
db/上线后sql/insert.sql
0 → 100644
View file @
3ee918b4
INSERT
INTO
dev_iot_yanglao_platform
.
sys_dictionary
(
id
,
code
,
name
,
value
,
sort
,
description
,
category_id
,
create_date
,
INSERT
INTO
dev_iot_yanglao_platform
.
sys_dictionary
(
id
,
code
,
name
,
value
,
sort
,
description
,
category_id
,
create_date
,
update_date
,
del_flag
,
create_by
,
update_by
,
eng_name
)
VALUES
(
'213'
,
'alarm.sendType.childWechat'
,
'子女端小程序'
,
'6'
,
4
,
''
,
'201'
,
'2022-05-16 17:13:23'
,
'2022-05-16 17:13:27'
,
'0'
,
null
,
null
,
null
);
\ No newline at end of file
server-service/src/main/java/com/makeit/mapper/platform/elder/PlatElderChildrenInfoMapper.java
View file @
3ee918b4
...
...
@@ -2,6 +2,9 @@ package com.makeit.mapper.platform.elder;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.makeit.entity.platform.elder.PlatElderChildrenInfo
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* <p>
...
...
@@ -13,4 +16,5 @@ import com.makeit.entity.platform.elder.PlatElderChildrenInfo;
*/
public
interface
PlatElderChildrenInfoMapper
extends
BaseMapper
<
PlatElderChildrenInfo
>
{
List
<
PlatElderChildrenInfo
>
list
(
@Param
(
"tenantId"
)
String
tenantId
,
@Param
(
"elderIds"
)
String
elderIds
);
}
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatAlarmRecordServiceImpl.java
View file @
3ee918b4
...
...
@@ -33,6 +33,7 @@ import com.makeit.enums.report.PlatformTypeEnum;
import
com.makeit.exception.BusinessException
;
import
com.makeit.global.aspect.tenant.TenantIdIgnore
;
import
com.makeit.mapper.platform.alarm.PlatAlarmRecordMapper
;
import
com.makeit.mapper.platform.elder.PlatElderChildrenInfoMapper
;
import
com.makeit.module.iot.service.IotDevicePropertiesOperateService
;
import
com.makeit.service.platform.alarm.PlatAlarmConfigService
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
...
...
@@ -67,6 +68,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.time.LocalDateTime
;
import
java.util.*
;
import
java.util.regex.Matcher
;
...
...
@@ -113,6 +115,8 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
private
ShengwangService
shengwangService
;
@Autowired
private
IotDevicePropertiesOperateService
iotDevicePropertiesOperateService
;
@Resource
private
PlatElderChildrenInfoMapper
platElderChildrenInfoMapper
;
@Override
...
...
@@ -316,27 +320,24 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
List
<
PlatElderChildrenInfo
>
allChildInfoList
=
new
ArrayList
<>();
//通知每个长者的子女
LambdaQueryWrapper
<
PlatElderChildrenInfo
>
childrenInfoLambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
childrenInfoLambdaQueryWrapper
.
eq
(
BaseBusEntity:
:
getTenantId
,
alarmConfig
.
getTenantId
());
childrenInfoLambdaQueryWrapper
.
and
(
qw
->
qw
.
apply
(
"find_in_set('"
+
elderIds
+
"',elder_id)"
));
List
<
PlatElderChildrenInfo
>
childrenInfoList
=
platElderChildrenInfoService
.
list
(
childrenInfoLambdaQueryWrapper
);
if
(
CollectionUtils
.
isEmpty
(
childrenInfoList
))
{
throw
new
BusinessException
(
"子女端账号未绑定长者,长者id:"
+
elderIds
);
}
allChildInfoList
.
addAll
(
childrenInfoList
);
Set
<
String
>
phoneSet
=
childrenInfoList
.
stream
().
map
(
PlatElderChildrenInfo:
:
getPhone
).
collect
(
Collectors
.
toSet
());
//告警配置和租户告警 字典一致
List
<
SendTypeEnum
>
notifyChannelList
=
Arrays
.
asList
(
SendTypeEnum
.
SMS
,
SendTypeEnum
.
VOICE_SMS
,
SendTypeEnum
.
CHILD_WECHAT
);
List
<
MsgSendDTO
.
ReceiverInfo
>
receiverInfos
=
buildReceiverInfo
(
allChildInfoList
,
alarmRecord
);
//发送消息
noticeByChannel
(
alarmConfig
,
alarmRecord
,
phoneSet
,
null
,
notifyChannelList
,
receiverInfos
);
String
childIdJoin
=
allChildInfoList
.
stream
().
map
(
BaseEntity:
:
getId
).
collect
(
Collectors
.
joining
(
","
));
//通知的子女
alarmConfig
.
setNotifyRelation
(
childIdJoin
);
alarmRecord
.
setNoticeStatus
(
CommonEnum
.
YES
.
getValue
());
alarmRecord
.
setTenantId
(
alarmConfig
.
getTenantId
());
saveOrUpdate
(
alarmRecord
);
List
<
PlatElderChildrenInfo
>
childrenInfoList
=
platElderChildrenInfoMapper
.
list
(
alarmConfig
.
getTenantId
(),
elderIds
);
if
(
CollectionUtils
.
isEmpty
(
childrenInfoList
))
{
throw
new
BusinessException
(
"子女端账号未绑定长者,长者id:"
+
elderIds
);
}
allChildInfoList
.
addAll
(
childrenInfoList
);
Set
<
String
>
phoneSet
=
childrenInfoList
.
stream
().
map
(
PlatElderChildrenInfo:
:
getPhone
).
collect
(
Collectors
.
toSet
());
//告警配置和租户告警 字典一致
List
<
SendTypeEnum
>
notifyChannelList
=
Arrays
.
asList
(
SendTypeEnum
.
SMS
,
SendTypeEnum
.
VOICE_SMS
,
SendTypeEnum
.
CHILD_WECHAT
);
List
<
MsgSendDTO
.
ReceiverInfo
>
receiverInfos
=
buildReceiverInfo
(
allChildInfoList
,
alarmRecord
);
//发送消息
noticeByChannel
(
alarmConfig
,
alarmRecord
,
phoneSet
,
null
,
notifyChannelList
,
receiverInfos
);
String
childIdJoin
=
allChildInfoList
.
stream
().
map
(
BaseEntity:
:
getId
).
collect
(
Collectors
.
joining
(
","
));
//通知的子女
alarmConfig
.
setNotifyRelation
(
childIdJoin
);
alarmRecord
.
setNoticeStatus
(
CommonEnum
.
YES
.
getValue
());
alarmRecord
.
setTenantId
(
alarmConfig
.
getTenantId
());
saveOrUpdate
(
alarmRecord
);
}
...
...
@@ -423,19 +424,22 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
if
(
StringUtils
.
isEmpty
(
notifyChannel
))
{
// 微信公众号
notifyChannel
=
"6"
;
}
else
{
notifyChannel
=
notifyChannel
+
",6"
;
}
PlatTenant
platTenant
=
platTenantService
.
getById
(
alarmConfig
.
getTenantId
());
if
(
platTenant
==
null
)
{
if
(
platTenant
==
null
||
!
"1"
.
equals
(
platTenant
.
getStatus
()))
{
return
;
}
String
alertChannel
=
platTenant
.
getAlertChannel
();
if
(
StringUtils
.
isBlank
(
alertChannel
)){
return
;
if
(
StringUtils
.
isBlank
(
alertChannel
))
{
// 微信公众号
alertChannel
=
"6"
;
}
else
{
alertChannel
=
alertChannel
+
",6"
;
}
String
[]
tenantChannels
=
alertChannel
.
split
(
","
);
List
<
String
>
tenantChannelList
=
Lists
.
newArrayList
(
Arrays
.
asList
(
tenantChannels
));
// 微信公众号
tenantChannelList
.
add
(
"6"
);
String
[]
split
=
notifyChannel
.
split
(
","
);
for
(
String
sendType
:
split
)
{
//租户告警渠道 没配置的 就不发送
...
...
server-service/src/main/java/com/makeit/service/wechat/impl/PlatElderChildrenInfoUserLoginWechatServiceImpl.java
View file @
3ee918b4
package
com
.
makeit
.
service
.
wechat
.
impl
;
import
cn.hutool.core.util.StrUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.makeit.entity.platform.elder.PlatElderChildrenInfo
;
import
com.makeit.entity.saas.PlatTenant
;
import
com.makeit.global.aspect.misc.nofill.NoFillUtil
;
...
...
@@ -127,8 +129,15 @@ public class PlatElderChildrenInfoUserLoginWechatServiceImpl implements PlatElde
if
(
childrenInfo
==
null
)
{
return
;
}
childrenInfo
.
setWeChatOpenid
(
dto
.
getWeChatOpenid
());
platElderChildrenInfoService
.
updateById
(
childrenInfo
);
if
(
StrUtil
.
isNotBlank
(
childrenInfo
.
getOpenid
()))
{
List
<
PlatElderChildrenInfo
>
infoList
=
platElderChildrenInfoService
.
list
(
Wrappers
.<
PlatElderChildrenInfo
>
lambdaQuery
()
.
in
(
PlatElderChildrenInfo:
:
getOpenid
,
childrenInfo
.
getOpenid
()));
infoList
.
forEach
(
i
->
i
.
setWeChatOpenid
(
dto
.
getWeChatOpenid
()));
platElderChildrenInfoService
.
updateBatchById
(
infoList
);
}
else
{
childrenInfo
.
setWeChatOpenid
(
dto
.
getWeChatOpenid
());
platElderChildrenInfoService
.
updateById
(
childrenInfo
);
}
}
@Override
...
...
server-service/src/main/resources/mappers/PlatElderChildrenInfoMapper.xml
0 → 100644
View file @
3ee918b4
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.makeit.mapper.platform.elder.PlatElderChildrenInfoMapper"
>
<select
id=
"list"
parameterType=
"String"
resultType=
"com.makeit.entity.platform.elder.PlatElderChildrenInfo"
>
select *
from plat_elder_children_info
where tenant_id = #{tenantId}
and find_in_set(#{elderIds},elder_id)
</select>
</mapper>
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