package com.ruoyi.system.service; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.entity.SysDept; import java.util.List; /** * 部门管理 服务层 * * @author ruoyi */ public interface ISysDeptService extends IService { /** * 查询部门管理数据 * * @param dept 部门信息 * @return 部门信息集合 */ public List selectDeptList(SysDept dept); /** * 构建前端所需要树结构 * * @param depts 部门列表 * @return 树结构列表 */ public List buildDeptTree(List depts); /** * 构建前端所需要下拉树结构 * * @param depts 部门列表 * @return 下拉树结构列表 */ public List buildDeptTreeSelect(List depts); /** * 根据角色ID查询部门树信息 * * @param roleId 角色ID * @return 选中部门列表 */ public List selectDeptListByRoleId(String roleId); /** * 根据部门ID查询信息 * * @param deptId 部门ID * @return 部门信息 */ public SysDept selectDeptById(String deptId); /** * 根据ID查询所有子部门(正常状态) * * @param deptId 部门ID * @return 子部门数 */ public long selectNormalChildrenDeptById(String deptId); /** * 是否存在部门子节点 * * @param deptId 部门ID * @return 结果 */ public boolean hasChildByDeptId(String deptId); /** * 查询部门是否存在用户 * * @param deptId 部门ID * @return 结果 true 存在 false 不存在 */ public boolean checkDeptExistUser(String deptId); /** * 校验部门名称是否唯一 * * @param dept 部门信息 * @return 结果 */ public String checkDeptNameUnique(SysDept dept); /** * 校验部门是否有数据权限 * * @param deptId 部门id */ public void checkDeptDataScope(String deptId); /** * 新增保存部门信息 * * @param dept 部门信息 * @return 结果 */ public int insertDept(SysDept dept); /** * 修改保存部门信息 * * @param dept 部门信息 * @return 结果 */ public int updateDept(SysDept dept); /** * 删除部门管理信息 * * @param deptId 部门ID * @return 结果 */ public int deleteDeptById(String deptId); List queryTUcDept(); /** * 寻找该部门的机构部门 * * @param sysDept * @return */ SysDept getOrgDept(SysDept sysDept); /** * 查询当前部门以及子部门 * * @param deptId * @return */ List queryChildDeptId(String deptId); /** * 处理缺失的部门数据 * * @param parentId * @return */ SysDept dealMissDept(String parentId); }