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
0bdc070c
authored
Sep 19, 2023
by
杨伟程
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
老人报表更新
parent
7705fbfc
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
6 deletions
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportWeekServiceImpl.java
server-service/src/main/java/com/makeit/service/platform/elder/impl/PlatElderDayReportWeekServiceImpl.java
View file @
0bdc070c
...
@@ -9,6 +9,7 @@ import com.makeit.entity.platform.elder.PlatElderBreatheDayStat;
...
@@ -9,6 +9,7 @@ import com.makeit.entity.platform.elder.PlatElderBreatheDayStat;
import
com.makeit.entity.platform.elder.PlatElderSleep
;
import
com.makeit.entity.platform.elder.PlatElderSleep
;
import
com.makeit.entity.platform.elder.PlatElderSleepAnalysis
;
import
com.makeit.entity.platform.elder.PlatElderSleepAnalysis
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.enums.platform.alarm.PlatAlarmConfigEnum
;
import
com.makeit.enums.report.SleepTypeEnum
;
import
com.makeit.module.iot.vo.analysis.EvaluateReportVO
;
import
com.makeit.module.iot.vo.analysis.EvaluateReportVO
;
import
com.makeit.service.platform.elder.*
;
import
com.makeit.service.platform.elder.*
;
import
com.makeit.service.saas.SaasDiseaseReportService
;
import
com.makeit.service.saas.SaasDiseaseReportService
;
...
@@ -29,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -29,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.time.DayOfWeek
;
import
java.time.DayOfWeek
;
import
java.time.Duration
;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.format.DateTimeFormatter
;
import
java.time.format.DateTimeFormatter
;
...
@@ -36,6 +38,7 @@ import java.time.temporal.TemporalAdjusters;
...
@@ -36,6 +38,7 @@ import java.time.temporal.TemporalAdjusters;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
@Service
@Service
...
@@ -207,6 +210,13 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
...
@@ -207,6 +210,13 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
}
}
private
long
duration
(
DateTimeFormatter
dateTimeFormatter
,
String
start
,
String
end
)
{
//分钟
LocalDateTime
s
=
LocalDateTime
.
parse
(
start
,
dateTimeFormatter
);
LocalDateTime
e
=
LocalDateTime
.
parse
(
end
,
dateTimeFormatter
);
return
Duration
.
between
(
s
,
e
).
toMinutes
();
}
@Override
@Override
public
PlatElderSleepDiagramWeekVO
sleepDiagram
(
PlatElderReportDTO
platElderIdDTO
)
{
public
PlatElderSleepDiagramWeekVO
sleepDiagram
(
PlatElderReportDTO
platElderIdDTO
)
{
...
@@ -233,16 +243,20 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
...
@@ -233,16 +243,20 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
List
<
LocalDate
>
dateList
=
LocalDateTimeUtils
.
getDateSeries
(
weekStartDate
,
weekEndDate
);
List
<
LocalDate
>
dateList
=
LocalDateTimeUtils
.
getDateSeries
(
weekStartDate
,
weekEndDate
);
DateTimeFormatter
timeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyy-MM-dd HH:mm:ss"
);
List
<
PlatElderSleepDiagramWeekContentVO
>
sleep
=
StreamUtil
.
map
(
dateList
,
e
->
{
List
<
PlatElderSleepDiagramWeekContentVO
>
sleep
=
StreamUtil
.
map
(
dateList
,
e
->
{
PlatElderSleepDiagramWeekContentVO
vo
=
new
PlatElderSleepDiagramWeekContentVO
();
PlatElderSleepDiagramWeekContentVO
vo
=
new
PlatElderSleepDiagramWeekContentVO
();
vo
.
setDay
(
e
);
vo
.
setDay
(
e
);
// List<PlatElderSleep> list =
List
<
PlatElderSleep
>
list
=
Optional
.
ofNullable
(
sleepMap
.
get
(
1
)).
map
(
i
->
i
.
get
(
dateTimeFormatter
.
format
(
e
))).
orElse
(
new
ArrayList
<>(
10
));
//
// vo.setSleepDeepDuration();
List
<
PlatSleepRangeVO
>
sleepRecord
=
list
.
stream
().
flatMap
(
i
->
i
.
getSleepRecord
().
stream
()).
collect
(
Collectors
.
toList
());
// vo.setSleepModerateDuration();
// vo.setSleepLightnessDuration();
vo
.
setSleepDeepDuration
(
sleepRecord
.
stream
().
filter
(
i
->
SleepTypeEnum
.
SLEEP_DEEP
.
getCode
().
equals
(
i
.
getSleepType
())).
map
(
i
->
duration
(
timeFormatter
,
i
.
getStartTime
(),
i
.
getEndTime
())).
reduce
(
0L
,
Long:
:
sum
).
intValue
());
// vo.setSoberDuration();
vo
.
setSleepModerateDuration
(
sleepRecord
.
stream
().
filter
(
i
->
SleepTypeEnum
.
SLEEP_MODERATE
.
getCode
().
equals
(
i
.
getSleepType
())).
map
(
i
->
duration
(
timeFormatter
,
i
.
getStartTime
(),
i
.
getEndTime
())).
reduce
(
0L
,
Long:
:
sum
).
intValue
());
vo
.
setSleepLightnessDuration
(
sleepRecord
.
stream
().
filter
(
i
->
SleepTypeEnum
.
SLEEP_LIGHTNESS
.
getCode
().
equals
(
i
.
getSleepType
())).
map
(
i
->
duration
(
timeFormatter
,
i
.
getStartTime
(),
i
.
getEndTime
())).
reduce
(
0L
,
Long:
:
sum
).
intValue
());
vo
.
setSoberDuration
(
sleepRecord
.
stream
().
filter
(
i
->
SleepTypeEnum
.
SOBER
.
getCode
().
equals
(
i
.
getSleepType
())).
map
(
i
->
duration
(
timeFormatter
,
i
.
getStartTime
(),
i
.
getEndTime
())).
reduce
(
0L
,
Long:
:
sum
).
intValue
());
PlatElderSleepAnalysis
platElderSleepAnalysis
=
sleepAnalysisMap
.
get
(
dateTimeFormatter
.
format
(
e
));
PlatElderSleepAnalysis
platElderSleepAnalysis
=
sleepAnalysisMap
.
get
(
dateTimeFormatter
.
format
(
e
));
...
...
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