diff --git a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java index 48fb2e18..4bd74645 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/common/service/impl/LawsCommonServiceImpl.java @@ -1288,12 +1288,25 @@ public class LawsCommonServiceImpl implements ILawsCommonService { public IPage getManyStandardSelectionBox(ManyStandardSelectionBoxVO selectionBoxVO, Integer pageNo, Integer pageSize) { if (StringUtils.isNotBlank(selectionBoxVO.getStandardSystem())) { List list = Arrays.asList(selectionBoxVO.getStandardSystem().split(",")); - List lawsNodeRelationList = lawsNodeRelationService.list( - new LambdaQueryWrapper().in(LawsNodeRelation::getNodeId, list)); - if (CollectionUtils.isNotEmpty(lawsNodeRelationList)) { - String ids = lawsNodeRelationList.stream() - .map(LawsNodeRelation::getUniqueRelationFlag).collect(Collectors.joining(",")); - selectionBoxVO.setIds(ids); + List lawsTreeNodeList = lawsTreeNodeService.listByIds(list); + if (!CollectionUtils.isEmpty(lawsTreeNodeList)) { + List nodeCode = lawsTreeNodeList.stream() + .map(LawsTreeNode::getNodeCode).collect(Collectors.toList()); + LambdaQueryWrapper query = new LambdaQueryWrapper<>(); + query.and(o->{ + for (int i = 0; i < nodeCode.size(); i++) { + o.likeRight(LawsNodeRelation::getNodeCode, nodeCode.get(i)); + if(i != (nodeCode.size() - 1)){ + o.or(); + } + } + }); + List lawsNodeRelationListAll = lawsNodeRelationService.list(query); + if(!CollectionUtils.isEmpty(lawsNodeRelationListAll)){ + String ids = lawsNodeRelationListAll.stream().map(LawsNodeRelation::getUniqueRelationFlag) + .collect(Collectors.joining(",")); + selectionBoxVO.setIds(ids); + } } else { return new Page<>(); }