老师 关于level不太理解的两个方法
来源:7-1 新增部门接口开发
华山小叮当
2018-03-15
public static String calculateLevel(String parentLevel, int parentId) {
if (StringUtils.isBlank(parentLevel)) {
return ROOT;
} else {
return StringUtils.join(parentLevel, SEPARATOR, parentId);
}
}
这个方法中的参数parentLevel 是怎么来的
然后是这个方法
private String getLevel(Integer deptId){
SysDept dept = sysDeptMapper.selectByPrimaryKey(deptId);
if(dept == null){//parentId为0
return null;
}
return dept.getLevel();
}
此方法最后返回的是这个部门的level
再是最后组装的时候
dept.setLevel(LevelUtil.calculateLevel(this.getLevel(param.getParentId()),param.getParentId()));
以上这些操作的都是SysDept本身的level啊 并没有看到获取自身level的上一级level啊写回答
1回答
-
你好,是这样理解的:
calculateLevel这个方法要传入的是当前部门上一级部门的level和上一级部门的id,然后计算(其实就是拼接)当前部门的level,赋值给当前部门的level。这里传入的参数需要注意都是他的上级部门的。
关于这个问题,我还单独写了一篇手记:
https://www.imooc.com/article/21103
祝你学习愉快~
032018-03-15
相似问题