From 06f3c4f42d0e5e6c97038a2ed759065519052014 Mon Sep 17 00:00:00 2001
From: "DESKTOP-DDTUS3E\\yaxin" <daixiaoyi0622@gmail.com>
Date: Wed, 23 Oct 2024 11:23:10 +0800
Subject: [PATCH] =?UTF-8?q?EvidenceCategory=E5=88=A0=E9=99=A4promptId?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../police/domain/EvidenceCategory.java       |  12 +-
 .../police/dto/EvidenceProcessDTO.java        |  33 +--
 .../service/impl/CaseEvidenceServiceImpl.java | 202 +++++++++---------
 3 files changed, 124 insertions(+), 123 deletions(-)

diff --git a/src/main/java/com/supervision/police/domain/EvidenceCategory.java b/src/main/java/com/supervision/police/domain/EvidenceCategory.java
index b070dee..6ac6321 100644
--- a/src/main/java/com/supervision/police/domain/EvidenceCategory.java
+++ b/src/main/java/com/supervision/police/domain/EvidenceCategory.java
@@ -1,16 +1,20 @@
 package com.supervision.police.domain;
 
-import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
 
 import java.io.Serializable;
 import java.time.LocalDateTime;
-import lombok.Data;
 
 /**
  * 证据类别表
+ *
  * @TableName evidence_category
  */
