zoukankan      html  css  js  c++  java
  • flowable获取上级主管

    //主管
            Dept managerDept = deptUserUtil.getManagerDept(bean.getCreateDept(),bean.getCreateUser());
            //上级主管
            Dept directorDept = deptUserUtil.getManagerDept(managerDept.getId(),managerDept.getManagerUser());
            //上上级主管
            Dept presidentDept = deptUserUtil.getManagerDept(directorDept.getId(),directorDept.getManagerUser());
    
    
    public class DeptUserUtil {
    /**
         * 根据部门deptId,获取上级部门(包含上级主管managerUser),区分用户userId
         */
        public Dept getManagerDept(Long deptId,Long distinctUserId){
            Dept dept = getDeptById(deptId);
            if(dept==null){
                return null;
            }
            Long managerUserId = dept.getManagerUser();
            if(distinctUserId.equals(managerUserId)){
                dept = getManagerDept(dept.getParentId(),distinctUserId);
            }
            return dept;
        }
    
        /**
         * 根据部门deptId,获取上级部门(包含上级主管managerUser),区分用户userId,设置上级部门上限
         * 部门等级 level : 1 -> 10  最高级 -> 最低级
         */
        public Dept getManagerDept(Long deptId,Long distinctUserId,Integer level){
            Dept dept = getDeptById(deptId);
            if(dept==null){
                return null;
            }
            Integer managerDeptLevel = dept.getLevel();
            Long managerUserId = dept.getManagerUser();
            if(managerDeptLevel.compareTo(level)<0){
                return null;
            }
            if(distinctUserId.equals(managerUserId)){
                dept = getManagerDept(dept.getParentId(),distinctUserId,level);
            }
            return dept;
        }
    }
  • 相关阅读:
    「WC2021」表达式求值
    [补]「WC2021」括号路径
    「CEOI2020」星际迷航
    「CEOI2018」斐波那契表示法
    CF913F
    CF1017G The Tree
    NOI2020 超现实树
    LOJ 6714 Stupid Product
    LOJ 575. 不等关系
    CF1267G
  • 原文地址:https://www.cnblogs.com/xianz666/p/13202802.html
Copyright © 2011-2022 走看看