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
ff95625f
authored
Sep 14, 2023
by
huangjy
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
6c06d528
710a7f6c
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
64 changed files
with
1108 additions
and
145 deletions
db/inti.sql
server-common/src/main/java/com/makeit/enums/BaseEnum.java
server-common/src/main/java/com/makeit/global/aspect/tenant/TenantIdUtil.java
server-common/src/main/java/com/makeit/module/iot/service/IotProductDeviceService.java
server-common/src/main/java/com/makeit/utils/LongTimestampUtil.java
server-common/src/main/java/com/makeit/utils/msg/SendTypeEnum.java
server-common/src/main/java/com/makeit/utils/msg/dto/MsgSendDTO.java
server-common/src/main/java/com/makeit/utils/user/plat/PlatUserUtil.java
server-module/src/main/java/com/makeit/module/controller/dataScreen/DataScreenController.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderRealTimeController.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportDayController.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportMonthController.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportWeekController.java
server-module/src/main/java/com/makeit/module/controller/space/PlatRoomDynamicDetailController.java
server-module/src/main/java/com/makeit/module/controller/wechat/elder/PlatElderRealTimeWechatController.java
server-module/src/main/java/com/makeit/module/controller/workstation/WorkStationController.java
server-service/src/main/java/com/makeit/dto/platform/alarm/PlatAlarmCheckDTO.java
server-service/src/main/java/com/makeit/dto/platform/dataScreen/PlatDataScreenQueryDTO.java
server-service/src/main/java/com/makeit/dto/platform/device/PlatDeviceDTO.java
server-service/src/main/java/com/makeit/dto/platform/elder/PlatElderIdDTO.java
server-service/src/main/java/com/makeit/dto/platform/workstation/WorkStationQueryDTO.java
server-service/src/main/java/com/makeit/entity/platform/alarm/PlatAlarmRecord.java
server-service/src/main/java/com/makeit/entity/platform/alarm/PlatDayDurationRecord.java
server-service/src/main/java/com/makeit/enums/platform/space/PlatBedStatusEnum.java
server-service/src/main/java/com/makeit/mapper/platform/alarm/PlatDayDurationRecordMapper.java
server-service/src/main/java/com/makeit/mapper/platform/space/PlatRoomMapper.java
server-service/src/main/java/com/makeit/service/platform/alarm/PlatAlarmRecordService.java
server-service/src/main/java/com/makeit/service/platform/alarm/PlatDayDurationRecordService.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/alarm/impl/PlatAlarmConfigServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatAlarmRecordServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatDayDurationRecordServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/auth/PlatOrgService.java
server-service/src/main/java/com/makeit/service/platform/auth/impl/PlatOrgServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/dataScreen/DataScreenService.java
server-service/src/main/java/com/makeit/service/platform/dataScreen/impl/DataScreenServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/device/impl/PlatDeviceServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderDayReportDayService.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderDayReportWeekService.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderRealTimeService.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/PlatElderDayReportWeekServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderRealTimeServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/PlatRoomService.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatBedServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomBedDeviceServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomDynamicServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/workstation/WorkStationService.java
server-service/src/main/java/com/makeit/service/platform/workstation/impl/WorkStationServiceImpl.java
server-service/src/main/java/com/makeit/utils/AlarmRedisDTO.java
server-service/src/main/java/com/makeit/vo/platform/space/PlatRoomPanoramaVO.java
server-service/src/main/java/com/makeit/vo/platform/space/PlatSpaceAndRoomVO.java
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationBedVO.java
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationStatisticsVO.java → server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationHomeStatisticsVO.java
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationInstitutionRoomVO.java
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationInstitutionStatisticsVO.java
server-service/src/main/resources/mappers/PlatBedMapper.xml
server-service/src/main/resources/mappers/PlatRoomMapper.xml
server-web/src/main/resources/application.yml
server-web/src/test/java/com/makeit/iotapi/IotTest.java
db/inti.sql
View file @
ff95625f
...
...
@@ -453,4 +453,21 @@ CREATE TABLE `plafform_setting` (
)
ENGINE
=
INNODB
DEFAULT
CHARSET
=
utf8mb4
COMMENT
=
'平台设置'
;
CREATE
TABLE
`plat_day_duration_record`
(
`id`
varchar
(
64
)
NOT
NULL
COMMENT
'id'
,
`elder_ids`
varchar
(
1024
)
NOT
NULL
COMMENT
'长者id,逗号拼接'
,
`duration`
bigint
(
64
)
NOT
NULL
COMMENT
'当天本次进入该区域的时长'
,
`ori_device_id`
varchar
(
64
)
NOT
NULL
COMMENT
'iot设备id'
,
`day`
varchar
(
64
)
NOT
NULL
COMMENT
'日期 yyyyMMdd'
,
`start_date`
datetime
DEFAULT
NULL
COMMENT
'本次进入时间'
,
`end_date`
datetime
DEFAULT
NULL
COMMENT
'本次离开时间'
,
`create_by`
varchar
(
64
)
DEFAULT
NULL
COMMENT
'创建者'
,
`create_date`
datetime
DEFAULT
NULL
COMMENT
'创建时间'
,
`update_by`
varchar
(
64
)
DEFAULT
NULL
COMMENT
'更新者'
,
`update_date`
datetime
DEFAULT
NULL
COMMENT
'更新时间'
,
`del_flag`
int
(
1
)
DEFAULT
'0'
COMMENT
'删除标记'
,
`tenant_id`
varchar
(
64
)
DEFAULT
NULL
COMMENT
' 租户id '
,
PRIMARY
KEY
(
`id`
)
USING
BTREE
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8mb4
COMMENT
=
'每天停留时长记录'
;
server-common/src/main/java/com/makeit/enums/BaseEnum.java
View file @
ff95625f
...
...
@@ -99,7 +99,7 @@ public interface BaseEnum {
static
BaseEnum
getByValue
(
Class
<?
extends
BaseEnum
>
emClazz
,
String
value
)
{
BaseEnum
[]
em
=
emClazz
.
getEnumConstants
();
for
(
BaseEnum
e
:
em
)
{
if
(
e
.
getValue
().
equals
(
value
))
{
if
(
StringUtils
.
equals
(
e
.
getValue
(),
value
))
{
return
e
;
}
}
...
...
server-common/src/main/java/com/makeit/global/aspect/tenant/TenantIdUtil.java
View file @
ff95625f
...
...
@@ -35,7 +35,8 @@ public class TenantIdUtil {
List
<
Supplier
<
String
>>
supplierList
=
Arrays
.
asList
(
TenantIdUtil:
:
getFromThreadLocal
,
TenantIdUtil:
:
getFromHeader
//,
TenantIdUtil:
:
getFromHeader
);
for
(
Supplier
<
String
>
supplier
:
supplierList
)
{
...
...
server-common/src/main/java/com/makeit/module/iot/service/IotProductDeviceService.java
View file @
ff95625f
...
...
@@ -12,7 +12,9 @@ import com.makeit.module.iot.vo.IotPagerResult;
import
com.makeit.module.iot.vo.ResponseMessage
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentBreathe
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentSpace
;
import
com.makeit.utils.LongTimestampUtil
;
import
com.makeit.utils.data.convert.JsonUtil
;
import
com.makeit.utils.data.convert.StreamUtil
;
import
com.makeit.utils.old.StringUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
...
...
@@ -23,6 +25,7 @@ import java.time.Duration;
import
java.time.Instant
;
import
java.time.LocalDateTime
;
import
java.time.ZoneId
;
import
java.time.format.DateTimeFormatter
;
import
java.util.List
;
/**
...
...
@@ -95,7 +98,7 @@ public class IotProductDeviceService extends IotCommonService {
DeviceInfoContentBreathe
breathe
=
JsonUtil
.
toObj
((
String
)
deviceOperationLogEntity
.
getContent
(),
DeviceInfoContentBreathe
.
class
);
LocalDateTime
time
=
Lo
calDateTime
.
ofInstant
(
Instant
.
ofEpochMilli
(
breathe
.
getTimestamp
()),
ZoneId
.
systemDefault
());
LocalDateTime
time
=
Lo
ngTimestampUtil
.
toLocalDateTime
(
breathe
.
getTimestamp
());
if
(
ignoreDuration
!=
null
&&
Duration
.
between
(
time
,
LocalDateTime
.
now
()).
getSeconds
()
>
ignoreDuration
)
{
return
null
;
}
...
...
@@ -110,9 +113,9 @@ public class IotProductDeviceService extends IotCommonService {
return
null
;
}
DeviceInfoContentSpace
space
=
JsonUtil
.
toObj
((
String
)
deviceOperationLogEntity
.
getContent
(),
DeviceInfoContentSpace
.
class
);
DeviceInfoContentSpace
space
=
JsonUtil
.
toObj
((
String
)
deviceOperationLogEntity
.
getContent
(),
DeviceInfoContentSpace
.
class
);
LocalDateTime
time
=
Lo
calDateTime
.
ofInstant
(
Instant
.
ofEpochMilli
(
space
.
getTimestamp
()),
ZoneId
.
systemDefault
());
LocalDateTime
time
=
Lo
ngTimestampUtil
.
toLocalDateTime
(
space
.
getTimestamp
());
if
(
ignoreDuration
!=
null
&&
Duration
.
between
(
time
,
LocalDateTime
.
now
()).
getSeconds
()
>
ignoreDuration
)
{
return
null
;
}
...
...
@@ -121,6 +124,26 @@ public class IotProductDeviceService extends IotCommonService {
}
public
List
<
DeviceInfoContentBreathe
>
getDeviceLogByTimeRangeBreathe
(
String
deviceId
,
int
pageSize
,
LocalDateTime
startTime
,
LocalDateTime
endTime
)
{
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
);
List
<
DeviceOperationLogEntity
>
deviceOperationLogEntityList
=
getDeviceLogByTimeRange
(
deviceId
,
"reportProperty"
,
pageSize
,
dateTimeFormatter
.
format
(
startTime
),
dateTimeFormatter
.
format
(
endTime
));
List
<
DeviceInfoContentBreathe
>
deviceInfoContentBreatheList
=
StreamUtil
.
map
(
deviceOperationLogEntityList
,
e
->
JsonUtil
.
toObj
((
String
)
e
.
getContent
(),
DeviceInfoContentBreathe
.
class
));
return
deviceInfoContentBreatheList
;
}
public
List
<
DeviceInfoContentSpace
>
getDeviceLogByTimeRangeSpace
(
String
deviceId
,
int
pageSize
,
LocalDateTime
startTime
,
LocalDateTime
endTime
)
{
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
);
List
<
DeviceOperationLogEntity
>
deviceOperationLogEntityList
=
getDeviceLogByTimeRange
(
deviceId
,
"reportProperty"
,
pageSize
,
dateTimeFormatter
.
format
(
startTime
),
dateTimeFormatter
.
format
(
endTime
));
List
<
DeviceInfoContentSpace
>
deviceInfoContentSpaceList
=
StreamUtil
.
map
(
deviceOperationLogEntityList
,
e
->
JsonUtil
.
toObj
((
String
)
e
.
getContent
(),
DeviceInfoContentSpace
.
class
));
return
deviceInfoContentSpaceList
;
}
/**
* 根据类型查询设备日志
...
...
@@ -171,9 +194,20 @@ public class IotProductDeviceService extends IotCommonService {
}
public
List
<
DeviceOperationLogEntity
>
getDeviceLogByTimeRange
(
String
deviceId
,
int
pageSize
,
String
startTime
,
String
endTime
)
{
public
List
<
DeviceOperationLogEntity
>
getDeviceLogByTimeRange
(
String
deviceId
,
String
typeValue
,
int
pageSize
,
String
startTime
,
String
endTime
)
{
IotQueryParam
iotQueryParam
=
buildQueryParam
(
pageSize
);
List
<
Term
>
terms
=
Lists
.
newArrayList
();
Term
term
=
Term
.
builder
()
.
column
(
"type"
)
.
termType
(
"btw"
)
.
type
(
Term
.
Type
.
or
)
.
value
(
typeValue
)
.
terms
(
Lists
.
newArrayList
())
.
options
(
Lists
.
newArrayList
())
.
build
();
terms
.
add
(
term
);
Term
term1
=
Term
.
builder
()
.
column
(
"timestamp"
)
.
termType
(
"gte"
)
...
...
server-common/src/main/java/com/makeit/utils/LongTimestampUtil.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
utils
;
import
java.time.Instant
;
import
java.time.LocalDateTime
;
import
java.time.ZoneId
;
public
class
LongTimestampUtil
{
public
static
LocalDateTime
toLocalDateTime
(
Long
timestamp
)
{
if
(
timestamp
==
null
)
{
return
null
;
}
LocalDateTime
time
=
LocalDateTime
.
ofInstant
(
Instant
.
ofEpochMilli
(
timestamp
),
ZoneId
.
systemDefault
());
return
time
;
}
}
server-common/src/main/java/com/makeit/utils/msg/SendTypeEnum.java
View file @
ff95625f
...
...
@@ -9,9 +9,10 @@ import lombok.Getter;
@Getter
public
enum
SendTypeEnum
implements
BaseEnum
{
//1-短信 2-邮件 3-语音短信 4-云龄工单 5-晶奇工单 6-子女端小程序
SMS
(
"alarm.sendType.sms"
),
MAIL
(
"alarm.sendType.mail"
),
VOICE_SMS
(
"alarm.sendType.voiceSms"
),
SMS
(
"alarm.notifyChannel.sms"
),
MAIL
(
"alarm.notifyChannel.mail"
),
VOICE_SMS
(
"alarm.notifyChannel.voiceMessage"
),
//todo 加字典
YUNLING
(
"alarm.sendType.yunling"
),
JINGQI
(
"alarm.sendType.jingqi"
),
CHILD_WECHAT
(
"alarm.sendType.childWechat"
)
...
...
server-common/src/main/java/com/makeit/utils/msg/dto/MsgSendDTO.java
View file @
ff95625f
...
...
@@ -5,11 +5,8 @@ import lombok.AllArgsConstructor;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.apache.commons.lang3.StringUtils
;
import
java.util.Collection
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
@Data
@Builder
...
...
@@ -30,8 +27,6 @@ public class MsgSendDTO {
*/
private
String
[]
param
;
private
String
sendContent
;
public
void
setParam
(
String
...
param
)
{
this
.
param
=
param
;
}
...
...
server-common/src/main/java/com/makeit/utils/user/plat/PlatUserUtil.java
View file @
ff95625f
...
...
@@ -39,11 +39,11 @@ public class PlatUserUtil {
// return userVO;
// }
//或者这里用策略模式
WechatUserInfo
wechatUserInfo
=
WechatUserUtil
.
getUserVOCanNull
();
if
(
wechatUserInfo
!=
null
)
{
return
BeanDtoVoUtils
.
convert
(
wechatUserInfo
,
PlatUserVO
.
class
);
}
//
//或者这里用策略模式
//
WechatUserInfo wechatUserInfo = WechatUserUtil.getUserVOCanNull();
//
if (wechatUserInfo != null) {
//
return BeanDtoVoUtils.convert(wechatUserInfo, PlatUserVO.class);
//
}
PlatUserLoginVO
tntUserLoginVO
=
TokenUtil
.
getTntUserDetail
();
if
(
tntUserLoginVO
!=
null
)
{
...
...
server-module/src/main/java/com/makeit/module/controller/dataScreen/DataScreenController.java
View file @
ff95625f
...
...
@@ -3,7 +3,9 @@ package com.makeit.module.controller.dataScreen;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.module.system.entity.ChinaArea
;
import
com.makeit.service.platform.dataScreen.DataScreenService
;
import
com.makeit.utils.area.ChinaAreaVO
;
import
com.makeit.vo.platform.dataScreen.*
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -64,4 +66,11 @@ public class DataScreenController {
public
ApiResponseEntity
<
List
<
PlatMapStatisticsVO
>>
mapStatistics
(
@RequestBody
PlatDataScreenQueryDTO
dto
)
{
return
ApiResponseUtils
.
success
(
dataScreenService
.
mapStatistics
(
dto
));
}
@ApiOperation
(
"地图区域"
)
@PostMapping
(
"mapList"
)
public
ApiResponseEntity
<
List
<
ChinaAreaVO
>>
mapList
(
@RequestBody
PlatDataScreenQueryDTO
dto
)
{
return
ApiResponseUtils
.
success
(
dataScreenService
.
mapList
(
dto
));
}
}
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderRealTimeController.java
View file @
ff95625f
...
...
@@ -60,7 +60,5 @@ public class PlatElderRealTimeController {
}
//TODO ywc 少一个坐标
}
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportDayController.java
View file @
ff95625f
...
...
@@ -2,12 +2,15 @@ package com.makeit.module.controller.elder;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
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.*
;
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
;
...
...
@@ -28,6 +31,9 @@ import java.util.List;
@RequestMapping
(
"/plat/elder/report/day"
)
public
class
PlatElderReportDayController
{
@Autowired
private
PlatElderDayReportDayService
platElderDayReportDayService
;
@ApiOperation
(
"睡眠评价"
)
@PostMapping
(
"sleepEvaluation"
)
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
...
...
@@ -61,7 +67,7 @@ public class PlatElderReportDayController {
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
public
ApiResponseEntity
<
List
<
PlatElderRealTimeHeartRespiratoryVO
>>
heartRespiratory
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
return
ApiResponseUtils
.
success
(
platElderDayReportDayService
.
heartRespiratory
(
platElderIdDTO
))
;
}
@ApiOperation
(
"行为异常记录"
)
...
...
@@ -79,7 +85,7 @@ public class PlatElderReportDayController {
@ApiOperation
(
"坐标记录"
)
@PostMapping
(
"coordinateList"
)
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinateList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
return
ApiResponseUtils
.
success
(
platElderDayReportDayService
.
coordinateList
(
platElderIdDTO
))
;
}
@ApiOperation
(
"行为辐射"
)
...
...
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportMonthController.java
View file @
ff95625f
...
...
@@ -2,7 +2,7 @@ package com.makeit.module.controller.elder;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.dto.platform.elder.PlatElder
Id
DTO
;
import
com.makeit.dto.platform.elder.PlatElder
Report
DTO
;
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
;
...
...
@@ -29,26 +29,26 @@ public class PlatElderReportMonthController {
@ApiOperation
(
"综合评价"
)
@PostMapping
(
"comprehensiveEvaluation"
)
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠评价"
)
@PostMapping
(
"sleepEvaluation"
)
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸评价"
)
@PostMapping
(
"heartRespiratoryEvaluation"
)
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"月报表"
)
@PostMapping
(
"reportMonth"
)
public
ApiResponseEntity
<
PlatElderReportMonthVO
>
reportMonth
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderReportMonthVO
>
reportMonth
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
...
...
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportWeekController.java
View file @
ff95625f
...
...
@@ -2,14 +2,17 @@ package com.makeit.module.controller.elder;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.service.platform.elder.PlatElderDayReportWeekService
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.*
;
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
;
...
...
@@ -30,69 +33,72 @@ import java.util.List;
@RequestMapping
(
"/plat/elder/report/week"
)
public
class
PlatElderReportWeekController
{
@Autowired
private
PlatElderDayReportWeekService
platElderDayReportWeekService
;
@ApiOperation
(
"综合评价"
)
@PostMapping
(
"comprehensiveEvaluation"
)
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderComprehensiveEvaluationVO
>
comprehensiveEvaluation
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠评价"
)
@PostMapping
(
"sleepEvaluation"
)
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderSleepEvaluationVO
>
sleepEvaluation
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"睡眠图表"
)
@PostMapping
(
"sleepDiagram"
)
public
ApiResponseEntity
<
List
<
PlatElderSleepDiagramWeekVO
>>
sleepDiagram
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
PlatElderSleepDiagramWeekVO
>>
sleepDiagram
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸评价"
)
@PostMapping
(
"heartRespiratoryEvaluation"
)
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderHeartRespiratoryEvaluationVO
>
heartRespiratoryEvaluation
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率异常记录"
)
@PostMapping
(
"heartExceptionRecordList"
)
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
heartExceptionRecordList
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
heartExceptionRecordList
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"呼吸率异常记录"
)
@PostMapping
(
"respiratoryExceptionRecordList"
)
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
respiratoryExceptionRecordList
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>>
respiratoryExceptionRecordList
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
public
ApiResponseEntity
<
PlatElderRealTimeHeartRespiratoryWeekVO
>
heartRespiratory
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderRealTimeHeartRespiratoryWeekVO
>
heartRespiratory
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"行为异常记录"
)
@PostMapping
(
"behaviorExceptionRecordList"
)
public
ApiResponseEntity
<
List
<
PlatElderBehaviorExceptionRecordVO
>>
behaviorExceptionRecordList
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
PlatElderBehaviorExceptionRecordVO
>>
behaviorExceptionRecordList
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"跌倒记录"
)
@PostMapping
(
"failRecordList"
)
public
ApiResponseEntity
<
List
<
String
>>
failRecordList
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
String
>>
failRecordList
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
@ApiOperation
(
"坐标记录"
)
@PostMapping
(
"coordinateList"
)
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinateList
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
return
null
;
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinateList
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderDayReportWeekService
.
coordinateList
(
platElderIdDTO
))
;
}
@ApiOperation
(
"行为辐射"
)
@PostMapping
(
"behaviorDistribution"
)
public
ApiResponseEntity
<
List
<
PlatElderBehaviorDistributionVO
>>
behaviorDistribution
(
@RequestBody
PlatElder
Id
DTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
List
<
PlatElderBehaviorDistributionVO
>>
behaviorDistribution
(
@RequestBody
PlatElder
Report
DTO
platElderIdDTO
)
{
return
null
;
}
...
...
server-module/src/main/java/com/makeit/module/controller/space/PlatRoomDynamicDetailController.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
module
.
controller
.
space
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
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
;
/**
* Controller
*
* @author zm
* @version 2023/9/8
*/
@Api
(
tags
=
"房间详情"
)
@RestController
@RequestMapping
(
"/plat/room/dynamic/detail"
)
public
class
PlatRoomDynamicDetailController
{
@Autowired
private
PlatElderRealTimeService
platElderRealTimeService
;
@ApiOperation
(
"现在状态"
)
@PostMapping
(
"nowStatus"
)
public
ApiResponseEntity
<
PlatElderRealTimeNowVO
>
nowStatus
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
nowStatus
(
platElderIdDTO
));
}
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
public
ApiResponseEntity
<
PlatElderRealTimeHeartRespiratoryVO
>
heartRespiratory
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
heartRespiratory
(
platElderIdDTO
));
}
@ApiOperation
(
"体动"
)
@PostMapping
(
"body"
)
public
ApiResponseEntity
<
PlatElderRealTimeBodyVO
>
body
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
body
(
platElderIdDTO
));
}
@ApiOperation
(
"坐标"
)
@PostMapping
(
"coordinate"
)
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinate
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
coordinate
(
platElderIdDTO
));
}
}
server-module/src/main/java/com/makeit/module/controller/wechat/elder/PlatElderRealTimeWechatController.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
module
.
controller
.
wechat
.
elder
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.service.platform.elder.PlatElderDayReportDayService
;
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
com.makeit.vo.platform.elder.report.day.PlatElderBehaviorDistributionVO
;
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
(
"/wechat/elder/realTime"
)
public
class
PlatElderRealTimeWechatController
{
@Autowired
private
PlatElderRealTimeService
platElderRealTimeService
;
@Autowired
private
PlatElderDayReportDayService
platElderDayReportDayService
;
@ApiOperation
(
"现在状态"
)
@PostMapping
(
"nowStatus"
)
public
ApiResponseEntity
<
PlatElderRealTimeNowVO
>
nowStatus
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
nowStatus
(
platElderIdDTO
));
}
@ApiOperation
(
"心率呼吸率"
)
@PostMapping
(
"heartRespiratory"
)
public
ApiResponseEntity
<
PlatElderRealTimeHeartRespiratoryVO
>
heartRespiratory
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
heartRespiratory
(
platElderIdDTO
));
}
@ApiOperation
(
"体动"
)
@PostMapping
(
"body"
)
public
ApiResponseEntity
<
PlatElderRealTimeBodyVO
>
body
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
body
(
platElderIdDTO
));
}
@ApiOperation
(
"坐标"
)
@PostMapping
(
"coordinate"
)
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinate
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderRealTimeService
.
coordinate
(
platElderIdDTO
));
}
@ApiOperation
(
"坐标记录"
)
@PostMapping
(
"coordinateList"
)
public
ApiResponseEntity
<
List
<
PlatElderCoordinateVO
>>
coordinateList
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
ApiResponseUtils
.
success
(
platElderDayReportDayService
.
coordinateList
(
platElderIdDTO
));
}
@ApiOperation
(
"行为辐射"
)
@PostMapping
(
"behaviorDistribution"
)
public
ApiResponseEntity
<
List
<
PlatElderBehaviorDistributionVO
>>
behaviorDistribution
(
@RequestBody
PlatElderIdDTO
platElderIdDTO
)
{
return
null
;
}
}
server-module/src/main/java/com/makeit/module/controller/workstation/WorkStationController.java
View file @
ff95625f
...
...
@@ -2,11 +2,11 @@ package com.makeit.module.controller.workstation;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.dto.platform.workstation.WorkStationQueryDTO
;
import
com.makeit.service.platform.workstation.WorkStationService
;
import
com.makeit.vo.platform.dataScreen.PlatAgeStatisticsVO
;
import
com.makeit.vo.platform.workstation.WorkStationStatisticsVO
;
import
com.makeit.vo.platform.workstation.WorkStationHomeStatisticsVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionStatisticsVO
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -15,6 +15,8 @@ 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
(
"/plat/workstation"
)
...
...
@@ -23,10 +25,21 @@ public class WorkStationController {
@Autowired
private
WorkStationService
workStationService
;
@ApiOperation
(
"统计"
)
@PostMapping
(
"statistics"
)
public
ApiResponseEntity
<
WorkStationStatisticsVO
>
statistics
(
@RequestBody
WorkStationQueryDTO
dto
)
{
return
ApiResponseUtils
.
success
(
workStationService
.
statistics
(
dto
));
@ApiOperation
(
"机构-统计"
)
@PostMapping
(
"institutionStatistics"
)
public
ApiResponseEntity
<
WorkStationInstitutionStatisticsVO
>
institutionStatistics
(
@RequestBody
WorkStationQueryDTO
dto
)
{
return
ApiResponseUtils
.
success
(
workStationService
.
institutionStatistics
(
dto
));
}
@ApiOperation
(
"机构-列表"
)
@PostMapping
(
"institutionList"
)
public
ApiResponseEntity
<
List
<
WorkStationInstitutionRoomVO
>>
institutionList
(
@RequestBody
WorkStationQueryDTO
dto
)
{
return
ApiResponseUtils
.
success
(
workStationService
.
institutionList
(
dto
));
}
@ApiOperation
(
"居家-统计"
)
@PostMapping
(
"homeStatistics"
)
public
ApiResponseEntity
<
WorkStationHomeStatisticsVO
>
homeStatistics
(
@RequestBody
WorkStationQueryDTO
dto
)
{
return
ApiResponseUtils
.
success
(
workStationService
.
homeStatistics
(
dto
));
}
}
server-service/src/main/java/com/makeit/dto/platform/alarm/PlatAlarmCheckDTO.java
View file @
ff95625f
...
...
@@ -25,4 +25,6 @@ public class PlatAlarmCheckDTO {
private
JSONObject
properties
;
//PlatAlarmRecord.remark
private
String
remark
;
}
server-service/src/main/java/com/makeit/dto/platform/dataScreen/PlatDataScreenQueryDTO.java
View file @
ff95625f
...
...
@@ -28,5 +28,7 @@ public class PlatDataScreenQueryDTO {
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
"结束时间"
)
private
LocalDateTime
endTime
;
@ApiModelProperty
(
"类型 1-居家 2-机构"
)
private
String
type
;
}
server-service/src/main/java/com/makeit/dto/platform/device/PlatDeviceDTO.java
View file @
ff95625f
...
...
@@ -33,4 +33,8 @@ public class PlatDeviceDTO {
@ApiModelProperty
(
value
=
"床位名称"
)
private
String
bedName
;
@ApiModelProperty
(
value
=
"床位Id"
)
private
String
bedId
;
}
server-service/src/main/java/com/makeit/dto/platform/elder/PlatElderIdDTO.java
View file @
ff95625f
...
...
@@ -15,10 +15,13 @@ import lombok.EqualsAndHashCode;
*/
@Data
@ApiModel
(
value
=
"Elder对象"
,
description
=
"长者基本信息"
)
public
class
PlatElderIdDTO
{
public
class
PlatElderIdDTO
{
@ApiModelProperty
(
value
=
"长者id"
)
private
String
elderId
;
@ApiModelProperty
(
value
=
"设备id"
)
private
String
deviceId
;
}
server-service/src/main/java/com/makeit/dto/platform/workstation/WorkStationQueryDTO.java
View file @
ff95625f
...
...
@@ -36,6 +36,9 @@ public class WorkStationQueryDTO {
private
List
<
String
>
spaceIds
;
@ApiModelProperty
(
"告警类型"
)
private
String
type
;
private
String
alarmType
;
@ApiModelProperty
(
"老人ids"
)
private
List
<
String
>
elderIds
;
}
server-service/src/main/java/com/makeit/entity/platform/alarm/PlatAlarmRecord.java
View file @
ff95625f
...
...
@@ -74,6 +74,8 @@ public class PlatAlarmRecord extends BaseBusEntity {
*/
private
String
elderIds
;
private
String
remark
;
}
...
...
server-service/src/main/java/com/makeit/entity/platform/alarm/PlatDayDurationRecord.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
entity
.
platform
.
alarm
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.makeit.common.entity.BaseBusEntity
;
import
lombok.Data
;
import
java.util.Date
;
/**
* 每天停留时长记录
* @TableName plat_day_duration_record
*/
@TableName
(
value
=
"plat_day_duration_record"
)
@Data
public
class
PlatDayDurationRecord
extends
BaseBusEntity
{
/**
* 长者id,逗号拼接
*/
private
String
elderIds
;
/**
* 当天本次进入该区域的时长
*/
private
Long
duration
;
/**
* iot设备id
*/
private
String
oriDeviceId
;
/**
* 日期 yyyyMMdd
*/
private
String
day
;
/**
* 本次进入时间
*/
private
Date
startDate
;
/**
* 本次离开时间
*/
private
Date
endDate
;
}
\ No newline at end of file
server-service/src/main/java/com/makeit/enums/platform/space/PlatBedStatusEnum.java
View file @
ff95625f
...
...
@@ -13,10 +13,6 @@ public class PlatBedStatusEnum {
public
enum
BedStatusEnum
implements
BaseEnum
{
//SPARE 空闲
//NOT_FULL 未住满
//FULL 已住满
SPARE
(
"room.status.spare"
),
CHECKED_IN
(
"bed.status.CheckedIn"
);
...
...
server-service/src/main/java/com/makeit/mapper/platform/alarm/PlatDayDurationRecordMapper.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
mapper
.
platform
.
alarm
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.makeit.entity.platform.alarm.PlatDayDurationRecord
;
/**
* @author lixl
* @description 针对表【plat_day_duration_record(每天停留时长记录)】的数据库操作Mapper
* @createDate 2023-09-14 10:14:20
* @Entity generator.entity.PlatDayDurationRecord
*/
public
interface
PlatDayDurationRecordMapper
extends
BaseMapper
<
PlatDayDurationRecord
>
{
}
server-service/src/main/java/com/makeit/mapper/platform/space/PlatRoomMapper.java
View file @
ff95625f
package
com
.
makeit
.
mapper
.
platform
.
space
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.makeit.dto.platform.
space.PlatSpace
QueryDTO
;
import
com.makeit.dto.platform.
workstation.WorkStation
QueryDTO
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.vo.platform.space.PlatRoomVO
;
import
com.makeit.vo.platform.space.PlatSpaceAndRoomVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
...
...
@@ -16,4 +16,6 @@ import java.util.List;
*/
public
interface
PlatRoomMapper
extends
BaseMapper
<
PlatRoom
>
{
List
<
PlatSpaceAndRoomVO
>
spaceAndRoomList
();
List
<
WorkStationInstitutionRoomVO
>
workStationList
(
@Param
(
"dto"
)
WorkStationQueryDTO
dto
);
}
server-service/src/main/java/com/makeit/service/platform/alarm/PlatAlarmRecordService.java
View file @
ff95625f
...
...
@@ -54,7 +54,7 @@ public interface PlatAlarmRecordService extends IService<PlatAlarmRecord> {
*/
void
noticeDeviceAlarm
(
PlatAlarmConfig
alarmConfig
,
PlatAlarmRecord
alarmRecord
);
PlatAlarmRecord
c
reate
PlatAlarmRecord
(
PlatAlarmCheckDTO
platAlarmCheckDTO
);
PlatAlarmRecord
c
onvertTo
PlatAlarmRecord
(
PlatAlarmCheckDTO
platAlarmCheckDTO
);
void
getElderListByDeviceId
(
PlatAlarmCheckDTO
platAlarmCheckDTO
);
}
server-service/src/main/java/com/makeit/service/platform/alarm/PlatDayDurationRecordService.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
alarm
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.makeit.entity.platform.alarm.PlatDayDurationRecord
;
/**
* @author lixl
* @description 针对表【plat_day_duration_record(每天停留时长记录)】的数据库操作Service
* @createDate 2023-09-14 10:14:20
*/
public
interface
PlatDayDurationRecordService
extends
IService
<
PlatDayDurationRecord
>
{
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/BehaviorAlarm.java
View file @
ff95625f
...
...
@@ -2,29 +2,44 @@ package com.makeit.service.platform.alarm.alarmStrategy;
import
cn.hutool.core.convert.Convert
;
import
com.alibaba.fastjson.JSONObject
;
import
com.makeit.common.entity.BaseEntity
;
import
com.makeit.dto.platform.alarm.PlatAlarmCheckDTO
;
import
com.makeit.dto.platform.alarm.PlatAlarmConfigBehaviorDTOVO
;
import
com.makeit.entity.platform.alarm.PlatAlarmConfig
;
import
com.makeit.entity.platform.alarm.PlatAlarmRecord
;
import
com.makeit.entity.platform.alarm.PlatDayDurationRecord
;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.entity.platform.elder.PlatElder
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.enums.CommonEnum
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.enums.redis.RedisConst
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
import
com.makeit.service.platform.alarm.PlatDayDurationRecordService
;
import
com.makeit.utils.AlarmRedisDTO
;
import
com.makeit.utils.data.convert.JsonUtil
;
import
com.makeit.utils.redis.RedisUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Component
;
import
java.time.LocalDateTime
;
import
java.time.ZoneOffset
;
import
java.time.format.DateTimeFormatter
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Component
public
class
BehaviorAlarm
implements
IAlarm
{
@Autowired
private
PlatAlarmRecordService
platAlarmRecordService
;
@Autowired
private
PlatDayDurationRecordService
platDayDurationRecordService
;
private
PlatAlarmConfigEnum
.
AlarmTypeEnum
alarmTypeEnum
=
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BEHAVIOR
;
...
...
@@ -35,6 +50,9 @@ public class BehaviorAlarm implements IAlarm{
/**
* 3.行为异常:若长者当在某个空间停留的时间高于长者最近7天在每个空间区域停留时间的平均值+区间(区间在行为异常告警处配置)
* 取前七天的日最长时间,然后取中位数
* 前七天:没有满足七条记录则跳过,如果七条没都包含长者则跳过
* 记录的保存和缓存读取
* @param platAlarmCheckDTO
*/
@Override
...
...
@@ -55,20 +73,48 @@ public class BehaviorAlarm implements IAlarm{
List
<
String
>
personStateList
=
Arrays
.
asList
(
"1"
,
"2"
,
"3"
);
//有人
//计数
long
endLong
=
new
Date
().
getTime
();
Long
startLong
=
RedisUtil
.
get
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
);
Date
now
=
new
Date
();
long
endLong
=
now
.
getTime
();
AlarmRedisDTO
alarmRedisDTO
=
RedisUtil
.
get
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
);
if
(
alarmRedisDTO
==
null
){
alarmRedisDTO
=
new
AlarmRedisDTO
();
}
if
(
personStateList
.
contains
(
personState
))
{
long
count
=
endLong
-
startLong
;
//第一次进入空间
Long
startLong
=
alarmRedisDTO
.
getStartLong
();
if
(
startLong
==
null
){
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
endLong
);
alarmRedisDTO
.
setStartLong
(
endLong
);
alarmRedisDTO
.
setStart
(
now
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
alarmRedisDTO
);
return
;
}
if
(
count
>=
duration
)
{
long
count
=
endLong
-
startLong
;
//进入空间时间满足告警时长,判断是否已经告警过了
if
(
count
>=
duration
&&
StringUtils
.
equals
(
alarmRedisDTO
.
getAlarm
(),
CommonEnum
.
NO
.
getValue
()))
{
notice
(
platAlarmCheckDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
startLong
);
alarmRedisDTO
.
setAlarm
(
CommonEnum
.
YES
.
getValue
());
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
alarmRedisDTO
);
}
}
else
{
//
//todo 是否有第一次进入记录,有则保存db
Long
startLong
=
alarmRedisDTO
.
getStartLong
();
if
(
startLong
==
null
){
return
;
}
long
count
=
endLong
-
alarmRedisDTO
.
getStartLong
();
//save db
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
PlatDayDurationRecord
durationRecord
=
new
PlatDayDurationRecord
();
durationRecord
.
setElderIds
(
platElderList
.
stream
().
map
(
BaseEntity:
:
getId
).
collect
(
Collectors
.
joining
(
","
)));
durationRecord
.
setDuration
(
count
);
durationRecord
.
setOriDeviceId
(
platDevice
.
getOriDeviceId
());
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyyMMdd"
);
durationRecord
.
setDay
(
dateTimeFormatter
.
format
(
LocalDateTime
.
ofEpochSecond
(
startLong
/
1000
,
0
,
ZoneOffset
.
ofHours
(
8
))));
durationRecord
.
setStartDate
(
alarmRedisDTO
.
getStart
());
durationRecord
.
setEndDate
(
now
);
durationRecord
.
setTenantId
(
config
.
getTenantId
());
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
null
);
}
}
...
...
@@ -76,9 +122,20 @@ public class BehaviorAlarm implements IAlarm{
@Override
@Async
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
//获取长者 空间信息
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmCheckDTO
.
getParam
().
add
(
"房间名"
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
createPlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
)){
return
;
}
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
for
(
PlatElder
platElder
:
platElderList
)
{
List
<
String
>
param
=
new
ArrayList
<>();
param
.
add
(
platElder
.
getName
());
param
.
add
(
platRoom
.
getName
());
platAlarmCheckDTO
.
setParam
(
param
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
convertToPlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
}
}
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/BreathAlarm.java
View file @
ff95625f
...
...
@@ -7,17 +7,22 @@ import com.makeit.dto.platform.alarm.PlatAlarmConfigRespiratoryDTOVO;
import
com.makeit.entity.platform.alarm.PlatAlarmConfig
;
import
com.makeit.entity.platform.alarm.PlatAlarmRecord
;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.entity.platform.elder.PlatElder
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.enums.redis.RedisConst
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
import
com.makeit.utils.data.convert.JsonUtil
;
import
com.makeit.utils.redis.RedisUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
@Component
public
class
BreathAlarm
implements
IAlarm
{
...
...
@@ -67,6 +72,12 @@ public class BreathAlarm implements IAlarm{
long
count
=
endLong
-
startLong
;
if
(
br
>
end
||
br
<
start
)
{
if
(
count
>=
duration
)
{
if
(
br
>
end
){
platAlarmCheckDTO
.
setRemark
(
"呼吸过速"
);
}
if
(
br
<
start
){
platAlarmCheckDTO
.
setRemark
(
"呼吸过缓"
);
}
notice
(
platAlarmCheckDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
endLong
/
1000
);
}
...
...
@@ -76,12 +87,27 @@ public class BreathAlarm implements IAlarm{
return
;
}
/**
* [#长者姓名][#呼吸状态],请及时处理!
* @param platAlarmCheckDTO
*/
@Override
@Async
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmCheckDTO
.
getParam
().
add
(
"呼吸状态111"
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
createPlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
)){
return
;
}
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
for
(
PlatElder
platElder
:
platElderList
)
{
List
<
String
>
param
=
new
ArrayList
<>();
param
.
add
(
platElder
.
getName
());
param
.
add
(
platAlarmCheckDTO
.
getRemark
());
platAlarmCheckDTO
.
setParam
(
param
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
convertToPlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
}
}
}
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/FallAlarm.java
View file @
ff95625f
...
...
@@ -54,7 +54,7 @@ public class FallAlarm implements IAlarm{
param
.
add
(
platElder
.
getName
());
param
.
add
(
platRoom
.
getName
());
platAlarmCheckDTO
.
setParam
(
param
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
c
reate
PlatAlarmRecord
(
platAlarmCheckDTO
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
c
onvertTo
PlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
}
}
...
...
server-service/src/main/java/com/makeit/service/platform/alarm/alarmStrategy/HeartAlarm.java
View file @
ff95625f
...
...
@@ -7,17 +7,22 @@ import com.makeit.dto.platform.alarm.PlatAlarmConfigHeartDTOVO;
import
com.makeit.entity.platform.alarm.PlatAlarmConfig
;
import
com.makeit.entity.platform.alarm.PlatAlarmRecord
;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.entity.platform.elder.PlatElder
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.enums.redis.RedisConst
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
import
com.makeit.utils.data.convert.JsonUtil
;
import
com.makeit.utils.redis.RedisUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
@Component
public
class
HeartAlarm
implements
IAlarm
{
...
...
@@ -58,6 +63,12 @@ public class HeartAlarm implements IAlarm {
long
count
=
endLong
-
startLong
;
if
(
hr
>
end
||
hr
<
start
)
{
if
(
count
>=
duration
)
{
if
(
hr
>
end
){
platAlarmCheckDTO
.
setRemark
(
"心率过速"
);
}
if
(
hr
<
start
){
platAlarmCheckDTO
.
setRemark
(
"心率过缓"
);
}
notice
(
platAlarmCheckDTO
);
RedisUtil
.
set
(
RedisConst
.
ALARM_DEVICE_ID
+
deviceId
,
endLong
/
1000
);
}
...
...
@@ -70,8 +81,19 @@ public class HeartAlarm implements IAlarm {
@Async
public
void
notice
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
platAlarmCheckDTO
.
getParam
().
add
(
"呼吸状态111"
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
createPlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
platAlarmRecordService
.
getElderListByDeviceId
(
platAlarmCheckDTO
);
List
<
PlatElder
>
platElderList
=
platAlarmCheckDTO
.
getPlatElderList
();
if
(
CollectionUtils
.
isEmpty
(
platElderList
)){
return
;
}
PlatRoom
platRoom
=
platAlarmCheckDTO
.
getPlatRoom
();
for
(
PlatElder
platElder
:
platElderList
)
{
List
<
String
>
param
=
new
ArrayList
<>();
param
.
add
(
platElder
.
getName
());
param
.
add
(
platAlarmCheckDTO
.
getRemark
());
platAlarmCheckDTO
.
setParam
(
param
);
PlatAlarmRecord
platAlarmRecord
=
platAlarmRecordService
.
convertToPlatAlarmRecord
(
platAlarmCheckDTO
);
platAlarmRecordService
.
noticeDeviceAlarm
(
platAlarmCheckDTO
.
getPlatAlarmConfig
(),
platAlarmRecord
);
}
}
}
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatAlarmConfigServiceImpl.java
View file @
ff95625f
...
...
@@ -177,6 +177,7 @@ public class PlatAlarmConfigServiceImpl extends ServiceImpl<PlatAlarmConfigMappe
@Transactional
@Override
//@TenantIdIgnore
public
void
copyForOrg
(
PlatOrg
org
)
{
List
<
PlatAlarmConfig
>
configList
=
TenantIdUtil
.
execute
(
IdConst
.
DEFAULT_TENANT_ID
,
()
->
list
());
...
...
@@ -190,20 +191,23 @@ public class PlatAlarmConfigServiceImpl extends ServiceImpl<PlatAlarmConfigMappe
String
[]
split
=
orgPath
.
split
(
","
);
configList
.
forEach
(
e
->
{
e
.
setId
(
null
);
TenantIdUtil
.
execute
(
org
.
getTenantId
(),()->{
configList
.
forEach
(
e
->
{
e
.
setTenantId
(
org
.
getTenantId
());
e
.
setId
(
null
);
for
(
int
i
=
1
;
i
<
split
.
length
;
i
++)
{
BiConsumer
<
PlatAlarmConfig
,
String
>
consumer
=
list
.
get
(
i
-
1
);
consumer
.
accept
(
e
,
split
[
i
]);
}
for
(
int
i
=
1
;
i
<
split
.
length
;
i
++)
{
BiConsumer
<
PlatAlarmConfig
,
String
>
consumer
=
list
.
get
(
i
-
1
);
consumer
.
accept
(
e
,
split
[
i
]);
}
e
.
setOrgId
(
org
.
getId
());
e
.
setOrgPath
(
orgPath
);
e
.
setOrgId
(
org
.
getId
());
e
.
setOrgPath
(
orgPath
);
});
});
saveBatch
(
configList
);
saveBatch
(
configList
);
});
alarmConfigUtil
.
putAll
(
configList
);
}
...
...
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatAlarmRecordServiceImpl.java
View file @
ff95625f
...
...
@@ -271,6 +271,12 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
Set
<
String
>
phoneSet
=
platUserList
.
stream
().
map
(
PlatUser:
:
getMobile
).
collect
(
Collectors
.
toSet
());
//发送消息
noticeByChannel
(
alarmConfig
,
alarmRecord
,
phoneSet
,
notifyChannelList
);
String
userIdJoin
=
platUserList
.
stream
().
map
(
PlatUser:
:
getId
).
collect
(
Collectors
.
joining
(
","
));
alarmRecord
.
setNotifyUser
(
userIdJoin
);
saveOrUpdate
(
alarmRecord
);
}
/**
...
...
@@ -299,21 +305,21 @@ public class PlatAlarmRecordServiceImpl extends ServiceImpl<PlatAlarmRecordMappe
}
@Override
public
PlatAlarmRecord
c
reate
PlatAlarmRecord
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
public
PlatAlarmRecord
c
onvertTo
PlatAlarmRecord
(
PlatAlarmCheckDTO
platAlarmCheckDTO
)
{
PlatAlarmConfig
config
=
platAlarmCheckDTO
.
getPlatAlarmConfig
();
PlatDevice
platDevice
=
platAlarmCheckDTO
.
getPlatDevice
();
List
<
String
>
param
=
platAlarmCheckDTO
.
getParam
();
List
<
PlatElder
>
elderList
=
platAlarmCheckDTO
.
getPlatElderList
();
String
elderNameJoin
=
elderList
.
stream
().
map
(
PlatElder:
:
getName
).
collect
(
Collectors
.
joining
(
" "
));
PlatAlarmRecord
platAlarmRecord
=
new
PlatAlarmRecord
();
platAlarmRecord
.
setAlarmId
(
config
.
getId
());
platAlarmRecord
.
setAlarmType
(
config
.
getAlarmType
());
platAlarmRecord
.
setAlarmDate
(
new
Date
());
platAlarmRecord
.
setStatus
(
"0"
);
//todo
platAlarmRecord
.
setContent
(
replaceParam
(
elderNameJoin
,
param
));
platAlarmRecord
.
setStatus
(
CommonEnum
.
NO
.
getValue
());
platAlarmRecord
.
setNoticeStatus
(
CommonEnum
.
NO
.
getValue
());
//模板信息 替换参数
platAlarmRecord
.
setContent
(
replaceParam
(
config
.
getContent
(),
param
));
platAlarmRecord
.
setOrgId
(
platDevice
.
getOrgId
());
platAlarmRecord
.
setNotifyUser
(
config
.
getNotifyUser
());
platAlarmRecord
.
setDeviceId
(
platDevice
.
getId
());
...
...
server-service/src/main/java/com/makeit/service/platform/alarm/impl/PlatDayDurationRecordServiceImpl.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
alarm
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.makeit.entity.platform.alarm.PlatDayDurationRecord
;
import
com.makeit.mapper.platform.alarm.PlatDayDurationRecordMapper
;
import
com.makeit.service.platform.alarm.PlatDayDurationRecordService
;
import
org.springframework.stereotype.Service
;
/**
* @author lixl
* @description 针对表【plat_day_duration_record(每天停留时长记录)】的数据库操作Service实现
* @createDate 2023-09-14 10:14:20
*/
@Service
public
class
PlatDayDurationRecordServiceImpl
extends
ServiceImpl
<
PlatDayDurationRecordMapper
,
PlatDayDurationRecord
>
implements
PlatDayDurationRecordService
{
}
server-service/src/main/java/com/makeit/service/platform/auth/PlatOrgService.java
View file @
ff95625f
...
...
@@ -96,4 +96,6 @@ public interface PlatOrgService extends IService<PlatOrg> {
void
saveOrg
(
PlatOrg
platOrg
);
List
<
PlatOrg
>
createOrgTree
(
List
<
PlatOrg
>
orgList
);
List
<
PlatOrg
>
belongToScopeList
(
PlatOrg
param
);
}
server-service/src/main/java/com/makeit/service/platform/auth/impl/PlatOrgServiceImpl.java
View file @
ff95625f
...
...
@@ -457,6 +457,27 @@ public class PlatOrgServiceImpl extends ServiceImpl<PlatOrgMapper, PlatOrg>
return
orgList
.
stream
().
filter
(
vo
->
StringUtils
.
isBlank
(
vo
.
getParentNodeId
())).
collect
(
Collectors
.
toList
());
}
@Override
public
List
<
PlatOrg
>
belongToScopeList
(
PlatOrg
param
)
{
PlatUserVO
userVO
=
PlatUserUtil
.
getUserVO
();
String
isTenant
=
userVO
.
getIsTenant
();
//如果是租户账号 则有所有权限
if
(
StringUtils
.
equals
(
isTenant
,
CommonEnum
.
YES
.
getValue
()))
{
List
<
PlatOrg
>
orgList
=
this
.
list
(
new
LambdaQueryWrapper
<
PlatOrg
>()
.
eq
(
PlatOrg:
:
getStatus
,
CommonEnum
.
YES
.
getValue
())
);
return
orgList
;
}
//平台账号
Set
<
String
>
orgIdList
=
getOrgIdListByUserId
(
userVO
.
getId
());
List
<
PlatOrg
>
orgList
=
this
.
list
(
new
LambdaQueryWrapper
<
PlatOrg
>().
in
(
BaseEntity:
:
getId
,
orgIdList
).
eq
(
PlatOrg:
:
getStatus
,
CommonEnum
.
YES
.
getValue
()));
if
(
CollectionUtils
.
isEmpty
(
orgList
))
{
return
new
ArrayList
<>();
}
return
orgList
;
}
/**
* 寻找最近的父节点
* @param orgMap 有权限的组织
...
...
server-service/src/main/java/com/makeit/service/platform/dataScreen/DataScreenService.java
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
dataScreen
;
import
com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.utils.area.ChinaAreaVO
;
import
com.makeit.vo.platform.dataScreen.*
;
import
java.util.List
;
...
...
@@ -23,4 +24,6 @@ public interface DataScreenService {
PlatBaseInfoStatisticsVO
baseInfoStatistics
(
PlatDataScreenQueryDTO
dto
);
List
<
PlatMapStatisticsVO
>
mapStatistics
(
PlatDataScreenQueryDTO
dto
);
List
<
ChinaAreaVO
>
mapList
(
PlatDataScreenQueryDTO
dto
);
}
server-service/src/main/java/com/makeit/service/platform/dataScreen/impl/DataScreenServiceImpl.java
View file @
ff95625f
This diff is collapsed.
Click to expand it.
server-service/src/main/java/com/makeit/service/platform/device/impl/PlatDeviceServiceImpl.java
View file @
ff95625f
...
...
@@ -113,11 +113,14 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev
public
PlatDeviceViewVO
view
(
String
id
)
{
PlatDevice
db
=
getById
(
id
);
PlatDeviceViewVO
vo
=
BeanDtoVoUtils
.
convert
(
db
,
PlatDeviceViewVO
.
class
);
PlatDeviceOther
other
=
platDeviceOtherService
.
getOne
(
new
QueryWrapper
<
PlatDeviceOther
>().
lambda
()
.
eq
(
PlatDeviceOther:
:
getDeviceId
,
id
));
PlatDeviceViewVO
vo
=
BeanDtoVoUtils
.
convert
(
db
,
PlatDeviceViewVO
.
class
);
BeanUtils
.
copyProperties
(
other
,
vo
);
if
(
other
!=
null
)
{
BeanUtils
.
copyProperties
(
other
,
vo
);
}
vo
.
setId
(
db
.
getId
());
...
...
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderDayReportDayService.java
View file @
ff95625f
...
...
@@ -2,10 +2,9 @@ package com.makeit.service.platform.elder;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
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
java.time.LocalDateTime
;
import
java.util.List
;
/**
...
...
@@ -18,4 +17,10 @@ import java.util.List;
*/
public
interface
PlatElderDayReportDayService
{
List
<
PlatElderRealTimeHeartRespiratoryVO
>
heartRespiratory
(
PlatElderIdDTO
platElderIdDTO
);
List
<
PlatElderCoordinateVO
>
coordinateList
(
String
elderId
,
String
deviceId
,
LocalDateTime
start
,
LocalDateTime
end
);
List
<
PlatElderCoordinateVO
>
coordinateList
(
PlatElderIdDTO
platElderIdDTO
);
}
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderDayReportWeekService.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
elder
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO
;
import
java.util.List
;
/**
* <p>
* 长者健康状态 服务类
* </p>
*
* @author eugene young
* @since 2023-08-29
*/
public
interface
PlatElderDayReportWeekService
{
List
<
PlatElderCoordinateVO
>
coordinateList
(
PlatElderReportDTO
platElderIdDTO
);
}
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderRealTimeService.java
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
elder
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeBodyVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO
;
...
...
@@ -18,6 +19,10 @@ import java.util.List;
*/
public
interface
PlatElderRealTimeService
{
PlatDevice
getBreathDevice
(
String
elderId
,
String
deviceId
);
List
<
PlatDevice
>
getSpaceDevice
(
String
elderId
,
String
deviceId
);
PlatElderRealTimeNowVO
nowStatus
(
PlatElderIdDTO
platElderIdDTO
);
PlatElderRealTimeHeartRespiratoryVO
heartRespiratory
(
PlatElderIdDTO
platElderIdDTO
);
...
...
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportDayServiceImpl.java
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
elder
.
impl
;
import
com.makeit.dto.platform.elder.PlatElderIdDTO
;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.module.iot.service.IotProductDeviceService
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentBreathe
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentSpace
;
import
com.makeit.service.platform.device.PlatDeviceService
;
import
com.makeit.service.platform.elder.PlatElderDayReportDayService
;
import
com.makeit.service.platform.elder.PlatElderRealTimeService
;
import
com.makeit.service.platform.elder.PlatElderService
;
import
com.makeit.utils.LongTimestampUtil
;
import
com.makeit.utils.data.convert.StreamUtil
;
import
com.makeit.utils.data.validate.CollectionUtils
;
import
com.makeit.utils.old.StringUtils
;
import
com.makeit.utils.time.LocalDateTimeUtils
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
public
class
PlatElderDayReportDayServiceImpl
implements
PlatElderDayReportDayService
{
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
@Service
public
class
PlatElderDayReportDayServiceImpl
implements
PlatElderDayReportDayService
{
@Autowired
private
PlatElderService
platElderService
;
@Autowired
private
PlatDeviceService
platDeviceService
;
@Autowired
private
IotProductDeviceService
iotProductDeviceService
;
@Autowired
private
PlatElderRealTimeService
platElderRealTimeService
;
@Override
public
List
<
PlatElderRealTimeHeartRespiratoryVO
>
heartRespiratory
(
PlatElderIdDTO
platElderIdDTO
)
{
PlatDevice
platDevice
=
platElderRealTimeService
.
getBreathDevice
(
platElderIdDTO
.
getElderId
(),
platElderIdDTO
.
getDeviceId
());
if
(
platDevice
==
null
)
{
return
new
ArrayList
<>(
10
);
}
LocalDateTime
now
=
LocalDateTime
.
now
();
LocalDateTime
start
=
LocalDateTimeUtils
.
getDayStart
(
now
);
LocalDateTime
end
=
LocalDateTimeUtils
.
getDayEnd
(
now
);
List
<
DeviceInfoContentBreathe
>
breatheList
=
iotProductDeviceService
.
getDeviceLogByTimeRangeBreathe
(
platDevice
.
getOriDeviceId
(),
2
*
24
*
3600
,
start
,
end
);
List
<
PlatElderRealTimeHeartRespiratoryVO
>
voList
=
StreamUtil
.
map
(
breatheList
,
e
->
{
PlatElderRealTimeHeartRespiratoryVO
vo
=
new
PlatElderRealTimeHeartRespiratoryVO
();
vo
.
setTime
(
LongTimestampUtil
.
toLocalDateTime
(
e
.
getTimestamp
()));
vo
.
setHeartRate
(
e
.
getProperties
().
getHr
());
vo
.
setRespiratoryRate
(
e
.
getProperties
().
getBr
());
return
vo
;
});
return
voList
;
}
@Override
public
List
<
PlatElderCoordinateVO
>
coordinateList
(
String
elderId
,
String
deviceId
,
LocalDateTime
start
,
LocalDateTime
end
)
{
List
<
PlatDevice
>
platDeviceList
=
platElderRealTimeService
.
getSpaceDevice
(
elderId
,
deviceId
);
if
(
CollectionUtils
.
isEmpty
(
platDeviceList
))
{
return
new
ArrayList
<>(
10
);
}
List
<
PlatElderCoordinateVO
>
voList
=
new
ArrayList
<>(
10
);
platDeviceList
.
forEach
(
e
->
{
List
<
DeviceInfoContentSpace
>
spaceList
=
iotProductDeviceService
.
getDeviceLogByTimeRangeSpace
(
e
.
getOriDeviceId
(),
2
*
24
*
3600
,
start
,
end
);
voList
.
addAll
(
StreamUtil
.
map
(
spaceList
,
i
->
{
PlatElderCoordinateVO
vo
=
new
PlatElderCoordinateVO
();
vo
.
setX
(
new
BigDecimal
(
i
.
getProperties
().
getDistance
()).
multiply
(
new
BigDecimal
(
Math
.
cos
(
i
.
getProperties
().
getAngle
())
+
""
)).
setScale
(
2
,
RoundingMode
.
HALF_UP
));
vo
.
setY
(
new
BigDecimal
(
i
.
getProperties
().
getDistance
()).
multiply
(
new
BigDecimal
(
Math
.
sin
(
i
.
getProperties
().
getAngle
())
+
""
)).
setScale
(
2
,
RoundingMode
.
HALF_UP
));
return
vo
;
})
);
});
return
voList
;
}
@Override
public
List
<
PlatElderCoordinateVO
>
coordinateList
(
PlatElderIdDTO
platElderIdDTO
)
{
LocalDateTime
now
=
LocalDateTime
.
now
();
LocalDateTime
start
=
LocalDateTimeUtils
.
getDayStart
(
now
);
LocalDateTime
end
=
LocalDateTimeUtils
.
getDayEnd
(
now
);
return
coordinateList
(
platElderIdDTO
.
getElderId
(),
platElderIdDTO
.
getDeviceId
(),
start
,
end
);
}
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportWeekServiceImpl.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
elder
.
impl
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.module.iot.service.IotProductDeviceService
;
import
com.makeit.service.platform.elder.PlatElderDayReportDayService
;
import
com.makeit.service.platform.elder.PlatElderDayReportWeekService
;
import
com.makeit.service.platform.elder.PlatElderService
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
@Service
public
class
PlatElderDayReportWeekServiceImpl
implements
PlatElderDayReportWeekService
{
@Autowired
private
PlatElderDayReportDayService
platElderDayReportDayService
;
@Autowired
private
PlatElderService
platElderService
;
@Autowired
private
IotProductDeviceService
iotProductDeviceService
;
@Override
public
List
<
PlatElderCoordinateVO
>
coordinateList
(
PlatElderReportDTO
platElderIdDTO
)
{
return
platElderDayReportDayService
.
coordinateList
(
platElderIdDTO
.
getElderId
(),
platElderIdDTO
.
getDeviceId
(),
platElderIdDTO
.
getStartTime
(),
platElderIdDTO
.
getEndTime
());
}
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderRealTimeServiceImpl.java
View file @
ff95625f
...
...
@@ -5,10 +5,12 @@ import com.makeit.entity.platform.device.PlatDevice;
import
com.makeit.module.iot.service.IotProductDeviceService
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentBreathe
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentSpace
;
import
com.makeit.service.platform.device.PlatDeviceService
;
import
com.makeit.service.platform.elder.PlatElderRealTimeService
;
import
com.makeit.service.platform.elder.PlatElderService
;
import
com.makeit.utils.data.convert.StreamUtil
;
import
com.makeit.utils.data.validate.CollectionUtils
;
import
com.makeit.utils.old.StringUtils
;
import
com.makeit.vo.platform.elder.realtime.PlatElderCoordinateVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeBodyVO
;
import
com.makeit.vo.platform.elder.realtime.PlatElderRealTimeHeartRespiratoryVO
;
...
...
@@ -20,6 +22,7 @@ import java.math.BigDecimal;
import
java.math.RoundingMode
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
...
...
@@ -40,11 +43,44 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
private
PlatElderService
platElderService
;
@Autowired
private
PlatDeviceService
platDeviceService
;
@Autowired
private
IotProductDeviceService
iotProductDeviceService
;
private
DeviceInfoContentBreathe
getNowDataBreathe
(
String
elderId
)
{
@Override
public
PlatDevice
getBreathDevice
(
String
elderId
,
String
deviceId
)
{
PlatDevice
platDevice
=
null
;
if
(
StringUtils
.
isNotBlank
(
elderId
))
{
platDevice
=
platElderService
.
getBreathDevice
(
elderId
);
}
if
(
StringUtils
.
isNotBlank
(
deviceId
))
{
platDevice
=
platDeviceService
.
getById
(
deviceId
);
}
return
platDevice
;
}
@Override
public
List
<
PlatDevice
>
getSpaceDevice
(
String
elderId
,
String
deviceId
)
{
List
<
PlatDevice
>
deviceList
=
null
;
if
(
StringUtils
.
isNotBlank
(
elderId
))
{
deviceList
=
platElderService
.
getSpaceDevice
(
elderId
);
}
if
(
StringUtils
.
isNotBlank
(
deviceId
))
{
deviceList
=
Arrays
.
asList
(
platDeviceService
.
getById
(
deviceId
));
}
return
deviceList
;
}
private
DeviceInfoContentBreathe
getNowDataBreathe
(
String
elderId
,
String
deviceId
)
{
PlatDevice
platDevice
=
platElderService
.
getBreathDevice
(
elder
Id
);
PlatDevice
platDevice
=
getBreathDevice
(
elderId
,
device
Id
);
if
(
platDevice
==
null
)
{
return
null
;
...
...
@@ -56,11 +92,11 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
}
private
List
<
DeviceInfoContentSpace
>
getNowDataSpace
(
String
elderId
)
{
private
List
<
DeviceInfoContentSpace
>
getNowDataSpace
(
String
elderId
,
String
deviceId
)
{
List
<
PlatDevice
>
deviceList
=
platElderService
.
getSpaceDevice
(
elder
Id
);
List
<
PlatDevice
>
deviceList
=
getSpaceDevice
(
elderId
,
device
Id
);
if
(
CollectionUtils
.
is
Not
Empty
(
deviceList
))
{
if
(
CollectionUtils
.
isEmpty
(
deviceList
))
{
return
null
;
}
...
...
@@ -71,7 +107,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
@Override
public
PlatElderRealTimeNowVO
nowStatus
(
PlatElderIdDTO
platElderIdDTO
)
{
DeviceInfoContentBreathe
deviceInfoContentBreathe
=
getNowDataBreathe
(
platElderIdDTO
.
getElderId
());
DeviceInfoContentBreathe
deviceInfoContentBreathe
=
getNowDataBreathe
(
platElderIdDTO
.
getElderId
()
,
platElderIdDTO
.
getDeviceId
()
);
PlatElderRealTimeNowVO
platElderRealTimeNowVO
=
new
PlatElderRealTimeNowVO
();
...
...
@@ -90,7 +126,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
@Override
public
PlatElderRealTimeHeartRespiratoryVO
heartRespiratory
(
PlatElderIdDTO
platElderIdDTO
)
{
DeviceInfoContentBreathe
deviceInfoContentBreathe
=
getNowDataBreathe
(
platElderIdDTO
.
getElderId
());
DeviceInfoContentBreathe
deviceInfoContentBreathe
=
getNowDataBreathe
(
platElderIdDTO
.
getElderId
()
,
platElderIdDTO
.
getDeviceId
()
);
PlatElderRealTimeHeartRespiratoryVO
platElderRealTimeHeartRespiratoryVO
=
new
PlatElderRealTimeHeartRespiratoryVO
();
platElderRealTimeHeartRespiratoryVO
.
setTime
(
LocalDateTime
.
now
());
...
...
@@ -107,7 +143,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
@Override
public
PlatElderRealTimeBodyVO
body
(
PlatElderIdDTO
platElderIdDTO
)
{
DeviceInfoContentBreathe
deviceInfoContentBreathe
=
getNowDataBreathe
(
platElderIdDTO
.
getElderId
());
DeviceInfoContentBreathe
deviceInfoContentBreathe
=
getNowDataBreathe
(
platElderIdDTO
.
getElderId
()
,
platElderIdDTO
.
getDeviceId
()
);
PlatElderRealTimeBodyVO
platElderRealTimeBodyVO
=
new
PlatElderRealTimeBodyVO
();
platElderRealTimeBodyVO
.
setTime
(
LocalDateTime
.
now
());
...
...
@@ -124,7 +160,7 @@ public class PlatElderRealTimeServiceImpl implements PlatElderRealTimeService {
@Override
public
List
<
PlatElderCoordinateVO
>
coordinate
(
PlatElderIdDTO
platElderIdDTO
)
{
List
<
DeviceInfoContentSpace
>
deviceInfoContentSpaceList
=
getNowDataSpace
(
platElderIdDTO
.
getElderId
());
List
<
DeviceInfoContentSpace
>
deviceInfoContentSpaceList
=
getNowDataSpace
(
platElderIdDTO
.
getElderId
()
,
platElderIdDTO
.
getDeviceId
()
);
List
<
PlatElderCoordinateVO
>
voList
=
new
ArrayList
<>(
10
);
...
...
server-service/src/main/java/com/makeit/service/platform/space/PlatRoomService.java
View file @
ff95625f
...
...
@@ -3,12 +3,12 @@ package com.makeit.service.platform.space;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.dto.platform.elder.PlatElderQueryDTO
;
import
com.makeit.dto.platform.space.PlatRoomDTO
;
import
com.makeit.dto.platform.space.PlatRoomQueryDTO
;
import
com.makeit.dto.platform.
space.PlatSpace
QueryDTO
;
import
com.makeit.dto.platform.
workstation.WorkStation
QueryDTO
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.vo.platform.space.PlatSpaceAndRoomVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO
;
import
java.util.List
;
...
...
@@ -61,4 +61,6 @@ public interface PlatRoomService extends IService<PlatRoom> {
PageVO
<
PlatRoom
>
page
(
PageReqDTO
<
PlatRoomQueryDTO
>
page
);
List
<
PlatSpaceAndRoomVO
>
spaceAndRoomList
();
List
<
WorkStationInstitutionRoomVO
>
workStationList
(
WorkStationQueryDTO
dto
);
}
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatBedServiceImpl.java
View file @
ff95625f
...
...
@@ -165,9 +165,13 @@ public class PlatBedServiceImpl extends ServiceImpl<PlatBedMapper, PlatBed> impl
LambdaQueryWrapper
<
PlatRoomBedDevice
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
PlatRoomBedDevice:
:
getRoomId
,
dto
.
getRoomId
());
queryWrapper
.
select
(
PlatRoomBedDevice:
:
getBedId
);
queryWrapper
.
isNotNull
(
PlatRoomBedDevice:
:
getBedId
);
List
<
PlatRoomBedDevice
>
listDevices
=
platRoomBedDeviceService
.
list
(
queryWrapper
);
List
<
String
>
listBedIds
=
listDevices
.
stream
().
map
(
item
->
item
.
getBedId
()).
collect
(
Collectors
.
toList
());
List
<
String
>
listBedIds
=
new
ArrayList
<>();
if
(!
listDevices
.
isEmpty
()){
listBedIds
=
listDevices
.
stream
().
map
(
item
->
item
.
getBedId
()).
collect
(
Collectors
.
toList
());
}
LambdaQueryWrapper
<
PlatBed
>
queryWrapper1
=
new
LambdaQueryWrapper
<>();
queryWrapper1
.
eq
(
StringUtil
.
isNotEmpty
(
dto
.
getRoomId
()),
PlatBed:
:
getRoomId
,
dto
.
getRoomId
());
...
...
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomBedDeviceServiceImpl.java
View file @
ff95625f
...
...
@@ -119,10 +119,12 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM
queryWrapper2
.
in
(
PlatBed:
:
getId
,
listBedIds
);
List
<
PlatBed
>
listBeds
=
platBedService
.
list
(
queryWrapper2
);
Map
<
String
,
String
>
map
=
listBeds
.
stream
().
collect
(
Collectors
.
toMap
(
PlatBed:
:
getId
,
PlatBed:
:
getName
,(
k1
,
k2
)->
k1
));
Map
<
String
,
String
>
mapName
=
new
HashMap
<>();
Map
<
String
,
String
>
mapName
=
new
HashMap
<>(
20
);
Map
<
String
,
String
>
mapBedId
=
new
HashMap
<>(
20
);
list
.
forEach
(
item
->{
if
(
map
.
containsKey
(
item
.
getBedId
())){
mapName
.
put
(
item
.
getDeviceId
(),
map
.
get
(
item
.
getBedId
()));
mapBedId
.
put
(
item
.
getDeviceId
(),
item
.
getBedId
());
}
});
...
...
@@ -136,6 +138,7 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM
data
.
forEach
(
item
->{
item
.
setBedName
(
mapName
.
get
(
item
.
getId
()));
item
.
setBedId
(
mapBedId
.
get
(
item
.
getId
()));
});
}
return
data
;
...
...
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomDynamicServiceImpl.java
View file @
ff95625f
...
...
@@ -71,7 +71,7 @@ public class PlatRoomDynamicServiceImpl implements PlatRoomDynamicService {
PlatRoomVO
vo
=
convertToVO
(
room
,
bedMap
);
roomVOList
.
add
(
vo
);
}
platRoomPanoramaVO
.
set
List
(
roomVOList
);
platRoomPanoramaVO
.
set
Children
(
roomVOList
);
list
.
add
(
platRoomPanoramaVO
);
}
}
...
...
@@ -189,7 +189,7 @@ public class PlatRoomDynamicServiceImpl implements PlatRoomDynamicService {
this
.
child
(
item
,
map
);
listChild
.
add
(
item
);
}
vo
.
setChild
(
listChild
);
vo
.
setChild
ren
(
listChild
);
return
vo
;
}
}
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomServiceImpl.java
View file @
ff95625f
...
...
@@ -8,6 +8,7 @@ import com.makeit.common.page.PageReqDTO;
import
com.makeit.common.page.PageVO
;
import
com.makeit.dto.platform.space.PlatRoomDTO
;
import
com.makeit.dto.platform.space.PlatRoomQueryDTO
;
import
com.makeit.dto.platform.workstation.WorkStationQueryDTO
;
import
com.makeit.entity.platform.space.PlatBed
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.enums.CodeMessageEnum
;
...
...
@@ -18,6 +19,7 @@ import com.makeit.service.platform.space.PlatRoomService;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.data.convert.PageUtil
;
import
com.makeit.vo.platform.space.PlatSpaceAndRoomVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO
;
import
jodd.util.StringUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -147,5 +149,10 @@ public class PlatRoomServiceImpl extends ServiceImpl<PlatRoomMapper, PlatRoom> i
return
baseMapper
.
spaceAndRoomList
();
}
@Override
public
List
<
WorkStationInstitutionRoomVO
>
workStationList
(
WorkStationQueryDTO
dto
)
{
return
baseMapper
.
workStationList
(
dto
);
}
}
server-service/src/main/java/com/makeit/service/platform/workstation/WorkStationService.java
View file @
ff95625f
...
...
@@ -2,7 +2,11 @@ package com.makeit.service.platform.workstation;
import
com.makeit.dto.platform.workstation.WorkStationQueryDTO
;
import
com.makeit.vo.platform.workstation.WorkStationStatisticsVO
;
import
com.makeit.vo.platform.workstation.WorkStationHomeStatisticsVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionStatisticsVO
;
import
java.util.List
;
/**
* Controller
...
...
@@ -12,5 +16,9 @@ import com.makeit.vo.platform.workstation.WorkStationStatisticsVO;
*/
public
interface
WorkStationService
{
WorkStationStatisticsVO
statistics
(
WorkStationQueryDTO
dto
);
WorkStationInstitutionStatisticsVO
institutionStatistics
(
WorkStationQueryDTO
dto
);
List
<
WorkStationInstitutionRoomVO
>
institutionList
(
WorkStationQueryDTO
dto
);
WorkStationHomeStatisticsVO
homeStatistics
(
WorkStationQueryDTO
dto
);
}
server-service/src/main/java/com/makeit/service/platform/workstation/impl/WorkStationServiceImpl.java
View file @
ff95625f
package
com
.
makeit
.
service
.
platform
.
workstation
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.makeit.
dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.
common.entity.BaseEntity
;
import
com.makeit.dto.platform.workstation.WorkStationQueryDTO
;
import
com.makeit.entity.platform.alarm.PlatAlarmRecord
;
import
com.makeit.entity.platform.auth.PlatUser
;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.entity.platform.auth.PlatOrg
;
import
com.makeit.entity.platform.elder.PlatElder
;
import
com.makeit.entity.platform.space.PlatBed
;
import
com.makeit.entity.platform.space.PlatSpace
;
import
com.makeit.enums.CommonEnum
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.enums.platform.alarm.PlatAlarmRecordEnum
;
import
com.makeit.enums.platform.device.PlatDeviceEnum
;
import
com.makeit.enums.platform.elder.PlatElderEnum
;
import
com.makeit.module.iot.enums.DeviceState
;
import
com.makeit.enums.platform.auth.PlatOrgEnum
;
import
com.makeit.enums.platform.space.PlatBedStatusEnum
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
import
com.makeit.service.platform.auth.PlatOrgService
;
import
com.makeit.service.platform.auth.PlatUserService
;
import
com.makeit.service.platform.dataScreen.DataScreenService
;
import
com.makeit.service.platform.device.PlatDeviceService
;
import
com.makeit.service.platform.elder.PlatElderService
;
import
com.makeit.service.platform.space.PlatBedService
;
import
com.makeit.service.platform.space.PlatRoomService
;
import
com.makeit.service.platform.space.PlatSpaceService
;
import
com.makeit.service.platform.workstation.WorkStationService
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.vo.platform.dataScreen.*
;
import
com.makeit.vo.platform.workstation.WorkStationStatisticsVO
;
import
com.makeit.utils.user.plat.PlatUserUtil
;
import
com.makeit.utils.user.plat.PlatUserVO
;
import
com.makeit.vo.platform.workstation.WorkStationHomeStatisticsVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO
;
import
com.makeit.vo.platform.workstation.WorkStationInstitutionStatisticsVO
;
import
jodd.util.StringUtil
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
...
...
@@ -49,12 +46,10 @@ public class WorkStationServiceImpl implements WorkStationService {
@Autowired
private
PlatElderService
platElderService
;
@Autowired
private
Plat
DeviceService
platDevice
Service
;
private
Plat
RoomService
platRoom
Service
;
@Autowired
private
PlatBedService
platBedService
;
@Autowired
private
PlatUserService
platUserService
;
@Autowired
private
PlatAlarmRecordService
platAlarmRecordService
;
@Autowired
private
PlatSpaceService
platSpaceService
;
...
...
@@ -63,13 +58,114 @@ public class WorkStationServiceImpl implements WorkStationService {
@Override
public
WorkStationStatisticsVO
statistics
(
WorkStationQueryDTO
dto
)
{
WorkStationStatisticsVO
vo
=
new
WorkStationStatisticsVO
();
//代处理告警
public
WorkStationInstitutionStatisticsVO
institutionStatistics
(
WorkStationQueryDTO
dto
)
{
WorkStationInstitutionStatisticsVO
vo
=
new
WorkStationInstitutionStatisticsVO
();
if
(
dto
.
getOrgIds
().
isEmpty
()){
//获取该账号的权限组织
PlatOrg
param
=
new
PlatOrg
();
param
.
setType
(
PlatOrgEnum
.
OrgTypeEnum
.
INSTITUTION
.
getValue
());
List
<
PlatOrg
>
orgs
=
platOrgService
.
belongToScopeList
(
param
);
if
(
orgs
.
isEmpty
()){
return
vo
;
}
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
//待处理告警
long
unHandledNumber
=
platAlarmRecordService
.
count
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
eq
(
PlatAlarmRecord:
:
getStatus
,
PlatAlarmRecordEnum
.
AlarmRecordStatusEnum
.
UNHANDLED
.
getValue
())
.
in
(
PlatAlarmRecord:
:
getOrgId
,
dto
.
getOrgIds
()));
//在住长者
long
elderNumber
=
platElderService
.
count
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
isNotNull
(
PlatElder:
:
getBedId
)
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
()));
//今日入住
long
checkInNumber
=
platElderService
.
count
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
between
(
PlatElder:
:
getCheckInTime
,
dto
.
getStartTime
(),
dto
.
getEndTime
())
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
()));
//今日退住
long
checkOutNumber
=
platElderService
.
count
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
between
(
PlatElder:
:
getCheckOutTime
,
dto
.
getStartTime
(),
dto
.
getEndTime
())
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
()));
//空闲床位
List
<
PlatSpace
>
spaces
=
platSpaceService
.
list
(
new
QueryWrapper
<
PlatSpace
>().
lambda
()
.
in
(
PlatSpace:
:
getOrgId
,
dto
.
getOrgIds
()));
List
<
String
>
spaceIds
=
spaces
.
stream
().
map
(
PlatSpace:
:
getId
).
collect
(
Collectors
.
toList
());
if
(!
spaceIds
.
isEmpty
()){
long
spareBedNumber
=
platBedService
.
count
(
new
QueryWrapper
<
PlatBed
>().
lambda
()
.
eq
(
PlatBed:
:
getStatus
,
PlatBedStatusEnum
.
BedStatusEnum
.
SPARE
.
getValue
())
.
in
(
PlatBed:
:
getSpaceId
,
spaceIds
));
vo
.
setSpareBedNumber
(
spareBedNumber
);
}
else
{
vo
.
setSpareBedNumber
(
0L
);
}
vo
.
setUnHandledNumber
(
unHandledNumber
);
vo
.
setElderNumber
(
elderNumber
);
vo
.
setCheckInNumber
(
checkInNumber
);
vo
.
setCheckOutNumber
(
checkOutNumber
);
return
vo
;
}
@Override
public
List
<
WorkStationInstitutionRoomVO
>
institutionList
(
WorkStationQueryDTO
dto
)
{
List
<
PlatSpace
>
spaces
=
new
ArrayList
<>();
if
(
dto
.
getSpaceIds
().
isEmpty
()){
//获取该账号的权限组织
PlatOrg
param
=
new
PlatOrg
();
param
.
setType
(
PlatOrgEnum
.
OrgTypeEnum
.
INSTITUTION
.
getValue
());
List
<
PlatOrg
>
orgs
=
platOrgService
.
belongToScopeList
(
param
);
if
(
orgs
.
isEmpty
()){
return
new
ArrayList
<>();
}
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
spaces
=
platSpaceService
.
list
(
new
QueryWrapper
<
PlatSpace
>().
lambda
()
.
in
(
PlatSpace:
:
getOrgId
,
dto
.
getOrgIds
()));
if
(
spaces
.
isEmpty
()){
return
new
ArrayList
<>();
}
List
<
String
>
spaceIds
=
spaces
.
stream
().
map
(
PlatSpace:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setSpaceIds
(
spaceIds
);
}
else
{
spaces
=
platSpaceService
.
list
(
new
QueryWrapper
<
PlatSpace
>().
lambda
()
.
in
(
PlatSpace:
:
getId
,
dto
.
getSpaceIds
()));
}
Map
<
String
,
PlatSpace
>
platSpaceMap
=
spaces
.
stream
().
collect
(
Collectors
.
toMap
(
PlatSpace:
:
getId
,
Function
.
identity
()));
List
<
String
>
elderIdList
=
new
ArrayList
<>();
List
<
PlatAlarmRecord
>
alarmRecords
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
eq
(
StringUtil
.
isNotEmpty
(
dto
.
getAlarmType
()),
PlatAlarmRecord:
:
getAlarmType
,
dto
.
getAlarmType
())
.
eq
(
PlatAlarmRecord:
:
getStatus
,
PlatAlarmRecordEnum
.
AlarmRecordStatusEnum
.
UNHANDLED
.
getValue
())
.
in
(
PlatAlarmRecord:
:
getOrgId
,
dto
.
getOrgIds
())
);
List
<
String
>
elderIds
=
alarmRecords
.
stream
().
filter
(
t
->
StringUtil
.
isNotEmpty
(
t
.
getElderIds
()))
.
map
(
PlatAlarmRecord:
:
getElderIds
).
collect
(
Collectors
.
toList
());
if
(
elderIds
.
isEmpty
()){
return
new
ArrayList
<>();
}
elderIds
.
forEach
(
e
->{
elderIdList
.
addAll
(
Arrays
.
asList
(
e
.
split
(
","
)));
});
List
<
WorkStationInstitutionRoomVO
>
roomVOList
=
platRoomService
.
workStationList
(
dto
);
if
(
roomVOList
.
isEmpty
()){
return
new
ArrayList
<>();
}
List
<
String
>
roomIds
=
roomVOList
.
stream
().
map
(
WorkStationInstitutionRoomVO:
:
getRoomId
).
collect
(
Collectors
.
toList
());
//获取床号及长者
return
null
;
}
@Override
public
WorkStationHomeStatisticsVO
homeStatistics
(
WorkStationQueryDTO
dto
)
{
return
null
;
}
...
...
server-service/src/main/java/com/makeit/utils/AlarmRedisDTO.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
utils
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.Date
;
@Data
public
class
AlarmRedisDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1136022758968665492L
;
/**
* 雷达第一次记录时间/进入空间时间
*/
private
Long
startLong
;
/**
* 是否告警过 0-未告警 1-告警了
*/
private
String
alarm
=
"0"
;
private
Date
start
;
}
server-service/src/main/java/com/makeit/vo/platform/space/PlatRoomPanoramaVO.java
View file @
ff95625f
...
...
@@ -23,5 +23,5 @@ public class PlatRoomPanoramaVO{
@ApiModelProperty
(
"空间id"
)
private
String
spaceId
;
private
List
<
PlatRoomVO
>
list
;
private
List
<
PlatRoomVO
>
children
;
}
server-service/src/main/java/com/makeit/vo/platform/space/PlatSpaceAndRoomVO.java
View file @
ff95625f
...
...
@@ -27,5 +27,5 @@ public class PlatSpaceAndRoomVO extends BaseIdDTO {
private
String
type
;
@ApiModelProperty
(
"子集"
)
private
List
<
PlatSpaceAndRoomVO
>
child
;
private
List
<
PlatSpaceAndRoomVO
>
child
ren
;
}
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationBedVO.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
vo
.
platform
.
workstation
;
import
com.makeit.entity.platform.alarm.PlatAlarmRecord
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
/**
* Controller
*
* @author zm
* @version 2023/9/13
*/
@Data
@ApiModel
(
"WorkStationRoomVO对象"
)
public
class
WorkStationBedVO
{
@ApiModelProperty
(
value
=
"床号"
)
private
String
bedName
;
@ApiModelProperty
(
value
=
"床id"
)
private
String
bedId
;
@ApiModelProperty
(
value
=
"状态"
)
private
String
stauts
;
@ApiModelProperty
(
value
=
"长者id"
)
private
String
elderId
;
@ApiModelProperty
(
value
=
"长者姓名"
)
private
String
elderName
;
@ApiModelProperty
(
value
=
"长者状态"
)
private
String
elderStatus
;
@ApiModelProperty
(
value
=
"告警类型"
)
private
List
<
String
>
alarmTypes
;
}
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationStatisticsVO.java
→
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStation
Home
StatisticsVO.java
View file @
ff95625f
...
...
@@ -11,9 +11,15 @@ import lombok.Data;
* @version 2023/9/13
*/
@Data
@ApiModel
(
"WorkStationStatisticsVO对象"
)
public
class
WorkStationStatisticsVO
{
@ApiModel
(
"WorkStation
Home
StatisticsVO对象"
)
public
class
WorkStation
Home
StatisticsVO
{
@ApiModelProperty
(
value
=
"待处理告警"
)
private
Long
unHandledNumber
;
@ApiModelProperty
(
value
=
"今日告警数"
)
private
Long
alarmNumber
;
@ApiModelProperty
(
value
=
"今日已处理告警数"
)
private
Long
handledNumber
;
@ApiModelProperty
(
value
=
"长者数"
)
private
Long
elderNumber
;
}
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationInstitutionRoomVO.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
vo
.
platform
.
workstation
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.List
;
/**
* Controller
*
* @author zm
* @version 2023/9/13
*/
@Data
@ApiModel
(
"WorkStationInstitutionRoomVO对象"
)
public
class
WorkStationInstitutionRoomVO
{
@ApiModelProperty
(
value
=
"房间路径id"
)
private
String
spacePath
;
@ApiModelProperty
(
value
=
"房间id"
)
private
String
roomId
;
@ApiModelProperty
(
value
=
"房间路径"
)
private
String
pathName
;
private
List
<
WorkStationBedVO
>
list
;
}
server-service/src/main/java/com/makeit/vo/platform/workstation/WorkStationInstitutionStatisticsVO.java
0 → 100644
View file @
ff95625f
package
com
.
makeit
.
vo
.
platform
.
workstation
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* Controller
*
* @author zm
* @version 2023/9/13
*/
@Data
@ApiModel
(
"WorkStationInstitutionStatisticsVO对象"
)
public
class
WorkStationInstitutionStatisticsVO
{
@ApiModelProperty
(
value
=
"待处理告警"
)
private
Long
unHandledNumber
;
@ApiModelProperty
(
value
=
"在住长者"
)
private
Long
elderNumber
;
@ApiModelProperty
(
value
=
"空闲床位"
)
private
Long
spareBedNumber
;
@ApiModelProperty
(
value
=
"今日入住"
)
private
Long
checkInNumber
;
@ApiModelProperty
(
value
=
"今日退住"
)
private
Long
checkOutNumber
;
}
server-service/src/main/resources/mappers/PlatBedMapper.xml
View file @
ff95625f
...
...
@@ -14,7 +14,7 @@
AND FIND_IN_SET(#{dto.id},pm.space_path)
</if>
<if
test=
"dto.status != null and dto.status != ''"
>
AND pb.statu
e
= #{dto.status}
AND pb.statu
s
= #{dto.status}
</if>
</where>
</select>
...
...
@@ -28,7 +28,7 @@
pb.del_flag = 0
AND pm.id = #{dto.id}
<if
test=
"dto.status != null and dto.status != ''"
>
AND pb.statu
e
= #{dto.status}
AND pb.statu
s
= #{dto.status}
</if>
</where>
</select>
...
...
@@ -37,7 +37,7 @@
SELECT count(*) from plat_bed pb LEFT JOIN plat_space ps ON pb.space_id = ps.id
<where>
ps.del_flag = 0
<if
test=
"orgIds != null and orgIds
!= ''
"
>
<if
test=
"orgIds != null and orgIds
.size() > 0
"
>
AND ps.org_id IN
<foreach
collection=
"orgIds"
item=
"item"
separator=
","
open=
"("
close=
")"
index=
""
>
#{item}
...
...
server-service/src/main/resources/mappers/PlatRoomMapper.xml
View file @
ff95625f
...
...
@@ -11,6 +11,25 @@
WHERE pr.del_flag = 0
</select>
<select
id=
"workStationList"
resultType=
"com.makeit.vo.platform.workstation.WorkStationInstitutionRoomVO"
>
SELECT pm.id as roomId,pm.name as roomName ,pm.space_path FROM plat_room pm
LEFT JOIN plat_space ps ON pm.space_id = ps.id
LEFT JOIN plat_bed pb ON pb.room_id = pm.id
LEFT JOIN plat_elder pe ON pe.bed_id = pb.id
<where>
pm.del_flag = 0
<if
test=
"dto.elderName != null and dto.elderName != ''"
>
AND pe.naem LIKE CONCAT('%',#{dto.elderName},'%')
</if>
<if
test=
"dto.spaceIds != null and dto.spaceIds.size()>0 "
>
AND pm.space_id IN
<foreach
collection=
"dto.spaceIds"
item=
"item"
separator=
","
open=
"("
close=
")"
index=
""
>
#{item}
</foreach>
</if>
</where>
</select>
</mapper>
server-web/src/main/resources/application.yml
View file @
ff95625f
...
...
@@ -147,6 +147,7 @@ tenant:
-
plat_tenant_menu
-
plat_user
-
plat_menu
-
plat_day_duration_record
rsa
:
...
...
server-web/src/test/java/com/makeit/iotapi/IotTest.java
View file @
ff95625f
...
...
@@ -64,7 +64,7 @@ public class IotTest {
@Test
void
getDeviceLogByTimeRange
()
{
iotProductDeviceService
.
getDeviceLogByTimeRange
(
"1701127702523473920"
,
100
,
"2023-09-11 00:00:00"
,
"2023-09-11
23:59:00"
);
iotProductDeviceService
.
getDeviceLogByTimeRange
(
"1701127702523473920"
,
"reportProperty"
,
100
,
"2023-09-12 00:00:00"
,
"2023-09-12
23:59:00"
);
}
@Test
...
...
@@ -74,6 +74,6 @@ public class IotTest {
@Test
void
updateIotOrgInfo
()
{
iotOrgService
.
updateIotOrgInfo
(
"1698964909267415040"
,
"lxl2234"
);
iotOrgService
.
updateIotOrgInfo
(
"1698964909267415040"
,
"lxl2234"
);
}
}
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