3.17 处理体系结构数据接口 以及体系结构数据查询修改

This commit is contained in:
yuezhihang
2022-03-17 14:56:43 +08:00
parent 0ccf54aaf1
commit 99c6771c96
6 changed files with 62 additions and 3 deletions
@@ -79,6 +79,13 @@ public class TsResourceController extends BaseController<TsResource> {
return Result.success(tsResources);
}
@ApiOperation("查询有权限资源")
@GetMapping("/dealWithData")
public ResponseMessage<Object> dealWithData(TsResource tsResource){
tsResourceService.dealWithData();
return Result.success();
}
// @ApiOperation("查询所有资源")
// @GetMapping("/getDefault")
// public ResponseMessage<List<TsResource>> getDefault(){
@@ -58,6 +58,10 @@ public class TsResource extends BaseEntity {
@TableField("PARENT_ID")
private String parentId;
@ApiModelProperty(value = "父级ID")
@TableField(exist = false)
private String middleParentId;
@ApiModelProperty(value = "父级ID集合")
@TableField("PARENT_IDS")
private String parentIds;
@@ -57,4 +57,6 @@ public interface ITsResourceService extends IService<TsResource> {
List<TsResource> getResourceByIds(List<String> resourceIds, String sorDivide);
List<String> getChildMenuList(String menuId);
boolean dealWithData();
}
@@ -36,6 +36,9 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
@Autowired
private ITsUserService tsUserService;
@Autowired
private ITsResourceService iTsResourceService;
public List<TsResource> selectMenuByRole(TsResource sarMenu) {
List<TsResource> list = dao.selectMenuByRole(sarMenu);
if (list == null) {
@@ -231,7 +234,7 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
*/
resource.setTreeType("tsr");
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
TsResourceQueryWrapper.like("PARENT_IDS",resource.getId());
TsResourceQueryWrapper.like("PARENT_IDS",","+resource.getId()+",");
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
@@ -269,7 +272,7 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
for(TsResource resource:TsResources){
resource.setTreeType("tsr");
QueryWrapper<TsResource> TsResourceQueryWrapper=new QueryWrapper<>();
TsResourceQueryWrapper.like("PARENT_IDS",resource.getId());
TsResourceQueryWrapper.like("PARENT_IDS",","+resource.getId()+",");
TsResourceQueryWrapper.in(null!=access,"ID",access);
TsResourceQueryWrapper.orderByAsc("DISPLAY_SEQ");
List<TsResource> children=dao.selectList(TsResourceQueryWrapper);
@@ -430,4 +433,44 @@ public class TsResourceServiceImpl extends ServiceImpl<TsResourceDao, TsResource
}
return menuIds;
}
@Override
public boolean dealWithData() {
QueryWrapper<TsResource> wrapper=new QueryWrapper<>();
List<TsResource> list=iTsResourceService.list(wrapper);
Map<String,TsResource> map=new HashMap<>();
list.forEach(tsResource ->{
if (null!=tsResource.getParentId()) {
tsResource.setParentIds(",");
}
tsResource.setMiddleParentId(tsResource.getParentId());
map.put(tsResource.getId(),tsResource);
});
list.forEach(tsResource -> dealData(tsResource,map));
iTsResourceService.updateBatchById(list);
QueryWrapper<TsResource> wrapper1=new QueryWrapper<>();
wrapper1.eq("PARENT_ID", "0").eq("PARENT_IDS",",");
TsResource user = new TsResource();
user.setParentIds("");
iTsResourceService.update(user,wrapper1);
return true;
}
public boolean dealData(TsResource tsResource,Map<String,TsResource> map){
if (null!=tsResource.getParentId() && !"".equals(tsResource.getParentId()) && !"0".equals(tsResource.getParentId())){
tsResource.setParentIds(tsResource.getParentIds()+tsResource.getParentId()+",");
if (null!=map.get(tsResource.getParentId())) {
tsResource.setParentId(map.get(tsResource.getParentId()).getParentId());
}else {
tsResource.setParentId(tsResource.getMiddleParentId());
return true;
}
return dealData(tsResource,map);
}else {
tsResource.setParentId(tsResource.getMiddleParentId());
return true;
}
}
}