Commit 91fcb0d7 by 杨伟程

老人报表更新

parent 39dacefc
...@@ -38,20 +38,20 @@ public class PlatElderReportMonthController { ...@@ -38,20 +38,20 @@ public class PlatElderReportMonthController {
@ApiOperation("综合评价") @ApiOperation("综合评价")
@PostMapping("comprehensiveEvaluation") @PostMapping("comprehensiveEvaluation")
public ApiResponseEntity<PlatElderComprehensiveEvaluationVO> comprehensiveEvaluation(@RequestBody PlatElderReportDTO platElderIdDTO) { public ApiResponseEntity<PlatElderComprehensiveEvaluationVO> comprehensiveEvaluation(@RequestBody PlatElderReportDTO platElderIdDTO) {
return null; return ApiResponseUtils.success(platElderReportMonthService.comprehensiveEvaluation(platElderIdDTO));
} }
@ApiOperation("睡眠评价") @ApiOperation("睡眠评价")
@PostMapping("sleepEvaluation") @PostMapping("sleepEvaluation")
public ApiResponseEntity<PlatElderSleepEvaluationVO> sleepEvaluation(@RequestBody PlatElderReportDTO platElderIdDTO) { public ApiResponseEntity<PlatElderSleepEvaluationVO> sleepEvaluation(@RequestBody PlatElderReportDTO platElderIdDTO) {
return null; return ApiResponseUtils.success(platElderReportMonthService.sleepEvaluation(platElderIdDTO));
} }
@ApiOperation("心率呼吸评价") @ApiOperation("心率呼吸评价")
@PostMapping("heartRespiratoryEvaluation") @PostMapping("heartRespiratoryEvaluation")
public ApiResponseEntity<PlatElderHeartRespiratoryEvaluationVO> heartRespiratoryEvaluation(@RequestBody PlatElderReportDTO platElderIdDTO) { public ApiResponseEntity<PlatElderHeartRespiratoryEvaluationVO> heartRespiratoryEvaluation(@RequestBody PlatElderReportDTO platElderIdDTO) {
return null; return ApiResponseUtils.success(platElderReportMonthService.heartRespiratoryEvaluation(platElderIdDTO));
} }
@ApiOperation("月报表") @ApiOperation("月报表")
......
...@@ -8,6 +8,7 @@ import com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluation ...@@ -8,6 +8,7 @@ import com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluation
import com.makeit.vo.platform.elder.report.week.PlatElderRealTimeHeartRespiratoryWeekVO; import com.makeit.vo.platform.elder.report.week.PlatElderRealTimeHeartRespiratoryWeekVO;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import java.time.LocalDate;
import java.util.List; import java.util.List;
/** /**
...@@ -20,10 +21,16 @@ import java.util.List; ...@@ -20,10 +21,16 @@ import java.util.List;
*/ */
public interface PlatElderDayReportWeekService { public interface PlatElderDayReportWeekService {
PlatElderComprehensiveEvaluationVO comprehensiveEvaluationInternal(PlatElderSleepEvaluationVO platElderSleepEvaluationVO, PlatElderHeartRespiratoryEvaluationVO platElderHeartRespiratoryEvaluationVO);
PlatElderComprehensiveEvaluationVO comprehensiveEvaluation(PlatElderReportDTO platElderIdDTO); PlatElderComprehensiveEvaluationVO comprehensiveEvaluation(PlatElderReportDTO platElderIdDTO);
PlatElderSleepEvaluationVO sleepEvaluationInternal(PlatElderReportDTO platElderIdDTO, LocalDate weekStartDate, LocalDate weekEndDate);
PlatElderSleepEvaluationVO sleepEvaluation(PlatElderReportDTO platElderIdDTO); PlatElderSleepEvaluationVO sleepEvaluation(PlatElderReportDTO platElderIdDTO);
PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluationInternal(PlatElderReportDTO platElderIdDTO, LocalDate weekStartDate, LocalDate weekEndDate);
PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluation(PlatElderReportDTO platElderIdDTO); PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluation(PlatElderReportDTO platElderIdDTO);
List<PlatElderHeartRespiratoryEvaluationRecordVO> heartExceptionRecordList(PlatElderReportDTO platElderIdDTO); List<PlatElderHeartRespiratoryEvaluationRecordVO> heartExceptionRecordList(PlatElderReportDTO platElderIdDTO);
......
...@@ -3,7 +3,10 @@ package com.makeit.service.platform.elder; ...@@ -3,7 +3,10 @@ package com.makeit.service.platform.elder;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.makeit.dto.platform.elder.PlatElderReportDTO; import com.makeit.dto.platform.elder.PlatElderReportDTO;
import com.makeit.entity.platform.elder.PlatElderReportMonth; import com.makeit.entity.platform.elder.PlatElderReportMonth;
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;
import com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO;
import com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO;
import java.util.List; import java.util.List;
...@@ -17,6 +20,12 @@ import java.util.List; ...@@ -17,6 +20,12 @@ import java.util.List;
*/ */
public interface PlatElderReportMonthService extends IService<PlatElderReportMonth> { public interface PlatElderReportMonthService extends IService<PlatElderReportMonth> {
PlatElderComprehensiveEvaluationVO comprehensiveEvaluation(PlatElderReportDTO platElderIdDTO);
PlatElderSleepEvaluationVO sleepEvaluation(PlatElderReportDTO platElderIdDTO);
PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluation(PlatElderReportDTO platElderIdDTO);
List<PlatElderReportMonthVO> reportMonth(PlatElderReportDTO platElderIdDTO); List<PlatElderReportMonthVO> reportMonth(PlatElderReportDTO platElderIdDTO);
......
...@@ -62,7 +62,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -62,7 +62,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
private PlatElderBreatheDayStatService platElderBreatheDayStatService; private PlatElderBreatheDayStatService platElderBreatheDayStatService;
private LocalDateTime weekStartDateTime(LocalDateTime defaultTime) { private LocalDateTime weekStartDateTime(LocalDateTime defaultTime) {
return weekStartDateTime(LocalDate.now(), defaultTime); return weekStartDateTime(LocalDate.now().minusDays(1), defaultTime);
} }
private LocalDateTime weekStartDateTime(LocalDate now, LocalDateTime defaultTime) { private LocalDateTime weekStartDateTime(LocalDate now, LocalDateTime defaultTime) {
...@@ -79,7 +79,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -79,7 +79,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
} }
private LocalDateTime weekEndDateTime(LocalDateTime defaultTime) { private LocalDateTime weekEndDateTime(LocalDateTime defaultTime) {
return weekStartDateTime(LocalDate.now(), defaultTime); return weekStartDateTime(LocalDate.now().minusDays(1), defaultTime);
} }
private LocalDateTime weekEndDateTime(LocalDate now, LocalDateTime defaultTime) { private LocalDateTime weekEndDateTime(LocalDate now, LocalDateTime defaultTime) {
...@@ -97,7 +97,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -97,7 +97,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
private LocalDate weekStartDate(LocalDateTime defaultTime) { private LocalDate weekStartDate(LocalDateTime defaultTime) {
return weekStartDate(LocalDate.now(), defaultTime); return weekStartDate(LocalDate.now().minusDays(1), defaultTime);
} }
private LocalDate weekStartDate(LocalDate now, LocalDateTime defaultTime) { private LocalDate weekStartDate(LocalDate now, LocalDateTime defaultTime) {
...@@ -112,7 +112,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -112,7 +112,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
} }
private LocalDate weekEndDate(LocalDateTime defaultTime) { private LocalDate weekEndDate(LocalDateTime defaultTime) {
return weekStartDate(LocalDate.now(), defaultTime); return weekStartDate(LocalDate.now().minusDays(1), defaultTime);
} }
private LocalDate weekEndDate(LocalDate now, LocalDateTime defaultTime) { private LocalDate weekEndDate(LocalDate now, LocalDateTime defaultTime) {
...@@ -127,10 +127,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -127,10 +127,7 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
} }
@Override @Override
public PlatElderComprehensiveEvaluationVO comprehensiveEvaluation(PlatElderReportDTO platElderIdDTO) { public PlatElderComprehensiveEvaluationVO comprehensiveEvaluationInternal(PlatElderSleepEvaluationVO platElderSleepEvaluationVO, PlatElderHeartRespiratoryEvaluationVO platElderHeartRespiratoryEvaluationVO) {
PlatElderSleepEvaluationVO platElderSleepEvaluationVO = sleepEvaluation(platElderIdDTO);
PlatElderHeartRespiratoryEvaluationVO platElderHeartRespiratoryEvaluationVO = heartRespiratoryEvaluation(platElderIdDTO);
PlatElderComprehensiveEvaluationVO platElderComprehensiveEvaluationVO = new PlatElderComprehensiveEvaluationVO(); PlatElderComprehensiveEvaluationVO platElderComprehensiveEvaluationVO = new PlatElderComprehensiveEvaluationVO();
platElderComprehensiveEvaluationVO.setScore((platElderSleepEvaluationVO.getScore() + platElderHeartRespiratoryEvaluationVO.getScore()) / 2); platElderComprehensiveEvaluationVO.setScore((platElderSleepEvaluationVO.getScore() + platElderHeartRespiratoryEvaluationVO.getScore()) / 2);
...@@ -145,14 +142,22 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -145,14 +142,22 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
} }
@Override @Override
public PlatElderSleepEvaluationVO sleepEvaluation(PlatElderReportDTO platElderIdDTO) { public PlatElderComprehensiveEvaluationVO comprehensiveEvaluation(PlatElderReportDTO platElderIdDTO) {
LocalDate weekStartDate = weekStartDate(platElderIdDTO.getStartTime()); PlatElderSleepEvaluationVO platElderSleepEvaluationVO = sleepEvaluation(platElderIdDTO);
LocalDate weekEndDate = weekStartDate(platElderIdDTO.getEndTime()); PlatElderHeartRespiratoryEvaluationVO platElderHeartRespiratoryEvaluationVO = heartRespiratoryEvaluation(platElderIdDTO);
return comprehensiveEvaluationInternal(platElderSleepEvaluationVO, platElderHeartRespiratoryEvaluationVO);
}
@Override
public PlatElderSleepEvaluationVO sleepEvaluationInternal(PlatElderReportDTO platElderIdDTO, LocalDate weekStartDate, LocalDate weekEndDate) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
List<PlatElderSleepAnalysis> sleepAnalysisList = platElderSleepAnalysisService.list(new QueryWrapper<PlatElderSleepAnalysis>().lambda() List<PlatElderSleepAnalysis> sleepAnalysisList = platElderSleepAnalysisService.list(new QueryWrapper<PlatElderSleepAnalysis>().lambda()
.eq(PlatElderSleepAnalysis::getElderId, platElderIdDTO.getElderId())
.ge(PlatElderSleepAnalysis::getHappenDate, dateTimeFormatter.format(weekStartDate)) .ge(PlatElderSleepAnalysis::getHappenDate, dateTimeFormatter.format(weekStartDate))
.le(PlatElderSleepAnalysis::getHappenDate, dateTimeFormatter.format(weekEndDate)) .le(PlatElderSleepAnalysis::getHappenDate, dateTimeFormatter.format(weekEndDate))
); );
...@@ -184,12 +189,20 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -184,12 +189,20 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
} }
@Override @Override
public PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluation(PlatElderReportDTO platElderIdDTO) { public PlatElderSleepEvaluationVO sleepEvaluation(PlatElderReportDTO platElderIdDTO) {
LocalDate weekStartDate = weekStartDate(platElderIdDTO.getStartTime()); LocalDate weekStartDate = weekStartDate(platElderIdDTO.getStartTime());
LocalDate weekEndDate = weekStartDate(platElderIdDTO.getEndTime()); LocalDate weekEndDate = weekStartDate(platElderIdDTO.getEndTime());
return sleepEvaluationInternal(platElderIdDTO, weekStartDate, weekEndDate);
}
@Override
public PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluationInternal(PlatElderReportDTO platElderIdDTO, LocalDate weekStartDate, LocalDate weekEndDate) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
List<PlatElderBreatheAnalysis> breatheAnalyses = platElderBreatheAnalysisService.list(new QueryWrapper<PlatElderBreatheAnalysis>().lambda() List<PlatElderBreatheAnalysis> breatheAnalyses = platElderBreatheAnalysisService.list(new QueryWrapper<PlatElderBreatheAnalysis>().lambda()
...@@ -216,6 +229,17 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek ...@@ -216,6 +229,17 @@ public class PlatElderDayReportWeekServiceImpl implements PlatElderDayReportWeek
} }
@Override
public PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluation(PlatElderReportDTO platElderIdDTO) {
LocalDate weekStartDate = weekStartDate(platElderIdDTO.getStartTime());
LocalDate weekEndDate = weekStartDate(platElderIdDTO.getEndTime());
return heartRespiratoryEvaluationInternal(platElderIdDTO, weekStartDate, weekEndDate);
}
@Override @Override
public List<PlatElderHeartRespiratoryEvaluationRecordVO> heartExceptionRecordList(PlatElderReportDTO platElderIdDTO) { public List<PlatElderHeartRespiratoryEvaluationRecordVO> heartExceptionRecordList(PlatElderReportDTO platElderIdDTO) {
......
...@@ -5,10 +5,15 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; ...@@ -5,10 +5,15 @@ 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.elder.PlatElderReportMonth; import com.makeit.entity.platform.elder.PlatElderReportMonth;
import com.makeit.mapper.platform.elder.PlatElderReportMonthMapper; import com.makeit.mapper.platform.elder.PlatElderReportMonthMapper;
import com.makeit.service.platform.elder.PlatElderDayReportWeekService;
import com.makeit.service.platform.elder.PlatElderReportMonthService; import com.makeit.service.platform.elder.PlatElderReportMonthService;
import com.makeit.utils.data.convert.BeanDtoVoUtils; import com.makeit.utils.data.convert.BeanDtoVoUtils;
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.PlatElderReportMonthVO; import com.makeit.vo.platform.elder.report.day.PlatElderReportMonthVO;
import com.makeit.vo.platform.elder.report.day.PlatElderSleepEvaluationVO;
import com.makeit.vo.platform.elder.report.week.PlatElderComprehensiveEvaluationVO;
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;
...@@ -25,6 +30,57 @@ import java.util.List; ...@@ -25,6 +30,57 @@ 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 PlatElderDayReportWeekService platElderDayReportWeekService;
public LocalDate monthStartDate(PlatElderReportDTO platElderIdDTO) {
return monthStartDate(platElderIdDTO.getYear(), platElderIdDTO.getMonth());
}
public LocalDate monthStartDate(Integer year, Integer month) {
if (year != null && month == null) {
throw new RuntimeException();
}
if (year == null && month != null) {
throw new RuntimeException();
}
if (year != null) {
return LocalDate.of(year, month, 1);
}
return LocalDateTimeUtils.getMonthMin(LocalDate.now().minusMonths(1));
}
public LocalDate monthEndDate(PlatElderReportDTO platElderIdDTO) {
return monthEndDate(platElderIdDTO.getYear(), platElderIdDTO.getMonth());
}
public LocalDate monthEndDate(Integer year, Integer month) {
return LocalDateTimeUtils.getMonthMax(monthStartDate(year, month));
}
@Override
public PlatElderComprehensiveEvaluationVO comprehensiveEvaluation(PlatElderReportDTO platElderIdDTO) {
PlatElderSleepEvaluationVO platElderSleepEvaluationVO = sleepEvaluation(platElderIdDTO);
PlatElderHeartRespiratoryEvaluationVO platElderHeartRespiratoryEvaluationVO = heartRespiratoryEvaluation(platElderIdDTO);
return platElderDayReportWeekService.comprehensiveEvaluationInternal(platElderSleepEvaluationVO, platElderHeartRespiratoryEvaluationVO);
}
@Override
public PlatElderSleepEvaluationVO sleepEvaluation(PlatElderReportDTO platElderIdDTO) {
return platElderDayReportWeekService.sleepEvaluationInternal(platElderIdDTO, monthStartDate(platElderIdDTO), monthEndDate(platElderIdDTO));
}
@Override
public PlatElderHeartRespiratoryEvaluationVO heartRespiratoryEvaluation(PlatElderReportDTO platElderIdDTO) {
return platElderDayReportWeekService.heartRespiratoryEvaluationInternal(platElderIdDTO, monthStartDate(platElderIdDTO), monthEndDate(platElderIdDTO));
}
@Override @Override
public List<PlatElderReportMonthVO> reportMonth(PlatElderReportDTO platElderIdDTO) { public List<PlatElderReportMonthVO> reportMonth(PlatElderReportDTO platElderIdDTO) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment