feat: There is no way the, 角色标准数据权限体系优化 国内标准左侧树 加入技术体系 待完成

This commit is contained in:
super_liu
2022-02-18 17:49:04 +08:00
parent 8e7e210d35
commit 020b1e6a3f
5 changed files with 70 additions and 10 deletions
@@ -149,10 +149,10 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
tsResourceQueryWrapper.eq("sor_divide",tsResource.getSorDivide());
}
tsResourceQueryWrapper.isNull("PARENT_ID");
List<String> list = new ArrayList<>();
list.add("INLAND_STAND");
list.add("FOREIGN_STAND");
tsResourceQueryWrapper.notIn("SOR_DIVIDE",list);
// List<String> list = new ArrayList<>();
// list.add("INLAND_STAND");
// list.add("FOREIGN_STAND");
// tsResourceQueryWrapper.notIn("SOR_DIVIDE",list);
tsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
List<TsResource> TsResources=dao.selectList(tsResourceQueryWrapper);
for(TsResource TsResource:TsResources){
@@ -302,12 +302,12 @@ public class SarStandardsInfoServiceImpl extends ServiceImpl<SarStandardsInfoDao
qw.isNull("PARENT_ID");
List<TsResource> children = iTsResourceService.list(qw);
if(children.isEmpty() && !page.getMenuId().equals("nomenu")){
// List<String> getMenuIdList = tsUserService.getResourceUserId(page.getUserId());
// if (getMenuIdList != null && !getMenuIdList.isEmpty()) {
// page.setMenuRoleList(getMenuIdList);
// } else {
// page.setMenuRoleList(null);
// }
List<String> getMenuIdList = tsUserService.getResourceUserId(page.getUserId());
if (getMenuIdList != null && !getMenuIdList.isEmpty()) {
page.setMenuRoleList(getMenuIdList);
} else {
page.setMenuRoleList(null);
}
List<String> ids = iTsResourceService.getChildMenuList(page.getMenuId());
if (ids != null && !ids.isEmpty()) {
page.setMenuAllChildrenIdList(ids);
@@ -40,6 +40,13 @@ public class SarMenuStandardController extends BaseController<SarMenuStandard> {
return Result.success(sarMenus);
}
@ApiOperation("查询有权限资源")
@GetMapping("/getListStand")
public ResponseMessage<List<SarMenuStandard>> getListStand(SarMenuStandard sarMenuStandard){
List<SarMenuStandard> tsResources=iSarMenuStandardService.getListStand(sarMenuStandard);
return Result.success(tsResources);
}
@ApiOperation("根据ID查询菜单")
@GetMapping("/getSarMenuStandardById")
public ResponseMessage<SarMenuStandard> getSarMenuStandardById(@RequestParam String menuId){
@@ -21,6 +21,9 @@ public interface ISarMenuStandardService extends IService<SarMenuStandard> {
*/
List<SarMenuStandard> getAll(String dicId);
List<SarMenuStandard> getListStand(SarMenuStandard sarMenuStandard);
/**
* 添加菜单
* @param sarMenu:菜单信息
@@ -12,8 +12,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* <p>
@@ -34,6 +36,54 @@ public class SarMenuStandardServiceImpl extends ServiceImpl<SarMenuStandardDao,
return dao.selectById(id);
}
/**
* 查询有权限菜单
* @param sarMenuStandard
*/
@Override
public List<SarMenuStandard> getListStand(SarMenuStandard sarMenuStandard) {
List<SarMenuStandard> TsResources = new ArrayList<>();
QueryWrapper<SarMenuStandard> queryWrapper =new QueryWrapper<>();
if(sarMenuStandard.getSorDivide()!=null){
queryWrapper.eq("sor_divide",sarMenuStandard.getSorDivide());
}
if(sarMenuStandard.getDicId()!=null){
queryWrapper.eq("DIC_ID",sarMenuStandard.getDicId());
}
queryWrapper.isNull("PARENT_ID");
queryWrapper.orderByAsc("DISPLAY_SEQ");
TsResources=dao.selectList(queryWrapper);
for(SarMenuStandard resource:TsResources){
QueryWrapper<SarMenuStandard> TsResourceQueryWrapper=new QueryWrapper<>();
TsResourceQueryWrapper.like("PARENT_IDS",resource.getId());
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
List<SarMenuStandard> children=dao.selectList(TsResourceQueryWrapper);
resource.setChildren(recursionGetListChildrenStand((resource),(children)));
}
return TsResources;
}
/**
* 递归调用获取子节点
* @return List<TsResource>
*/
private List<SarMenuStandard> recursionGetListChildrenStand(SarMenuStandard resource,List<SarMenuStandard> children){
List<SarMenuStandard> tsResources = children.stream()
.filter(resource1 -> resource1.getParentId().equals(resource.getId()))
.collect(Collectors.toList());
if(!tsResources.isEmpty()){
tsResources = tsResources.stream().sorted(Comparator.comparing(resource1 -> resource1.getDisplaySeq())).collect(Collectors.toList());
tsResources.forEach(resource1 -> {
resource1.setChildren(recursionGetListChildrenStand((resource1),(children)));
});
}
return tsResources;
}
/**
* 查询所有菜单
*/