/* * 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 { /** * 懒加载部门列表 * * @param tenantId * @param parentId * @param param * @return */ List lazyList(String tenantId, Long parentId, Map param); /** * 获取树形节点 * * @param tenantId * @return */ List tree(String tenantId); /** * 懒加载获取树形节点 * * @param tenantId * @param parentId * @param type 不为空时查公安局 * @return */ List lazyTree(String tenantId, Long parentId,Integer type); /** * 懒加载获取树形节点 * * @return */ List lazyTrees(); /** * 获取部门名 * * @param ids * @return */ List getDeptNames(Long[] ids); /** * 分局树状信息 * @return */ List selectIn(); List> getCount(String name); List> selectId(String id); Map selectHold(String deptid); /** * 懒加载获取部门树形结构,不包含顶级管理员公安局 */ List securityLazyTree(@Param("jurisdiction") String jurisdiction, @Param("parentId")Long parentId); List selectInfo(); List selectInfos(); /** * 查询所有的部门信息 * @return */ List selDeptList(); /** * 懒加载获取部门树形结构(包含用户数据) * @return */ @SqlParser(filter=true) List lazyTreeUser(String tenantId, @Param("parentId") Long parentId); Long add(Dept dept); /** * 懒加载获取部门树形结构(按分类查询) */ List lazyTreeType(String tenantId, String deptCategory, Long parentId); /** * 懒加载获取部门树形结构(包含用户数据)app * @param type 1:保安对保安 2:保安向民警 3:民警向民警 * @return */ @SqlParser(filter=true) List lazyTreeUserApp(@Param("type")Integer type,@Param("jurisdiction")String jurisdiction); /** * 懒加载获取部门树形结构(包含用户数据),只查下一级的数据 * @return */ @MapKey(value = "id") @SqlParser(filter=true) Map lazyTreeUsers(@Param("type") Integer type, @Param("deptId") Long deptId, @Param("jurisdiction")String jurisdiction); /** * 懒加载获取部门树形结构(包含用户数据),只查下一级的数据 * @return */ @MapKey(value = "id") @SqlParser(filter=true) Map lazyTreeUsersPublicSecurity(@Param("type") Integer type, @Param("deptId") Long deptId, @Param("jurisdiction")String jurisdiction); /** * 懒加载获取部门树形结构(包含用户数据),只查下一级的数据 民警向民警汇报 * @return */ @MapKey(value = "id") @SqlParser(filter=true) Map lazyTreeUsersPublicSecuritys(@Param("type") Integer type, @Param("deptId") Long deptId, @Param("jurisdiction")String jurisdiction); /** * 懒加载获取部门树形结构,根据辖区查询 */ List lazyTreeJurisdiction(@Param("jurisdiction")String jurisdiction, @Param("deptId")Long parentId); List lazyTreeCity(String tenantId, Long parentId); List lazyTreeCityOne(String tenantId, Long parentId); /** * 查询用户信息 * @param userId * @return */ UserVO getUserInfoById(String userId); /** * 查所有公安局数据 * @return */ List lazyTreeByJurisdiction(); /** * 查询所有的保安公司机构信息 * @return */ List securityDeptUnitList(@Param("parentId")Long parentId, @Param("deptId")Long deptId); /** * 查询当前保安单位下的派遣单位信息 * @param deptId * @return */ List getDispatchUnitList(@Param("deptId") Long deptId); }