ISysUserService.java 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230
  1. package com.xunmei.system.service;
  2. import com.baomidou.mybatisplus.extension.service.IService;
  3. import com.xunmei.common.core.domain.message.domain.CoreAnnouncementNotificationToRole;
  4. import com.xunmei.common.core.web.page.TableDataInfo;
  5. import com.xunmei.system.api.domain.SysRole;
  6. import com.xunmei.system.api.domain.SysUser;
  7. import com.xunmei.system.domain.vo.SysUserListVo;
  8. import com.xunmei.system.domain.vo.SysUserVO;
  9. import com.xunmei.system.api.dto.SysRoleOrgDTO;
  10. import com.xunmei.system.util.UserExport;
  11. import java.util.List;
  12. /**
  13. * 用户 业务层
  14. *
  15. * @author xunmei
  16. */
  17. public interface ISysUserService extends IService<SysUser> {
  18. /**
  19. * 根据条件分页查询用户列表
  20. *
  21. * @param user 用户信息
  22. * @return 用户信息集合信息
  23. */
  24. TableDataInfo<SysUser> selectUserList(SysUser user);
  25. List<SysUser> selectSyncUserList(SysUser user);
  26. /**
  27. * 根据条件分页查询已分配用户角色列表
  28. *
  29. * @param user 用户信息
  30. * @return 用户信息集合信息
  31. */
  32. TableDataInfo<SysUser> selectAllocatedList(SysUserVO user);
  33. /**
  34. * 根据条件分页查询未分配用户角色列表
  35. *
  36. * @param user 用户信息
  37. * @return 用户信息集合信息
  38. */
  39. TableDataInfo<SysUser> selectUnallocatedList(SysUserVO user);
  40. /**
  41. * 通过用户名查询用户
  42. *
  43. * @param userName 用户名
  44. * @return 用户对象信息
  45. */
  46. SysUser selectUserByUserName(String userName);
  47. /**
  48. * 通过用户ID查询用户
  49. *
  50. * @param userId 用户ID
  51. * @return 用户对象信息
  52. */
  53. SysUser selectUserById(Long userId);
  54. /**
  55. * 根据用户ID查询用户所属角色组
  56. *
  57. * @param userName 用户名
  58. * @return 结果
  59. */
  60. String selectUserRoleGroup(String userName);
  61. /**
  62. * 根据用户ID查询用户所属岗位组
  63. *
  64. * @param userName 用户名
  65. * @return 结果
  66. */
  67. String selectUserPostGroup(String userName);
  68. /**
  69. * 校验用户名称是否唯一
  70. *
  71. * @param user 用户信息
  72. * @return 结果
  73. */
  74. boolean checkUserNameUnique(SysUser user);
  75. /**
  76. * 校验手机号码是否唯一
  77. *
  78. * @param user 用户信息
  79. * @return 结果
  80. */
  81. boolean checkPhoneUnique(SysUser user);
  82. /**
  83. * 校验email是否唯一
  84. *
  85. * @param user 用户信息
  86. * @return 结果
  87. */
  88. boolean checkEmailUnique(SysUser user);
  89. /**
  90. * 校验用户是否允许操作
  91. *
  92. * @param user 用户信息
  93. */
  94. void checkUserAllowed(SysUser user);
  95. /**
  96. * 校验用户是否有数据权限
  97. *
  98. * @param userId 用户id
  99. */
  100. void checkUserDataScope(Long userId);
  101. /**
  102. * 新增用户信息
  103. *
  104. * @param user 用户信息
  105. * @return 结果
  106. */
  107. int insertUser(SysUser user);
  108. /**
  109. * 注册用户信息
  110. *
  111. * @param user 用户信息
  112. * @return 结果
  113. */
  114. boolean registerUser(SysUser user);
  115. /**
  116. * 修改用户信息
  117. *
  118. * @param user 用户信息
  119. * @return 结果
  120. */
  121. int updateUser(SysUser user);
  122. /**
  123. * 用户授权角色
  124. *
  125. * @param userId 用户ID
  126. * @param roleIds 角色组
  127. */
  128. void insertUserAuth(Long userId, Long[] roleIds);
  129. /**
  130. * 修改用户状态
  131. *
  132. * @param user 用户信息
  133. * @return 结果
  134. */
  135. int updateUserStatus(SysUser user);
  136. /**
  137. * 修改用户基本信息
  138. *
  139. * @param user 用户信息
  140. * @return 结果
  141. */
  142. int updateUserProfile(SysUser user);
  143. /**
  144. * 修改用户头像
  145. *
  146. * @param userName 用户名
  147. * @param avatar 头像地址
  148. * @return 结果
  149. */
  150. boolean updateUserAvatar(String userName, String avatar);
  151. /**
  152. * 重置用户密码
  153. *
  154. * @param user 用户信息
  155. * @return 结果
  156. */
  157. int resetPwd(SysUser user);
  158. /**
  159. * 重置用户密码
  160. *
  161. * @param userName 用户名
  162. * @param password 密码
  163. * @return 结果
  164. */
  165. int resetUserPwd(String userName, String password);
  166. /**
  167. * 通过用户ID删除用户
  168. *
  169. * @param userId 用户ID
  170. * @return 结果
  171. */
  172. int deleteUserById(Long userId);
  173. /**
  174. * 批量删除用户信息
  175. *
  176. * @param userIds 需要删除的用户ID
  177. * @return 结果
  178. */
  179. int deleteUserByIds(Long[] userIds);
  180. /**
  181. * 导入用户数据
  182. *
  183. * @param userList 用户数据列表
  184. * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据
  185. * @param operName 操作用户
  186. * @return 结果
  187. */
  188. String importUser(List<SysUser> userList, Boolean isUpdateSupport, String operName);
  189. void batchSaveOrUpdate(List<SysUser> sysUserList);
  190. List<SysUserListVo> selectUserByOrgId(Long orgId);
  191. List<SysRole> selectrolesByOrgId(Long orgId);
  192. List<SysUser> selectUserListByRole(List<CoreAnnouncementNotificationToRole> notificationToRoles);
  193. List<SysUser> selectUserListByRoleAndOrg(SysRoleOrgDTO sysRoleOrgDTO);
  194. List<SysUser> selectAllUser();
  195. List<UserExport> down(SysUser user);
  196. }