-@TableName(value ="evidence_category")
+@TableName(value = "evidence_category")
 @Data
 public class EvidenceCategory implements Serializable {
     /**
@@ -19,8 +23,6 @@ public class EvidenceCategory implements Serializable {
     @TableId
     private String id;
 
-    private String promptId;
-
     /**
      * 编码
      */
diff --git a/src/main/java/com/supervision/police/dto/EvidenceProcessDTO.java b/src/main/java/com/supervision/police/dto/EvidenceProcessDTO.java
index 0f04784..06c7d5a 100644
--- a/src/main/java/com/supervision/police/dto/EvidenceProcessDTO.java
+++ b/src/main/java/com/supervision/police/dto/EvidenceProcessDTO.java
@@ -5,6 +5,7 @@ import cn.hutool.core.io.unit.DataSizeUtil;
 import cn.hutool.core.util.StrUtil;
 import com.supervision.common.constant.EvidenceConstants;
 import com.supervision.police.domain.EvidenceCategory;
+import com.supervision.police.domain.NotePrompt;
 import lombok.Data;
 
 import java.util.List;
@@ -77,50 +78,50 @@ public class EvidenceProcessDTO {
         this.evidenceId = caseEvidence.getId();
         this.evidenceName = caseEvidence.getEvidenceName();
         this.directoryId = caseEvidence.getDirectoryId();
-        if (CollUtil.isNotEmpty(caseEvidence.getFileList())){
+        if (CollUtil.isNotEmpty(caseEvidence.getFileList())) {
             this.attachmentName = caseEvidence.getFileList()
                     .stream().map(EvidenceFileDTO::getFileName).collect(Collectors.joining(","));
             Integer sum = caseEvidence.getFileList().stream().map(EvidenceFileDTO::getFileSize).reduce(0, Integer::sum);
             this.attachmentSize = DataSizeUtil.format(sum);
         }
         this.evidenceType = caseEvidence.getEvidenceType();
-        if (StrUtil.isNotEmpty(caseEvidence.getProcessStatus())){
+        if (StrUtil.isNotEmpty(caseEvidence.getProcessStatus())) {
             this.status = EvidenceConstants.PROCESS_STATUS_MAPPING.get(caseEvidence.getProcessStatus());
         }
     }
 
 
-    public void setTemplateInfo(List<EvidenceDirectoryDTO> directoryList,List<EvidenceCategory> categoryList){
+    public void setTemplateInfo(List<EvidenceDirectoryDTO> directoryList, List<EvidenceCategory> categoryList, List<NotePrompt> notePrompts) {
 
-        if (CollUtil.isEmpty(directoryList)){
+        if (CollUtil.isEmpty(directoryList)) {
             return;
         }
 
         EvidenceDirectoryDTO directory = null;
         for (EvidenceDirectoryDTO directoryDTO : directoryList) {
             directory = directoryDTO.findDirectory(this.directoryId);
-            if (null != directory){
+            if (null != directory) {
                 break;
             }
         }
-        if (null == directory){
+        if (null == directory) {
             return;
         }
 
         Map<String, EvidenceCategory> categoryMap = categoryList.stream().collect(Collectors.toMap(EvidenceCategory::getId, v -> v));
-
         EvidenceCategory category = categoryMap.get(directory.getCategoryId());
-        if (null != category){
-            this.templateId = category.getPromptId();
+        NotePrompt notePrompt = notePrompts.stream().filter(v -> v.getEvidenceCategoryId().equals(category.getId())).findFirst().orElse(null);
+        if (null != category && notePrompt != null) {
+            this.templateId = notePrompt.getId();
             this.templateName = category.getCategoryName();
-            if (directory.getLevel()== 2){
+            if (directory.getLevel() == 2) {
                 this.evidenceTypeName = category.getCategoryName();
             }
-            if (directory.getLevel() == 3){
+            if (directory.getLevel() == 3) {
                 String parentId = category.getParentId();
-                if (StrUtil.isNotEmpty(parentId)){
+                if (StrUtil.isNotEmpty(parentId)) {
                     EvidenceCategory parentCategory = categoryMap.get(parentId);
-                    if (null != parentCategory){
+                    if (null != parentCategory) {
                         this.evidenceTypeName = StrUtil.join(" / ", parentCategory.getCategoryName(), category.getCategoryName());
                     }
                 }
@@ -129,11 +130,11 @@ public class EvidenceProcessDTO {
 
     }
 
-    public void setEvidenceTypeName(List<EvidenceCategory> categoryList){
-        if (StrUtil.isNotEmpty(this.evidenceType)){
+    public void setEvidenceTypeName(List<EvidenceCategory> categoryList) {
+        if (StrUtil.isNotEmpty(this.evidenceType)) {
             Map<String, EvidenceCategory> categoryMap = categoryList.stream().collect(Collectors.toMap(EvidenceCategory::getId, v -> v));
             EvidenceCategory category = categoryMap.get(this.evidenceType);
-            if (null != category){
+            if (null != category) {
                 this.evidenceTypeName = category.getCategoryName();
             }
         }
diff --git a/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java b/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java
index 444b06f..f20f6c7 100644
--- a/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java
+++ b/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java
@@ -4,20 +4,18 @@ import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.lang.Assert;
 import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.supervision.common.constant.EvidenceConstants;
 import com.supervision.minio.domain.MinioFile;
 import com.supervision.minio.service.MinioService;
-import com.supervision.police.dto.*;
-import com.supervision.police.service.*;
-import com.supervision.police.domain.CaseEvidence;
-import com.supervision.police.domain.ComDictionary;
-import com.supervision.police.domain.EvidenceFile;
-import com.supervision.common.constant.EvidenceConstants;
 import com.supervision.police.domain.*;
+import com.supervision.police.dto.*;
 import com.supervision.police.mapper.CaseEvidenceMapper;
+import com.supervision.police.service.*;
 import com.supervision.police.vo.EvidenceDirectoryReqVO;
 import com.supervision.police.vo.VerifyEvidenceReqVO;
 import lombok.RequiredArgsConstructor;
@@ -28,8 +26,6 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.List;
-import java.util.Map;
 import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -150,7 +146,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     @Transactional(transactionManager = "dataSourceTransactionManager", rollbackFor = Exception.class)
     public List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId, String batchNo) {
         List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS = queryEvidenceList(caseId);
-        if (StrUtil.isNotEmpty(batchNo)){
+        if (StrUtil.isNotEmpty(batchNo)) {
             for (CaseEvidenceDetailDTO evidenceDetail : caseEvidenceDetailDTOS) {
                 List<EvidenceFileDTO> filter = evidenceDetail.getFileList().stream().filter(file -> StrUtil.equals(file.getBatchNo(), batchNo)).toList();
                 evidenceDetail.setFileList(filter);
@@ -161,32 +157,32 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
     @Override
     @Transactional(transactionManager = "dataSourceTransactionManager", rollbackFor = Exception.class)
-    public IPage<CaseEvidenceDetailDTO> pageListEvidence(String caseId, String directoryId,String evidenceName, Integer pageNum, Integer pageSize) {
+    public IPage<CaseEvidenceDetailDTO> pageListEvidence(String caseId, String directoryId, String evidenceName, Integer pageNum, Integer pageSize) {
 
         Assert.notEmpty(caseId, "案件id不能为空");
 
         List<String> directoryIds = new ArrayList<>();
-        if (StrUtil.isNotEmpty(directoryId)){
+        if (StrUtil.isNotEmpty(directoryId)) {
             List<EvidenceDirectoryDTO> evidenceDirectoryDTOS = listDirectoryTree(caseId);
             EvidenceDirectoryDTO directory = evidenceDirectoryService.findDirectoryById(directoryId, evidenceDirectoryDTOS);
-            if (null != directory){
-                if (directory.getLevel() == 1 || directory.getLevel() == 2){
+            if (null != directory) {
+                if (directory.getLevel() == 1 || directory.getLevel() == 2) {
                     directoryIds.addAll(directory.listAllFileId());
                 }
             }
         }
         IPage<CaseEvidence> caseEvidencePage = new Page<>(pageNum, pageSize);
-        if (StrUtil.isEmpty(directoryId) || CollUtil.isNotEmpty(directoryIds)){
+        if (StrUtil.isEmpty(directoryId) || CollUtil.isNotEmpty(directoryIds)) {
             // 全部 或者一级目录 或者 二级目录查询证据
             caseEvidencePage = super.lambdaQuery().eq(CaseEvidence::getCaseId, caseId)
                     .in(CollUtil.isNotEmpty(directoryIds), CaseEvidence::getDirectoryId, directoryIds)
                     .like(StrUtil.isNotEmpty(evidenceName), CaseEvidence::getEvidenceName, evidenceName)
                     .orderBy(true, false, CaseEvidence::getUpdateTime)
                     .page(new Page<>(pageNum, pageSize));
-        }else {
+        } else {
             // 三级目录查询证据文件
             List<CaseEvidence> list = this.lambdaQuery().eq(CaseEvidence::getDirectoryId, directoryId).list();
-            if (CollUtil.isNotEmpty(list)){
+            if (CollUtil.isNotEmpty(list)) {
                 Page<EvidenceFileDTO> page = evidenceFileService.pageListFileInfo(
                         list.stream().map(CaseEvidence::getId).toList(), Page.of(pageNum, pageSize));
                 caseEvidencePage = page.convert(file -> {
@@ -270,9 +266,9 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
             // 遍历OCR结果拼接ocrText并赋值给lLMExtractDto的text
             StringBuilder ocrText = new StringBuilder();
             fileOcrProcesses.forEach(fileOcrProcess -> {
-                if (StrUtil.isNotEmpty(fileOcrProcess.getReviseText())){
+                if (StrUtil.isNotEmpty(fileOcrProcess.getReviseText())) {
                     ocrText.append(fileOcrProcess.getReviseText());
-                }else {
+                } else {
                     ocrText.append(fileOcrProcess.getOcrText());
                 }
             });
@@ -286,8 +282,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
             updateById(caseEvidence);
             // 根据证据目录id查询提示词
             EvidenceDirectory directory = evidenceDirectoryService.getById(caseEvidence.getDirectoryId());
-            EvidenceCategory category = evidenceCategoryService.getById(directory.getCategoryId());
-            NotePrompt notePrompt = notePromptService.getById(category.getPromptId());
+            NotePrompt notePrompt = notePromptService.getOne(new QueryWrapper<NotePrompt>().eq("evidence_category_id", directory.getCategoryId()));
             if (notePrompt != null) {
                 log.info("属性提取开始。");
                 long attrStart = System.currentTimeMillis();
@@ -318,42 +313,42 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     @Override
     public List<EvidenceCategoryDTO> listCategoryTree(String caseType) {
 
-        Assert.notEmpty(caseType,"案件类型不能为空!");
+        Assert.notEmpty(caseType, "案件类型不能为空!");
         return evidenceCategoryService.listCategoryTree(caseType);
     }
 
     @Override
     public List<EvidenceDirectoryDTO> listFileTree(String caseId) {
 
-        return listFileTree(caseId,null);
+        return listFileTree(caseId, null);
     }
 
     @Override
     public List<EvidenceDirectoryDTO> listFileTree(String caseId, String batchNo) {
-        Assert.notEmpty(caseId,"案件ID不能为空!");
+        Assert.notEmpty(caseId, "案件ID不能为空!");
         List<EvidenceDirectoryDTO> evidenceDirectoryDTOS = evidenceDirectoryService.listDirectoryTree(caseId);
 
 
-        evidenceDirectoryService.appendFile(evidenceDirectoryDTOS, evidenceFileService.queryFileInfoList(caseId,batchNo));
+        evidenceDirectoryService.appendFile(evidenceDirectoryDTOS, evidenceFileService.queryFileInfoList(caseId, batchNo));
 
         return evidenceDirectoryDTOS;
     }
 
     @Override
     public List<EvidenceDirectoryDTO> listFileTree(String caseId, String batchNo, String evidenceId, String directoryId) {
-        Assert.notEmpty(caseId,"案件ID不能为空!");
+        Assert.notEmpty(caseId, "案件ID不能为空!");
         List<EvidenceDirectoryDTO> evidenceDirectoryDTOS = evidenceDirectoryService.listDirectoryTree(caseId);
 
 
         evidenceDirectoryService.appendFile(evidenceDirectoryDTOS,
-                evidenceFileService.queryFileInfoList(caseId,batchNo, evidenceId, directoryId));
+                evidenceFileService.queryFileInfoList(caseId, batchNo, evidenceId, directoryId));
 
         return evidenceDirectoryDTOS;
     }
 
     @Override
     public List<EvidenceDirectoryDTO> listDirectoryTree(String caseId) {
-        Assert.notEmpty(caseId,"案件ID不能为空!");
+        Assert.notEmpty(caseId, "案件ID不能为空!");
 
         return evidenceDirectoryService.listDirectoryTree(caseId);
     }
@@ -369,9 +364,9 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     @Override
     public Boolean updateDirectory(EvidenceDirectory evidenceDirectory) {
 
-        Assert.notEmpty(evidenceDirectory.getId(),"目录ID不能为空!");
+        Assert.notEmpty(evidenceDirectory.getId(), "目录ID不能为空!");
 
-        Assert.notEmpty(evidenceDirectory.getParentId(),"父级目录id不能为空");
+        Assert.notEmpty(evidenceDirectory.getParentId(), "父级目录id不能为空");
 
         return evidenceDirectoryService.lambdaUpdate()
                 .set(EvidenceDirectory::getParentId, evidenceDirectory.getParentId())
@@ -408,13 +403,13 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     @Transactional(transactionManager = "dataSourceTransactionManager", rollbackFor = Exception.class)
     public Boolean removeDirectory(List<String> directoryIdList) {
 
-        if (CollUtil.isEmpty(directoryIdList)){
+        if (CollUtil.isEmpty(directoryIdList)) {
             return false;
         }
 
         boolean success = evidenceDirectoryService.removeBatchByIds(directoryIdList);
 
-        if (success){
+        if (success) {
             // 删除目录,意味着证据也要被删除
             super.lambdaUpdate().eq(CaseEvidence::getDirectoryId, directoryIdList).remove();
             evidenceFileService.lambdaUpdate().in(EvidenceFile::getDirectoryId, directoryIdList).remove();
@@ -426,6 +421,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
      * 提取证据信息
      * 1. 只对证据文件进行新增操作,不删除已有的文件
      * 2. 如果第三级目录下已经存在文件,只新增证据文件,对证据进行ocr识别但不对证据进行重新提取操作
+     *
      * @param caseId
      * @param evidenceFileDTOS 文件信息
      */
@@ -441,14 +437,14 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
         List<CaseEvidenceDetailDTO> operationalEvidenceList = findChangedEvidence(oldEvidences, newEvidences);
 
-        String batchId = ((CaseEvidenceService)AopContext.currentProxy()).updateCaseEvidence4NewTransaction(operationalEvidenceList);
+        String batchId = ((CaseEvidenceService) AopContext.currentProxy()).updateCaseEvidence4NewTransaction(operationalEvidenceList);
 
         List<EvidenceFileDTO> evidenceFileDTOList = operationalEvidenceList.stream()
-                .flatMap(evidenceDetailDTO -> evidenceDetailDTO.getFileList().stream().filter(file -> StrUtil.equals(file.getUpdateStatus(),"1"))).toList();
-        ((CaseEvidenceService)AopContext.currentProxy()).preSyncSubmitOCR(evidenceFileDTOList);
+                .flatMap(evidenceDetailDTO -> evidenceDetailDTO.getFileList().stream().filter(file -> StrUtil.equals(file.getUpdateStatus(), "1"))).toList();
+        ((CaseEvidenceService) AopContext.currentProxy()).preSyncSubmitOCR(evidenceFileDTOList);
 
         for (CaseEvidenceDetailDTO caseEvidenceDetailDTO : operationalEvidenceList) {
-            if (StrUtil.equals(caseEvidenceDetailDTO.getUpdateStatus(),"1")){
+            if (StrUtil.equals(caseEvidenceDetailDTO.getUpdateStatus(), "1")) {
                 // 需要分析(ocr识别+标题提取)
                 xxlJobService.executeTaskByJobHandler("evidenceAnalysis", caseEvidenceDetailDTO.getId());
             }
@@ -460,23 +456,24 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
     /**
      * 更新案件证据信息 note:这个方法中的事务是一个新的事务,不会与之前的事务保持原子操作
+     *
      * @param caseEvidenceDetailDTOList 新旧证据信息
      * @return
      */
     @Override
-    @Transactional(transactionManager = "dataSourceTransactionManager",propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
+    @Transactional(transactionManager = "dataSourceTransactionManager", propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
     public String updateCaseEvidence4NewTransaction(List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOList) {
 
         String batchNo = DateTime.now().toString("yyyyMMddHHmmss");
         for (CaseEvidenceDetailDTO evidence : caseEvidenceDetailDTOList) {
-            if (evidence.getUpdateStatus().equals("1")){
+            if (evidence.getUpdateStatus().equals("1")) {
                 // 新增
                 CaseEvidence caseEvidence = evidence.toCaseEvidence();
                 caseEvidence.setProcessStatus(EvidenceConstants.PROCESS_STATUS_UNPROCESSED);
                 this.save(caseEvidence);
                 evidence.setId(caseEvidence.getId());
                 for (EvidenceFileDTO evidenceFileDTO : evidence.getFileList()) {
-                    if (StrUtil.equalsAny(evidenceFileDTO.getUpdateStatus(),"1","2")){
+                    if (StrUtil.equalsAny(evidenceFileDTO.getUpdateStatus(), "1", "2")) {
                         // 新增
                         EvidenceFile evidenceFile = new EvidenceFile(caseEvidence.getId(), evidenceFileDTO.getFileId());
                         evidenceFile.setDirectoryId(evidence.getDirectoryId());
@@ -495,9 +492,9 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                     }*/
                 }
 
-            }else if (evidence.getUpdateStatus().equals("-1")){
+            } else if (evidence.getUpdateStatus().equals("-1")) {
                 for (EvidenceFileDTO evidenceFileDTO : evidence.getFileList()) {
-                    if (StrUtil.equalsAny(evidenceFileDTO.getUpdateStatus(),"1","2")){
+                    if (StrUtil.equalsAny(evidenceFileDTO.getUpdateStatus(), "1", "2")) {
                         // 新增
                         EvidenceFile evidenceFile = new EvidenceFile(evidence.getId(), evidenceFileDTO.getFileId());
                         evidenceFile.setDirectoryId(evidence.getDirectoryId());
@@ -517,36 +514,36 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     }
 
     @Override
-    public List<EvidenceProcessDTO> listOcrAndExtract(String caseId,String batchNo) {
+    public List<EvidenceProcessDTO> listOcrAndExtract(String caseId, String batchNo) {
         Assert.notEmpty(caseId, "案件id不能为空");
         ModelCase modelCase = modelCaseService.getById(caseId);
         Assert.notNull(modelCase, "案件不存在");
 
-        List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS = this.queryEvidenceList(caseId,batchNo);
+        List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS = this.queryEvidenceList(caseId, batchNo);
 
-        if (CollUtil.isEmpty(caseEvidenceDetailDTOS)){
+        if (CollUtil.isEmpty(caseEvidenceDetailDTOS)) {
             return new ArrayList<>();
         }
         List<EvidenceProcessDTO> processDTOList = caseEvidenceDetailDTOS.stream()
-                .filter(evidenceDetail->CollUtil.isNotEmpty(evidenceDetail.getFileList()))
+                .filter(evidenceDetail -> CollUtil.isNotEmpty(evidenceDetail.getFileList()))
                 .map(EvidenceProcessDTO::new).collect(Collectors.toList());
         List<EvidenceDirectoryDTO> evidenceDirectoryDTOS = evidenceDirectoryService.listDirectoryTree(caseId);
         List<EvidenceCategory> categoryList = evidenceCategoryService.lambdaQuery().eq(EvidenceCategory::getCaseType, modelCase.getCaseType()).list();
-
+        List<NotePrompt> notePrompts = notePromptService.list();
         for (EvidenceProcessDTO evidenceProcessDTO : processDTOList) {
-            evidenceProcessDTO.setTemplateInfo(evidenceDirectoryDTOS, categoryList);
+            evidenceProcessDTO.setTemplateInfo(evidenceDirectoryDTOS, categoryList, notePrompts);
             evidenceProcessDTO.setEvidenceTypeName(categoryList);
         }
         return processDTOList;
     }
 
     @Override
-    public void verifyEvidence(List<EvidenceVerifyDTO> evidenceVerifyDTOS,String caseId,String batchNo) {
+    public void verifyEvidence(List<EvidenceVerifyDTO> evidenceVerifyDTOS, String caseId, String batchNo) {
         Assert.notEmpty(caseId, "案件id不能为空");
-        if (CollUtil.isEmpty(evidenceVerifyDTOS)){
+        if (CollUtil.isEmpty(evidenceVerifyDTOS)) {
             return;
         }
-        List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS = queryEvidenceList(caseId,batchNo);
+        List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS = queryEvidenceList(caseId, batchNo);
         Map<String, List<EvidenceVerifyDTO>> evidenceMap = evidenceVerifyDTOS.stream().collect(Collectors.groupingBy(EvidenceVerifyDTO::getEvidenceId));
         for (Map.Entry<String, List<EvidenceVerifyDTO>> entry : evidenceMap.entrySet()) {
             String evidenceId = entry.getKey();
@@ -557,7 +554,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
             // 修改ocr内容
             for (EvidenceVerifyDTO verifyDTO : value) {
-                if (StrUtil.isNotEmpty(verifyDTO.getOcrText())){
+                if (StrUtil.isNotEmpty(verifyDTO.getOcrText())) {
                     fileOcrProcessService.lambdaUpdate()
                             .eq(FileOcrProcess::getFileId, verifyDTO.getFileId())
                             .set(FileOcrProcess::getReviseText, verifyDTO.getOcrText()).update();
@@ -565,7 +562,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
             }
             // 调整顺序
             CaseEvidenceDetailDTO evidenceDetail = findEvidenceDetail(evidenceId, caseEvidenceDetailDTOS);
-            if (evidenceDetail != null){
+            if (evidenceDetail != null) {
                 List<String> list = value.stream().map(EvidenceVerifyDTO::getFileId).toList();
                 for (EvidenceFileDTO evidenceFileDTO : evidenceDetail.getFileList()) {
                     evidenceFileDTO.setRank(findRank(list, evidenceFileDTO.getFileId()));
@@ -603,19 +600,19 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     }
 
     @Override
-    public List<EvidenceDirectoryDTO> evidenceDetails(String caseId, String batchNo,String evidenceId) {
+    public List<EvidenceDirectoryDTO> evidenceDetails(String caseId, String batchNo, String evidenceId) {
 
-        List<EvidenceDirectoryDTO> evidenceDirectoryDTOS = listFileTree(caseId,batchNo,evidenceId,null);
+        List<EvidenceDirectoryDTO> evidenceDirectoryDTOS = listFileTree(caseId, batchNo, evidenceId, null);
 
         List<CaseEvidence> caseEvidenceList = this.lambdaQuery().eq(CaseEvidence::getCaseId, caseId).list();
         // 强行翻译
         Map<String, String> dictionaryMap = comDictionaryService.getDictionaryMapReverse("prompt_attribute_valuetype");
         for (CaseEvidence caseEvidence : caseEvidenceList) {
             List<NotePromptExtractAttributesDto> property = caseEvidence.getProperty();
-            if (CollUtil.isNotEmpty(property)){
+            if (CollUtil.isNotEmpty(property)) {
                 for (NotePromptExtractAttributesDto notePromptExtractAttributesDto : property) {
                     String attrValueType = notePromptExtractAttributesDto.getAttrValueType();
-                    if (StrUtil.isNotEmpty(attrValueType) && dictionaryMap.containsKey(attrValueType)){
+                    if (StrUtil.isNotEmpty(attrValueType) && dictionaryMap.containsKey(attrValueType)) {
                         notePromptExtractAttributesDto.setAttrValueType(dictionaryMap.get(attrValueType));
                     }
                 }
@@ -628,11 +625,11 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         Map<String, CategoryPromptDTO> categoryPromptMap = categoryPromptDTOS.stream().collect(Collectors.toMap(CategoryPromptDTO::getDirectoryId, Function.identity()));
 
         Iterator<EvidenceDirectoryDTO> iterator = evidenceDirectoryDTOS.iterator();
-        while (iterator.hasNext()){
+        while (iterator.hasNext()) {
             EvidenceDirectoryDTO evidenceDirectoryDTO = iterator.next();
             evidenceDirectoryDTO.setFileEvidence(caseEvidenceMap, categoryPromptMap);
             evidenceDirectoryDTO.removeEmptyDirectory();
-            if (CollUtil.isEmpty(evidenceDirectoryDTO.getChild()) && CollUtil.isEmpty(evidenceDirectoryDTO.getFileInfoList())){
+            if (CollUtil.isEmpty(evidenceDirectoryDTO.getChild()) && CollUtil.isEmpty(evidenceDirectoryDTO.getFileInfoList())) {
                 iterator.remove();
             }
         }
@@ -655,7 +652,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
         String directoryName = category.getCategoryName() + provider;
         long count = directoryList.stream().filter(d -> StrUtil.contains(d.getDirectoryName(), provider)).count();
-        if (count > 0){
+        if (count > 0) {
             directoryName = directoryName + count;
         }
         return directoryName;
@@ -668,7 +665,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         List<String> directoryIdList = null;
         for (EvidenceDirectoryDTO evidenceDirectoryDTO : evidenceDirectoryDTOS) {
             directoryIdList = evidenceDirectoryDTO.findDirectoryIdList(evidenceDirectory.getCategoryId());
-            if (CollUtil.isNotEmpty(directoryIdList)){
+            if (CollUtil.isNotEmpty(directoryIdList)) {
                 break;
             }
         }
@@ -676,7 +673,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         EvidenceDirectoryDTO directory = null;
         for (EvidenceDirectoryDTO evidenceDirectoryDTO : evidenceDirectoryDTOS) {
             directory = evidenceDirectoryDTO.findDirectory(CollUtil.getFirst(directoryIdList));
-            if (null != directory){
+            if (null != directory) {
                 break;
             }
         }
@@ -685,7 +682,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         long count = evidenceDirectoryService.lambdaQuery().eq(EvidenceDirectory::getParentId, directory.getId())
                 .list().stream()
                 .filter(d -> StrUtil.contains(d.getDirectoryName(), evidenceDirectory.getDirectoryName())).count();
-        if (count > 0){
+        if (count > 0) {
             evidenceDirectory.setDirectoryName(evidenceDirectory.getDirectoryName() + count + 1);
         }
 
@@ -699,15 +696,15 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     }
 
     @Override
-    @Transactional(rollbackFor = Exception.class, propagation= Propagation.REQUIRES_NEW, transactionManager = "dataSourceTransactionManager")
+    @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRES_NEW, transactionManager = "dataSourceTransactionManager")
     public void preSyncSubmitOCR(List<EvidenceFileDTO> evidenceFileList) {
 
         for (EvidenceFileDTO evidenceFileDTO : evidenceFileList) {
-            if (StrUtil.equalsAny(evidenceFileDTO.getFileType(),"doc","docx")){
+            if (StrUtil.equalsAny(evidenceFileDTO.getFileType(), "doc", "docx")) {
                 fileOcrProcessService.syncSubmitOCR(List.of(evidenceFileDTO.getFileId()), fileOcrProcessService::doWordCRTask);
-            }else if (StrUtil.equalsAny(evidenceFileDTO.getFileType(),"pdf")){
+            } else if (StrUtil.equalsAny(evidenceFileDTO.getFileType(), "pdf")) {
                 fileOcrProcessService.syncSubmitOCR(List.of(evidenceFileDTO.getFileId()), fileOcrProcessService::doPdfCRTask);
-            }else {
+            } else {
                 fileOcrProcessService.syncSubmitOCR(List.of(evidenceFileDTO.getFileId()), fileOcrProcessService::doOCRTask);
             }
         }
@@ -716,15 +713,15 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
     private CaseEvidenceDetailDTO findEvidenceDetail(String evidenceId, List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS) {
         for (CaseEvidenceDetailDTO caseEvidenceDetailDTO : caseEvidenceDetailDTOS) {
-            if (StrUtil.equals(caseEvidenceDetailDTO.getId(), evidenceId)){
+            if (StrUtil.equals(caseEvidenceDetailDTO.getId(), evidenceId)) {
                 return caseEvidenceDetailDTO;
             }
         }
         return null;
     }
 
-    private List<CaseEvidenceDetailDTO> toCaseCaseEvidenceDetailDTO(List<EvidenceDirectoryDTO> newDirectoryDTOS,List<EvidenceDirectoryDTO> oldEvidenceDirectoryDTOS) {
-        if (CollUtil.isEmpty(newDirectoryDTOS)){
+    private List<CaseEvidenceDetailDTO> toCaseCaseEvidenceDetailDTO(List<EvidenceDirectoryDTO> newDirectoryDTOS, List<EvidenceDirectoryDTO> oldEvidenceDirectoryDTOS) {
+        if (CollUtil.isEmpty(newDirectoryDTOS)) {
             return new ArrayList<>();
         }
 
@@ -738,12 +735,12 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
             String directoryId = evidenceFile.getId();
             EvidenceDirectoryDTO directory = evidenceDirectoryService.findDirectoryById(directoryId, oldEvidenceDirectoryDTOS);
-            if (null == directory){
-                log.warn("toCaseCaseEvidenceDetailDTO:目录id:{}不存在对应的目录分类信息",directoryId);
+            if (null == directory) {
+                log.warn("toCaseCaseEvidenceDetailDTO:目录id:{}不存在对应的目录分类信息", directoryId);
                 continue;
             }
 
-            if (directory.getLevel() == 1 || directory.getLevel() == 2){
+            if (directory.getLevel() == 1 || directory.getLevel() == 2) {
                 for (String fileId : evidenceFile.getFileIdList()) {
                     CaseEvidenceDetailDTO caseEvidenceDetailDTO = new CaseEvidenceDetailDTO();
                     caseEvidenceDetailDTO.setEvidenceType(directory.getCategoryId());
@@ -752,7 +749,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                     evidenceFileDTO.setFileId(fileId);
 
                     MinioFile minioFile = fileMap.get(fileId);
-                    if (null != minioFile){
+                    if (null != minioFile) {
                         // 证据名为文件名
                         caseEvidenceDetailDTO.setEvidenceName(minioFile.getFilename());
                         evidenceFileDTO.setFileType(minioFile.getFileType());
@@ -762,9 +759,9 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                     caseEvidenceDetailDTOS.add(caseEvidenceDetailDTO);
                 }
             }
-            if (directory.getLevel() == 3){
+            if (directory.getLevel() == 3) {
                 CaseEvidenceDetailDTO caseEvidenceDetailDTO = new CaseEvidenceDetailDTO();
-                if (CollUtil.isNotEmpty(directory.getFileInfoList())){
+                if (CollUtil.isNotEmpty(directory.getFileInfoList())) {
                     String evidenceId = CollUtil.getFirst(directory.getFileInfoList()).getEvidenceId();
                     caseEvidenceDetailDTO.setId(evidenceId);
                 }
@@ -777,7 +774,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                     EvidenceFileDTO evidenceFileDTO = new EvidenceFileDTO();
                     evidenceFileDTO.setFileId(fileId);
                     MinioFile minioFile = fileMap.get(fileId);
-                    if (null != minioFile){
+                    if (null != minioFile) {
                         evidenceFileDTO.setFileName(minioFile.getFilename());
                         evidenceFileDTO.setFileType(minioFile.getFileType());
                     }
@@ -795,7 +792,8 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
     /**
      * 查找发生改变的证据
-     * @param oldEvidenceList 旧证据列表
+     *
+     * @param oldEvidenceList     旧证据列表
      * @param newEvidenceFileList 新证据列表
      * @return 发生改变的证据
      */
@@ -804,20 +802,20 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
         List<CaseEvidenceDetailDTO> caseEvidence2DTOList = new ArrayList<>();
 
-        if (CollUtil.isEmpty(oldEvidenceList) && CollUtil.isNotEmpty(newEvidenceFileList)){
+        if (CollUtil.isEmpty(oldEvidenceList) && CollUtil.isNotEmpty(newEvidenceFileList)) {
             // 数据库中不存在数据,则全部新增
             for (CaseEvidenceDetailDTO evidenceDetailDTO : newEvidenceFileList) {
                 List<String> fileIds = evidenceDetailDTO.getFileList().stream().map(EvidenceFileDTO::getFileId).toList();
                 evidenceDetailDTO.setUpdateStatus("1");
                 for (EvidenceFileDTO evidenceFileDTO : evidenceDetailDTO.getFileList()) {
                     evidenceFileDTO.setUpdateStatus("1");
-                    evidenceFileDTO.setRank(findRank(fileIds,evidenceFileDTO.getFileId()));
+                    evidenceFileDTO.setRank(findRank(fileIds, evidenceFileDTO.getFileId()));
                 }
             }
             caseEvidence2DTOList.addAll(newEvidenceFileList);
         }
 
-        if (CollUtil.isNotEmpty(oldEvidenceList) && CollUtil.isEmpty(newEvidenceFileList)){
+        if (CollUtil.isNotEmpty(oldEvidenceList) && CollUtil.isEmpty(newEvidenceFileList)) {
             // 数据库中存在数据,没有新增数据
             for (CaseEvidenceDetailDTO evidenceDetailDTO : oldEvidenceList) {
                 evidenceDetailDTO.setUpdateStatus("0");
@@ -829,7 +827,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         }
 
 
-        if (CollUtil.isNotEmpty(oldEvidenceList) && CollUtil.isNotEmpty(newEvidenceFileList)){
+        if (CollUtil.isNotEmpty(oldEvidenceList) && CollUtil.isNotEmpty(newEvidenceFileList)) {
             // 数据库中和新数据都存在
             Map<String, EvidenceFileDTO> fileCache = Stream.of(newEvidenceFileList, oldEvidenceList)
                     .flatMap(Collection::stream)
@@ -839,21 +837,21 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
             for (CaseEvidenceDetailDTO oldEvidence : oldEvidenceList) {
                 boolean isFind = false;
                 for (CaseEvidenceDetailDTO newEvidence : newEvidenceFileList) {
-                    if (StrUtil.equals(oldEvidence.getId(),newEvidence.getId())){
+                    if (StrUtil.equals(oldEvidence.getId(), newEvidence.getId())) {
                         isFind = true;
                         oldEvidence.setUpdateStatus("-1");
                         List<String> oldFileIds = oldEvidence.getFileList().stream().map(EvidenceFileDTO::getFileId).toList();
                         List<String> newFileIds = newEvidence.getFileList().stream().map(EvidenceFileDTO::getFileId).toList();
-                        TupleIdRecord tupleIdRecord = compareFileList(newFileIds,oldFileIds);
+                        TupleIdRecord tupleIdRecord = compareFileList(newFileIds, oldFileIds);
 
                         List<EvidenceFileDTO> updateFileList = new ArrayList<>();
                         // 新增的文件顺序排在原有文件的后面
-                        int initOrder = oldFileIds.size() -1;
+                        int initOrder = oldFileIds.size() - 1;
                         for (String addFileId : tupleIdRecord.addFileList) {
                             EvidenceFileDTO evidenceFileDTO = new EvidenceFileDTO();
                             evidenceFileDTO.setFileId(addFileId);
                             evidenceFileDTO.setUpdateStatus("1");
-                            if (null != fileCache.get(addFileId)){
+                            if (null != fileCache.get(addFileId)) {
                                 evidenceFileDTO.setFileType(fileCache.get(addFileId).getFileType());
                             }
 
@@ -864,7 +862,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                             EvidenceFileDTO evidenceFileDTO = new EvidenceFileDTO();
                             evidenceFileDTO.setFileId(deleteFileId);
                             evidenceFileDTO.setUpdateStatus("0");
-                            if (null != fileCache.get(deleteFileId)){
+                            if (null != fileCache.get(deleteFileId)) {
                                 evidenceFileDTO.setFileType(fileCache.get(deleteFileId).getFileType());
                             }
                             evidenceFileDTO.setRank(findRank(oldFileIds, deleteFileId));
@@ -875,7 +873,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                             EvidenceFileDTO evidenceFileDTO = new EvidenceFileDTO();
                             evidenceFileDTO.setFileId(updateFileId);
                             evidenceFileDTO.setUpdateStatus("2");
-                            if (null != fileCache.get(updateFileId)){
+                            if (null != fileCache.get(updateFileId)) {
                                 evidenceFileDTO.setFileType(fileCache.get(updateFileId).getFileType());
                             }
                             evidenceFileDTO.setRank(findRank(oldFileIds, updateFileId));
@@ -886,7 +884,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
                         caseEvidence2DTOList.add(newEvidence);
                     }
                 }
-                if (!isFind){
+                if (!isFind) {
                     oldEvidence.setUpdateStatus("0");
                     caseEvidence2DTOList.add(oldEvidence);
                 }
@@ -894,7 +892,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
 
 
             for (CaseEvidenceDetailDTO newEvidence : newEvidenceFileList) {
-                if (StrUtil.isEmpty(newEvidence.getId())){
+                if (StrUtil.isEmpty(newEvidence.getId())) {
                     newEvidence.setUpdateStatus("1");
                     List<String> newFileIds = newEvidence.getFileList().stream().map(EvidenceFileDTO::getFileId).toList();
                     for (EvidenceFileDTO evidenceFileDTO : newEvidence.getFileList()) {
@@ -909,9 +907,9 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         return caseEvidence2DTOList;
     }
 
-    private int findRank(List<String> newFileIds,String fileId){
+    private int findRank(List<String> newFileIds, String fileId) {
         for (int i = 0; i < newFileIds.size(); i++) {
-            if (newFileIds.get(i).equals(fileId)){
+            if (newFileIds.get(i).equals(fileId)) {
                 return i;
             }
         }
@@ -919,15 +917,14 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     }
 
 
-
-
     /**
      * 初始化案件证据目录
+     *
      * @param evidenceCategoryDTOS 证据分类
-     * @param caseId 案件id
-     * @param parentId 父级目录id
+     * @param caseId               案件id
+     * @param parentId             父级目录id
      */
-   private void initCaseEvidenceDirectory(List<EvidenceCategoryDTO> evidenceCategoryDTOS, String caseId, String parentId) {
+    private void initCaseEvidenceDirectory(List<EvidenceCategoryDTO> evidenceCategoryDTOS, String caseId, String parentId) {
         for (EvidenceCategoryDTO evidenceCategoryDTO : evidenceCategoryDTOS) {
             EvidenceDirectory evidenceDirectory = new EvidenceDirectory();
             evidenceDirectory.setCaseId(caseId);
@@ -942,9 +939,9 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
     }
 
 
-
     /**
      * left 新增 right 删除
+     *
      * @param newFileIdList
      * @param oldFileIdList
      * @return
@@ -954,24 +951,25 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
         List<String> deleteFileList = new ArrayList<>();
         List<String> updateFileList = new ArrayList<>();
 
-        if (CollUtil.isEmpty(oldFileIdList) && CollUtil.isNotEmpty(newFileIdList)){
+        if (CollUtil.isEmpty(oldFileIdList) && CollUtil.isNotEmpty(newFileIdList)) {
             addFileList = newFileIdList;
         }
 
-        if (CollUtil.isNotEmpty(oldFileIdList) && CollUtil.isEmpty(newFileIdList)){
+        if (CollUtil.isNotEmpty(oldFileIdList) && CollUtil.isEmpty(newFileIdList)) {
             deleteFileList = oldFileIdList;
         }
 
-        if (CollUtil.isNotEmpty(oldFileIdList) && CollUtil.isNotEmpty(newFileIdList)){
+        if (CollUtil.isNotEmpty(oldFileIdList) && CollUtil.isNotEmpty(newFileIdList)) {
             deleteFileList = oldFileIdList.stream().filter(fileId -> !newFileIdList.contains(fileId)).collect(Collectors.toList());
             addFileList = newFileIdList.stream().filter(fileId -> !oldFileIdList.contains(fileId)).collect(Collectors.toList());
-            updateFileList =  oldFileIdList.stream().filter(newFileIdList::contains).collect(Collectors.toList());
+            updateFileList = oldFileIdList.stream().filter(newFileIdList::contains).collect(Collectors.toList());
         }
 
-        return new TupleIdRecord(addFileList,updateFileList, deleteFileList);
+        return new TupleIdRecord(addFileList, updateFileList, deleteFileList);
     }
 
 
-    record TupleIdRecord(List<String> addFileList ,List<String> updateFileList, List<String> deleteFileList){}
+    record TupleIdRecord(List<String> addFileList, List<String> updateFileList, List<String> deleteFileList) {
+    }
 
 }