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
70a867dd
authored
Dec 07, 2023
by
huangjy
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
fix: 修复报告bug
parent
ff659ba7
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
29 additions
and
92 deletions
server-service/src/main/java/com/makeit/service/platform/device/impl/PlatDeviceServiceImpl.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/PlatElderReportMonthServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/device/impl/PlatDeviceServiceImpl.java
View file @
70a867dd
...
...
@@ -694,10 +694,13 @@ public class PlatDeviceServiceImpl extends ServiceImpl<PlatDeviceMapper, PlatDev
Set
<
String
>
newIotDeviceIdSet
=
Sets
.
newHashSet
(
iotDeviceIdSet
);
Set
<
String
>
newPlatformDeviceIdSet
=
Sets
.
newHashSet
(
platformDeviceIdList
);
if
(
CollectionUtils
.
isEmpty
(
newIotDeviceIdSet
))
{
continue
;
}
newPlatformDeviceIdSet
.
removeAll
(
newIotDeviceIdSet
);
//iotDeviceIdSet.removeAll(platformDeviceIdList);
if
(
CollectionUtils
.
isNotEmpty
(
newPlatformDeviceIdSet
))
{
log
.
info
(
"删除不存在iot的设备:{}"
,
platTenant
.
getId
());
List
<
PlatDevice
>
platDevices
=
list
(
new
QueryWrapper
<
PlatDevice
>().
lambda
().
eq
(
BaseBusEntity:
:
getTenantId
,
platTenant
.
getId
())
.
in
(
PlatDevice:
:
getOriDeviceId
,
newPlatformDeviceIdSet
));
...
...
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportDayServiceImpl.java
View file @
70a867dd
...
...
@@ -5,10 +5,7 @@ import com.makeit.dto.platform.elder.PlatElderReportDTO;
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.elder.PlatElderBreatheAnalysis
;
import
com.makeit.entity.platform.elder.PlatElderSleep
;
import
com.makeit.entity.platform.elder.PlatElderSleepAnalysis
;
import
com.makeit.entity.platform.elder.*
;
import
com.makeit.enums.CommonEnum
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.module.iot.service.IotProductDeviceService
;
...
...
@@ -62,6 +59,8 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
private
PlatElderRealTimeService
platElderRealTimeService
;
@Autowired
private
PlatElderService
platElderService
;
@Autowired
private
PlatElderCoordinateRecordService
platElderCoordinateRecordService
;
private
static
LocalDateTime
dayStartNow
(
LocalDate
now
)
{
return
LocalDateTimeUtils
.
getDayStart
(
now
);
...
...
@@ -124,9 +123,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
public
List
<
PlatElderSleepDiagramVO
>
sleepDiagram
(
PlatElderReportDTO
platElderIdDTO
)
{
LocalDate
now
=
Optional
.
ofNullable
(
platElderIdDTO
.
getNow
()).
orElse
(
LocalDate
.
now
());
LocalDateTime
start
=
dayStartNow
(
now
);
LocalDateTime
end
=
dayEndNow
(
now
);
List
<
PlatElderSleepDiagramVO
>
voList
;
String
nowString
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
).
format
(
now
);
...
...
@@ -172,9 +168,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
public
PlatElderHeartRespiratoryEvaluationVO
heartRespiratoryEvaluation
(
PlatElderReportDTO
platElderIdDTO
)
{
LocalDate
now
=
Optional
.
ofNullable
(
platElderIdDTO
.
getNow
()).
orElse
(
LocalDate
.
now
());
LocalDateTime
start
=
dayStartNow
(
now
);
LocalDateTime
end
=
dayEndNow
(
now
);
PlatElderHeartRespiratoryEvaluationVO
platElderSleepEvaluationVO
=
new
PlatElderHeartRespiratoryEvaluationVO
();
String
nowString
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd"
).
format
(
now
);
...
...
@@ -220,10 +213,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
public
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>
heartRespiratoryExceptionRecordList
(
PlatElderReportDTO
platElderIdDTO
,
String
alarmType
,
LocalDateTime
start
,
LocalDateTime
end
)
{
String
elderId
=
platElderIdDTO
.
getElderId
();
PlatDevice
device
=
platElderRealTimeService
.
getBreathDevice
(
elderId
,
platElderIdDTO
.
getDeviceId
());
if
(
device
==
null
)
{
return
new
ArrayList
<>(
10
);
}
if
(
StringUtils
.
isNotEmpty
(
platElderIdDTO
.
getDeviceId
()))
{
PlatElder
platElder
=
platElderService
.
getByDeviceId
(
platElderIdDTO
.
getDeviceId
());
if
(
platElder
!=
null
)
{
...
...
@@ -232,8 +221,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
}
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
eq
(
PlatAlarmRecord:
:
getAlarmType
,
alarmType
)
.
eq
(
PlatAlarmRecord:
:
getDeviceId
,
device
.
getId
())
.
eq
(
PlatAlarmRecord:
:
getElderIds
,
elderId
)
.
ge
(
PlatAlarmRecord:
:
getAlarmDate
,
start
)
...
...
@@ -242,7 +229,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
)
);
List
<
PlatElderHeartRespiratoryEvaluationRecordVO
>
voList
=
StreamUtil
.
map
(
recordList
,
e
->
{
return
StreamUtil
.
map
(
recordList
,
e
->
{
PlatElderHeartRespiratoryEvaluationRecordVO
vo
=
new
PlatElderHeartRespiratoryEvaluationRecordVO
();
vo
.
setTime
(
e
.
getAlarmDate
());
vo
.
setStatus
(
e
.
getRemark
());
...
...
@@ -252,8 +239,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
});
return
voList
;
}
...
...
@@ -283,7 +268,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
List
<
DeviceInfoContentBreathe
>
breatheList
=
iotProductDeviceService
.
getDeviceLogByTimeRangeBreathe
(
platDevice
.
getOriDeviceId
(),
2
*
24
*
3600
,
start
,
end
);
List
<
PlatElderRealTimeHeartRespiratoryVO
>
voList
=
StreamUtil
.
map
(
breatheList
,
e
->
{
return
StreamUtil
.
map
(
breatheList
,
e
->
{
PlatElderRealTimeHeartRespiratoryVO
vo
=
new
PlatElderRealTimeHeartRespiratoryVO
();
vo
.
setTime
(
LongTimestampUtil
.
toLocalDateTime
(
e
.
getTimestamp
()));
...
...
@@ -293,20 +278,11 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
return
vo
;
});
return
voList
;
}
@Override
public
List
<
PlatElderBehaviorExceptionRecordVO
>
behaviorExceptionRecordListInternal
(
PlatElderReportDTO
platElderIdDTO
,
LocalDateTime
start
,
LocalDateTime
end
)
{
String
elderId
=
platElderIdDTO
.
getElderId
();
List
<
PlatDevice
>
platDeviceList
=
platElderRealTimeService
.
getSpaceDevice
(
elderId
,
platElderIdDTO
.
getDeviceId
());
List
<
PlatDevice
>
fallDeviceList
=
platElderRealTimeService
.
getFallDevice
(
elderId
,
platElderIdDTO
.
getDeviceId
());
platDeviceList
.
addAll
(
fallDeviceList
);
if
(
CollectionUtils
.
isEmpty
(
platDeviceList
))
{
return
new
ArrayList
<>(
10
);
}
if
(
StringUtils
.
isNotEmpty
(
platElderIdDTO
.
getDeviceId
()))
{
PlatElder
platElder
=
platElderService
.
getByDeviceId
(
platElderIdDTO
.
getDeviceId
());
if
(
platElder
!=
null
)
{
...
...
@@ -315,16 +291,13 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
}
List
<
PlatAlarmRecord
>
recordList
=
platAlarmRecordService
.
list
(
new
QueryWrapper
<
PlatAlarmRecord
>().
lambda
()
.
eq
(
PlatAlarmRecord:
:
getAlarmType
,
PlatAlarmConfigEnum
.
AlarmTypeEnum
.
BEHAVIOR
.
getValue
())
.
in
(
PlatAlarmRecord:
:
getDeviceId
,
StreamUtil
.
mapId
(
platDeviceList
,
PlatDevice:
:
getId
))
.
eq
(
PlatAlarmRecord:
:
getElderIds
,
elderId
)
.
eq
(
PlatAlarmRecord:
:
getMisinformationFlag
,
CommonEnum
.
NO
.
getValue
())
.
ge
(
PlatAlarmRecord:
:
getAlarmDate
,
start
)
.
le
(
PlatAlarmRecord:
:
getAlarmDate
,
end
)
.
orderByDesc
(
PlatAlarmRecord:
:
getAlarmDate
)
);
List
<
PlatElderBehaviorExceptionRecordVO
>
voList
=
StreamUtil
.
map
(
recordList
,
e
->
{
return
StreamUtil
.
map
(
recordList
,
e
->
{
PlatElderBehaviorExceptionRecordVO
vo
=
new
PlatElderBehaviorExceptionRecordVO
();
vo
.
setTime
(
e
.
getAlarmDate
());
...
...
@@ -333,11 +306,8 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
vo
.
setDuration
(
MathUtil
.
stringToInteger
(
e
.
getAbnormalValue
()));
return
vo
;
});
return
voList
;
}
...
...
@@ -431,9 +401,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
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));
vo
.
setTimestamp
(
i
.
getTimestamp
());
vo
.
setDistance
(
i
.
getProperties
().
getDistance
());
vo
.
setAngle
(
i
.
getProperties
().
getAngle
());
...
...
@@ -488,13 +455,6 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
@Override
public
List
<
PlatElderBehaviorDistributionVO
>
behaviorDistributionInternal
(
PlatElderReportDTO
platElderIdDTO
,
List
<
LocalDate
>
nowList
)
{
String
elderId
=
platElderIdDTO
.
getElderId
();
List
<
PlatDevice
>
platDeviceList
=
platElderRealTimeService
.
getSpaceDevice
(
elderId
,
platElderIdDTO
.
getDeviceId
());
List
<
PlatDevice
>
fallDeviceList
=
platElderRealTimeService
.
getFallDevice
(
elderId
,
platElderIdDTO
.
getDeviceId
());
platDeviceList
.
addAll
(
fallDeviceList
);
if
(
CollectionUtils
.
isEmpty
(
platDeviceList
))
{
return
new
ArrayList
<>(
10
);
}
if
(
StringUtils
.
isNotEmpty
(
platElderIdDTO
.
getDeviceId
()))
{
PlatElder
platElder
=
platElderService
.
getByDeviceId
(
platElderIdDTO
.
getDeviceId
());
...
...
@@ -508,23 +468,20 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
List
<
PlatElderBehaviorDistributionVO
>
finalVoList
=
voList
;
String
finalElderId
=
elderId
;
platDeviceList
.
forEach
(
e
->
{
List
<
PlatDayDurationRecord
>
recordList
=
platDayDurationRecordService
.
list
(
new
QueryWrapper
<
PlatDayDurationRecord
>().
lambda
()
.
eq
(
PlatDayDurationRecord:
:
getDeviceId
,
e
.
getId
())
.
eq
(
StringUtils
.
isNotEmpty
(
finalElderId
),
PlatDayDurationRecord:
:
getElderIds
,
finalElderId
)
.
in
(
PlatDayDurationRecord:
:
getDay
,
StreamUtil
.
map
(
nowList
,
dateTimeFormatter:
:
format
))
);
List
<
PlatDayDurationRecord
>
recordList
=
platDayDurationRecordService
.
list
(
new
QueryWrapper
<
PlatDayDurationRecord
>().
lambda
()
.
eq
(
StringUtils
.
isNotEmpty
(
finalElderId
),
PlatDayDurationRecord:
:
getElderIds
,
finalElderId
)
.
in
(
PlatDayDurationRecord:
:
getDay
,
StreamUtil
.
map
(
nowList
,
dateTimeFormatter:
:
format
))
);
finalVoList
.
addAll
(
StreamUtil
.
map
(
recordList
,
i
->
{
PlatElderBehaviorDistributionVO
vo
=
new
PlatElderBehaviorDistributionVO
();
vo
.
setAreaName
(
i
.
getRegionName
());
vo
.
setDuration
(
Integer
.
valueOf
(
i
.
getDuration
()
+
""
));
finalVoList
.
addAll
(
StreamUtil
.
map
(
recordList
,
i
->
{
PlatElderBehaviorDistributionVO
vo
=
new
PlatElderBehaviorDistributionVO
();
vo
.
setAreaName
(
i
.
getRegionName
());
vo
.
setDuration
(
Integer
.
valueOf
(
i
.
getDuration
()
+
""
));
return
vo
;
return
vo
;
}));
}));
});
voList
.
forEach
(
e
->
{
if
(
StringUtils
.
isBlank
(
e
.
getAreaName
()))
{
...
...
@@ -554,11 +511,7 @@ public class PlatElderDayReportDayServiceImpl implements PlatElderDayReportDaySe
public
List
<
PlatElderBehaviorDistributionVO
>
behaviorDistribution
(
PlatElderReportDTO
platElderIdDTO
)
{
LocalDate
now
=
Optional
.
ofNullable
(
platElderIdDTO
.
getNow
()).
orElse
(
LocalDate
.
now
());
LocalDateTime
start
=
dayStartNow
(
now
);
LocalDateTime
end
=
dayEndNow
(
now
);
return
behaviorDistributionInternal
(
platElderIdDTO
,
Arrays
.
asList
(
now
));
return
behaviorDistributionInternal
(
platElderIdDTO
,
Collections
.
singletonList
(
now
));
}
}
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportWeekServiceImpl.java
View file @
70a867dd
...
...
@@ -345,13 +345,19 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
);
int
score
=
0
;
int
br
=
0
;
int
hr
=
0
;
if
(
CollectionUtils
.
isNotEmpty
(
breatheAnalyses
))
{
score
=
StreamUtil
.
reduce
(
breatheAnalyses
,
e
->
Integer
.
valueOf
(
e
.
getBreatheScore
()
+
""
),
0
,
Integer:
:
sum
)
/
breatheAnalyses
.
size
();
br
=
StreamUtil
.
reduce
(
breatheAnalyses
,
e
->
Integer
.
valueOf
(
e
.
getAvgBreatheRate
()
+
""
),
0
,
Integer:
:
sum
)
/
breatheAnalyses
.
size
();
hr
=
StreamUtil
.
reduce
(
breatheAnalyses
,
e
->
Integer
.
valueOf
(
e
.
getAvgHeartRate
()
+
""
),
0
,
Integer:
:
sum
)
/
breatheAnalyses
.
size
();
}
PlatElderHeartRespiratoryEvaluationVO
platElderHeartRespiratoryEvaluationVO
=
new
PlatElderHeartRespiratoryEvaluationVO
();
platElderHeartRespiratoryEvaluationVO
.
setScore
(
score
);
platElderHeartRespiratoryEvaluationVO
.
setHeartRate
(
hr
);
platElderHeartRespiratoryEvaluationVO
.
setRespiratoryRate
(
br
);
EvaluateReportVO
evaluateReportVO
=
saasDiseaseReportService
.
getByScore
(
platElderHeartRespiratoryEvaluationVO
.
getScore
());
if
(
evaluateReportVO
!=
null
)
{
...
...
@@ -412,12 +418,10 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
}
LambdaQueryWrapper
<
PlatElderBreatheDayStat
>
lambdaQueryWrapper
=
new
QueryWrapper
<
PlatElderBreatheDayStat
>().
lambda
();
lambdaQueryWrapper
.
ge
(
PlatElderBreatheDayStat:
:
getDay
,
weekStartDate
);
lambdaQueryWrapper
.
le
(
PlatElderBreatheDayStat:
:
getDay
,
weekEndDate
);
String
finalDeviceId
=
deviceId
;
//String finalOriDeviceId = oriDeviceId;
lambdaQueryWrapper
.
and
(
StringUtils
.
isNotBlank
(
platElderIdDTO
.
getElderId
())
||
StringUtils
.
isNotBlank
(
finalDeviceId
)
/*|| StringUtils.isNotBlank(finalOriDeviceId)*/
,
qw
->
{
if
(
StringUtils
.
isNotBlank
(
platElderIdDTO
.
getElderId
()))
{
qw
.
eq
(
PlatElderBreatheDayStat:
:
getElderId
,
platElderIdDTO
.
getElderId
());
...
...
@@ -425,9 +429,6 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
if
(
StringUtils
.
isNotBlank
(
finalDeviceId
))
{
qw
.
or
().
eq
(
PlatElderBreatheDayStat:
:
getDeviceId
,
finalDeviceId
);
}
// if (StringUtils.isNotBlank(finalOriDeviceId)) {
// qw.or().eq(PlatElderBreatheDayStat::getOriDeviceId, finalOriDeviceId);
// }
});
lambdaQueryWrapper
.
eq
(
StringUtils
.
isNotBlank
(
platElderIdDTO
.
getTenantId
()),
BaseBusEntity:
:
getTenantId
,
platElderIdDTO
.
getTenantId
());
...
...
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderReportMonthServiceImpl.java
View file @
70a867dd
...
...
@@ -5,10 +5,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import
com.makeit.dto.platform.elder.PlatElderReportDTO
;
import
com.makeit.entity.platform.elder.PlatElderReportMonth
;
import
com.makeit.mapper.platform.elder.PlatElderReportMonthMapper
;
import
com.makeit.module.iot.service.IotProductDeviceService
;
import
com.makeit.service.platform.alarm.PlatAlarmRecordService
;
import
com.makeit.service.platform.elder.*
;
import
com.makeit.service.saas.PlatTenantService
;
import
com.makeit.service.platform.elder.PlatElderDayReportWeekService
;
import
com.makeit.service.platform.elder.PlatElderReportMonthService
;
import
com.makeit.utils.data.convert.BeanDtoVoUtils
;
import
com.makeit.utils.old.StringUtils
;
import
com.makeit.utils.time.LocalDateTimeUtils
;
...
...
@@ -33,27 +31,9 @@ import java.util.List;
@Service
public
class
PlatElderReportMonthServiceImpl
extends
ServiceImpl
<
PlatElderReportMonthMapper
,
PlatElderReportMonth
>
implements
PlatElderReportMonthService
{
@Autowired
private
PlatElderRealTimeService
platElderRealTimeService
;
@Autowired
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
)
{
return
monthStartDate
(
platElderIdDTO
.
getYear
(),
platElderIdDTO
.
getMonth
());
...
...
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