/*
|
* Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
|
*
|
* Redistribution and use in source and binary forms, with or without
|
* modification, are permitted provided that the following conditions are met:
|
*
|
* Redistributions of source code must retain the above copyright notice,
|
* this list of conditions and the following disclaimer.
|
* Redistributions in binary form must reproduce the above copyright
|
* notice, this list of conditions and the following disclaimer in the
|
* documentation and/or other materials provided with the distribution.
|
* Neither the name of the dreamlu.net developer nor the names of its
|
* contributors may be used to endorse or promote products derived from
|
* this software without specific prior written permission.
|
* Author: Chill 庄骞 (smallchill@163.com)
|
*/
|
package org.springblade.modules.system.mapper;
|
|
import com.baomidou.mybatisplus.annotation.SqlParser;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import org.apache.ibatis.annotations.MapKey;
|
import org.apache.ibatis.annotations.Param;
|
import org.springblade.common.vo.DeptVo;
|
import org.springblade.modules.system.entity.Dept;
|
import org.springblade.modules.system.node.TreeNodes;
|
import org.springblade.modules.system.vo.DeptVO;
|
import org.springblade.modules.system.vo.UserVO;
|
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* Mapper 接口
|
*
|
* @author Chill
|
*/
|
public interface DeptMapper extends BaseMapper<Dept> {
|
|
/**
|
* 懒加载部门列表
|
*
|
* @param tenantId
|
* @param parentId
|
* @param param
|
* @return
|
*/
|
List<DeptVO> lazyList(String tenantId, Long parentId, Map<String, Object> param);
|
|
/**
|
* 获取树形节点
|
*
|
* @param tenantId
|
* @return
|
*/
|
List<DeptVO> tree(String tenantId);
|
|
/**
|
* 懒加载获取树形节点
|
*
|
* @param tenantId
|
* @param parentId
|
* @param type 不为空时查公安局
|
* @return
|
*/
|
List<DeptVO> lazyTree(String tenantId, Long parentId,Integer type);
|
|
/**
|
* 懒加载获取树形节点
|
*
|
* @return
|
*/
|
List<DeptVO> lazyTrees();
|
|
/**
|
* 获取部门名
|
*
|
* @param ids
|
* @return
|
*/
|
List<String> getDeptNames(Long[] ids);
|
|
/**
|
* 分局树状信息
|
* @return
|
*/
|
List<String> selectIn();
|
List<Map<Object,String>> selectCount(String name);
|
List<Map<Object,String>> selectId(String id);
|
Map<Object,Integer> selectHold(String deptid);
|
|
/**
|
* 懒加载获取部门树形结构,不包含顶级管理员公安局
|
*/
|
List<DeptVO> securityLazyTree(@Param("jurisdiction") String jurisdiction, Long parentId);
|
List<DeptVO> selectInfo();
|
|
/**
|
* 查询所有的部门信息
|
* @return
|
*/
|
List<DeptVo> selDeptList();
|
/**
|
* 懒加载获取部门树形结构(包含用户数据)
|
* @return
|
*/
|
@SqlParser(filter=true)
|
List<DeptVO> lazyTreeUser(String tenantId, @Param("parentId") Long parentId);
|
Long add(Dept dept);
|
|
/**
|
* 懒加载获取部门树形结构(按分类查询)
|
*/
|
List<DeptVO> lazyTreeType(String tenantId, String deptCategory, Long parentId);
|
|
/**
|
* 懒加载获取部门树形结构(包含用户数据)app
|
* @param type 1:保安对保安 2:保安向民警 3:民警向民警
|
* @return
|
*/
|
@SqlParser(filter=true)
|
List<DeptVO> lazyTreeUserApp(@Param("type")Integer type,@Param("jurisdiction")String jurisdiction);
|
|
/**
|
* 懒加载获取部门树形结构(包含用户数据),只查下一级的数据
|
* @return
|
*/
|
@MapKey(value = "id")
|
@SqlParser(filter=true)
|
Map<Long, TreeNodes> lazyTreeUsers(@Param("type") Integer type,
|
@Param("deptId") Long deptId,
|
@Param("jurisdiction")String jurisdiction);
|
|
/**
|
* 懒加载获取部门树形结构(包含用户数据),只查下一级的数据
|
* @return
|
*/
|
@MapKey(value = "id")
|
@SqlParser(filter=true)
|
Map<Long, TreeNodes> lazyTreeUsersPublicSecurity(@Param("type") Integer type,
|
@Param("deptId") Long deptId,
|
@Param("jurisdiction")String jurisdiction);
|
/**
|
* 懒加载获取部门树形结构(包含用户数据),只查下一级的数据 民警向民警汇报
|
* @return
|
*/
|
@MapKey(value = "id")
|
@SqlParser(filter=true)
|
Map<Long, TreeNodes> lazyTreeUsersPublicSecuritys(@Param("type") Integer type,
|
@Param("deptId") Long deptId,
|
@Param("jurisdiction")String jurisdiction);
|
|
/**
|
* 懒加载获取部门树形结构,根据辖区查询
|
*/
|
List<DeptVO> lazyTreeJurisdiction(@Param("jurisdiction")String jurisdiction,
|
@Param("deptId")Long parentId);
|
|
List<DeptVO> lazyTreeCity(String tenantId, Long parentId);
|
|
List<DeptVO> lazyTreeCityOne(String tenantId, Long parentId);
|
|
/**
|
* 查询用户信息
|
* @param userId
|
* @return
|
*/
|
UserVO getUserInfoById(String userId);
|
}
|