| | |
| | | */ |
| | | @GetMapping("/security_lazy-tree") |
| | | @ApiOperation(value = "懒加载树形结构", notes = "树形结构") |
| | | public R<List<DeptVO>> securityLazyTree(String jurisdiction, Long parentId) { |
| | | List<DeptVO> tree = deptService.securityLazyTree(jurisdiction, parentId); |
| | | public R<List<DeptVO>> securityLazyTree(String jurisdiction, Long parentId,Long deptId) { |
| | | List<DeptVO> tree = deptService.securityLazyTree(jurisdiction, parentId,deptId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | |
| | | /** |
| | | * 懒加载获取部门树形结构,不包含顶级管理员公安局 |
| | | */ |
| | | List<DeptVO> securityLazyTree(@Param("jurisdiction") String jurisdiction, Long parentId); |
| | | List<DeptVO> securityLazyTree(@Param("jurisdiction") String jurisdiction, |
| | | @Param("parentId")Long parentId); |
| | | List<DeptVO> selectInfo(); |
| | | List<DeptVO> selectInfos(); |
| | | |
| | |
| | | * @return |
| | | */ |
| | | List<DeptVO> lazyTreeByJurisdiction(); |
| | | |
| | | /** |
| | | * 查询所有的保安公司机构信息 |
| | | * @return |
| | | */ |
| | | List<DeptVO> securityDeptUnitList(@Param("parentId")Long parentId, |
| | | @Param("deptId")Long deptId); |
| | | } |
| | |
| | | </select> |
| | | |
| | | <!--查询保安公司列表,保安员管理--> |
| | | <!-- <select id="securityLazyTree" resultMap="treeNodeResultMap">--> |
| | | <!-- (--> |
| | | <!-- SELECT--> |
| | | <!-- id,--> |
| | | <!-- parent_id,--> |
| | | <!-- dept_name AS title,--> |
| | | <!-- id AS "value",--> |
| | | <!-- id AS "key",--> |
| | | <!-- 0 AS "has_children"--> |
| | | <!-- FROM--> |
| | | <!-- blade_dept--> |
| | | <!-- where is_deleted = 0--> |
| | | <!-- and--> |
| | | <!-- (id = 1413470343230877697--> |
| | | <!-- or id = 1425366663452196865--> |
| | | <!-- or id = 1420222768149966850--> |
| | | <!-- or id = 1426354978959691778)--> |
| | | <!-- )--> |
| | | <!-- union--> |
| | | <!-- (--> |
| | | <!-- SELECT--> |
| | | <!-- DISTINCT--> |
| | | <!-- dept.id,--> |
| | | <!-- dept.parent_id,--> |
| | | <!-- dept.dept_name AS title,--> |
| | | <!-- dept.id AS "value",--> |
| | | <!-- dept.id AS "key",--> |
| | | <!-- (--> |
| | | <!-- SELECT--> |
| | | <!-- CASE WHEN count(1) > 0 THEN 1 ELSE 0 END--> |
| | | <!-- FROM--> |
| | | <!-- blade_dept--> |
| | | <!-- WHERE--> |
| | | <!-- parent_id = dept.id and is_deleted = 0--> |
| | | <!-- ) AS "has_children"--> |
| | | <!-- FROM--> |
| | | <!-- blade_dept dept--> |
| | | <!-- left join--> |
| | | <!-- sys_information si--> |
| | | <!-- on--> |
| | | <!-- si.departmentid = dept.id--> |
| | | <!-- left join--> |
| | | <!-- sys_jurisdiction sj--> |
| | | <!-- on--> |
| | | <!-- sj.id = si.jurisdiction--> |
| | | <!-- WHERE--> |
| | | <!-- 1=1--> |
| | | <!-- and si.stats != 3 AND si.stats!=1--> |
| | | <!-- AND dept.is_deleted = 0--> |
| | | <!-- <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'">--> |
| | | <!-- and (sj.id = #{jurisdiction} or sj.parent_id = #{jurisdiction})--> |
| | | <!-- </if>--> |
| | | <!-- )--> |
| | | <!-- </select>--> |
| | | |
| | | |
| | | <!--查询保安公司列表,保安员管理--> |
| | | <select id="securityLazyTree" resultMap="treeNodeResultMap"> |
| | | ( |
| | | SELECT |
| | | id, |
| | | parent_id, |
| | | dept_name AS title, |
| | | id AS "value", |
| | | id AS "key", |
| | | 0 AS "has_children" |
| | | FROM |
| | | blade_dept |
| | | where is_deleted = 0 |
| | | and |
| | | (id = 1413470343230877697 |
| | | or id = 1425366663452196865 |
| | | or id = 1420222768149966850 |
| | | or id = 1426354978959691778) |
| | | ) |
| | | union |
| | | ( |
| | | SELECT |
| | | DISTINCT |
| | | dept.id, |
| | |
| | | sys_jurisdiction sj |
| | | on |
| | | sj.id = si.jurisdiction |
| | | WHERE |
| | | 1=1 |
| | | and si.stats != 3 AND si.stats!=1 |
| | | where |
| | | dept.dept_category != 0 |
| | | AND dept.is_deleted = 0 |
| | | and dept.id!= 1420222961377357825 |
| | | and dept.parent_id!= 1420222961377357825 |
| | | and dept.id!= 1418458374477549569 |
| | | and dept.parent_id!= 1418458374477549569 |
| | | and dept.id!= 1426355050199945218 |
| | | <if test="jurisdiction!=null and jurisdiction!='' and jurisdiction!='1372091709474910209'"> |
| | | and (sj.id = #{jurisdiction} or sj.parent_id = #{jurisdiction}) |
| | | </if> |
| | | </select> |
| | | |
| | | |
| | | <!--查询所有的保安公司机构及子级信息--> |
| | | <select id="securityDeptUnitList" resultMap="treeNodeResultMap"> |
| | | ( |
| | | SELECT |
| | | id, |
| | | parent_id, |
| | | dept_name AS title, |
| | | id AS "value", |
| | | id AS "key", |
| | | 0 AS "has_children" |
| | | FROM |
| | | blade_dept |
| | | where id = #{deptId} |
| | | ) |
| | | union |
| | | ( |
| | | SELECT |
| | | dept.id, |
| | | dept.parent_id, |
| | | dept.dept_name AS title, |
| | | dept.id AS "value", |
| | | dept.id AS "key", |
| | | ( |
| | | SELECT |
| | | CASE WHEN count(1) > 0 THEN 1 ELSE 0 END |
| | | FROM |
| | | blade_dept |
| | | WHERE |
| | | parent_id = dept.id |
| | | ) AS "has_children" |
| | | FROM |
| | | ( |
| | | SELECT |
| | | id,parent_id,dept_name |
| | | FROM |
| | | ( |
| | | SELECT |
| | | t1.id,t1.parent_id,t1.dept_name, |
| | | IF |
| | | ( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild |
| | | FROM |
| | | ( SELECT id, parent_id,dept_name FROM blade_dept t ORDER BY parent_id, id ) t1, |
| | | ( SELECT @pids := #{deptId} ) t2 |
| | | ) t3 |
| | | WHERE |
| | | ischild != 0 |
| | | ) |
| | | dept |
| | | where 1=1 |
| | | ) |
| | | </select> |
| | | |
| | |
| | | /** |
| | | * 懒加载获取部门树形结构,不包含顶级管理员公安局 |
| | | */ |
| | | List<DeptVO> securityLazyTree(String jurisdiction, Long parentId); |
| | | List<DeptVO> securityLazyTree(String jurisdiction, Long parentId,Long deptId); |
| | | List<DeptVO> selectInfo(); |
| | | List<DeptVO> selectInfos(); |
| | | List<DeptVo> selDeptList(); |
| | |
| | | * 懒加载获取部门树形结构,不包含顶级管理员公安局 |
| | | */ |
| | | @Override |
| | | public List<DeptVO> securityLazyTree(String jurisdiction, Long parentId) { |
| | | public List<DeptVO> securityLazyTree(String jurisdiction, Long parentId,Long deptId) { |
| | | //如果传了deptId |
| | | if (null!=deptId){ |
| | | //递归查询 |
| | | // recursionDeptInfo(deptVOS, list); |
| | | //tree 组装并返回 |
| | | return ForestNodeMerger.merge(baseMapper.securityDeptUnitList(null,deptId)); |
| | | } |
| | | return ForestNodeMerger.merge(baseMapper.securityLazyTree(jurisdiction, parentId)); |
| | | } |
| | | |
| | | /** |
| | | * 递归查询子级菜单 |
| | | * @param deptVOS |
| | | * @param list |
| | | * @return |
| | | */ |
| | | private List<DeptVO> recursionDeptInfo(List<DeptVO> deptVOS,List<DeptVO> list) { |
| | | //如果有子级 |
| | | if (list.size()>0){ |
| | | deptVOS.addAll(list); |
| | | //遍历子级 |
| | | for (int i = 0; i < list.size(); i++) { |
| | | //查看是否有子级 |
| | | List<DeptVO> childList = baseMapper.securityDeptUnitList(list.get(i).getId(), null); |
| | | //如果有 |
| | | if (childList.size()>0){ |
| | | //递归 |
| | | recursionDeptInfo(deptVOS,childList); |
| | | } |
| | | } |
| | | } |
| | | return deptVOS; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据) |
| | |
| | | * 机构类型名称 |
| | | */ |
| | | private String deptCategoryName; |
| | | |
| | | } |