老师 关于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
相似问题