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
63a07788
authored
Sep 20, 2023
by
huangjy
Browse files
Options
_('Browse Files')
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
123d1068
adbd94d4
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
223 additions
and
33 deletions
server-common/src/main/java/com/makeit/module/iot/service/IotProductDeviceService.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderController.java
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportWeekController.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderReportMonthService.java
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderService.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportDayServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderReportMonthServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomBedDeviceServiceImpl.java
server-service/src/main/java/com/makeit/service/saas/PlatTenantService.java
server-service/src/main/java/com/makeit/service/saas/impl/PlatTenantServiceImpl.java
server-service/src/main/java/com/makeit/task/ReportMonthJob.java
server-common/src/main/java/com/makeit/module/iot/service/IotProductDeviceService.java
View file @
63a07788
...
@@ -93,6 +93,8 @@ public class IotProductDeviceService extends IotCommonService {
...
@@ -93,6 +93,8 @@ public class IotProductDeviceService extends IotCommonService {
return
CollectionUtils
.
isNotEmpty
(
deviceOperationLogEntities
)
?
deviceOperationLogEntities
.
get
(
0
)
:
null
;
return
CollectionUtils
.
isNotEmpty
(
deviceOperationLogEntities
)
?
deviceOperationLogEntities
.
get
(
0
)
:
null
;
}
}
//TODO ywc 下面几个使用时还要不要根据状态的过滤
public
DeviceInfoContentBreathe
getLastDeviceLogBreathe
(
String
deviceId
,
Integer
ignoreDuration
)
{
//秒
public
DeviceInfoContentBreathe
getLastDeviceLogBreathe
(
String
deviceId
,
Integer
ignoreDuration
)
{
//秒
DeviceOperationLogEntity
deviceOperationLogEntity
=
getLastDeviceLogByType
(
deviceId
,
REPORT_PROPERTY
);
DeviceOperationLogEntity
deviceOperationLogEntity
=
getLastDeviceLogByType
(
deviceId
,
REPORT_PROPERTY
);
if
(
deviceOperationLogEntity
==
null
)
{
if
(
deviceOperationLogEntity
==
null
)
{
...
...
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderController.java
View file @
63a07788
...
@@ -80,6 +80,13 @@ public class PlatElderController {
...
@@ -80,6 +80,13 @@ public class PlatElderController {
return
ApiResponseUtils
.
success
();
return
ApiResponseUtils
.
success
();
}
}
@ApiOperation
(
"新增全部"
)
@PostMapping
(
"addAll"
)
public
ApiResponseEntity
<?>
addAll
(
@Validated
@RequestBody
PlatElderDTOVO
dto
)
{
platElderService
.
addAll
(
dto
);
return
ApiResponseUtils
.
success
();
}
@ApiOperation
(
"编辑"
)
@ApiOperation
(
"编辑"
)
@PostMapping
(
"edit"
)
@PostMapping
(
"edit"
)
public
ApiResponseEntity
<?>
edit
(
@Validated
@RequestBody
PlatElderDTOVO
dto
)
{
public
ApiResponseEntity
<?>
edit
(
@Validated
@RequestBody
PlatElderDTOVO
dto
)
{
...
...
server-module/src/main/java/com/makeit/module/controller/elder/PlatElderReportWeekController.java
View file @
63a07788
...
@@ -51,7 +51,7 @@ public class PlatElderReportWeekController {
...
@@ -51,7 +51,7 @@ public class PlatElderReportWeekController {
@ApiOperation
(
"睡眠图表"
)
@ApiOperation
(
"睡眠图表"
)
@PostMapping
(
"sleepDiagram"
)
@PostMapping
(
"sleepDiagram"
)
public
ApiResponseEntity
<
PlatElderSleepDiagramWeekVO
>
sleepDiagram
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
public
ApiResponseEntity
<
PlatElderSleepDiagramWeekVO
>
sleepDiagram
(
@RequestBody
PlatElderReportDTO
platElderIdDTO
)
{
return
null
;
return
ApiResponseUtils
.
success
(
platElderDayReportWeekService
.
sleepDiagram
(
platElderIdDTO
))
;
}
}
@ApiOperation
(
"心率呼吸评价"
)
@ApiOperation
(
"心率呼吸评价"
)
...
...
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderReportMonthService.java
View file @
63a07788
...
@@ -28,5 +28,7 @@ public interface PlatElderReportMonthService extends IService<PlatElderReportMon
...
@@ -28,5 +28,7 @@ public interface PlatElderReportMonthService extends IService<PlatElderReportMon
List
<
PlatElderReportMonthVO
>
reportMonth
(
PlatElderReportDTO
platElderIdDTO
);
List
<
PlatElderReportMonthVO
>
reportMonth
(
PlatElderReportDTO
platElderIdDTO
);
void
reportMonthJob
();
}
}
server-service/src/main/java/com/makeit/service/platform/elder/PlatElderService.java
View file @
63a07788
...
@@ -38,6 +38,8 @@ public interface PlatElderService extends IService<PlatElder> {
...
@@ -38,6 +38,8 @@ public interface PlatElderService extends IService<PlatElder> {
void
add
(
PlatElderAddDTO
dto
);
void
add
(
PlatElderAddDTO
dto
);
void
addAll
(
PlatElderDTOVO
dto
);
void
edit
(
PlatElderDTOVO
dto
);
void
edit
(
PlatElderDTOVO
dto
);
PlatElderDTOVO
view
(
String
id
);
PlatElderDTOVO
view
(
String
id
);
...
...
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportDayServiceImpl.java
View file @
63a07788
...
@@ -198,6 +198,9 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
...
@@ -198,6 +198,9 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
eq
(
PlatAlarmRecord:
:
getAlarmType
,
alarmType
)
.
eq
(
PlatAlarmRecord:
:
getAlarmType
,
alarmType
)
.
eq
(
PlatAlarmRecord:
:
getDeviceId
,
device
.
getId
())
.
eq
(
PlatAlarmRecord:
:
getDeviceId
,
device
.
getId
())
.
eq
(
PlatAlarmRecord:
:
getElderIds
,
platElderIdDTO
.
getElderId
())
.
ge
(
PlatAlarmRecord:
:
getAlarmDate
,
start
)
.
ge
(
PlatAlarmRecord:
:
getAlarmDate
,
start
)
.
le
(
PlatAlarmRecord:
:
getAlarmDate
,
end
)
.
le
(
PlatAlarmRecord:
:
getAlarmDate
,
end
)
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
)
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
)
...
@@ -269,6 +272,9 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
...
@@ -269,6 +272,9 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
eq
(
PlatAlarmRecord:
:
getAlarmType
,
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BEHAVIOR
.
getValue
())
.
eq
(
PlatAlarmRecord:
:
getAlarmType
,
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BEHAVIOR
.
getValue
())
.
in
(
PlatAlarmRecord:
:
getDeviceId
,
StreamUtil
.
mapId
(
platDeviceList
,
PlatDevice:
:
getId
))
.
in
(
PlatAlarmRecord:
:
getDeviceId
,
StreamUtil
.
mapId
(
platDeviceList
,
PlatDevice:
:
getId
))
.
eq
(
PlatAlarmRecord:
:
getElderIds
,
platElderIdDTO
.
getElderId
())
.
ge
(
PlatAlarmRecord:
:
getAlarmDate
,
start
)
.
ge
(
PlatAlarmRecord:
:
getAlarmDate
,
start
)
.
le
(
PlatAlarmRecord:
:
getAlarmDate
,
end
)
.
le
(
PlatAlarmRecord:
:
getAlarmDate
,
end
)
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
)
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
)
...
...
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderReportMonthServiceImpl.java
View file @
63a07788
...
@@ -3,11 +3,21 @@ package com.makeit.service.platform.elder.impl;
...
@@ -3,11 +3,21 @@ package com.makeit.service.platform.elder.impl;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
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.elder.PlatElderReportMonth
;
import
com.makeit.entity.platform.elder.PlatElderReportMonth
;
import
com.makeit.entity.platform.elder.PlatElderSleepAnalysis
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.mapper.platform.elder.PlatElderReportMonthMapper
;
import
com.makeit.mapper.platform.elder.PlatElderReportMonthMapper
;
import
com.makeit.service.platform.elder.PlatElderDayReportWeekService
;
import
com.makeit.module.iot.service.IotProductDeviceService
;
import
com.makeit.service.platform.elder.PlatElderReportMonthService
;
import
com.makeit.module.iot.vo.breathe.DeviceInfoContentBreathe
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
import
com.makeit.service.platform.elder.*
;
import
com.makeit.service.saas.PlatTenantService
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.data.convert.StreamUtil
;
import
com.makeit.utils.data.validate.MapUtil
;
import
com.makeit.utils.time.LocalDateTimeUtils
;
import
com.makeit.utils.time.LocalDateTimeUtils
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderHeartRespiratoryEvaluationVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
import
com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO
;
...
@@ -17,7 +27,12 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -17,7 +27,12 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Optional
;
/**
/**
* <p>
* <p>
...
@@ -30,9 +45,28 @@ import java.util.List;
...
@@ -30,9 +45,28 @@ import java.util.List;
@Service
@Service
public
class
PlatElderReportMonthServiceImpl
extends
ServiceImpl
<
PlatElderReportMonthMapper
,
PlatElderReportMonth
>
implements
PlatElderReportMonthService
{
public
class
PlatElderReportMonthServiceImpl
extends
ServiceImpl
<
PlatElderReportMonthMapper
,
PlatElderReportMonth
>
implements
PlatElderReportMonthService
{
@Autowired
private
PlatElderRealTimeService
platElderRealTimeService
;
@Autowired
@Autowired
private
PlatElderDayReportWeekService
platElderDayReportWeekService
;
private
PlatElderDayReportWeekService
platElderDayReportWeekService
;
@Autowired
private
PlatTenantService
platTenantService
;
@Autowired
private
PlatElderService
platElderService
;
@Autowired
private
PlatElderSleepAnalysisService
platElderSleepAnalysisService
;
@Autowired
private
PlatAlarmRecordService
platAlarmRecordService
;
@Autowired
private
IotProductDeviceService
iotProductDeviceService
;
public
LocalDate
monthStartDate
(
PlatElderReportDTO
platElderIdDTO
)
{
public
LocalDate
monthStartDate
(
PlatElderReportDTO
platElderIdDTO
)
{
return
monthStartDate
(
platElderIdDTO
.
getYear
(),
platElderIdDTO
.
getMonth
());
return
monthStartDate
(
platElderIdDTO
.
getYear
(),
platElderIdDTO
.
getMonth
());
}
}
...
@@ -97,4 +131,66 @@ public class PlatElderReportMonthServiceImpl extends ServiceImpl<PlatElderReport
...
@@ -97,4 +131,66 @@ public class PlatElderReportMonthServiceImpl extends ServiceImpl<PlatElderReport
return
voList
;
return
voList
;
}
}
@Override
public
void
reportMonthJob
()
{
LocalDate
nowDate
=
LocalDate
.
now
();
LocalDate
yesDate
=
nowDate
.
minusDays
(
1
);
LocalDateTime
yesStart
=
LocalDateTimeUtils
.
getDayStart
(
yesDate
);
LocalDateTime
yesEnd
=
LocalDateTimeUtils
.
getDayEnd
(
yesDate
);
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
);
List
<
PlatElderReportMonth
>
reportMonthList
=
new
ArrayList
<>(
10
);
platTenantService
.
executeTenantList
(()
->
{
List
<
PlatElder
>
elderList
=
platElderService
.
list
(
new
QueryWrapper
<
PlatElder
>().
lambda
()
.
isNotNull
(
PlatElder:
:
getBedId
));
List
<
PlatElderSleepAnalysis
>
sleepAnalysesList
=
platElderSleepAnalysisService
.
list
(
new
QueryWrapper
<
PlatElderSleepAnalysis
>().
lambda
()
.
in
(
PlatElderSleepAnalysis:
:
getElderId
,
StreamUtil
.
mapId
(
elderList
,
PlatElder:
:
getId
))
.
eq
(
PlatElderSleepAnalysis:
:
getHappenDate
,
dateTimeFormatter
.
format
(
yesDate
))
);
Map
<
String
,
PlatElderSleepAnalysis
>
sleepAnalysisMap
=
StreamUtil
.
toMap
(
sleepAnalysesList
,
PlatElderSleepAnalysis:
:
getElderId
);
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
in
(
PlatAlarmRecord:
:
getElderIds
,
StreamUtil
.
mapId
(
elderList
,
PlatElder:
:
getId
)));
Map
<
String
,
List
<
PlatAlarmRecord
>>
recordMap
=
StreamUtil
.
groupBy
(
recordList
,
PlatAlarmRecord:
:
getElderIds
);
elderList
.
forEach
(
e
->
{
PlatElderReportMonth
reportMonth
=
new
PlatElderReportMonth
();
reportMonth
.
setElderId
(
e
.
getBedId
());
reportMonth
.
setDay
(
yesDate
);
MapUtil
.
setIfPresent
(
sleepAnalysisMap
,
e
.
getId
(),
sa
->
{
reportMonth
.
setSleepResult
(
sa
.
getSleepResult
());
});
PlatDevice
platDevice
=
platElderRealTimeService
.
getBreathDevice
(
e
.
getId
(),
null
);
List
<
DeviceInfoContentBreathe
>
breatheList
=
iotProductDeviceService
.
getDeviceLogByTimeRangeBreathe
(
platDevice
.
getOriDeviceId
(),
2
*
24
*
3600
,
yesStart
,
yesEnd
);
reportMonth
.
setHeartRate
((
int
)
(
StreamUtil
.
reduce
(
breatheList
,
i
->
(
long
)
i
.
getProperties
().
getHr
(),
0L
,
Long:
:
sum
)
/
breatheList
.
size
()));
reportMonth
.
setRespiratoryRate
((
int
)
(
StreamUtil
.
reduce
(
breatheList
,
i
->
(
long
)
i
.
getProperties
().
getBr
(),
0L
,
Long:
:
sum
)
/
breatheList
.
size
()));
List
<
PlatAlarmRecord
>
rList
=
Optional
.
ofNullable
(
recordMap
.
get
(
e
.
getId
())).
orElse
(
new
ArrayList
<>(
10
));
reportMonth
.
setFailCount
((
int
)
StreamUtil
.
count
(
rList
,
i
->
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
FALL
.
getValue
().
equals
(
i
.
getAlarmType
())));
reportMonth
.
setHeartExceptionCount
((
int
)
StreamUtil
.
count
(
rList
,
i
->
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
HEART
.
getValue
().
equals
(
i
.
getAlarmType
())));
reportMonth
.
setRespiratoryExceptionCount
((
int
)
StreamUtil
.
count
(
rList
,
i
->
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BREATHE
.
getValue
().
equals
(
i
.
getAlarmType
())));
reportMonth
.
setBehaviorExceptionCount
((
int
)
StreamUtil
.
count
(
rList
,
i
->
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BEHAVIOR
.
getValue
().
equals
(
i
.
getAlarmType
())));
reportMonthList
.
add
(
reportMonth
);
});
saveBatch
(
reportMonthList
);
});
}
}
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderServiceImpl.java
View file @
63a07788
...
@@ -514,18 +514,32 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
...
@@ -514,18 +514,32 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
}
}
@Override
@Transactional
@Transactional
public
void
edit
(
PlatElderDTOVO
dto
)
{
@Override
public
void
addAll
(
PlatElderDTOVO
dto
)
{
check
(
BeanDtoVoUtils
.
convert
(
dto
,
PlatElderAddDTO
.
class
));
check
(
BeanDtoVoUtils
.
convert
(
dto
,
PlatElderAddDTO
.
class
));
PlatElder
db
=
getById
(
dto
.
getId
());
PlatElder
platElder
=
BeanDtoVoUtils
.
convert
(
dto
,
PlatElder
.
class
);
PlatElder
platElder
=
BeanDtoVoUtils
.
convert
(
dto
,
PlatElder
.
class
);
updateById
(
platElder
);
PlatUserVO
userVO
=
PlatUserUtil
.
getUserVO
(
);
platElder
.
setOrgId
(
userVO
.
getOrgId
());
platElder
.
setCityOrgId
(
userVO
.
getCityOrgId
());
platElder
.
setDistrictOrgId
(
userVO
.
getDistrictOrgId
());
platElder
.
setStreetOrgId
(
userVO
.
getStreetOrgId
());
platElder
.
setOrgPath
(
userVO
.
getOrgPath
());
save
(
platElder
);
addOrEditExt
(
dto
);
if
(
StringUtils
.
isNotBlank
(
dto
.
getBedId
()))
{
checkInInternal
(
dto
.
getBedId
());
}
}
private
void
addOrEditExt
(
PlatElderDTOVO
dto
)
{
List
<
PlatElderSocialRelation
>
relationList
=
BeanDtoVoUtils
.
listVo
(
dto
.
getRelationList
(),
PlatElderSocialRelation
.
class
);
List
<
PlatElderSocialRelation
>
relationList
=
BeanDtoVoUtils
.
listVo
(
dto
.
getRelationList
(),
PlatElderSocialRelation
.
class
);
relationList
.
forEach
(
e
->
{
relationList
.
forEach
(
e
->
{
e
.
setElderId
(
dto
.
getId
());
e
.
setElderId
(
dto
.
getId
());
...
@@ -544,6 +558,21 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
...
@@ -544,6 +558,21 @@ public class PlatElderServiceImpl extends ServiceImpl<PlatElderMapper, PlatElder
otherInfo
.
setElderId
(
dto
.
getId
());
otherInfo
.
setElderId
(
dto
.
getId
());
platElderOtherInfoService
.
saveOrUpdate
(
otherInfo
);
platElderOtherInfoService
.
saveOrUpdate
(
otherInfo
);
}
@Override
@Transactional
public
void
edit
(
PlatElderDTOVO
dto
)
{
check
(
BeanDtoVoUtils
.
convert
(
dto
,
PlatElderAddDTO
.
class
));
PlatElder
db
=
getById
(
dto
.
getId
());
PlatElder
platElder
=
BeanDtoVoUtils
.
convert
(
dto
,
PlatElder
.
class
);
updateById
(
platElder
);
addOrEditExt
(
dto
);
if
(
StringUtils
.
isNotBlank
(
dto
.
getBedId
())
&&
StringUtils
.
isBlank
(
db
.
getBedId
()))
{
if
(
StringUtils
.
isNotBlank
(
dto
.
getBedId
())
&&
StringUtils
.
isBlank
(
db
.
getBedId
()))
{
checkInInternal
(
dto
.
getBedId
());
checkInInternal
(
dto
.
getBedId
());
...
...
server-service/src/main/java/com/makeit/service/platform/space/impl/PlatRoomBedDeviceServiceImpl.java
View file @
63a07788
...
@@ -190,7 +190,12 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM
...
@@ -190,7 +190,12 @@ public class PlatRoomBedDeviceServiceImpl extends ServiceImpl<PlatRoomBedDeviceM
return
null
;
return
null
;
}
}
return
platDeviceService
.
getById
(
device
.
getDeviceId
());
//return platDeviceService.getById(device.getDeviceId());
return
platDeviceService
.
getOne
(
new
QueryWrapper
<
PlatDevice
>().
lambda
()
.
eq
(
PlatDevice:
:
getId
,
device
.
getDeviceId
())
.
eq
(
PlatDevice:
:
getCategory
,
PlatDeviceEnum
.
CategoryEnum
.
HEART
.
getValue
())
);
}
}
...
...
server-service/src/main/java/com/makeit/service/saas/PlatTenantService.java
View file @
63a07788
...
@@ -12,10 +12,10 @@ import com.makeit.module.admin.vo.plat.PlatTenantVO;
...
@@ -12,10 +12,10 @@ import com.makeit.module.admin.vo.plat.PlatTenantVO;
import
java.util.List
;
import
java.util.List
;
/**
/**
* @author lixl
* @author lixl
* @description 针对表【tnt_tenant(租户管理)】的数据库操作Service
* @description 针对表【tnt_tenant(租户管理)】的数据库操作Service
* @createDate 2023-08-29 14:29:10
* @createDate 2023-08-29 14:29:10
*/
*/
public
interface
PlatTenantService
extends
IService
<
PlatTenant
>
{
public
interface
PlatTenantService
extends
IService
<
PlatTenant
>
{
PageVO
<
PlatTenantVO
>
page
(
PageReqDTO
<
PlatTenantVO
>
page
);
PageVO
<
PlatTenantVO
>
page
(
PageReqDTO
<
PlatTenantVO
>
page
);
...
@@ -38,4 +38,6 @@ public interface PlatTenantService extends IService<PlatTenant> {
...
@@ -38,4 +38,6 @@ public interface PlatTenantService extends IService<PlatTenant> {
void
assignMenuList
(
PlatTenantMenuDTO
tntTenantMenuDTO
);
void
assignMenuList
(
PlatTenantMenuDTO
tntTenantMenuDTO
);
void
checkTenant
(
String
id
);
void
checkTenant
(
String
id
);
void
executeTenantList
(
Runnable
runnable
);
}
}
server-service/src/main/java/com/makeit/service/saas/impl/PlatTenantServiceImpl.java
View file @
63a07788
...
@@ -48,6 +48,7 @@ import org.springframework.stereotype.Service;
...
@@ -48,6 +48,7 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.List
;
...
@@ -55,13 +56,13 @@ import java.util.Objects;
...
@@ -55,13 +56,13 @@ import java.util.Objects;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
* @author lixl
* @author lixl
* @description 针对表【tnt_tenant(租户管理)】的数据库操作Service实现
* @description 针对表【tnt_tenant(租户管理)】的数据库操作Service实现
* @createDate 2023-08-29 14:29:10
* @createDate 2023-08-29 14:29:10
*/
*/
@Service
@Service
public
class
PlatTenantServiceImpl
extends
ServiceImpl
<
PlatTenantMapper
,
PlatTenant
>
public
class
PlatTenantServiceImpl
extends
ServiceImpl
<
PlatTenantMapper
,
PlatTenant
>
implements
PlatTenantService
{
implements
PlatTenantService
{
@Autowired
@Autowired
private
PlatUserService
platUserService
;
private
PlatUserService
platUserService
;
...
@@ -131,8 +132,8 @@ implements PlatTenantService {
...
@@ -131,8 +132,8 @@ implements PlatTenantService {
List
<
PlatTenantVO
>
voList
=
BeanDtoVoUtils
.
listVo
(
pageList
.
getRecords
(),
PlatTenantVO
.
class
);
List
<
PlatTenantVO
>
voList
=
BeanDtoVoUtils
.
listVo
(
pageList
.
getRecords
(),
PlatTenantVO
.
class
);
TntUserJoinUtil
.
join
(
platUserService
,
voList
,
qw
->
qw
.
eq
(
PlatUser:
:
getIsTenant
,
IsTenantAccountEnum
.
YES
.
getValue
()),
TntUserJoinUtil
.
join
(
platUserService
,
voList
,
qw
->
qw
.
eq
(
PlatUser:
:
getIsTenant
,
IsTenantAccountEnum
.
YES
.
getValue
()),
PlatTenantVO:
:
getPlatUserId
,(
t
,
u
)
->
{
PlatTenantVO:
:
getPlatUserId
,
(
t
,
u
)
->
{
t
.
setUserAccount
(
u
.
getAccount
());
t
.
setUserAccount
(
u
.
getAccount
());
t
.
setUserName
(
u
.
getUsername
());
t
.
setUserName
(
u
.
getUsername
());
},
BaseEntity:
:
getId
);
},
BaseEntity:
:
getId
);
...
@@ -176,12 +177,12 @@ implements PlatTenantService {
...
@@ -176,12 +177,12 @@ implements PlatTenantService {
@Override
@Override
public
void
assignMenuList
(
PlatTenantMenuDTO
tntTenantMenuDTO
)
{
public
void
assignMenuList
(
PlatTenantMenuDTO
tntTenantMenuDTO
)
{
assignMenuList
(
tntTenantMenuDTO
.
getTenantId
(),
tntTenantMenuDTO
.
getMenuIdList
());
assignMenuList
(
tntTenantMenuDTO
.
getTenantId
(),
tntTenantMenuDTO
.
getMenuIdList
());
}
}
@Transactional
@Transactional
public
void
assignMenuList
(
String
tenantId
,
List
<
String
>
menuIdList
)
{
public
void
assignMenuList
(
String
tenantId
,
List
<
String
>
menuIdList
)
{
platTenantMenuService
.
remove
(
new
QueryWrapper
<
PlatTenantMenu
>().
lambda
()
platTenantMenuService
.
remove
(
new
QueryWrapper
<
PlatTenantMenu
>().
lambda
()
.
eq
(
PlatTenantMenu:
:
getTenantId
,
tenantId
));
.
eq
(
PlatTenantMenu:
:
getTenantId
,
tenantId
));
...
@@ -217,14 +218,14 @@ implements PlatTenantService {
...
@@ -217,14 +218,14 @@ implements PlatTenantService {
sysConfigService
.
copyForTenant
(
dto
);
sysConfigService
.
copyForTenant
(
dto
);
//更新用户的tenantId
//更新用户的tenantId
platUserService
.
updatePlatUserTenantId
(
tntTenant
.
getId
(),
dto
.
getPlatUserId
());
platUserService
.
updatePlatUserTenantId
(
tntTenant
.
getId
(),
dto
.
getPlatUserId
());
//组织表增加一条数据
//组织表增加一条数据
PlatOrg
platOrg
=
convertToPlatOrg
(
tntTenant
);
PlatOrg
platOrg
=
convertToPlatOrg
(
tntTenant
);
platOrgService
.
saveOrg
(
platOrg
);
platOrgService
.
saveOrg
(
platOrg
);
//分配菜单
//分配菜单
assignMenuList
(
tntTenant
.
getId
(),
dto
.
getMenuIdList
());
assignMenuList
(
tntTenant
.
getId
(),
dto
.
getMenuIdList
());
return
tntTenant
.
getId
();
return
tntTenant
.
getId
();
}
}
...
@@ -239,26 +240,26 @@ implements PlatTenantService {
...
@@ -239,26 +240,26 @@ implements PlatTenantService {
PlatTenant
tntTenant
=
BeanDtoVoUtils
.
convert
(
dto
,
PlatTenant
.
class
);
PlatTenant
tntTenant
=
BeanDtoVoUtils
.
convert
(
dto
,
PlatTenant
.
class
);
PlatTenant
platTenant
=
getById
(
tntTenant
.
getId
());
PlatTenant
platTenant
=
getById
(
tntTenant
.
getId
());
//更新同步到iot
//更新同步到iot
iotOrgService
.
updateIotOrgInfo
(
tntTenant
.
getIotOrgId
(),
dto
.
getName
());
iotOrgService
.
updateIotOrgInfo
(
tntTenant
.
getIotOrgId
(),
dto
.
getName
());
updateById
(
tntTenant
);
updateById
(
tntTenant
);
//更新用户的tenantId
//更新用户的tenantId
if
(!
StringUtils
.
equals
(
dto
.
getPlatUserId
(),
platTenant
.
getPlatUserId
()))
{
if
(!
StringUtils
.
equals
(
dto
.
getPlatUserId
(),
platTenant
.
getPlatUserId
()))
{
platUserService
.
updatePlatUserTenantId
(
null
,
dto
.
getPlatUserId
());
platUserService
.
updatePlatUserTenantId
(
null
,
dto
.
getPlatUserId
());
}
}
platUserService
.
updatePlatUserTenantId
(
tntTenant
.
getId
(),
dto
.
getPlatUserId
());
platUserService
.
updatePlatUserTenantId
(
tntTenant
.
getId
(),
dto
.
getPlatUserId
());
PlatOrg
platOrg
=
convertToPlatOrg
(
tntTenant
);
PlatOrg
platOrg
=
convertToPlatOrg
(
tntTenant
);
//更新组织表
//更新组织表
platOrgService
.
edit
(
platOrg
);
platOrgService
.
edit
(
platOrg
);
//分配菜单 todo 慢
//分配菜单 todo 慢
assignMenuList
(
tntTenant
.
getId
(),
dto
.
getMenuIdList
());
assignMenuList
(
tntTenant
.
getId
(),
dto
.
getMenuIdList
());
}
}
public
PlatOrg
convertToPlatOrg
(
PlatTenant
platTenant
){
public
PlatOrg
convertToPlatOrg
(
PlatTenant
platTenant
)
{
PlatOrg
platOrg
=
new
PlatOrg
();
PlatOrg
platOrg
=
new
PlatOrg
();
platOrg
.
setTenantId
(
platTenant
.
getId
());
platOrg
.
setTenantId
(
platTenant
.
getId
());
platOrg
.
setName
(
platTenant
.
getName
());
platOrg
.
setName
(
platTenant
.
getName
());
...
@@ -274,12 +275,12 @@ implements PlatTenantService {
...
@@ -274,12 +275,12 @@ implements PlatTenantService {
public
PlatTenantDTOVO
view
(
String
id
)
{
public
PlatTenantDTOVO
view
(
String
id
)
{
PlatTenantDTOVO
userVO
=
BeanDtoVoUtils
.
convert
(
getById
(
id
),
PlatTenantDTOVO
.
class
);
PlatTenantDTOVO
userVO
=
BeanDtoVoUtils
.
convert
(
getById
(
id
),
PlatTenantDTOVO
.
class
);
TntUserJoinUtil
.
join
(
platUserService
,
Arrays
.
asList
(
userVO
),
PlatTenantDTOVO:
:
getPlatUserId
,(
t
,
u
)->
t
.
setPlatUserVO
(
BeanDtoVoUtils
.
convert
(
u
,
PlatUserVO
.
class
))
,
PlatUser:
:
getId
);
TntUserJoinUtil
.
join
(
platUserService
,
Arrays
.
asList
(
userVO
),
PlatTenantDTOVO:
:
getPlatUserId
,
(
t
,
u
)
->
t
.
setPlatUserVO
(
BeanDtoVoUtils
.
convert
(
u
,
PlatUserVO
.
class
)),
PlatUser:
:
getId
);
LambdaQueryWrapper
<
PlatTenantMenu
>
tenantMenuLambdaQueryWrapper
=
new
LambdaQueryWrapper
<
PlatTenantMenu
>()
LambdaQueryWrapper
<
PlatTenantMenu
>
tenantMenuLambdaQueryWrapper
=
new
LambdaQueryWrapper
<
PlatTenantMenu
>()
.
eq
(
BaseBusEntity:
:
getTenantId
,
id
);
.
eq
(
BaseBusEntity:
:
getTenantId
,
id
);
List
<
PlatTenantMenu
>
list
=
platTenantMenuService
.
list
(
tenantMenuLambdaQueryWrapper
);
List
<
PlatTenantMenu
>
list
=
platTenantMenuService
.
list
(
tenantMenuLambdaQueryWrapper
);
if
(
CollectionUtils
.
isNotEmpty
(
list
))
{
if
(
CollectionUtils
.
isNotEmpty
(
list
))
{
List
<
String
>
menuList
=
list
.
stream
().
map
(
PlatTenantMenu:
:
getMenuId
).
collect
(
Collectors
.
toList
());
List
<
String
>
menuList
=
list
.
stream
().
map
(
PlatTenantMenu:
:
getMenuId
).
collect
(
Collectors
.
toList
());
userVO
.
setMenuIdList
(
menuList
);
userVO
.
setMenuIdList
(
menuList
);
}
}
...
@@ -385,11 +386,30 @@ implements PlatTenantService {
...
@@ -385,11 +386,30 @@ implements PlatTenantService {
PlatTenant
tntTenant
=
getOne
(
PlatTenant
tntTenant
=
getOne
(
new
QueryWrapper
<
PlatTenant
>().
lambda
()
new
QueryWrapper
<
PlatTenant
>().
lambda
()
.
eq
(
PlatTenant:
:
getCode
,
dto
.
getCode
())
.
eq
(
PlatTenant:
:
getCode
,
dto
.
getCode
())
.
ne
(
StringUtils
.
isNotBlank
(
dto
.
getId
()),
PlatTenant:
:
getCode
,
dto
.
getCode
())
.
ne
(
StringUtils
.
isNotBlank
(
dto
.
getId
()),
PlatTenant:
:
getCode
,
dto
.
getCode
())
);
);
if
(
tntTenant
!=
null
&&
!
tntTenant
.
getId
().
equals
(
dto
.
getId
()))
{
if
(
tntTenant
!=
null
&&
!
tntTenant
.
getId
().
equals
(
dto
.
getId
()))
{
throw
new
BusinessException
(
CodeMessageEnum
.
SYSTEM_ERROR_TENANT_CODE_DUPLICATE
);
throw
new
BusinessException
(
CodeMessageEnum
.
SYSTEM_ERROR_TENANT_CODE_DUPLICATE
);
}
}
}
}
@Override
public
void
executeTenantList
(
Runnable
runnable
)
{
LocalDateTime
now
=
LocalDateTime
.
now
();
List
<
PlatTenant
>
tntTenantList
=
list
(
new
QueryWrapper
<
PlatTenant
>().
lambda
()
.
eq
(
PlatTenant:
:
getStatus
,
CommonEnum
.
YES
.
getValue
())
.
le
(
PlatTenant:
:
getStartTime
,
now
)
.
ge
(
PlatTenant:
:
getEndTime
,
now
)
);
tntTenantList
.
forEach
(
e
->
{
TenantIdUtil
.
execute
(
e
.
getId
(),
runnable
);
});
}
}
}
server-service/src/main/java/com/makeit/task/ReportMonthJob.java
0 → 100644
View file @
63a07788
package
com
.
makeit
.
task
;
import
com.makeit.service.platform.elder.PlatElderReportMonthService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
@Component
public
class
ReportMonthJob
{
@Autowired
private
PlatElderReportMonthService
platElderReportMonthService
;
@Scheduled
(
cron
=
"0 0 1 * * ? "
)
public
void
job
(){
platElderReportMonthService
.
reportMonthJob
();
}
}
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