添加属性hasPrompt标识当前证据分类有无对应提示词

topo_dev
DESKTOP-DDTUS3E\yaxin 6 months ago
parent ed001785f5
commit 653428e3e8

@ -66,6 +66,12 @@ public class EvidenceCategoryDTO {
*/
private String categoryId;
/**
*
*/
private Boolean hasPrompt = false;
public EvidenceCategoryDTO() {
}
@ -79,21 +85,22 @@ public class EvidenceCategoryDTO {
/**
*
* @param categoryId id
*
* @param categoryId id
* @param currentLevel
* @return
*/
public int evalLevel(String categoryId, int currentLevel) {
if (StrUtil.isEmpty(categoryId)){
if (StrUtil.isEmpty(categoryId)) {
return -1;
}
if (StrUtil.equals(this.id, categoryId)){
if (StrUtil.equals(this.id, categoryId)) {
return currentLevel;
}
if (CollUtil.isNotEmpty(this.child)){
if (CollUtil.isNotEmpty(this.child)) {
for (EvidenceCategoryDTO evidenceCategoryDTO : child) {
int level = evidenceCategoryDTO.evalLevel(categoryId, currentLevel + 1);
if (level != -1){
if (level != -1) {
return level;
}
}

@ -4,9 +4,12 @@ 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.domain.NotePrompt;
import com.supervision.police.dto.EvidenceCategoryDTO;
import com.supervision.police.service.EvidenceCategoryService;
import com.supervision.police.mapper.EvidenceCategoryMapper;
import com.supervision.police.service.NotePromptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
@ -21,15 +24,24 @@ import java.util.List;
public class EvidenceCategoryServiceImpl extends ServiceImpl<EvidenceCategoryMapper, EvidenceCategory>
implements EvidenceCategoryService{
@Autowired
private NotePromptService notePromptService;
@Override
public List<EvidenceCategoryDTO> listCategoryTree(String caseType) {
List<EvidenceCategoryDTO> list = super.getBaseMapper().listCategoryDTO(caseType);
List<NotePrompt> notePrompts = notePromptService.list();
for (EvidenceCategoryDTO categoryDTO : list) {
List<EvidenceCategoryDTO> child = list.stream()
.filter(evidenceCategoryDTO -> StrUtil.equals(categoryDTO.getId(), evidenceCategoryDTO.getParentId())).toList();
if (CollUtil.isNotEmpty(child)){
//遍历child过滤notePrompts中evidence_category_id与child中id相等的数据如果存在则设置hasPrompt为true
child.forEach(evidenceCategoryDTO -> {
List<NotePrompt> notePromptList = notePrompts.stream()
.filter(notePrompt -> StrUtil.equals(notePrompt.getEvidenceCategoryId(), evidenceCategoryDTO.getId())).toList();
evidenceCategoryDTO.setHasPrompt(CollUtil.isNotEmpty(notePromptList));
});
categoryDTO.setChild(child);
}
}

Loading…
Cancel
Save