From f14c2f82f0593309a3677ee38c7572e4b13a196e Mon Sep 17 00:00:00 2001 From: huangjin <huangjin@lucahealthcare.com> Date: Wed, 16 Oct 2024 14:19:35 +0800 Subject: [PATCH] =?UTF-8?q?Scale=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/luca/pilot/entity/PlanModule.java | 2 +- .../pilot/entity/ScaleQuestionEntity.java | 33 +++++++++++++++++++ .../pilot/service/impl/PlanServiceImpl.java | 13 ++++++-- 3 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 src/main/java/com/luca/pilot/entity/ScaleQuestionEntity.java diff --git a/src/main/java/com/luca/pilot/entity/PlanModule.java b/src/main/java/com/luca/pilot/entity/PlanModule.java index da06de5..90e301f 100644 --- a/src/main/java/com/luca/pilot/entity/PlanModule.java +++ b/src/main/java/com/luca/pilot/entity/PlanModule.java @@ -4,7 +4,7 @@ import lombok.Data; import org.springframework.data.mongodb.core.mapping.Document; @Data -@Document(collection="plan_module") +@Document(collection="plan_module_hj") public class PlanModule { private String key; diff --git a/src/main/java/com/luca/pilot/entity/ScaleQuestionEntity.java b/src/main/java/com/luca/pilot/entity/ScaleQuestionEntity.java new file mode 100644 index 0000000..53056b5 --- /dev/null +++ b/src/main/java/com/luca/pilot/entity/ScaleQuestionEntity.java @@ -0,0 +1,33 @@ +package com.luca.pilot.entity; + + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.math.BigDecimal; + +/** + * @author linfeng.yang + * @date 2021/8/03 涓嬪崍14:40 + */ + +@Data +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = true) +@Document(collection="scale_question") +public class ScaleQuestionEntity extends AbstractAuditingEntity { + + + private Long id; + private String code; + private String scaleCode; + private String content; + private Integer sortNumber; + private Long scaleId; + private String type; + private BigDecimal score; + private String title; + +} diff --git a/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java b/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java index 8f1ffb7..664aca3 100644 --- a/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java +++ b/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java @@ -26,6 +26,7 @@ import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import javax.annotation.Resource; +import java.math.BigDecimal; import java.time.*; import java.time.format.DateTimeFormatter; import java.util.*; @@ -561,12 +562,20 @@ public class PlanServiceImpl implements PlanService { Map<String,Object> resultMap = new HashMap<>(); if (Objects.nonNull(item.getScaleResult())) { // sb.add("result:" + item.getScaleResult()); - resultMap.put("result",item.getScaleResult()); + resultMap.put("evaluation",item.getScaleResult()); } if (Objects.nonNull(item.getTotalScore())) { // sb.add("totalScore:" + item.getTotalScore()); - resultMap.put("totalScore",item.getTotalScore()); + resultMap.put("score",item.getTotalScore()); } + + if(!StringUtils.isEmpty(item.getScaleCode())) { + List<ScaleQuestionEntity> questions = mongoTemplate.find(new Query().addCriteria(where("scale_code").is(item.getScaleCode())), ScaleQuestionEntity.class); + BigDecimal totalScore = questions.stream().map(ScaleQuestionEntity::getScore).reduce(BigDecimal.ZERO, BigDecimal::add); + resultMap.put("totalScore", totalScore); + } + + if (!MapUtil.isEmpty(resultMap)) { result.put(item.getScaleCode(), resultMap); } -- GitLab