From 3a98cf574f0903583a3081a8e0de770a8fb62608 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Fri, 11 Oct 2024 17:21:29 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E6=9A=82=E5=AD=98=E5=8E=9F=E5=AD=90?= =?UTF-8?q?=E6=8C=87=E6=A0=87=E8=AE=A1=E7=AE=97=E7=9B=B8=E5=85=B3=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/CaseEvidenceController.java | 10 ++++ .../supervision/police/domain/NotePrompt.java | 6 +-- .../police/dto/EvidenceCategoryDTO.java | 50 +++++++++++++++++++ .../police/service/CaseEvidenceService.java | 3 ++ .../service/EvidenceCategoryService.java | 5 ++ .../service/impl/CaseEvidenceServiceImpl.java | 16 +++++- .../impl/EvidenceCategoryServiceImpl.java | 37 ++++++++++++++ 7 files changed, 120 insertions(+), 7 deletions(-) create mode 100644 src/main/java/com/supervision/police/dto/EvidenceCategoryDTO.java diff --git a/src/main/java/com/supervision/police/controller/CaseEvidenceController.java b/src/main/java/com/supervision/police/controller/CaseEvidenceController.java index 6c96667..176740c 100644 --- a/src/main/java/com/supervision/police/controller/CaseEvidenceController.java +++ b/src/main/java/com/supervision/police/controller/CaseEvidenceController.java @@ -3,6 +3,7 @@ package com.supervision.police.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Assert; import com.supervision.common.domain.R; +import com.supervision.police.dto.EvidenceCategoryDTO; import com.supervision.police.dto.CaseEvidenceDetailDTO; import com.supervision.police.dto.EvidenceIdWrapper; import com.supervision.police.service.CaseEvidenceService; @@ -13,6 +14,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; +import java.util.List; /** @@ -59,4 +61,12 @@ public class CaseEvidenceController { IPage pageListEvidence = caseEvidenceService.pageListEvidence(caseId, evidenceName,pageNum, pageSize); return R.ok(pageListEvidence); } + + @Operation(summary = "查询案件证据分类树") + @GetMapping("/category/tree") + public R> listCategoryTree(@RequestParam(defaultValue = "1") + @Parameter(name = "caseType",description = "案件类型") String caseType) { + List list = caseEvidenceService.listCategoryTree(caseType); + return R.ok(list); + } } diff --git a/src/main/java/com/supervision/police/domain/NotePrompt.java b/src/main/java/com/supervision/police/domain/NotePrompt.java index c578574..bca0475 100644 --- a/src/main/java/com/supervision/police/domain/NotePrompt.java +++ b/src/main/java/com/supervision/police/domain/NotePrompt.java @@ -5,8 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; -import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; import com.fasterxml.jackson.annotation.JsonFormat; +import com.supervision.police.dto.NotePromptExtractAttributesDto; import com.supervision.police.dto.TripleInfoDTO; import lombok.Data; @@ -114,10 +114,6 @@ public class NotePrompt implements Serializable { */ private String type; - /** - * - */ - private JSONArray keyword; /** * diff --git a/src/main/java/com/supervision/police/dto/EvidenceCategoryDTO.java b/src/main/java/com/supervision/police/dto/EvidenceCategoryDTO.java new file mode 100644 index 0000000..5de5e92 --- /dev/null +++ b/src/main/java/com/supervision/police/dto/EvidenceCategoryDTO.java @@ -0,0 +1,50 @@ +package com.supervision.police.dto; + +import com.supervision.police.domain.EvidenceCategory; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * 案件分类 + */ +@Data +public class EvidenceCategoryDTO { + + /** + * 主键id + */ + private String id; + + /** + * 分类名 + */ + private String categoryName; + + /** + * 图标url + */ + private String iconUrl; + + /** + * 父级id + */ + private String parentId; + + /** + * 子级分类 + */ + private List child; + + public EvidenceCategoryDTO() { + } + + public EvidenceCategoryDTO(EvidenceCategory category) { + this.id = category.getId(); + this.categoryName = category.getCategoryName(); + this.iconUrl = category.getIconURl(); + this.parentId = category.getParentId(); + this.child = new ArrayList<>(); + } +} diff --git a/src/main/java/com/supervision/police/service/CaseEvidenceService.java b/src/main/java/com/supervision/police/service/CaseEvidenceService.java index 90c34dd..e9048e5 100644 --- a/src/main/java/com/supervision/police/service/CaseEvidenceService.java +++ b/src/main/java/com/supervision/police/service/CaseEvidenceService.java @@ -3,6 +3,7 @@ package com.supervision.police.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import com.supervision.police.domain.CaseEvidence; +import com.supervision.police.dto.EvidenceCategoryDTO; import com.supervision.police.dto.CaseEvidenceDTO; import com.supervision.police.dto.CaseEvidenceDetailDTO; @@ -50,6 +51,8 @@ public interface CaseEvidenceService extends IService { CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId); + List listCategoryTree(String caseType); + /** * 证据属性分析 * @param evidenceId 证据id diff --git a/src/main/java/com/supervision/police/service/EvidenceCategoryService.java b/src/main/java/com/supervision/police/service/EvidenceCategoryService.java index ca40175..3d93de5 100644 --- a/src/main/java/com/supervision/police/service/EvidenceCategoryService.java +++ b/src/main/java/com/supervision/police/service/EvidenceCategoryService.java @@ -2,6 +2,9 @@ package com.supervision.police.service; import com.supervision.police.domain.EvidenceCategory; import com.baomidou.mybatisplus.extension.service.IService; +import com.supervision.police.dto.EvidenceCategoryDTO; + +import java.util.List; /** * @author Administrator @@ -10,4 +13,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface EvidenceCategoryService extends IService { + + List listCategoryTree(String caseType); } 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 acec425..bcbdd62 100644 --- a/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java @@ -6,17 +6,22 @@ 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.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 lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; +import java.util.Map; import java.util.*; import java.util.stream.Collectors; @@ -230,4 +235,11 @@ public class CaseEvidenceServiceImpl extends ServiceImpl listCategoryTree(String caseType) { + + Assert.notEmpty(caseType,"案件类型不能为空!"); + return evidenceCategoryService.listCategoryTree(caseType); + } + } diff --git a/src/main/java/com/supervision/police/service/impl/EvidenceCategoryServiceImpl.java b/src/main/java/com/supervision/police/service/impl/EvidenceCategoryServiceImpl.java index a85fb02..74ed479 100644 --- a/src/main/java/com/supervision/police/service/impl/EvidenceCategoryServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/EvidenceCategoryServiceImpl.java @@ -1,11 +1,17 @@ package com.supervision.police.service.impl; +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.supervision.police.domain.EvidenceCategory; +import com.supervision.police.dto.EvidenceCategoryDTO; import com.supervision.police.service.EvidenceCategoryService; import com.supervision.police.mapper.EvidenceCategoryMapper; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.List; + /** * @author Administrator * @description 针对表【evidence_category(证据类别表)】的数据库操作Service实现 @@ -15,6 +21,37 @@ import org.springframework.stereotype.Service; public class EvidenceCategoryServiceImpl extends ServiceImpl implements EvidenceCategoryService{ + @Override + public List listCategoryTree(String caseType) { + + List categoryList = super.lambdaQuery().eq(EvidenceCategory::getCaseType, caseType).list(); + if (CollUtil.isEmpty(categoryList)){ + return new ArrayList<>(1); + } + + List evidenceCategoryDTOS = new ArrayList<>(); + for (EvidenceCategory category : categoryList) { + + if (StrUtil.isEmpty(category.getParentId())){ + EvidenceCategoryDTO categoryDTO = new EvidenceCategoryDTO(category); + for (EvidenceCategory evidenceCategory : categoryList) { + if (StrUtil.equals(categoryDTO.getId(),evidenceCategory.getParentId())){ + categoryDTO.getChild().add(new EvidenceCategoryDTO(evidenceCategory)); + } + } + } + + if (StrUtil.isNotEmpty(category.getParentId())){ + for (EvidenceCategory child : categoryList) { + if (StrUtil.equals(child.getId(),category.getParentId())){ + + } + if (child.getId().equals(category.getParentId())); + } + } + } + return null; + } }