package com.ruoyi.system.service; import java.math.BigDecimal; import java.util.List; import com.ruoyi.common.core.domain.TreeSelect; import com.ruoyi.common.core.domain.entity.SysDept; import com.ruoyi.common.core.domain.entity.SysUser; /** * 部门管理 服务层 * * @author ruoyi */ public interface ISysDeptService { /** * 查询部门管理数据 * * @param dept 部门信息 * @return 部门信息集合 */ public List selectDeptList(SysDept dept); /** * 查询部门树结构信息 * * @param dept 部门信息 * @return 部门树信息集合 */ public List selectDeptTreeList(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(Long roleId); /** * 根据部门ID查询信息 * * @param deptId 部门ID * @return 部门信息 */ public SysDept selectDeptById(Long deptId); /** * 根据app用户id查询信息 * * @param appUserId app用户id * @return 部门信息 */ public SysDept selectDeptByAppUserId(Long appUserId); /** * 根据ID查询所有子部门(正常状态) * * @param deptId 部门ID * @return 子部门数 */ public int selectNormalChildrenDeptById(Long deptId); /** * 是否存在部门子节点 * * @param deptId 部门ID * @return 结果 */ public boolean hasChildByDeptId(Long deptId); /** * 查询部门是否存在用户 * * @param deptId 部门ID * @return 结果 true 存在 false 不存在 */ public boolean checkDeptExistUser(Long deptId); /** * 查询部门是否存在运营区 * * @param deptId 部门ID * @return 结果 true 存在 false 不存在 */ public boolean checkDeptExistArea(Long deptId); /** * 查询部门是否存在收费方式 * * @param deptId 部门ID * @return 结果 true 存在 false 不存在 */ public boolean checkDeptExistFeeRule(Long deptId); /** * 校验部门名称是否唯一 * * @param dept 部门信息 * @return 结果 */ public boolean checkDeptNameUnique(SysDept dept); /** * 校验部门是否有数据权限 * * @param deptId 部门id */ public void checkDeptDataScope(Long deptId); /** * 新增保存部门信息 * * @param dept 部门信息 * @return 结果 */ public int insertDept(SysDept dept); /** * 修改保存部门信息 * * @param dept 部门信息 * @return 结果 */ public int updateDept(SysDept dept); /** * 删除部门管理信息 * * @param deptId 部门ID * @return 结果 */ public int deleteDeptById(Long deptId); /** * 根据证书序列号获取运营商 * * @param wechatpaySerial 证书序列号 * @return 结果 */ SysDept selectEtOperatingAreaBySerialNumber(String wechatpaySerial); /** * 获取运营商余额 * * @return 结果 */ void changeDeptBalance(BigDecimal negate, Long deptId); /** * 管理员提现 */ int adminWithdraw(BigDecimal amount,SysDept dept,String method); /** * 绑定app用户 */ int bandAppUser(SysDept dept); /** * 管理员提现失败 */ int rejectWithdraw(Long flowId); /** * 运营商数 */ int selectAllCount(); /** * 独立小程序 */ int getAppCount(); /** * 所有余额 */ BigDecimal selectAllBalance(); }