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
eab5ffec
authored
Sep 19, 2023
by
杨伟程
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge branch 'dev' of
http://git.xmmakeit.com/huangjiay/iot-platform-server
into dev
parents
437fcf0b
246819c1
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
212 additions
and
63 deletions
server-module/src/main/java/com/makeit/module/controller/dataScreen/DataScreenController.java
server-service/src/main/java/com/makeit/dto/platform/space/PlatRegionSettingDTO.java
server-service/src/main/java/com/makeit/dto/platform/space/PlatSpaceVO.java
server-service/src/main/java/com/makeit/service/platform/auth/impl/PlatOrgServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/auth/impl/PlatUserServiceImpl.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/space/impl/PlatRegionSettingServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatSpaceServiceImpl.java
server-service/src/main/java/com/makeit/vo/platform/dataScreen/PlatAlarmStatisticsVO.java
server-service/src/main/resources/mappers/PlatBedMapper.xml
server-service/src/main/resources/mappers/PlatRoleMapper.xml
server-module/src/main/java/com/makeit/module/controller/dataScreen/DataScreenController.java
View file @
eab5ffec
package
com
.
makeit
.
module
.
controller
.
dataScreen
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.common.response.ApiResponseEntity
;
import
com.makeit.common.response.ApiResponseUtils
;
import
com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.dto.platform.space.PlatBedQueryDTO
;
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
com.makeit.vo.platform.space.PlatBedVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -55,6 +59,12 @@ public class DataScreenController {
return
ApiResponseUtils
.
success
(
dataScreenService
.
alarmStatistics
(
dto
));
}
@ApiOperation
(
"实时告警分页列表"
)
@PostMapping
(
"alarmPage"
)
public
ApiResponseEntity
<
PageVO
<
PlatAlarmStatisticsListVo
>>
alarmPage
(
@RequestBody
PageReqDTO
<
PlatDataScreenQueryDTO
>
page
)
{
return
ApiResponseUtils
.
success
(
dataScreenService
.
alarmPage
(
page
));
}
@ApiOperation
(
"机构养老-基础数据统计"
)
@PostMapping
(
"baseInfoStatistics"
)
public
ApiResponseEntity
<
PlatBaseInfoStatisticsVO
>
baseInfoStatistics
(
@RequestBody
PlatDataScreenQueryDTO
dto
)
{
...
...
server-service/src/main/java/com/makeit/dto/platform/space/PlatRegionSettingDTO.java
View file @
eab5ffec
...
...
@@ -35,6 +35,9 @@ public class PlatRegionSettingDTO extends BaseIdDTO {
@ApiModelProperty
(
"设备ID"
)
private
String
deviceId
;
@ApiModelProperty
(
"原始设备ID"
)
private
String
oriDeviceId
;
@ApiModelProperty
(
"房间ID"
)
private
String
roomId
;
...
...
server-service/src/main/java/com/makeit/dto/platform/space/PlatSpaceVO.java
View file @
eab5ffec
...
...
@@ -25,6 +25,9 @@ public class PlatSpaceVO extends BaseIdDTO {
@ApiModelProperty
(
"父级名称"
)
private
String
parentName
;
@ApiModelProperty
(
"属性 1-居家 2-机构"
)
private
String
attribute
;
@ApiModelProperty
(
"子集"
)
private
List
<
PlatSpaceVO
>
children
;
}
server-service/src/main/java/com/makeit/service/platform/auth/impl/PlatOrgServiceImpl.java
View file @
eab5ffec
...
...
@@ -396,8 +396,8 @@ public class PlatOrgServiceImpl extends ServiceImpl<PlatOrgMapper, PlatOrg>
*/
@Override
public
List
<
PlatOrg
>
belongToOrgTree
(
PlatOrg
param
)
{
PlatUserVO
userVO
=
PlatUserUtil
.
getUserVO
();
String
isTenant
=
userVO
.
getIsTenant
();
PlatUserVO
userVO
CanNull
=
PlatUserUtil
.
getUserVOCanNull
();
String
isTenant
=
userVO
CanNull
.
getIsTenant
();
//如果是租户账号 则有所有权限
if
(
StringUtils
.
equals
(
isTenant
,
CommonEnum
.
YES
.
getValue
()))
{
List
<
PlatOrg
>
orgList
=
this
.
list
(
new
LambdaQueryWrapper
<
PlatOrg
>()
...
...
@@ -408,7 +408,7 @@ public class PlatOrgServiceImpl extends ServiceImpl<PlatOrgMapper, PlatOrg>
}
//平台账号
Set
<
String
>
orgIdList
=
getOrgIdListByUserId
(
userVO
.
getId
());
Set
<
String
>
orgIdList
=
getOrgIdListByUserId
(
userVO
CanNull
.
getId
());
List
<
PlatOrg
>
orgList
=
this
.
list
(
new
LambdaQueryWrapper
<
PlatOrg
>()
.
eq
(
StringUtils
.
isNotEmpty
(
param
.
getType
()),
PlatOrg:
:
getType
,
param
.
getType
())
.
in
(
BaseEntity:
:
getId
,
orgIdList
).
eq
(
PlatOrg:
:
getStatus
,
CommonEnum
.
YES
.
getValue
()));
...
...
server-service/src/main/java/com/makeit/service/platform/auth/impl/PlatUserServiceImpl.java
View file @
eab5ffec
...
...
@@ -3,6 +3,7 @@ package com.makeit.service.platform.auth.impl;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
...
...
@@ -43,7 +44,6 @@ import com.makeit.module.admin.vo.plat.PlatButtonVO;
import
com.makeit.module.admin.vo.plat.PlatTenantVO
;
import
com.makeit.module.admin.vo.plat.PlatUserLoginVO
;
import
com.makeit.module.admin.vo.plat.PlatUserRoleMenuRedisVO
;
import
com.makeit.module.system.service.SysDictionaryCategoryService
;
import
com.makeit.service.platform.auth.PlatOrgService
;
import
com.makeit.service.platform.auth.PlatRoleMenuService
;
import
com.makeit.service.platform.auth.PlatRoleOrgService
;
...
...
@@ -123,8 +123,7 @@ public class PlatUserServiceImpl extends ServiceImpl<PlatUserMapper, PlatUser>
@Autowired
private
PlatOrgService
platOrgService
;
@Autowired
private
SysDictionaryCategoryService
sysDictionaryCategoryService
;
private
DefaultIdentifierGenerator
defaultIdentifierGenerator
=
new
DefaultIdentifierGenerator
();
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
PlatUserServiceImpl
.
class
);
...
...
@@ -1074,6 +1073,7 @@ public class PlatUserServiceImpl extends ServiceImpl<PlatUserMapper, PlatUser>
* @param excelFile
*/
@Override
@Transactional
public
ExcelImportVo
importExcel
(
MultipartFile
excelFile
)
throws
Exception
{
List
<
PlatUserImportDTO
>
platUserImportDTOS
=
ExcelUtil
.
importExcel
(
null
,
3
,
excelFile
,
PlatUserImportDTO
.
class
);
...
...
@@ -1109,6 +1109,7 @@ public class PlatUserServiceImpl extends ServiceImpl<PlatUserMapper, PlatUser>
}
if
(
errorVoList
.
isEmpty
())
{
List
<
PlatUser
>
platUsers
=
new
ArrayList
<>();
List
<
PlatUserRole
>
platUserRoles
=
new
ArrayList
<>();
platUserImportDTOS
.
forEach
(
vo
->
{
PlatUser
platUser
=
BeanDtoVoUtils
.
convert
(
vo
,
PlatUser
.
class
);
vo
.
setPassword
(
PasswordUtils
.
encryptPassword
(
vo
.
getPassword
()));
...
...
@@ -1119,10 +1120,17 @@ public class PlatUserServiceImpl extends ServiceImpl<PlatUserMapper, PlatUser>
PlatOrg
platOrg
=
Optional
.
ofNullable
(
orgNameMap
.
get
(
vo
.
getOrgName
())).
orElse
(
new
PlatOrg
());
platUser
.
setOrgId
(
platOrg
.
getId
());
platUser
.
setOrgPath
(
platOrg
.
getPath
()
+
","
+
platOrg
.
getId
());
platUser
.
setId
(
String
.
valueOf
(
defaultIdentifierGenerator
.
nextId
(
platUser
)));
platUsers
.
add
(
platUser
);
PlatUserRole
platUserRole
=
new
PlatUserRole
();
platUserRole
.
setUserId
(
platUser
.
getId
());
String
roleId
=
roleNameMap
.
get
(
vo
.
getRoleName
());
platUserRole
.
setRoleId
(
roleId
);
platUserRoles
.
add
(
platUserRole
);
});
saveBatch
(
platUsers
);
platUserRoleService
.
saveBatch
(
platUserRoles
);
}
return
errorVoList
;
});
...
...
server-service/src/main/java/com/makeit/service/platform/dataScreen/DataScreenService.java
View file @
eab5ffec
package
com
.
makeit
.
service
.
platform
.
dataScreen
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.utils.area.ChinaAreaVO
;
import
com.makeit.vo.platform.dataScreen.*
;
...
...
@@ -26,4 +28,6 @@ public interface DataScreenService {
List
<
PlatMapStatisticsVO
>
mapStatistics
(
PlatDataScreenQueryDTO
dto
);
List
<
ChinaAreaVO
>
mapList
(
PlatDataScreenQueryDTO
dto
);
PageVO
<
PlatAlarmStatisticsListVo
>
alarmPage
(
PageReqDTO
<
PlatDataScreenQueryDTO
>
page
);
}
server-service/src/main/java/com/makeit/service/platform/dataScreen/impl/DataScreenServiceImpl.java
View file @
eab5ffec
package
com
.
makeit
.
service
.
platform
.
dataScreen
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.makeit.common.page.PageReqDTO
;
import
com.makeit.common.page.PageVO
;
import
com.makeit.dto.platform.dataScreen.PlatDataScreenQueryDTO
;
import
com.makeit.entity.platform.alarm.PlatAlarmRecord
;
import
com.makeit.entity.platform.auth.PlatOrg
;
...
...
@@ -8,6 +11,7 @@ import com.makeit.entity.platform.auth.PlatUser;
import
com.makeit.entity.platform.device.PlatDevice
;
import
com.makeit.entity.platform.elder.PlatElder
;
import
com.makeit.entity.platform.space.PlatBed
;
import
com.makeit.entity.platform.space.PlatRoom
;
import
com.makeit.entity.platform.space.PlatSpace
;
import
com.makeit.enums.CommonEnum
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
...
...
@@ -26,6 +30,7 @@ import com.makeit.service.platform.space.PlatSpaceService;
import
com.makeit.utils.area.AreaUtil
;
import
com.makeit.utils.area.ChinaAreaVO
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.data.convert.PageUtil
;
import
com.makeit.utils.data.convert.StreamUtil
;
import
com.makeit.utils.sql.join.JoinUtil
;
import
com.makeit.vo.platform.dataScreen.*
;
...
...
@@ -76,6 +81,16 @@ public class DataScreenServiceImpl implements DataScreenService {
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
vo
;
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
List
<
PlatElder
>
elders
=
platElderService
.
list
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
()));
...
...
@@ -104,6 +119,16 @@ public class DataScreenServiceImpl implements DataScreenService {
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
vo
;
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
long
manElderNumber
=
platElderService
.
count
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
())
...
...
@@ -143,6 +168,16 @@ public class DataScreenServiceImpl implements DataScreenService {
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
vo
;
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
List
<
PlatDevice
>
devices
=
platDeviceService
.
list
(
new
QueryWrapper
<
PlatDevice
>().
lambda
()
.
in
(
PlatDevice:
:
getOrgId
,
dto
.
getOrgIds
()));
...
...
@@ -150,6 +185,7 @@ public class DataScreenServiceImpl implements DataScreenService {
long
onlineNumber
=
devices
.
stream
().
filter
(
t
->
DeviceState
.
online
.
getValue
().
equals
(
t
.
getStatus
())).
count
();
long
offlineNumber
=
devices
.
stream
().
filter
(
t
->
DeviceState
.
offline
.
getValue
().
equals
(
t
.
getStatus
())).
count
();
long
disableNumber
=
devices
.
stream
().
filter
(
t
->
DeviceState
.
notActive
.
getValue
().
equals
(
t
.
getStatus
())).
count
();
long
faultNumber
=
devices
.
stream
().
filter
(
t
->
DeviceState
.
abnormal
.
getValue
().
equals
(
t
.
getStatus
())).
count
();
long
heartNumber
=
devices
.
stream
().
filter
(
t
->
PlatDeviceEnum
.
CategoryEnum
.
HEART
.
getValue
().
equals
(
t
.
getCategory
())).
count
();
long
fallNumber
=
devices
.
stream
().
filter
(
t
->
PlatDeviceEnum
.
CategoryEnum
.
FALL
.
getValue
().
equals
(
t
.
getCategory
())).
count
();
long
spaceNumber
=
devices
.
stream
().
filter
(
t
->
PlatDeviceEnum
.
CategoryEnum
.
SPACE
.
getValue
().
equals
(
t
.
getCategory
())).
count
();
...
...
@@ -161,6 +197,7 @@ public class DataScreenServiceImpl implements DataScreenService {
vo
.
setHeartNumber
(
heartNumber
);
vo
.
setFallNumber
(
fallNumber
);
vo
.
setSpaceNumber
(
spaceNumber
);
vo
.
setFaultNumber
(
faultNumber
);
return
vo
;
}
...
...
@@ -176,66 +213,30 @@ public class DataScreenServiceImpl implements DataScreenService {
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
vo
;
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
List
<
PlatAlarmRecord
>
alarmRecords
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
between
(
PlatAlarmRecord:
:
getAlarmDate
,
dto
.
getStartTime
(),
dto
.
getEndTime
())
.
isNotNull
(
PlatAlarmRecord:
:
getElderIds
)
.
in
(
PlatAlarmRecord:
:
getOrgId
,
dto
.
getOrgIds
()));
List
<
PlatElder
>
platElders
=
platElderService
.
list
();
Map
<
String
,
String
>
elderNameMap
=
platElders
.
stream
().
collect
(
Collectors
.
toMap
(
PlatElder:
:
getId
,
PlatElder:
:
getName
));
Map
<
String
,
PlatElderListVO
>
elderBedPathMap
=
mapElderBedPath
(
platElders
);
List
<
PlatAlarmStatisticsListVo
>
list
=
new
ArrayList
<>();
long
total
=
0
;
long
handledNumber
=
0
;
long
unhandledNumber
=
0
;
DateFormat
df
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
DateFormat
dft
=
new
SimpleDateFormat
(
"HH:mm:ss"
);
for
(
PlatAlarmRecord
record
:
alarmRecords
){
if
(
StringUtil
.
isNotEmpty
(
record
.
getElderIds
())){
List
<
String
>
elderIds
=
Arrays
.
asList
(
record
.
getElderIds
().
split
(
","
));
PlatAlarmStatisticsListVo
listVo
=
new
PlatAlarmStatisticsListVo
();
String
elderName
=
""
;
String
pathName
=
""
;
for
(
String
elderId
:
elderIds
){
if
(
elderNameMap
.
get
(
elderId
)!=
null
){
elderName
=
""
.
equals
(
elderName
)
?
elderNameMap
.
get
(
elderId
)
:
elderName
+
","
+
elderNameMap
.
get
(
elderId
);
}
if
(
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
HEART
.
getValue
().
equals
(
record
.
getAlarmType
())
||
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BREATHE
.
getValue
().
equals
(
record
.
getAlarmType
())
){
if
(
elderBedPathMap
.
get
(
elderId
)!=
null
){
pathName
=
elderBedPathMap
.
get
(
elderId
).
getSpacePathName
();
}
}
else
{
if
(
elderBedPathMap
.
get
(
elderId
)!=
null
){
pathName
=
""
.
equals
(
pathName
)
?
elderBedPathMap
.
get
(
elderId
).
getSpacePathName
()
:
pathName
+
","
+
elderBedPathMap
.
get
(
elderId
).
getRoomName
();
}
}
}
if
(
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
HEART
.
getValue
().
equals
(
record
.
getAlarmType
())
||
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BREATHE
.
getValue
().
equals
(
record
.
getAlarmType
())
){
listVo
.
setStatus
(
record
.
getRemark
());
}
listVo
.
setPath
(
pathName
);
listVo
.
setElderName
(
elderName
);
listVo
.
setType
(
record
.
getAlarmType
());
listVo
.
setAlarmDate
(
df
.
format
(
record
.
getAlarmDate
()));
listVo
.
setAlarmTime
(
dft
.
format
(
record
.
getAlarmDate
()));
total
++;
if
(
PlatAlarmRecordEnum
.
AlarmRecordStatusEnum
.
HANDLED
.
getValue
().
equals
(
record
.
getStatus
())){
handledNumber
++;
}
else
{
unhandledNumber
++;
}
list
.
add
(
listVo
);
}
}
long
total
=
alarmRecords
.
size
();
long
handledNumber
=
alarmRecords
.
stream
()
.
filter
(
record
->
PlatAlarmRecordEnum
.
AlarmRecordStatusEnum
.
HANDLED
.
getValue
().
equals
(
record
.
getStatus
())).
count
();
long
unhandledNumber
=
alarmRecords
.
stream
()
.
filter
(
record
->!
PlatAlarmRecordEnum
.
AlarmRecordStatusEnum
.
HANDLED
.
getValue
().
equals
(
record
.
getStatus
())).
count
();
vo
.
setTotal
(
total
);
vo
.
setHandledNumber
(
handledNumber
);
vo
.
setUnhandledNumber
(
unhandledNumber
);
vo
.
setList
(
list
);
return
vo
;
}
...
...
@@ -247,7 +248,7 @@ public class DataScreenServiceImpl implements DataScreenService {
JoinUtil
.
join
(
list
,
platBedService
,
PlatElderListVO:
:
getBedId
,
PlatBed:
:
getId
,
(
e
,
l
)
->
{
e
.
setBedName
(
l
.
getName
());
});
Map
<
String
,
PlatElderListVO
>
map
=
list
.
stream
().
collect
(
Collectors
.
toMap
(
PlatElderListVO:
:
get
Bed
Id
,
Function
.
identity
()));
Map
<
String
,
PlatElderListVO
>
map
=
list
.
stream
().
collect
(
Collectors
.
toMap
(
PlatElderListVO:
:
getId
,
Function
.
identity
()));
return
map
;
}
...
...
@@ -263,6 +264,16 @@ public class DataScreenServiceImpl implements DataScreenService {
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
vo
;
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
List
<
PlatElder
>
elders
=
platElderService
.
list
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
()));
...
...
@@ -293,6 +304,16 @@ public class DataScreenServiceImpl implements DataScreenService {
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
list
;
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
List
<
PlatSpace
>
spaces
=
platSpaceService
.
list
(
new
QueryWrapper
<
PlatSpace
>().
lambda
()
...
...
@@ -381,6 +402,81 @@ public class DataScreenServiceImpl implements DataScreenService {
return
list
;
}
@Override
public
PageVO
<
PlatAlarmStatisticsListVo
>
alarmPage
(
PageReqDTO
<
PlatDataScreenQueryDTO
>
page
)
{
PlatDataScreenQueryDTO
dto
=
page
.
getData
();
Page
<
PlatAlarmRecord
>
p
=
PageUtil
.
toMpPage
(
page
);
if
(
dto
.
getOrgIds
().
isEmpty
()){
//获取该账号的权限组织
List
<
PlatOrg
>
orgs
=
belongToScopeList
(
dto
.
getType
());
if
(
orgs
.
isEmpty
()){
return
new
PageVO
<>();
}
List
<
String
>
orgIds
=
orgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIds
);
}
else
{
//根据类型过滤数据
List
<
PlatOrg
>
platOrgs
=
platOrgService
.
list
(
new
QueryWrapper
<
PlatOrg
>().
lambda
()
.
in
(
PlatOrg:
:
getId
,
dto
.
getOrgIds
())
.
eq
(
PlatOrg:
:
getType
,
dto
.
getType
()));
if
(
platOrgs
.
isEmpty
()){
return
new
PageVO
<>();
}
List
<
String
>
orgIdList
=
platOrgs
.
stream
().
map
(
PlatOrg:
:
getId
).
collect
(
Collectors
.
toList
());
dto
.
setOrgIds
(
orgIdList
);
}
Page
<
PlatAlarmRecord
>
pages
=
platAlarmRecordService
.
page
(
p
,
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
between
(
dto
.
getStartTime
()!=
null
&&
dto
.
getEndTime
()!=
null
,
PlatAlarmRecord:
:
getAlarmDate
,
dto
.
getStartTime
(),
dto
.
getEndTime
())
.
in
(
PlatAlarmRecord:
:
getOrgId
,
dto
.
getOrgIds
())
.
isNotNull
(
PlatAlarmRecord:
:
getElderIds
)
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
));
List
<
PlatAlarmRecord
>
alarmRecords
=
pages
.
getRecords
();
List
<
PlatElder
>
platElders
=
platElderService
.
list
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
in
(
PlatElder:
:
getOrgId
,
dto
.
getOrgIds
()));
Map
<
String
,
String
>
elderNameMap
=
platElders
.
stream
().
collect
(
Collectors
.
toMap
(
PlatElder:
:
getId
,
PlatElder:
:
getName
));
Map
<
String
,
PlatElderListVO
>
elderBedPathMap
=
mapElderBedPath
(
platElders
);
List
<
PlatAlarmStatisticsListVo
>
list
=
new
ArrayList
<>();
DateFormat
df
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
DateFormat
dft
=
new
SimpleDateFormat
(
"HH:mm:ss"
);
for
(
PlatAlarmRecord
record
:
alarmRecords
){
List
<
String
>
elderIds
=
Arrays
.
asList
(
record
.
getElderIds
().
split
(
","
));
PlatAlarmStatisticsListVo
listVo
=
new
PlatAlarmStatisticsListVo
();
String
elderName
=
""
;
String
pathName
=
""
;
for
(
String
elderId
:
elderIds
){
if
(
elderNameMap
.
get
(
elderId
)!=
null
){
elderName
=
""
.
equals
(
elderName
)
?
elderNameMap
.
get
(
elderId
)
:
elderName
+
","
+
elderNameMap
.
get
(
elderId
);
}
if
(
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
HEART
.
getValue
().
equals
(
record
.
getAlarmType
())
||
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BREATHE
.
getValue
().
equals
(
record
.
getAlarmType
())
){
if
(
elderBedPathMap
.
get
(
elderId
)!=
null
){
pathName
=
elderBedPathMap
.
get
(
elderId
).
getSpacePathName
();
}
}
else
{
if
(
elderBedPathMap
.
get
(
elderId
)!=
null
){
pathName
=
""
.
equals
(
pathName
)
?
elderBedPathMap
.
get
(
elderId
).
getSpacePathName
()
:
pathName
+
","
+
elderBedPathMap
.
get
(
elderId
).
getRoomName
();
}
}
}
if
(
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
HEART
.
getValue
().
equals
(
record
.
getAlarmType
())
||
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BREATHE
.
getValue
().
equals
(
record
.
getAlarmType
())
){
listVo
.
setStatus
(
record
.
getRemark
());
}
listVo
.
setPath
(
pathName
);
listVo
.
setElderName
(
elderName
);
listVo
.
setType
(
record
.
getAlarmType
());
listVo
.
setAlarmDate
(
df
.
format
(
record
.
getAlarmDate
()));
listVo
.
setAlarmTime
(
dft
.
format
(
record
.
getAlarmDate
()));
list
.
add
(
listVo
);
}
return
PageUtil
.
toPageVO
(
list
,
pages
);
}
private
List
<
PlatOrg
>
getAncestorsOrgList
(
List
<
PlatOrg
>
orgs
,
Set
<
String
>
parentOrgIds
)
{
orgs
=
orgs
.
stream
().
filter
(
t
->
parentOrgIds
.
contains
(
t
.
getId
())).
collect
(
Collectors
.
toList
());
Set
<
String
>
ancestorsOrgIdList
=
new
HashSet
<>();
...
...
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRegionSettingServiceImpl.java
View file @
eab5ffec
...
...
@@ -110,11 +110,13 @@ public class PlatRegionSettingServiceImpl extends ServiceImpl<PlatRegionSettingM
List
<
String
>
listDeviceIds
=
data
.
stream
().
map
(
item
->
item
.
getDeviceId
()).
collect
(
Collectors
.
toList
());
LambdaQueryWrapper
<
PlatDevice
>
queryWrapper1
=
new
LambdaQueryWrapper
<>();
queryWrapper1
.
in
(
PlatDevice:
:
getId
,
listDeviceIds
);
queryWrapper1
.
select
(
PlatDevice:
:
getId
,
PlatDevice:
:
getName
);
queryWrapper1
.
select
(
PlatDevice:
:
getId
,
PlatDevice:
:
getName
,
PlatDevice:
:
getOriDeviceId
);
List
<
PlatDevice
>
devices
=
platDeviceService
.
list
(
queryWrapper1
);
Map
<
String
,
String
>
map
=
devices
.
stream
().
collect
(
Collectors
.
toMap
(
PlatDevice:
:
getId
,
PlatDevice:
:
getName
,(
k1
,
k2
)->
k1
));
Map
<
String
,
String
>
oriDeviceIdMap
=
devices
.
stream
().
collect
(
Collectors
.
toMap
(
PlatDevice:
:
getId
,
PlatDevice:
:
getOriDeviceId
,(
k1
,
k2
)->
k1
));
data
.
forEach
(
item
->{
item
.
setDeviceName
(
map
.
get
(
item
.
getDeviceId
()));
item
.
setOriDeviceId
(
oriDeviceIdMap
.
get
(
item
.
getDeviceId
()));
});
}
return
data
;
...
...
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatSpaceServiceImpl.java
View file @
eab5ffec
...
...
@@ -269,6 +269,7 @@ public class PlatSpaceServiceImpl extends ServiceImpl<PlatSpaceMapper, PlatSpace
vo
.
setName
(
space
.
getName
());
vo
.
setParentId
(
space
.
getParentId
());
vo
.
setId
(
space
.
getId
());
vo
.
setAttribute
(
space
.
getAttribute
());
return
vo
;
}
...
...
server-service/src/main/java/com/makeit/vo/platform/dataScreen/PlatAlarmStatisticsVO.java
View file @
eab5ffec
...
...
@@ -23,6 +23,6 @@ public class PlatAlarmStatisticsVO {
@ApiModelProperty
(
value
=
"待处理数"
)
private
Long
unhandledNumber
;
private
List
<
PlatAlarmStatisticsListVo
>
list
;
//
private List<PlatAlarmStatisticsListVo> list;
}
server-service/src/main/resources/mappers/PlatBedMapper.xml
View file @
eab5ffec
...
...
@@ -36,7 +36,7 @@
<select
id=
"countByOrdIdsAndType"
resultType=
"java.lang.Long"
>
SELECT count(*) from plat_bed pb LEFT JOIN plat_space ps ON pb.space_id = ps.id
<where>
p
s
.del_flag = 0
p
b
.del_flag = 0
<if
test=
"orgIds != null and orgIds.size() > 0 "
>
AND ps.org_id IN
<foreach
collection=
"orgIds"
item=
"item"
separator=
","
open=
"("
close=
")"
index=
""
>
...
...
server-service/src/main/resources/mappers/PlatRoleMapper.xml
0 → 100644
View file @
eab5ffec
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.makeit.mapper.platform.auth.PlatUserRoleMapper"
>
<select
id=
"getByUserIdList"
resultType=
"com.makeit.dto.platform.auth.PlatUserRoleDTO"
>
select distinct pur.role_id,
pur.user_id,
pr.name as roleName
from plat_user_role pur
left join plat_role pr on pur.role_id = pr.id
<where>
<if
test=
"userIdList != null and userIdList.size()>0"
>
AND pur.user_id IN
<foreach
collection=
"userIdList"
item=
"item"
separator=
","
open=
"("
close=
")"
index=
""
>
#{item}
</foreach>
</if>
</where>
</select>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment