ISysUserService.java 5.5 KB

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