From 3906456daa37e7c2a45ee0b861ac86576e14140f Mon Sep 17 00:00:00 2001 From: super_liu <396572590@qq.com> Date: Wed, 18 Aug 2021 13:00:46 +0800 Subject: [PATCH] feat: There is no way the auth menu --- .../controller/TsResourceController.java | 7 +++ .../service/ITsResourceService.java | 2 + .../service/impl/TsResourceServiceImpl.java | 48 +++++++++++++++++++ 3 files changed, 57 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java index 7ab32bdc..c8bd1e35 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/controller/TsResourceController.java @@ -53,6 +53,13 @@ public class TsResourceController extends BaseController { return Result.success(tsResources); } + @ApiOperation("查询有权限资源") + @GetMapping("/getList") + public ResponseMessage> getList(TsResource tsResource){ + List tsResources=tsResourceService.getList(tsResource); + return Result.success(tsResources); + } + // @ApiOperation("查询所有资源") // @GetMapping("/getDefault") // public ResponseMessage> getDefault(){ diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java index 2335e30e..1f20ec11 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/ITsResourceService.java @@ -34,6 +34,8 @@ public interface ITsResourceService extends IService { List getAll(TsResource tsResource); + List getList(TsResource tsResource); + List getDefaultByName(); ResponseMessage addResource(TsResource tsResource); diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java index 5da4ba92..17df5063 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarResource/service/impl/TsResourceServiceImpl.java @@ -7,6 +7,7 @@ import com.adc.da.login.util.UserUtils; import com.adc.da.slrs.sarResource.dao.TsResourceDao; import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarResource.service.ITsResourceService; +import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.util.UUIDUtils; import com.adc.da.utils.treetool.Tree; import com.adc.da.utils.treetool.TreeNode; @@ -34,6 +35,9 @@ public class TsResourceServiceImpl extends ServiceImpl selectMenuByRole(TsResource sarMenu) { List list = dao.selectMenuByRole(sarMenu); if (list == null) { @@ -155,6 +159,34 @@ public class TsResourceServiceImpl extends ServiceImpl getList(TsResource tsResource) { + List TsResources = new ArrayList<>(); + + List getMenuIdList = tsUserService.getResourceId(new TsResource()); + + if(!getMenuIdList.isEmpty()){ + QueryWrapper tsResourceQueryWrapper=new QueryWrapper<>(); + if(tsResource.getSorDivide()!=null){ + tsResourceQueryWrapper.eq("sor_divide",tsResource.getSorDivide()); + } + tsResourceQueryWrapper.isNull("PARENT_ID"); + tsResourceQueryWrapper.in("ID",getMenuIdList); + tsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ"); + TsResources=dao.selectList(tsResourceQueryWrapper); + + for(TsResource TsResource:TsResources){ + TsResource.setChildren(recursionGetListChildren((TsResource),(getMenuIdList))); + } + } + + return TsResources; + } + @Override public List getDefaultByName() { List menusNames=new ArrayList<>(); @@ -248,6 +280,22 @@ public class TsResourceServiceImpl extends ServiceImpl(); } + /** + * 递归调用获取子节点 + * @param parent:父节点 + * @return List + */ + private List recursionGetListChildren(TsResource parent,List getMenuIdList){ + QueryWrapper TsResourceQueryWrapper=new QueryWrapper<>(); + TsResourceQueryWrapper.eq("PARENT_ID",parent.getId()); + TsResourceQueryWrapper.in("ID",getMenuIdList); + List children=dao.selectList(TsResourceQueryWrapper); + for(TsResource TsResource:children){ + TsResource.setChildren(recursionGetListChildren((TsResource),(getMenuIdList))); + } + return children; + } + /** * 递归调用获取子节点 * @param parent:父节点