Commit a1b237af by 汪志阳

fix:呼吸心率分数计算

parent e95e9b55
......@@ -102,7 +102,7 @@ public class PlatElderBreatheAnalysisServiceImpl extends ServiceImpl<PlatElderBr
LocalDateTime yesStart = LocalDateTimeUtils.getDayStart(yesDate);
LocalDateTime yesEnd = LocalDateTimeUtils.getDayEnd(yesDate);
List<PlatElder> elderList = platElderService.list(new QueryWrapper<PlatElder>().lambda()
.isNotNull(PlatElder::getBedId));
.isNotNull(PlatElder::getBedId).eq(PlatElder::getId,"1739220917604581380"));
List<PlatElderBreatheAnalysis> result = new ArrayList<>();
if (CollectionUtils.isEmpty(elderList)) {
return result;
......@@ -309,28 +309,28 @@ public class PlatElderBreatheAnalysisServiceImpl extends ServiceImpl<PlatElderBr
// 呼吸暂停
int apneaTime = Integer.parseInt(saasDiseaseModel.getApneaTime());
int apneaThreshold = Integer.parseInt(saasDiseaseModel.getApneaThreshold());
BigDecimal apneaRate = new BigDecimal(apneaTime).divide(new BigDecimal(apneaThreshold), 2, RoundingMode.HALF_UP);
BigDecimal apneaRate = new BigDecimal(apneaThreshold).divide(new BigDecimal(apneaTime), 2, RoundingMode.HALF_UP);
// 呼吸过速
int tachypneaTime = Integer.parseInt(saasDiseaseModel.getTachypneaTime());
int tachypneaThreshold = Integer.parseInt(saasDiseaseModel.getTachypneaThreshold());
BigDecimal tachypneaRate = new BigDecimal(tachypneaTime).divide(new BigDecimal(tachypneaThreshold), 2, RoundingMode.HALF_UP);
BigDecimal tachypneaRate = new BigDecimal(tachypneaThreshold).divide(new BigDecimal(tachypneaTime), 2, RoundingMode.HALF_UP);
// 呼吸过缓
int bradypneaTime = Integer.parseInt(saasDiseaseModel.getBradypneaTime());
int bradypneaThreshold = Integer.parseInt(saasDiseaseModel.getBradypneaThreshold());
BigDecimal bradypneaRate = new BigDecimal(bradypneaTime).divide(new BigDecimal(bradypneaThreshold), 2, RoundingMode.HALF_UP);
BigDecimal bradypneaRate = new BigDecimal(bradypneaThreshold).divide(new BigDecimal(bradypneaTime), 2, RoundingMode.HALF_UP);
// 心率过缓
int bradycardiaTime = Integer.parseInt(saasDiseaseModel.getBradycardiaTime());
int bradycardiaThreshold = Integer.parseInt(saasDiseaseModel.getBradycardiaThreshold());
BigDecimal bradycardiaRate = new BigDecimal(bradycardiaTime).divide(new BigDecimal(bradycardiaThreshold), 2, RoundingMode.HALF_UP);
BigDecimal bradycardiaRate = new BigDecimal(bradycardiaThreshold).divide(new BigDecimal(bradycardiaTime), 2, RoundingMode.HALF_UP);
// 心率过速
int tachycardiaTime = Integer.parseInt(saasDiseaseModel.getTachycardiaTime());
int tachycardiaComparison = Integer.parseInt(saasDiseaseModel.getTachycardiaThreshold());
BigDecimal tachycardiaRate = new BigDecimal(tachycardiaTime).divide(new BigDecimal(tachycardiaComparison), 2, RoundingMode.HALF_UP);
BigDecimal tachycardiaRate = new BigDecimal(tachycardiaComparison).divide(new BigDecimal(tachycardiaTime), 2, RoundingMode.HALF_UP);
// 呼吸疾病报告
int brStopCount = 0;
......@@ -366,11 +366,11 @@ public class PlatElderBreatheAnalysisServiceImpl extends ServiceImpl<PlatElderBr
}
// 判断是否满足配置的呼吸心率异常类型
BigDecimal dayBrStopRate = brStopCount == 0 ? BigDecimal.ZERO : new BigDecimal(timeHourRange).divide(new BigDecimal(brStopCount), 2, RoundingMode.HALF_UP);
BigDecimal dayBrSlowRate = brSlowCount == 0 ? BigDecimal.ZERO : new BigDecimal(timeHourRange).divide(new BigDecimal(brSlowCount), 2, RoundingMode.HALF_UP);
BigDecimal dayBrFastRate = brFastCount == 0 ? BigDecimal.ZERO : new BigDecimal(timeHourRange).divide(new BigDecimal(brFastCount), 2, RoundingMode.HALF_UP);
BigDecimal dayHrFastRate = hrFastCount == 0 ? BigDecimal.ZERO : new BigDecimal(timeHourRange).divide(new BigDecimal(hrFastCount), 2, RoundingMode.HALF_UP);
BigDecimal dayHrSlowRate = hrSlowCount == 0 ? BigDecimal.ZERO : new BigDecimal(timeHourRange).divide(new BigDecimal(hrSlowCount), 2, RoundingMode.HALF_UP);
BigDecimal dayBrStopRate = brStopCount == 0 ? BigDecimal.ZERO : new BigDecimal(brStopCount).divide(new BigDecimal(timeHourRange), 2, RoundingMode.HALF_UP);
BigDecimal dayBrSlowRate = brSlowCount == 0 ? BigDecimal.ZERO : new BigDecimal(brSlowCount).divide(new BigDecimal(timeHourRange), 2, RoundingMode.HALF_UP);
BigDecimal dayBrFastRate = brFastCount == 0 ? BigDecimal.ZERO : new BigDecimal(brFastCount).divide(new BigDecimal(timeHourRange), 2, RoundingMode.HALF_UP);
BigDecimal dayHrFastRate = hrFastCount == 0 ? BigDecimal.ZERO : new BigDecimal(hrFastCount).divide(new BigDecimal(timeHourRange), 2, RoundingMode.HALF_UP);
BigDecimal dayHrSlowRate = hrSlowCount == 0 ? BigDecimal.ZERO : new BigDecimal(hrSlowCount).divide(new BigDecimal(timeHourRange), 2, RoundingMode.HALF_UP);
boolean brStopFlag = false;
boolean brFastFlag = false;
......
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