Merge branch 'hotfix/20241021' into feature/REQ-2595
This commit is contained in:
commit
0d18367995
@ -22,4 +22,8 @@ public class DetailFeatureResourceReq {
|
|||||||
* 资源类型1-菜单 2-页面 3-应用入口 4-组件;5-root节点
|
* 资源类型1-菜单 2-页面 3-应用入口 4-组件;5-root节点
|
||||||
*/
|
*/
|
||||||
private Integer featureType;
|
private Integer featureType;
|
||||||
|
|
||||||
|
private Boolean needChildren;
|
||||||
|
|
||||||
|
private Boolean needPageElement;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -42,6 +42,7 @@ import cn.axzo.tyr.server.model.convert.SaasFeatureResourceConvert;
|
|||||||
import cn.axzo.tyr.server.repository.dao.SaasFeatureDao;
|
import cn.axzo.tyr.server.repository.dao.SaasFeatureDao;
|
||||||
import cn.axzo.tyr.server.repository.dao.SaasFeatureResourceDao;
|
import cn.axzo.tyr.server.repository.dao.SaasFeatureResourceDao;
|
||||||
import cn.axzo.tyr.server.repository.dao.SaasPgroupRoleRelationDao;
|
import cn.axzo.tyr.server.repository.dao.SaasPgroupRoleRelationDao;
|
||||||
|
import cn.axzo.tyr.server.repository.entity.ProductModule;
|
||||||
import cn.axzo.tyr.server.repository.entity.SaasFeature;
|
import cn.axzo.tyr.server.repository.entity.SaasFeature;
|
||||||
import cn.axzo.tyr.server.repository.entity.SaasFeatureResource;
|
import cn.axzo.tyr.server.repository.entity.SaasFeatureResource;
|
||||||
import cn.axzo.tyr.server.repository.entity.SaasPageElementFeatureResourceRelation;
|
import cn.axzo.tyr.server.repository.entity.SaasPageElementFeatureResourceRelation;
|
||||||
@ -58,8 +59,11 @@ import cn.hutool.core.collection.CollectionUtil;
|
|||||||
import cn.hutool.core.lang.Assert;
|
import cn.hutool.core.lang.Assert;
|
||||||
import cn.hutool.core.lang.Pair;
|
import cn.hutool.core.lang.Pair;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.google.common.cache.CacheBuilder;
|
import com.google.common.cache.CacheBuilder;
|
||||||
import com.google.common.cache.CacheLoader;
|
import com.google.common.cache.CacheLoader;
|
||||||
@ -299,11 +303,19 @@ public class SaasFeatureResourceServiceImpl extends ServiceImpl<SaasFeatureResou
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public FeatureResourceTreeNode getTreeFeatureDescendant(DetailFeatureResourceReq param) {
|
public FeatureResourceTreeNode getTreeFeatureDescendant(DetailFeatureResourceReq param) {
|
||||||
List<SaasFeatureResource> descendants = featureResourceDao.lambdaQuery()
|
|
||||||
|
LambdaQueryChainWrapper<SaasFeatureResource> wrapper = featureResourceDao.lambdaQuery()
|
||||||
.eq(BaseEntity::getIsDelete,0)
|
.eq(BaseEntity::getIsDelete,0)
|
||||||
.eq(ObjectUtil.isNotNull(param.getFeatureType()), SaasFeatureResource::getFeatureType, param.getFeatureType())
|
.eq(ObjectUtil.isNotNull(param.getFeatureType()), SaasFeatureResource::getFeatureType, param.getFeatureType());
|
||||||
.apply("FIND_IN_SET('" + param.getFeatureId() + "', path)")
|
|
||||||
.list();
|
if (BooleanUtils.isTrue(param.getNeedChildren())) {
|
||||||
|
wrapper.apply("FIND_IN_SET('" + param.getFeatureId() + "', path)");
|
||||||
|
} else {
|
||||||
|
wrapper.eq(BaseEntity::getId, param.getFeatureId());
|
||||||
|
}
|
||||||
|
|
||||||
|
List<SaasFeatureResource> descendants = wrapper.list();
|
||||||
|
|
||||||
if (CollectionUtil.isEmpty(descendants)) {
|
if (CollectionUtil.isEmpty(descendants)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@ -323,7 +335,7 @@ public class SaasFeatureResourceServiceImpl extends ServiceImpl<SaasFeatureResou
|
|||||||
FeatureResourceTreeNode featureResourceTreeNode = treeList.get(0);
|
FeatureResourceTreeNode featureResourceTreeNode = treeList.get(0);
|
||||||
|
|
||||||
List<String> allUniCodes = descendants.stream().map(SaasFeatureResource::getUniCode).filter(StringUtils::isNotBlank).collect(Collectors.toList());
|
List<String> allUniCodes = descendants.stream().map(SaasFeatureResource::getUniCode).filter(StringUtils::isNotBlank).collect(Collectors.toList());
|
||||||
fillPageElement2PageFeatureResource(treeList, allUniCodes);
|
fillPageElement2PageFeatureResource(treeList, allUniCodes, param);
|
||||||
return featureResourceTreeNode;
|
return featureResourceTreeNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -802,7 +814,13 @@ public class SaasFeatureResourceServiceImpl extends ServiceImpl<SaasFeatureResou
|
|||||||
return parent.getPath();
|
return parent.getPath();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void fillPageElement2PageFeatureResource(List<FeatureResourceTreeNode> featureResourceTreeNodes, List<String> allUniCodes) {
|
private void fillPageElement2PageFeatureResource(List<FeatureResourceTreeNode> featureResourceTreeNodes,
|
||||||
|
List<String> allUniCodes,
|
||||||
|
DetailFeatureResourceReq detailFeatureResourceReq) {
|
||||||
|
if (BooleanUtils.isNotTrue(detailFeatureResourceReq.getNeedPageElement())) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
Map<String, List<PageElementBasicDTO>> uniCodeElementsMap = saasPageElementService.getByTerminalAndUniCodes(featureResourceTreeNodes.get(0).getTerminal(), allUniCodes)
|
Map<String, List<PageElementBasicDTO>> uniCodeElementsMap = saasPageElementService.getByTerminalAndUniCodes(featureResourceTreeNodes.get(0).getTerminal(), allUniCodes)
|
||||||
.stream().collect(Collectors.groupingBy(PageElementBasicDTO::getUniCode));
|
.stream().collect(Collectors.groupingBy(PageElementBasicDTO::getUniCode));
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user