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
983ba2cd
authored
Sep 15, 2023
by
朱淼
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge branch 'dev' of
http://git.xmmakeit.com/huangjiay/iot-platform-server
into dev
parents
e9ce61da
bdd948b9
Show whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
670 additions
and
54 deletions
saas-module/src/main/java/com/makeit/controller/config/SwaggerSaasConfig.java
saas-module/src/main/java/com/makeit/controller/saas/SaasDeviceController.java → saas-module/src/main/java/com/makeit/controller/device/SaasDeviceController.java
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceRealTimeController.java
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceReportDayController.java
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceReportMonthController.java
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceReportWeekController.java
server-common/src/main/java/com/makeit/enums/redis/RedisConst.java
server-common/src/main/java/com/makeit/utils/msg/MsgSendUtil.java
server-common/src/main/java/com/makeit/utils/msg/sender/MailMsgSender.java
server-common/src/main/java/com/makeit/utils/msg/sender/SmsMsgSender.java
server-common/src/main/java/com/makeit/utils/msg/sender/SmsVoiceSender.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportMonthController.java
server-service/src/main/java/com/makeit/dto/platform/elder/PlatElderReportDTO.java
server-service/src/main/java/com/makeit/entity/platform/elder/PlatElderBreatheAbnormal.java
server-service/src/main/java/com/makeit/entity/platform/elder/PlatElderBreatheAnalysis.java
server-service/src/main/java/com/makeit/mapper/platform/elder/PlatElderBreatheAbnormalMapper.java
server-service/src/main/java/com/makeit/mapper/platform/elder/PlatElderBreatheAnalysisMapper.java
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/BehaviorAlarm.java
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/BreathAlarm.java
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/FallAlarm.java
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/HeartAlarm.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderBreatheAbnormalService.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderBreatheAnalysisService.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderReportMonthService.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderBreatheAbnormalServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderBreatheAnalysisServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportDayServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderReportMonthServiceImpl.java
server-service/src/main/java/com/makeit/task/DayDurationTask.java
server-web/src/main/java/com/makeit/mqtt/PushCallback.java
saas-module/src/main/java/com/makeit/controller/config/SwaggerSaasConfig.java
View file @
983ba2cd
...
@@ -49,6 +49,14 @@ public class SwaggerSaasConfig {
...
@@ -49,6 +49,14 @@ public class SwaggerSaasConfig {
}
}
@Bean
@Bean
public
SwaggerModuleConfig
deviceModule
()
{
SwaggerModuleConfig
config
=
new
SwaggerModuleConfig
();
config
.
setPackageList
(
Arrays
.
asList
(
"com.makeit.controller.device"
));
config
.
setModuleName
(
"设备管理"
);
return
config
;
}
@Bean
public
Docket
platApi
()
{
public
Docket
platApi
()
{
Docket
docket
=
new
Docket
(
DocumentationType
.
SWAGGER_2
)
Docket
docket
=
new
Docket
(
DocumentationType
.
SWAGGER_2
)
...
@@ -91,6 +99,20 @@ public class SwaggerSaasConfig {
...
@@ -91,6 +99,20 @@ public class SwaggerSaasConfig {
return
builder
.
build
();
return
builder
.
build
();
}
}
@Bean
public
Docket
deviceApi
()
{
Docket
docket
=
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
apiInfo
(
apiInfo
())
.
groupName
(
"01-saas端设备管理"
);
ApiSelectorBuilder
builder
=
docket
.
select
();
//api过滤
builder
=
builder
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"com.makeit.controller.device"
)
);
return
builder
.
build
();
}
private
ApiInfo
apiInfo
()
{
private
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
().
title
(
"IOT文档"
)
return
new
ApiInfoBuilder
().
title
(
"IOT文档"
)
.
description
(
"服务端接口文档"
)
.
description
(
"服务端接口文档"
)
...
...
saas-module/src/main/java/com/makeit/controller/
saas
/SaasDeviceController.java
→
saas-module/src/main/java/com/makeit/controller/
device
/SaasDeviceController.java
View file @
983ba2cd
package
com
.
makeit
.
controller
.
saas
;
package
com
.
makeit
.
controller
.
device
;
import
com.makeit.common.dto.BaseIdDTO
;
import
com.makeit.common.dto.BaseIdDTO
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageReqDTO
;
...
@@ -47,20 +47,4 @@ public class SaasDeviceController {
...
@@ -47,20 +47,4 @@ public class SaasDeviceController {
return
ApiResponseUtils
.
success
();
return
ApiResponseUtils
.
success
();
}
}
@ApiOperation
(
"实时数据"
)
@PostMapping
(
"realTimeDate"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatDevice
>
realTimeDate
(
@RequestBody
PlatDevice
platDevice
)
{
//todo
return
null
;
}
@ApiOperation
(
"数据分析"
)
@PostMapping
(
"dataAnalysis"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatDevice
>
dataAnalysis
(
@RequestBody
PlatDevice
platDevice
)
{
//todo
return
null
;
}
}
}
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceRealTimeController.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
controller
.
device
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.global.aspect.tenant.TenantIdIgnore
;
import
com.makeit.service.platform.elder.PlatElderRealTimeService
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeBodyVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeNowVO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
@Api
(
tags
=
"租户管理-租户设备实时数据"
)
@RestController
@RequestMapping
(
"/saas/device/realTime"
)
public
class
SaasDeviceRealTimeController
{
@Autowired
private
PlatElderRealTimeService
platElderRealTimeService
;
@ApiOperation
(
"现在状态"
)
@PostMapping
(
"nowStatus"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderRealTimeNowVO
>
nowStatus
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
nowStatus
(
platElderIdDTO
));
}
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderRealTimeHeartRespiratoryVO
>
heartRespiratory
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
heartRespiratory
(
platElderIdDTO
));
}
@ApiOperation
(
"体动"
)
@PostMapping
(
"body"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderRealTimeBodyVO
>
body
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
body
(
platElderIdDTO
));
}
@ApiOperation
(
"坐标"
)
@PostMapping
(
"coordinate"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinate
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
coordinate
(
platElderIdDTO
));
}
}
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceReportDayController.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
controller
.
device
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.global.aspect.tenant.TenantIdIgnore
;
import
com.makeit.service.platform.elder.PlatElderDayReportDayService
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderBehaviorDistributionVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderBehaviorExceptionRecordVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationRecordVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderSleepDiagramVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* <p>
* 长者基本信息 前端控制器
* </p>
*
* @author eugene young
* @since 2023-08-29
*/
@Api
(
tags
=
"数据分析-日报"
)
@RestController
@RequestMapping
(
"/saas/device/report/day"
)
public
class
SaasDeviceReportDayController
{
@Autowired
private
PlatElderDayReportDayService
platElderDayReportDayService
;
@ApiOperation
(
"睡眠评价"
)
@PostMapping
(
"sleepEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠图表"
)
@PostMapping
(
"sleepDiagram"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderSleepDiagramVO
>>
sleepDiagram
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸评价"
)
@PostMapping
(
"heartRespiratoryEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率异常记录"
)
@PostMapping
(
"heartExceptionRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
heartExceptionRecordList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"呼吸率异常记录"
)
@PostMapping
(
"respiratoryExceptionRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
respiratoryExceptionRecordList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderRealTimeHeartRespiratoryVO
>>
heartRespiratory
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderDayReportDayService
.
heartRespiratory
(
platElderIdDTO
));
}
@ApiOperation
(
"行为异常记录"
)
@PostMapping
(
"behaviorExceptionRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderBehaviorExceptionRecordVO
>>
behaviorExceptionRecordList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"跌倒记录"
)
@PostMapping
(
"failRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
String
>>
failRecordList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"坐标记录"
)
@PostMapping
(
"coordinateList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinateList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderDayReportDayService
.
coordinateList
(
platElderIdDTO
));
}
@ApiOperation
(
"行为辐射"
)
@PostMapping
(
"behaviorDistribution"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderBehaviorDistributionVO
>>
behaviorDistribution
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
}
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceReportMonthController.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
controller
.
device
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.global.aspect.tenant.TenantIdIgnore
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
* <p>
* 长者基本信息 前端控制器
* </p>
*
* @author eugene young
* @since 2023-08-29
*/
@Api
(
tags
=
"数据分析-月报"
)
@RestController
@RequestMapping
(
"/saas/device/report/month"
)
public
class
SaasDeviceReportMonthController
{
@ApiOperation
(
"综合评价"
)
@PostMapping
(
"comprehensiveEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠评价"
)
@PostMapping
(
"sleepEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸评价"
)
@PostMapping
(
"heartRespiratoryEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"月报表"
)
@PostMapping
(
"reportMonth"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderReportMonthVO
>
reportMonth
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
}
saas-module/src/main/java/com/makeit/controller/device/SaasDeviceReportWeekController.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
controller
.
device
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.global.aspect.tenant.TenantIdIgnore
;
import
com.makeit.service.platform.elder.PlatElderDayReportWeekService
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderBehaviorDistributionVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderBehaviorExceptionRecordVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationRecordVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderRealTimeHeartRespiratoryWeekVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderSleepDiagramWeekVO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* <p>
* 长者基本信息 前端控制器
* </p>
*
* @author eugene young
* @since 2023-08-29
*/
@Api
(
tags
=
"数据分析-周报"
)
@RestController
@RequestMapping
(
"/saas/device/report/week"
)
public
class
SaasDeviceReportWeekController
{
@Autowired
private
PlatElderDayReportWeekService
platElderDayReportWeekService
;
@ApiOperation
(
"综合评价"
)
@PostMapping
(
"comprehensiveEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠评价"
)
@PostMapping
(
"sleepEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠图表"
)
@PostMapping
(
"sleepDiagram"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderSleepDiagramWeekVO
>>
sleepDiagram
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸评价"
)
@PostMapping
(
"heartRespiratoryEvaluation"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率异常记录"
)
@PostMapping
(
"heartExceptionRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
heartExceptionRecordList
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"呼吸率异常记录"
)
@PostMapping
(
"respiratoryExceptionRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
respiratoryExceptionRecordList
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
@TenantIdIgnore
public
ApiResponseEntity
<
PlatElderRealTimeHeartRespiratoryWeekVO
>
heartRespiratory
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"行为异常记录"
)
@PostMapping
(
"behaviorExceptionRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderBehaviorExceptionRecordVO
>>
behaviorExceptionRecordList
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"跌倒记录"
)
@PostMapping
(
"failRecordList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
String
>>
failRecordList
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"坐标记录"
)
@PostMapping
(
"coordinateList"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinateList
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderDayReportWeekService
.
coordinateList
(
platElderIdDTO
));
}
@ApiOperation
(
"行为辐射"
)
@PostMapping
(
"behaviorDistribution"
)
@TenantIdIgnore
public
ApiResponseEntity
<
List
<
PlatElderBehaviorDistributionVO
>>
behaviorDistribution
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
}
}
server-common/src/main/java/com/makeit/enums/redis/RedisConst.java
View file @
983ba2cd
...
@@ -102,6 +102,8 @@ public class RedisConst {
...
@@ -102,6 +102,8 @@ public class RedisConst {
public
static
final
String
ELDER_DAY_DURATION_PREFIX
=
"plat:day:duration:device:"
;
public
static
final
String
ELDER_DAY_DURATION_PREFIX
=
"plat:day:duration:device:"
;
public
static
final
String
LOCK_ALARM
=
"lock:alarm:device:id:"
;
...
...
server-common/src/main/java/com/makeit/utils/msg/MsgSendUtil.java
View file @
983ba2cd
...
@@ -17,10 +17,10 @@ public class MsgSendUtil {
...
@@ -17,10 +17,10 @@ public class MsgSendUtil {
* 发送消息
* 发送消息
*/
*/
public
void
send
(
MsgSendDTO
msgSendDTO
){
public
void
send
(
MsgSendDTO
msgSendDTO
){
for
(
IMsgSender
msgSender
:
msgSenderList
)
{
//
for (IMsgSender msgSender : msgSenderList) {
if
(
msgSender
.
support
(
msgSendDTO
.
getSendTypeEnum
())){
//
if(msgSender.support(msgSendDTO.getSendTypeEnum())){
msgSender
.
send
(
msgSendDTO
);
//
msgSender.send(msgSendDTO);
}
//
}
}
//
}
}
}
}
}
server-common/src/main/java/com/makeit/utils/msg/sender/MailMsgSender.java
View file @
983ba2cd
...
@@ -40,7 +40,7 @@ public class MailMsgSender implements IMsgSender {
...
@@ -40,7 +40,7 @@ public class MailMsgSender implements IMsgSender {
helper
.
setText
(
msgDTO
.
getOriContent
(),
false
);
helper
.
setText
(
msgDTO
.
getOriContent
(),
false
);
mailSender
.
send
(
message
);
mailSender
.
send
(
message
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"发送邮箱异常:"
,
e
);
log
.
error
(
"发送邮箱异常:"
,
msgDTO
,
e
);
}
}
}
}
...
...
server-common/src/main/java/com/makeit/utils/msg/sender/SmsMsgSender.java
View file @
983ba2cd
...
@@ -69,7 +69,7 @@ public class SmsMsgSender implements IMsgSender{
...
@@ -69,7 +69,7 @@ public class SmsMsgSender implements IMsgSender{
log
.
info
(
"发送短信成功"
);
log
.
info
(
"发送短信成功"
);
}
}
}
catch
(
Exception
e
){
}
catch
(
Exception
e
){
log
.
error
(
"发送短信异常:"
,
e
);
log
.
error
(
"发送短信异常:"
,
msgDTO
,
e
);
}
}
}
}
...
...
server-common/src/main/java/com/makeit/utils/msg/sender/SmsVoiceSender.java
View file @
983ba2cd
...
@@ -77,7 +77,7 @@ public class SmsVoiceSender implements IMsgSender{
...
@@ -77,7 +77,7 @@ public class SmsVoiceSender implements IMsgSender{
throw
new
BusinessException
((
String
)
jsonObject
.
get
(
"status_code"
));
throw
new
BusinessException
((
String
)
jsonObject
.
get
(
"status_code"
));
}
}
}
catch
(
Exception
e
){
}
catch
(
Exception
e
){
log
.
error
(
"发送语音异常:"
,
e
);
log
.
error
(
"发送语音异常:"
,
msgDTO
,
e
);
}
}
}
}
}
}
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportMonthController.java
View file @
983ba2cd
...
@@ -2,18 +2,23 @@ package com.makeit.module.controller.elder;
...
@@ -2,18 +2,23 @@ package com.makeit.module.controller.elder;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.service.platform.elder.PlatElderReportMonthService
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
/**
* <p>
* <p>
* 长者基本信息 前端控制器
* 长者基本信息 前端控制器
...
@@ -27,6 +32,9 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -27,6 +32,9 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping
(
"/plat/elder/report/month"
)
@RequestMapping
(
"/plat/elder/report/month"
)
public
class
PlatElderReportMonthController
{
public
class
PlatElderReportMonthController
{
@Autowired
private
PlatElderReportMonthService
platElderReportMonthService
;
@ApiOperation
(
"综合评价"
)
@ApiOperation
(
"综合评价"
)
@PostMapping
(
"comprehensiveEvaluation"
)
@PostMapping
(
"comprehensiveEvaluation"
)
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
...
@@ -48,8 +56,8 @@ public class PlatElderReportMonthController {
...
@@ -48,8 +56,8 @@ public class PlatElderReportMonthController {
@ApiOperation
(
"月报表"
)
@ApiOperation
(
"月报表"
)
@PostMapping
(
"reportMonth"
)
@PostMapping
(
"reportMonth"
)
public
ApiResponseEntity
<
PlatElderReportMonthVO
>
reportMonth
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
PlatElderReportMonthVO
>
>
reportMonth
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
return
ApiResponseUtils
.
success
(
platElderReportMonthService
.
reportMonth
(
platElderIdDTO
))
;
}
}
...
...
server-service/src/main/java/com/makeit/dto/platform/elder/PlatElderReportDTO.java
View file @
983ba2cd
...
@@ -11,7 +11,7 @@ import java.time.LocalDateTime;
...
@@ -11,7 +11,7 @@ import java.time.LocalDateTime;
/**
/**
* <p>
* <p>
* 长者基本信息
server-service/src/main/java/com/makeit/server/platform/elder/PlatElderPhysicalReportService.java
* 长者基本信息
* </p>
* </p>
*
*
* @author eugene young
* @author eugene young
...
@@ -20,12 +20,18 @@ import java.time.LocalDateTime;
...
@@ -20,12 +20,18 @@ import java.time.LocalDateTime;
@Data
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"Elder对象"
,
description
=
"长者基本信息"
)
@ApiModel
(
value
=
"Elder对象"
,
description
=
"长者基本信息"
)
public
class
PlatElderReportDTO
extends
PlatElderIdDTO
{
public
class
PlatElderReportDTO
extends
PlatElderIdDTO
{
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@ApiModelProperty
(
"日期"
)
@ApiModelProperty
(
"日期"
)
private
LocalDate
now
;
private
LocalDate
now
;
@ApiModelProperty
(
"月份"
)
private
Integer
year
;
@ApiModelProperty
(
"月份"
)
private
Integer
month
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
"开始时间"
)
@ApiModelProperty
(
"开始时间"
)
private
LocalDateTime
startTime
;
private
LocalDateTime
startTime
;
...
...
server-service/src/main/java/com/makeit/entity/platform/elder/PlatElderBreatheAbnormal.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
entity
.
platform
.
elder
;
import
com.makeit.common.entity.BaseBusEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.time.LocalDateTime
;
/**
* <p>
* 长者每天呼吸异常
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"PlatElderBreatheAbnormal对象"
,
description
=
"长者每天呼吸异常"
)
public
class
PlatElderBreatheAbnormal
extends
BaseBusEntity
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"长者id"
)
private
String
elderId
;
@ApiModelProperty
(
value
=
"呼吸分析id"
)
private
String
breatheAnalysisId
;
@ApiModelProperty
(
value
=
"发生时间"
)
private
LocalDateTime
happenTime
;
@ApiModelProperty
(
value
=
"异常类型"
)
private
String
type
;
@ApiModelProperty
(
value
=
"值"
)
private
String
value
;
}
server-service/src/main/java/com/makeit/entity/platform/elder/PlatElderBreatheAnalysis.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
entity
.
platform
.
elder
;
import
com.makeit.common.entity.BaseBusEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 长者每天呼吸分析
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"PlatElderBreatheAnalysis对象"
,
description
=
"长者每天呼吸分析"
)
public
class
PlatElderBreatheAnalysis
extends
BaseBusEntity
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"长者id"
)
private
String
elderId
;
@ApiModelProperty
(
value
=
"睡眠评分"
)
private
String
breatheScore
;
@ApiModelProperty
(
value
=
"睡眠结果"
)
private
String
breatheResult
;
@ApiModelProperty
(
value
=
"评价"
)
private
String
breatheEvaluate
;
@ApiModelProperty
(
value
=
"平均心率"
)
private
String
avgHeartRate
;
@ApiModelProperty
(
value
=
"平均呼吸率"
)
private
String
avgBreatheRate
;
@ApiModelProperty
(
value
=
"当前日期 yyyy-mm-dd"
)
private
String
currentDate
;
}
server-service/src/main/java/com/makeit/mapper/platform/elder/PlatElderBreatheAbnormalMapper.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
mapper
.
platform
.
elder
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.makeit.entity.platform.elder.PlatElderBreatheAbnormal
;
/**
* <p>
* 长者每天呼吸异常 Mapper 接口
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
public
interface
PlatElderBreatheAbnormalMapper
extends
BaseMapper
<
PlatElderBreatheAbnormal
>
{
}
server-service/src/main/java/com/makeit/mapper/platform/elder/PlatElderBreatheAnalysisMapper.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
mapper
.
platform
.
elder
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.makeit.entity.platform.elder.PlatElderBreatheAnalysis
;
/**
* <p>
* 长者每天呼吸分析 Mapper 接口
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
public
interface
PlatElderBreatheAnalysisMapper
extends
BaseMapper
<
PlatElderBreatheAnalysis
>
{
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/BehaviorAlarm.java
View file @
983ba2cd
...
@@ -70,7 +70,7 @@ public class BehaviorAlarm implements IAlarm {
...
@@ -70,7 +70,7 @@ public class BehaviorAlarm implements IAlarm {
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
String
deviceId
=
platDevice
.
getOriDeviceId
();
String
deviceId
=
platDevice
.
getOriDeviceId
();
if
(
StringUtils
.
isBlank
(
ruleConfigStr
))
{
if
(
StringUtils
.
isBlank
(
ruleConfigStr
))
{
log
.
info
(
"行为告警配置未配置,告警配置id:"
+
config
.
getId
());
log
.
error
(
"行为告警配置未配置,告警配置id:"
+
config
.
getId
());
return
;
return
;
}
}
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
...
@@ -78,7 +78,7 @@ public class BehaviorAlarm implements IAlarm {
...
@@ -78,7 +78,7 @@ public class BehaviorAlarm implements IAlarm {
Integer
duration
=
ruleConfig
.
getDuration
();
//分钟
Integer
duration
=
ruleConfig
.
getDuration
();
//分钟
PlatDayDurationRecord
platDayDurationRecord
=
dayDurationUtil
.
get
(
platDevice
.
getOriDeviceId
());
PlatDayDurationRecord
platDayDurationRecord
=
dayDurationUtil
.
get
(
platDevice
.
getOriDeviceId
());
if
(
platDayDurationRecord
==
null
)
{
if
(
platDayDurationRecord
==
null
)
{
log
.
info
(
"行为告警未找到行为异常平均时长,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"行为告警未找到行为异常平均时长,设备id:"
+
platDevice
.
getId
());
return
;
return
;
}
}
Long
duration1
=
platDayDurationRecord
.
getDuration
();
Long
duration1
=
platDayDurationRecord
.
getDuration
();
...
@@ -101,13 +101,13 @@ public class BehaviorAlarm implements IAlarm {
...
@@ -101,13 +101,13 @@ public class BehaviorAlarm implements IAlarm {
alarmRedisDTO
.
setStartLong
(
endLong
);
alarmRedisDTO
.
setStartLong
(
endLong
);
alarmRedisDTO
.
setStart
(
now
);
alarmRedisDTO
.
setStart
(
now
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_BEHAVIOR_ID
+
deviceId
,
alarmRedisDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_BEHAVIOR_ID
+
deviceId
,
alarmRedisDTO
);
log
.
info
(
"空间雷达上报进入房间,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"空间雷达上报进入房间,设备id:"
+
platDevice
.
getId
());
return
;
return
;
}
}
long
count
=
endLong
-
startLong
;
long
count
=
endLong
-
startLong
;
//进入空间时间满足告警时长,判断是否已经告警过了
//进入空间时间满足告警时长,判断是否已经告警过了
if
(
count
/
1000
>=
duration
&&
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
NO
.
getValue
()))
{
if
(
count
/
1000
>=
duration
&&
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
NO
.
getValue
()))
{
log
.
info
(
"空间雷达发出告警,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"空间雷达发出告警,设备id:"
+
platDevice
.
getId
());
notice
(
platAlarmCheckDTO
);
notice
(
platAlarmCheckDTO
);
alarmRedisDTO
.
setAlarm
(
CommonEnum
.
YES
.
getValue
());
alarmRedisDTO
.
setAlarm
(
CommonEnum
.
YES
.
getValue
());
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_BEHAVIOR_ID
+
deviceId
,
alarmRedisDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_BEHAVIOR_ID
+
deviceId
,
alarmRedisDTO
);
...
@@ -146,7 +146,7 @@ public class BehaviorAlarm implements IAlarm {
...
@@ -146,7 +146,7 @@ public class BehaviorAlarm implements IAlarm {
//save db
//save db
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
if
(
CollectionUtils
.
isEmpty
(
platAlarmCheckDTO
.
getPlatElderList
())){
if
(
CollectionUtils
.
isEmpty
(
platAlarmCheckDTO
.
getPlatElderList
())){
log
.
info
(
"未关联长者,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"未关联长者,设备id:"
+
platDevice
.
getId
());
return
;
return
;
}
}
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
...
@@ -171,11 +171,12 @@ public class BehaviorAlarm implements IAlarm {
...
@@ -171,11 +171,12 @@ public class BehaviorAlarm implements IAlarm {
@Override
@Override
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
//获取长者 空间信息
//获取长者 空间信息
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
log
.
info
(
"未关联长者,设备id:"
+
platAlarmCheckDTO
.
getPlatDevice
().
getId
());
log
.
error
(
"未关联长者,设备id:"
+
platAlarmCheckDTO
.
getPlatDevice
().
getId
());
return
;
return
;
}
}
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
...
@@ -197,6 +198,7 @@ public class BehaviorAlarm implements IAlarm {
...
@@ -197,6 +198,7 @@ public class BehaviorAlarm implements IAlarm {
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
log
.
error
(
"长者行为异常,发出告警,设备id:"
+
platDevice
.
getId
()+
", 长者名称:"
+
platElder
.
getName
());
}
}
}
}
}
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/BreathAlarm.java
View file @
983ba2cd
...
@@ -56,7 +56,7 @@ public class BreathAlarm implements IAlarm {
...
@@ -56,7 +56,7 @@ public class BreathAlarm implements IAlarm {
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
String
deviceId
=
platDevice
.
getOriDeviceId
();
String
deviceId
=
platDevice
.
getOriDeviceId
();
if
(
StringUtils
.
isBlank
(
ruleConfigStr
))
{
if
(
StringUtils
.
isBlank
(
ruleConfigStr
))
{
log
.
info
(
"呼吸告警配置未配置,告警配置id:"
+
config
.
getId
());
log
.
error
(
"呼吸告警配置未配置,告警配置id:"
+
config
.
getId
());
return
;
return
;
}
}
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
...
@@ -85,14 +85,14 @@ public class BreathAlarm implements IAlarm {
...
@@ -85,14 +85,14 @@ public class BreathAlarm implements IAlarm {
alarmRedisDTO
.
setStart
(
now
);
alarmRedisDTO
.
setStart
(
now
);
alarmRedisDTO
.
setStartLong
(
endLong
);
alarmRedisDTO
.
setStartLong
(
endLong
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_BR_ID
+
deviceId
,
alarmRedisDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_BR_ID
+
deviceId
,
alarmRedisDTO
);
log
.
info
(
"发现长者呼吸异常,设备id:"
+
deviceId
);
log
.
error
(
"发现长者呼吸异常,设备id:"
+
deviceId
);
return
;
return
;
}
}
Long
startLong
=
alarmRedisDTO
.
getStartLong
();
Long
startLong
=
alarmRedisDTO
.
getStartLong
();
long
count
=
endLong
-
startLong
;
long
count
=
endLong
-
startLong
;
if
(
count
/
1000
>=
duration
)
{
if
(
count
/
1000
>=
duration
)
{
if
(
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
YES
.
getValue
()))
{
if
(
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
YES
.
getValue
()))
{
log
.
info
(
"呼吸已告警,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"呼吸已告警,设备id:"
+
platDevice
.
getId
());
return
;
return
;
}
}
fillRemark
(
platAlarmCheckDTO
,
br
,
start
,
end
);
fillRemark
(
platAlarmCheckDTO
,
br
,
start
,
end
);
...
@@ -127,9 +127,10 @@ public class BreathAlarm implements IAlarm {
...
@@ -127,9 +127,10 @@ public class BreathAlarm implements IAlarm {
@Override
@Override
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
log
.
info
(
"未关联长者,设备id:"
+
platAlarmCheckDTO
.
getPlatDevice
().
getId
());
log
.
error
(
"未关联长者,设备id:"
+
platAlarmCheckDTO
.
getPlatDevice
().
getId
());
return
;
return
;
}
}
for
(
PlatElder
platElder
:
platElderList
)
{
for
(
PlatElder
platElder
:
platElderList
)
{
...
@@ -141,6 +142,7 @@ public class BreathAlarm implements IAlarm {
...
@@ -141,6 +142,7 @@ public class BreathAlarm implements IAlarm {
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
log
.
error
(
"长者呼吸异常,发出告警,设备id:"
+
platDevice
.
getId
()+
", 长者名称:"
+
platElder
.
getName
());
}
}
}
}
}
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/FallAlarm.java
View file @
983ba2cd
...
@@ -48,6 +48,9 @@ public class FallAlarm implements IAlarm {
...
@@ -48,6 +48,9 @@ public class FallAlarm implements IAlarm {
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
AlarmRedisDTO
alarmRedisDTO
=
RedisUtil
.
get
(
RedisConst
.
ALARM_DEVICE_FALL_ID
+
deviceId
);
AlarmRedisDTO
alarmRedisDTO
=
RedisUtil
.
get
(
RedisConst
.
ALARM_DEVICE_FALL_ID
+
deviceId
);
if
(
StringUtils
.
equals
(
personState
,
CommonEnum
.
YES
.
getValue
()))
{
if
(
StringUtils
.
equals
(
personState
,
CommonEnum
.
YES
.
getValue
()))
{
if
(
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
YES
.
getValue
())){
log
.
error
(
"长者跌倒,已告警过,设备iot_id:"
+
deviceId
);
}
notice
(
platAlarmCheckDTO
);
notice
(
platAlarmCheckDTO
);
alarmRedisDTO
.
setAlarm
(
CommonEnum
.
YES
.
getValue
());
alarmRedisDTO
.
setAlarm
(
CommonEnum
.
YES
.
getValue
());
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_FALL_ID
,
alarmRedisDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_FALL_ID
,
alarmRedisDTO
);
...
@@ -63,7 +66,7 @@ public class FallAlarm implements IAlarm {
...
@@ -63,7 +66,7 @@ public class FallAlarm implements IAlarm {
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
log
.
info
(
"跌倒设备未关联长者,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"跌倒设备未关联长者,设备id:"
+
platDevice
.
getId
());
return
;
return
;
}
}
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
...
@@ -76,6 +79,7 @@ public class FallAlarm implements IAlarm {
...
@@ -76,6 +79,7 @@ public class FallAlarm implements IAlarm {
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
log
.
error
(
"长者跌倒,发出告警,设备id:"
+
platDevice
.
getId
()+
", 长者名称:"
+
platElder
.
getName
());
}
}
}
}
}
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/HeartAlarm.java
View file @
983ba2cd
...
@@ -47,7 +47,7 @@ public class HeartAlarm implements IAlarm {
...
@@ -47,7 +47,7 @@ public class HeartAlarm implements IAlarm {
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
String
deviceId
=
platDevice
.
getOriDeviceId
();
String
deviceId
=
platDevice
.
getOriDeviceId
();
if
(
StringUtils
.
isBlank
(
ruleConfigStr
))
{
if
(
StringUtils
.
isBlank
(
ruleConfigStr
))
{
log
.
info
(
"心率告警配置未配置,告警配置id:"
+
config
.
getId
());
log
.
error
(
"心率告警配置未配置,告警配置id:"
+
config
.
getId
());
return
;
return
;
}
}
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
String
personState
=
Convert
.
toStr
(
properties
.
get
(
"personState"
));
...
@@ -75,14 +75,16 @@ public class HeartAlarm implements IAlarm {
...
@@ -75,14 +75,16 @@ public class HeartAlarm implements IAlarm {
alarmRedisDTO
.
setStart
(
now
);
alarmRedisDTO
.
setStart
(
now
);
alarmRedisDTO
.
setStartLong
(
endLong
);
alarmRedisDTO
.
setStartLong
(
endLong
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_HR_ID
+
deviceId
,
alarmRedisDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_HR_ID
+
deviceId
,
alarmRedisDTO
);
log
.
info
(
"发现长者心率异常,设备id:"
+
deviceId
);
log
.
error
(
"发现长者心率异常,设备id:"
+
deviceId
);
return
;
return
;
}
}
Long
startLong
=
alarmRedisDTO
.
getStartLong
();
Long
startLong
=
alarmRedisDTO
.
getStartLong
();
long
count
=
endLong
-
startLong
;
long
count
=
endLong
-
startLong
;
if
(
count
/
1000
>=
duration
)
{
if
(
count
/
1000
>=
duration
)
{
//todo 如果每台服务器都能收到上报消息 加redis锁
//RLock lock = RedisLockUtil.lock(RedisConst.LOCK_ALARM + deviceId);
if
(
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
YES
.
getValue
()))
{
if
(
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
YES
.
getValue
()))
{
log
.
info
(
"心率已告警,设备id:"
+
platDevice
.
getId
());
log
.
error
(
"心率已告警,设备id:"
+
platDevice
.
getId
());
return
;
return
;
}
}
fillRemark
(
platAlarmCheckDTO
,
hr
,
start
,
end
);
fillRemark
(
platAlarmCheckDTO
,
hr
,
start
,
end
);
...
@@ -110,9 +112,10 @@ public class HeartAlarm implements IAlarm {
...
@@ -110,9 +112,10 @@ public class HeartAlarm implements IAlarm {
@Override
@Override
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
if
(
CollectionUtils
.
isEmpty
(
platElderList
))
{
log
.
info
(
"跌倒
设备未关联长者,设备id:"
+
platAlarmCheckDTO
.
getPlatDevice
().
getId
());
log
.
error
(
"心率
设备未关联长者,设备id:"
+
platAlarmCheckDTO
.
getPlatDevice
().
getId
());
return
;
return
;
}
}
for
(
PlatElder
platElder
:
platElderList
)
{
for
(
PlatElder
platElder
:
platElderList
)
{
...
@@ -124,6 +127,7 @@ public class HeartAlarm implements IAlarm {
...
@@ -124,6 +127,7 @@ public class HeartAlarm implements IAlarm {
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderIds
(
platElder
.
getId
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecord
.
setElderName
(
platElder
.
getName
());
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
log
.
error
(
"长者心率异常,发出告警,设备id:"
+
platDevice
.
getId
()+
", 长者名称:"
+
platElder
.
getName
());
}
}
}
}
}
}
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderBreatheAbnormalService.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
service
.
platform
.
elder
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.makeit.entity.platform.elder.PlatElderBreatheAbnormal
;
/**
* <p>
* 长者每天呼吸异常 服务类
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
public
interface
PlatElderBreatheAbnormalService
extends
IService
<
PlatElderBreatheAbnormal
>
{
}
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderBreatheAnalysisService.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
service
.
platform
.
elder
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.makeit.entity.platform.elder.PlatElderBreatheAnalysis
;
/**
* <p>
* 长者每天呼吸分析 服务类
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
public
interface
PlatElderBreatheAnalysisService
extends
IService
<
PlatElderBreatheAnalysis
>
{
}
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderReportMonthService.java
View file @
983ba2cd
package
com
.
makeit
.
service
.
platform
.
elder
;
package
com
.
makeit
.
service
.
platform
.
elder
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.entity.platform.elder.PlatElderReportMonth
;
import
com.makeit.entity.platform.elder.PlatElderReportMonth
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
java.util.List
;
/**
/**
* <p>
* <p>
...
@@ -13,4 +19,7 @@ import com.makeit.entity.platform.elder.PlatElderReportMonth;
...
@@ -13,4 +19,7 @@ import com.makeit.entity.platform.elder.PlatElderReportMonth;
*/
*/
public
interface
PlatElderReportMonthService
extends
IService
<
PlatElderReportMonth
>
{
public
interface
PlatElderReportMonthService
extends
IService
<
PlatElderReportMonth
>
{
List
<
PlatElderReportMonthVO
>
reportMonth
(
PlatElderReportDTO
platElderIdDTO
);
}
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderBreatheAbnormalServiceImpl.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
service
.
platform
.
elder
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.makeit.entity.platform.elder.PlatElderBreatheAbnormal
;
import
com.makeit.mapper.platform.elder.PlatElderBreatheAbnormalMapper
;
import
com.makeit.service.platform.elder.PlatElderBreatheAbnormalService
;
import
org.springframework.stereotype.Service
;
/**
* <p>
* 长者每天呼吸异常 服务实现类
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
@Service
public
class
PlatElderBreatheAbnormalServiceImpl
extends
ServiceImpl
<
PlatElderBreatheAbnormalMapper
,
PlatElderBreatheAbnormal
>
implements
PlatElderBreatheAbnormalService
{
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderBreatheAnalysisServiceImpl.java
0 → 100644
View file @
983ba2cd
package
com
.
makeit
.
service
.
platform
.
elder
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.makeit.entity.platform.elder.PlatElderBreatheAnalysis
;
import
com.makeit.mapper.platform.elder.PlatElderBreatheAnalysisMapper
;
import
com.makeit.service.platform.elder.PlatElderBreatheAnalysisService
;
import
org.springframework.stereotype.Service
;
/**
* <p>
* 长者每天呼吸分析 服务实现类
* </p>
*
* @author eugene young
* @since 2023-09-15
*/
@Service
public
class
PlatElderBreatheAnalysisServiceImpl
extends
ServiceImpl
<
PlatElderBreatheAnalysisMapper
,
PlatElderBreatheAnalysis
>
implements
PlatElderBreatheAnalysisService
{
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportDayServiceImpl.java
View file @
983ba2cd
...
@@ -105,7 +105,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
...
@@ -105,7 +105,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
LocalDateTime
start
=
dayStartNow
(
now
);
LocalDateTime
start
=
dayStartNow
(
now
);
LocalDateTime
end
=
dayEndNow
(
now
);
LocalDateTime
end
=
dayEndNow
(
now
);
List
<
PlatElderSleepDiagramVO
>
voList
=
new
ArrayList
<>(
10
)
;
List
<
PlatElderSleepDiagramVO
>
voList
;
String
nowString
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
).
format
(
now
);
String
nowString
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
).
format
(
now
);
...
...
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderReportMonthServiceImpl.java
View file @
983ba2cd
package
com
.
makeit
.
service
.
platform
.
elder
.
impl
;
package
com
.
makeit
.
service
.
platform
.
elder
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.entity.platform.elder.PlatElderReportMonth
;
import
com.makeit.entity.platform.elder.PlatElderReportMonth
;
import
com.makeit.mapper.platform.elder.PlatElderReportMonthMapper
;
import
com.makeit.mapper.platform.elder.PlatElderReportMonthMapper
;
import
com.makeit.service.platform.elder.PlatElderReportMonthService
;
import
com.makeit.service.platform.elder.PlatElderReportMonthService
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.data.convert.StreamUtil
;
import
com.makeit.utils.time.LocalDateTimeUtils
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDate
;
import
java.util.List
;
/**
/**
* <p>
* <p>
* 长者月报 服务实现类
* 长者月报 服务实现类
...
@@ -17,4 +26,20 @@ import org.springframework.stereotype.Service;
...
@@ -17,4 +26,20 @@ import org.springframework.stereotype.Service;
@Service
@Service
public
class
PlatElderReportMonthServiceImpl
extends
ServiceImpl
<
PlatElderReportMonthMapper
,
PlatElderReportMonth
>
implements
PlatElderReportMonthService
{
public
class
PlatElderReportMonthServiceImpl
extends
ServiceImpl
<
PlatElderReportMonthMapper
,
PlatElderReportMonth
>
implements
PlatElderReportMonthService
{
@Override
public
List
<
PlatElderReportMonthVO
>
reportMonth
(
PlatElderReportDTO
platElderIdDTO
)
{
LocalDate
start
=
LocalDate
.
of
(
platElderIdDTO
.
getYear
(),
platElderIdDTO
.
getMonth
(),
1
);
LocalDate
end
=
LocalDateTimeUtils
.
getMonthMax
(
start
);
List
<
PlatElderReportMonth
>
monthList
=
list
(
new
QueryWrapper
<
PlatElderReportMonth
>().
lambda
()
.
eq
(
PlatElderReportMonth:
:
getElderId
,
platElderIdDTO
.
getElderId
())
.
ge
(
PlatElderReportMonth:
:
getDay
,
start
)
.
le
(
PlatElderReportMonth:
:
getDay
,
end
)
);
List
<
PlatElderReportMonthVO
>
voList
=
BeanDtoVoUtils
.
listVo
(
monthList
,
PlatElderReportMonthVO
.
class
);
return
voList
;
}
}
}
server-service/src/main/java/com/makeit/task/DayDurationTask.java
View file @
983ba2cd
...
@@ -13,7 +13,7 @@ public class DayDurationTask {
...
@@ -13,7 +13,7 @@ public class DayDurationTask {
@Autowired
@Autowired
private
DayDurationUtil
dayDurationUtil
;
private
DayDurationUtil
dayDurationUtil
;
@Scheduled
(
cron
=
"0
*/1
* * * ?"
)
@Scheduled
(
cron
=
"0
10
* * * ?"
)
public
void
updateDayDuration
()
{
public
void
updateDayDuration
()
{
dayDurationUtil
.
getAll
();
dayDurationUtil
.
getAll
();
}
}
...
...
server-web/src/main/java/com/makeit/mqtt/PushCallback.java
View file @
983ba2cd
...
@@ -18,6 +18,7 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
...
@@ -18,6 +18,7 @@ import org.eclipse.paho.client.mqttv3.MqttMessage;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.StopWatch
;
import
org.springframework.util.StopWatch
;
...
@@ -62,7 +63,7 @@ public class PushCallback implements MqttCallback {
...
@@ -62,7 +63,7 @@ public class PushCallback implements MqttCallback {
DeviceInfo
device
=
JSON
.
parseObject
(
payload
,
DeviceInfo
.
class
);
DeviceInfo
device
=
JSON
.
parseObject
(
payload
,
DeviceInfo
.
class
);
// todo
// todo
//
checkAlarm(device);
checkAlarm
(
device
);
}
}
@Override
@Override
...
@@ -76,28 +77,24 @@ public class PushCallback implements MqttCallback {
...
@@ -76,28 +77,24 @@ public class PushCallback implements MqttCallback {
* @param device
* @param device
*/
*/
@TenantIdIgnore
@TenantIdIgnore
@Async
public
void
checkAlarm
(
DeviceInfo
device
)
{
public
void
checkAlarm
(
DeviceInfo
device
)
{
StopWatch
stopWatch
=
new
StopWatch
();
StopWatch
stopWatch
=
new
StopWatch
();
stopWatch
.
start
(
"checkAlarm-1"
);
stopWatch
.
start
(
"checkAlarm-1"
);
String
deviceId
=
device
.
getDeviceId
();
String
deviceId
=
device
.
getDeviceId
();
// String propertiesStr = device.getProperties();
// if (StringUtils.isBlank(propertiesStr)) {
// return;
// }
// JSONObject properties = JSON.parseObject(propertiesStr);
JSONObject
properties
=
device
.
getProperties
();
JSONObject
properties
=
device
.
getProperties
();
//iot设备id
//iot设备id
PlatDevice
platDevice
=
deviceCacheUtil
.
get
(
deviceId
);
PlatDevice
platDevice
=
deviceCacheUtil
.
get
(
deviceId
);
if
(
platDevice
==
null
){
if
(
platDevice
==
null
){
logger
.
info
(
"设备信息异常,设备iot-id:"
+
deviceId
);
logger
.
error
(
"设备信息异常,设备iot-id:"
+
deviceId
);
return
;
return
;
}
}
List
<
PlatAlarmConfig
>
deviceAlarmConfigList
=
alarmConfigCacheUtil
.
getDeviceAlarmConfigMap
(
platDevice
);
List
<
PlatAlarmConfig
>
deviceAlarmConfigList
=
alarmConfigCacheUtil
.
getDeviceAlarmConfigMap
(
platDevice
);
deviceAlarmConfigList
.
removeIf
(
Objects:
:
isNull
);
deviceAlarmConfigList
.
removeIf
(
Objects:
:
isNull
);
if
(
CollectionUtils
.
isEmpty
(
deviceAlarmConfigList
))
{
if
(
CollectionUtils
.
isEmpty
(
deviceAlarmConfigList
))
{
logger
.
info
(
"该设备没有告警配置:"
+
deviceId
);
logger
.
error
(
"该设备没有告警配置:"
+
deviceId
);
return
;
return
;
}
}
for
(
PlatAlarmConfig
config
:
deviceAlarmConfigList
)
{
for
(
PlatAlarmConfig
config
:
deviceAlarmConfigList
)
{
...
...
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