/* * 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.sxkj.system.mapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.MapKey; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.sxkj.common.node.TreeStringNode; import org.sxkj.system.entity.Dept; import org.sxkj.system.excel.DeptExcel; import org.sxkj.system.param.DeptExportParam; import org.sxkj.system.param.DeptPageParam; import org.sxkj.system.vo.DeptVO; import java.util.List; import java.util.Map; /** * DeptMapper 接口 * * @author Chill */ @Mapper 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 * @return */ List lazyTree(String tenantId, Long parentId, Integer level); /** * 获取部门名 * * @param ids * @return */ List getDeptNames(Long[] ids); /** * 获取部门树形结构 * * @param deptId * @return */ @MapKey("id") Map getTreeList(@Param("deptId") String deptId); /** * 自定义详情查询-根据系统配置id * * @param dept * @return */ DeptVO getDetailBySysConfigId(@Param("dept") DeptVO dept); /** * 下拉机构列表查询 * * @param deptId * @return */ List selectDeptList(@Param("deptId") String deptId); /** * 查询父级机构信息(一级机构) * * @param deptId * @return */ DeptVO getParentDeptInfo(@Param("deptId") String deptId); /** * 查询机构树(除本机机构以外的机构) * * @param deptId * @return */ @MapKey("id") Map getDeptTreeByNotItself(@Param("deptId") String deptId, @Param("deviceSn") String deviceSn); /** * 懒加载获取部门树形结构(子集) * * @param parentId * @return */ List getChildLazyTree(Long parentId, Map param); String getFullRegionName(String areaCode); String getSingleRegionName(String areaCode); /** * 查询部门分页数据 * * @param page * @param deptPageParam * @return */ IPage selectDeptPage(IPage page, DeptPageParam deptPageParam); /** * 导出部门数据 * * @param deptExportParam * @return */ List exportDept(DeptExportParam deptExportParam); }