|
|
@@ -2,6 +2,7 @@ package com.nb.bus.service.dto;
|
|
|
import cn.hutool.core.collection.CollectionUtil;
|
|
|
import cn.hutool.core.date.DatePattern;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
import io.swagger.annotations.ApiModel;
|
|
|
import io.swagger.annotations.ApiModelProperty;
|
|
|
import lombok.Data;
|
|
|
@@ -37,9 +38,12 @@ public class ClinicStatsReturnResult implements Serializable {
|
|
|
if(CollectionUtil.isEmpty(queryResults)){
|
|
|
return result;
|
|
|
}
|
|
|
- queryResults.forEach(queryResult -> {
|
|
|
+ String lastInfusionId="";
|
|
|
+ BigDecimal infusionLastAppendDose=BigDecimal.ZERO;
|
|
|
+ BigDecimal tmpLastAppendDose=BigDecimal.ZERO;
|
|
|
+ for (ClinicStatsQueryResult queryResult : queryResults) {
|
|
|
if(queryResult.getUploadTime()==null){
|
|
|
- return;
|
|
|
+ continue;
|
|
|
}
|
|
|
String uploadTime = DateUtil.format(queryResult.getUploadTime(), DatePattern.NORM_DATETIME_PATTERN);
|
|
|
List<BigDecimal> continueDoses = Optional.ofNullable(result.getContinueDose()).orElse(new ArrayList<>());
|
|
|
@@ -48,8 +52,18 @@ public class ClinicStatsReturnResult implements Serializable {
|
|
|
List<Integer> validCounts = Optional.ofNullable(result.getValidCount()).orElse(new ArrayList<>());
|
|
|
List<Integer> inValidCounts = Optional.ofNullable(result.getInValidCount()).orElse(new ArrayList<>());
|
|
|
List<String> uploadTimes = Optional.ofNullable(result.getUploadTimes()).orElse(new ArrayList<>());
|
|
|
+
|
|
|
+ BigDecimal appendDose = queryResult.getAppendDose()!=null?queryResult.getAppendDose():BigDecimal.ZERO;
|
|
|
+ if(!ObjectUtil.equal(lastInfusionId,queryResult.getInfusionId())){
|
|
|
+ lastInfusionId=queryResult.getInfusionId();
|
|
|
+ infusionLastAppendDose=tmpLastAppendDose;
|
|
|
+ }else {
|
|
|
+ tmpLastAppendDose=appendDose;
|
|
|
+ }
|
|
|
+ appendDose=appendDose.add(infusionLastAppendDose);
|
|
|
+
|
|
|
continueDoses.add(queryResult.getContinueDose()!=null?queryResult.getContinueDose():BigDecimal.ZERO);
|
|
|
- appendDoses.add(queryResult.getAppendDose()!=null?queryResult.getAppendDose():BigDecimal.ZERO);
|
|
|
+ appendDoses.add(appendDose);
|
|
|
inputDoses.add( queryResult.getInputDose()!=null?queryResult.getInputDose():BigDecimal.ZERO);
|
|
|
validCounts.add(queryResult.getValidCount()!=null?queryResult.getValidCount():0);
|
|
|
inValidCounts.add(queryResult.getInValidCount()!=null?queryResult.getInValidCount():0);
|
|
|
@@ -61,7 +75,7 @@ public class ClinicStatsReturnResult implements Serializable {
|
|
|
result.setValidCount(validCounts);
|
|
|
result.setInValidCount(inValidCounts);
|
|
|
result.setUploadTimes(uploadTimes);
|
|
|
- });
|
|
|
+ };
|
|
|
return result;
|
|
|
}
|
|
|
}
|