ISysUserService.java 5.4 KB

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