refactor(功能用例): 脑图查询不优先查用例等级
This commit is contained in:
parent
a65ad3a598
commit
b5acc24a3c
|
@ -2,7 +2,11 @@ package io.metersphere.functional.mapper;
|
|||
|
||||
import io.metersphere.dto.TestCaseProviderDTO;
|
||||
import io.metersphere.functional.domain.FunctionalCase;
|
||||
import io.metersphere.functional.dto.*;
|
||||
import io.metersphere.functional.domain.FunctionalCaseCustomField;
|
||||
import io.metersphere.functional.dto.BaseFunctionalCaseBatchDTO;
|
||||
import io.metersphere.functional.dto.FunctionalCaseMindDTO;
|
||||
import io.metersphere.functional.dto.FunctionalCasePageDTO;
|
||||
import io.metersphere.functional.dto.FunctionalCaseVersionDTO;
|
||||
import io.metersphere.functional.request.*;
|
||||
import io.metersphere.project.dto.ModuleCountDTO;
|
||||
import io.metersphere.request.AssociateOtherCaseRequest;
|
||||
|
@ -83,6 +87,9 @@ public interface ExtFunctionalCaseMapper {
|
|||
*/
|
||||
List<FunctionalCaseMindDTO> getMinderCaseList(@Param("request") FunctionalCaseMindRequest request, @Param("deleted") boolean deleted);
|
||||
|
||||
List<FunctionalCaseCustomField> getCaseCustomFieldList(@Param("request") FunctionalCaseMindRequest request, @Param("deleted") boolean deleted);
|
||||
|
||||
|
||||
/**
|
||||
* 根据模块ID获取用例评审脑图展示数据
|
||||
*/
|
||||
|
|
|
@ -793,18 +793,32 @@
|
|||
<select id="getMinderCaseList" resultType="io.metersphere.functional.dto.FunctionalCaseMindDTO">
|
||||
SELECT
|
||||
fc.id, fc.name, fc.project_id, fc.module_id, fc.template_id, fc.review_status, fc.pos, fc.case_edit_type,
|
||||
fcb.steps, fcb.text_description, fcb.expected_result, fcb.prerequisite, fcb.description, fccf.value as priority
|
||||
fcb.steps, fcb.text_description, fcb.expected_result, fcb.prerequisite, fcb.description
|
||||
FROM
|
||||
functional_case fc
|
||||
LEFT JOIN functional_case_blob fcb ON fcb.id = fc.id
|
||||
LEFT JOIN functional_case_custom_field fccf ON fccf.case_id = fc.id
|
||||
LEFT JOIN custom_field cf ON cf.id = fccf.field_id
|
||||
WHERE
|
||||
fc.deleted = false
|
||||
AND
|
||||
fc.project_Id = #{request.projectId}
|
||||
AND
|
||||
fc.module_id = #{request.moduleId}
|
||||
order by fc.pos
|
||||
</select>
|
||||
|
||||
<select id="getCaseCustomFieldList" resultType="io.metersphere.functional.domain.FunctionalCaseCustomField">
|
||||
SELECT
|
||||
fccf.case_id, fccf.field_id, fccf.value
|
||||
FROM
|
||||
functional_case_custom_field fccf
|
||||
LEFT JOIN functional_case fc ON fccf.case_id = fc.id
|
||||
LEFT JOIN custom_field cf ON cf.id = fccf.field_id
|
||||
WHERE
|
||||
fc.deleted = false
|
||||
AND
|
||||
fc.project_Id = #{request.projectId}
|
||||
AND
|
||||
fc.module_id = #{request.moduleId}
|
||||
AND
|
||||
cf.name = 'functional_priority'
|
||||
AND cf.scene = 'FUNCTIONAL'
|
||||
|
@ -812,6 +826,7 @@
|
|||
order by fc.pos
|
||||
</select>
|
||||
|
||||
|
||||
<select id="getMinderCaseReviewList" resultType="io.metersphere.functional.dto.FunctionalCaseMindDTO">
|
||||
SELECT
|
||||
crfc.id as id,
|
||||
|
|
|
@ -142,13 +142,15 @@ public class FunctionalCaseMinderService {
|
|||
return new ArrayList<>();
|
||||
}
|
||||
List<FunctionalCaseMindDTO> functionalCaseMindDTOList = extFunctionalCaseMapper.getMinderCaseList(request, deleted);
|
||||
List<FunctionalCaseCustomField> caseCustomFieldList = extFunctionalCaseMapper.getCaseCustomFieldList(request, deleted);
|
||||
Map<String, String> priorityMap = caseCustomFieldList.stream().collect(Collectors.toMap(FunctionalCaseCustomField::getCaseId, FunctionalCaseCustomField::getValue));
|
||||
|
||||
List<FunctionalMinderTreeDTO> functionalMinderTreeDTOS = buildAdditionalData(request.getModuleId());
|
||||
if (CollectionUtils.isNotEmpty(functionalMinderTreeDTOS)) {
|
||||
list.addAll(functionalMinderTreeDTOS);
|
||||
}
|
||||
//构造父子级数据
|
||||
buildList(functionalCaseMindDTOList, list);
|
||||
buildList(functionalCaseMindDTOList, list, priorityMap);
|
||||
return list;
|
||||
}
|
||||
|
||||
|
@ -175,7 +177,7 @@ public class FunctionalCaseMinderService {
|
|||
return list;
|
||||
}
|
||||
|
||||
private void buildList(List<FunctionalCaseMindDTO> functionalCaseMindDTOList, List<FunctionalMinderTreeDTO> list) {
|
||||
private void buildList(List<FunctionalCaseMindDTO> functionalCaseMindDTOList, List<FunctionalMinderTreeDTO> list, Map<String, String> priorityMap) {
|
||||
//构造父子级数据
|
||||
for (FunctionalCaseMindDTO functionalCaseMindDTO : functionalCaseMindDTOList) {
|
||||
FunctionalMinderTreeDTO root = new FunctionalMinderTreeDTO();
|
||||
|
@ -183,7 +185,7 @@ public class FunctionalCaseMinderService {
|
|||
rootData.setId(functionalCaseMindDTO.getId());
|
||||
rootData.setPos(functionalCaseMindDTO.getPos());
|
||||
rootData.setText(functionalCaseMindDTO.getName());
|
||||
rootData.setPriority(StringUtils.isNotBlank(functionalCaseMindDTO.getPriority()) ? Integer.parseInt(functionalCaseMindDTO.getPriority().substring(1))+1 : 1);
|
||||
rootData.setPriority(StringUtils.isNotBlank(priorityMap.get(functionalCaseMindDTO.getId())) ? Integer.parseInt(priorityMap.get(functionalCaseMindDTO.getId()).substring(1))+1 : 1);
|
||||
rootData.setStatus(functionalCaseMindDTO.getReviewStatus());
|
||||
rootData.setResource(List.of(Translator.get("minder_extra_node.case")));
|
||||
List<FunctionalMinderTreeDTO> children = buildChildren(functionalCaseMindDTO);
|
||||
|
@ -1064,8 +1066,10 @@ public class FunctionalCaseMinderService {
|
|||
List<FunctionalMinderTreeDTO> list = new ArrayList<>();
|
||||
//查出当前模块下的所有用例
|
||||
List<FunctionalCaseMindDTO> functionalCaseMindDTOList = extFunctionalCaseMapper.getMinderCaseReviewList(request, deleted, userId, viewStatusUserId);
|
||||
List<FunctionalCaseCustomField> caseCustomFieldList = extFunctionalCaseMapper.getCaseCustomFieldList(request, deleted);
|
||||
Map<String, String> priorityMap = caseCustomFieldList.stream().collect(Collectors.toMap(FunctionalCaseCustomField::getCaseId, FunctionalCaseCustomField::getValue));
|
||||
//构造父子级数据
|
||||
buildList(functionalCaseMindDTOList, list);
|
||||
buildList(functionalCaseMindDTOList, list, priorityMap);
|
||||
return list;
|
||||
}
|
||||
|
||||
|
@ -1074,8 +1078,10 @@ public class FunctionalCaseMinderService {
|
|||
List<FunctionalMinderTreeDTO> list = new ArrayList<>();
|
||||
//查出当前模块下的所有用例
|
||||
List<FunctionalCaseMindDTO> functionalCaseMindDTOList = extFunctionalCaseMapper.getMinderTestPlanList(request, deleted);
|
||||
List<FunctionalCaseCustomField> caseCustomFieldList = extFunctionalCaseMapper.getCaseCustomFieldList(request, deleted);
|
||||
Map<String, String> priorityMap = caseCustomFieldList.stream().collect(Collectors.toMap(FunctionalCaseCustomField::getCaseId, FunctionalCaseCustomField::getValue));
|
||||
//构造父子级数据
|
||||
buildList(functionalCaseMindDTOList, list);
|
||||
buildList(functionalCaseMindDTOList, list, priorityMap);
|
||||
return list;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue