From 2c18e66c7715eccd8e952634abd788f45a258cf2 Mon Sep 17 00:00:00 2001 From: tianyongbao Date: Mon, 2 Dec 2024 13:13:44 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=81=A5=E5=BA=B7=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=EF=BC=8C=E7=BB=9F=E8=AE=A1=E5=88=86=E6=9E=90?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../health/domain/vo/HealthMarRecordVo.java | 4 +++ .../service/impl/StatisticAnalysisImpl.java | 35 ++++++++++++------- .../mapper/health/StatisticAnalysisMapper.xml | 13 ++++++- 3 files changed, 39 insertions(+), 13 deletions(-) diff --git a/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/domain/vo/HealthMarRecordVo.java b/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/domain/vo/HealthMarRecordVo.java index 8cab59e..0ab4a96 100644 --- a/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/domain/vo/HealthMarRecordVo.java +++ b/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/domain/vo/HealthMarRecordVo.java @@ -35,4 +35,8 @@ public class HealthMarRecordVo extends HealthMarRecord @ApiModelProperty(value="次数)") private Integer count; + /** 次数 */ + @ApiModelProperty(value="用药天数") + private Integer useDays; + } diff --git a/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/service/impl/StatisticAnalysisImpl.java b/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/service/impl/StatisticAnalysisImpl.java index 8d2ca82..f2fa613 100644 --- a/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/service/impl/StatisticAnalysisImpl.java +++ b/ruoyi-modules/intc-health/src/main/java/com/ruoyi/health/service/impl/StatisticAnalysisImpl.java @@ -1,10 +1,11 @@ package com.ruoyi.health.service.impl; -import com.ruoyi.common.core.utils.DateUtils; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.utils.DictUtils; import com.ruoyi.health.domain.dto.*; -import com.ruoyi.health.domain.vo.*; +import com.ruoyi.health.domain.vo.HealthMarRecordVo; +import com.ruoyi.health.domain.vo.HealthStaticAnalysisVo; +import com.ruoyi.health.domain.vo.HealthTemperatureRecordVo; import com.ruoyi.health.mapper.*; import com.ruoyi.health.service.IStatisticAnalysisService; import org.springframework.stereotype.Service; @@ -50,10 +51,10 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { //月查询 if(analysisDto.getType().equals("2")){ if(StringUtils.isEmpty(analysisDto.getStartTime())&&StringUtils.isEmpty(analysisDto.getEndTime())){ - String endTime=dateFormat.format(DateUtils.addMonths(DateUtils.getNowDate(),0)); - String startTime=dateFormat.format(DateUtils.addMonths(DateUtils.getNowDate(),-24)); - analysisDto.setStartTime(startTime); - analysisDto.setEndTime(endTime); +// String endTime=dateFormat.format(DateUtils.addMonths(DateUtils.getNowDate(),0)); +// String startTime=dateFormat.format(DateUtils.addMonths(DateUtils.getNowDate(),-24)); +// analysisDto.setStartTime(startTime); +// analysisDto.setEndTime(endTime); }else { analysisDto.setStartTime(analysisDto.getStartTime()+"-01"); if(analysisDto.getEndTime().equals(formatterMonth.format(new Date()))){ @@ -68,10 +69,10 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { //年查询 }else if(analysisDto.getType().equals("3")){ if(StringUtils.isEmpty(analysisDto.getStartTime())&&StringUtils.isEmpty(analysisDto.getEndTime())){ - String endTime=dateFormat.format(DateUtils.getNowDate()); - String startTime=dateFormat.format(DateUtils.addYears(DateUtils.getNowDate(),-5)); - analysisDto.setStartTime(startTime); - analysisDto.setEndTime(endTime); +// String endTime=dateFormat.format(DateUtils.getNowDate()); +// String startTime=dateFormat.format(DateUtils.addYears(DateUtils.getNowDate(),-5)); +// analysisDto.setStartTime(startTime); +// analysisDto.setEndTime(endTime); }else { analysisDto.setStartTime(analysisDto.getStartTime()+"-01-01"); SimpleDateFormat sdfYear = new SimpleDateFormat("yyyy"); @@ -130,10 +131,11 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { for (HealthMarRecordVo vo:marClassList ) { Map datamap = new HashMap<>(); - datamap.put("time", vo.getName()); - datamap.put("value", vo.getCount()); + datamap.put("medicalName", vo.getName()); + datamap.put("count", vo.getCount()); datamap.put("unit", vo.getUnitName()); datamap.put("dosage", vo.getDosage()); + datamap.put("useDays", vo.getUseDays()); marMapList.add(datamap); } //列表 @@ -287,6 +289,7 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { // 最大值,最小值 double maxTemp=0; double minTemp=0; + if(!temperatureRecordVoList.isEmpty()) { maxTemp = temperatureRecordVoList.stream().mapToDouble(HealthTemperatureRecordVo::getTemperature).max().getAsDouble(); minTemp = temperatureRecordVoList.stream().mapToDouble(HealthTemperatureRecordVo::getTemperature).min().getAsDouble(); @@ -332,6 +335,8 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { } } + //发烧天数 + int feverDay=0; for (String staticsTime :staticsTimeList ) { String details=""; @@ -346,6 +351,7 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { //当天体温总计 double total=0; + for (HealthTemperatureRecordVo vo:temperatureRecordVoList ) { String dayString=dateFormat.format(vo.getMeasureTime()); @@ -363,6 +369,10 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { details+="在"+second.format(vo.getMeasureTime())+"时间测量体温"+vo.getTemperature()+"℃;
"; } } + //大于37度,认为当天发烧 + if(max>37){ + feverDay++; + } average=total/measureCount; HealthStaticAnalysisVo analysisVo=new HealthStaticAnalysisVo(); analysisVo.setTime(staticsTime); @@ -373,6 +383,7 @@ public class StatisticAnalysisImpl implements IStatisticAnalysisService { analysisVo.setAverage(average); queryList.add(analysisVo); } + map.put("feverDay",feverDay); } ArrayList> temperatureList = new ArrayList<>(); diff --git a/ruoyi-modules/intc-health/src/main/resources/mapper/health/StatisticAnalysisMapper.xml b/ruoyi-modules/intc-health/src/main/resources/mapper/health/StatisticAnalysisMapper.xml index 7b9f14b..d5d0ae4 100644 --- a/ruoyi-modules/intc-health/src/main/resources/mapper/health/StatisticAnalysisMapper.xml +++ b/ruoyi-modules/intc-health/src/main/resources/mapper/health/StatisticAnalysisMapper.xml @@ -25,6 +25,7 @@ +