From 1c9f45451ec3bc4469c674be2da6577b7aa5f908 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Thu, 1 Aug 2024 09:49:28 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supervision/constant/JudgeResultEnum.java | 26 +++++++++++++++++++ .../dto/caseScore/CaseScoreDetailBuilder.java | 6 ++++- .../dto/caseScore/CaseScoreDetailDTO.java | 2 +- 3 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/supervision/constant/JudgeResultEnum.java b/src/main/java/com/supervision/constant/JudgeResultEnum.java index 6895e53..fc3a52c 100644 --- a/src/main/java/com/supervision/constant/JudgeResultEnum.java +++ b/src/main/java/com/supervision/constant/JudgeResultEnum.java @@ -6,9 +6,13 @@ import lombok.Getter; public enum JudgeResultEnum { TRUE("1","真实"), + FALSE("2","虚构"), + EXIST("3","存在"), + NOT_EXIST("4","不存在"), + UNKNOWN("5","未知"); private String code; @@ -19,4 +23,26 @@ public enum JudgeResultEnum { this.desc = desc; } + /** + * 根据code获取枚举 + * @param code 标识 + * @return + */ + public static JudgeResultEnum getInstance(String code) { + for (JudgeResultEnum judgeResultEnum : JudgeResultEnum.values()) { + if (judgeResultEnum.getCode().equals(code)) { + return judgeResultEnum; + } + } + return null; + } + + /** + * 判断是否为真 + * @return + */ + public boolean flagIsTrue() { + return this.code.equals("1") || this.code.equals("3"); + } + } diff --git a/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailBuilder.java b/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailBuilder.java index 5b1f914..f366f0f 100644 --- a/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailBuilder.java +++ b/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailBuilder.java @@ -3,6 +3,7 @@ package com.supervision.police.dto.caseScore; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.supervision.constant.JudgeResultEnum; import com.supervision.constant.ScoreEnum; import com.supervision.police.domain.*; import com.supervision.police.mapper.*; @@ -196,7 +197,10 @@ public class CaseScoreDetailBuilder { caseScoreDetailDTO.setMissAtomicIndexCount( this.indexResultList.stream().filter(indexResult -> indexResult.getActualScore() == 0) - .mapToInt(index -> CollUtil.size(index.getAtomicResults())).sum() + .flatMap(indexResult -> indexResult.getAtomicResults().stream()).filter(atomicResult -> { + JudgeResultEnum instance = JudgeResultEnum.getInstance(atomicResult.getJudgeResult()); + return instance != null && instance.flagIsTrue(); + }).count() ); return caseScoreDetailDTO; } diff --git a/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailDTO.java b/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailDTO.java index f52382a..d6e0580 100644 --- a/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailDTO.java +++ b/src/main/java/com/supervision/police/dto/caseScore/CaseScoreDetailDTO.java @@ -61,7 +61,7 @@ public class CaseScoreDetailDTO { private List specificCrimeIndexDescList; @Schema(description = "缺失的原子指标数量") - private Integer missAtomicIndexCount; + private Long missAtomicIndexCount; // 公共指标描述 private String commonIndexDesc;