ISysTeacherService.java 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330
  1. package com.zd.system.service;
  2. import com.zd.model.entity.SysUser;
  3. import com.zd.system.api.entity.SysUserStudentByExcel;
  4. import com.zd.system.api.entity.SysUserTeaCherByExcel;
  5. import java.util.List;
  6. import java.util.Map;
  7. /**
  8. * 用户 业务层
  9. *
  10. * @author zd
  11. */
  12. public interface ISysTeacherService {
  13. /**
  14. * 根据条件分页查询用户列表
  15. *
  16. * @param user 用户信息
  17. * @return 用户信息集合信息
  18. */
  19. public List<SysUser> selectUserList(SysUser user);
  20. /**
  21. * 根据部门ids查询用户列表
  22. *
  23. * @param deptIds
  24. * @return
  25. */
  26. public List<SysUser> selectUserListByDeptIds(Long... deptIds);
  27. /**
  28. * 根据条件分页查询已分配用户角色列表
  29. *
  30. * @param user 用户信息
  31. * @return 用户信息集合信息
  32. */
  33. public List<SysUser> selectAllocatedList(SysUser user);
  34. /**
  35. * 根据条件分页查询未分配用户角色列表
  36. *
  37. * @param user 用户信息
  38. * @return 用户信息集合信息
  39. */
  40. public List<SysUser> selectUnallocatedList(SysUser user);
  41. /**
  42. * 通过用户名查询用户
  43. *
  44. * @param userName 用户名
  45. * @return 用户对象信息
  46. */
  47. public SysUser selectUserByUserName(String userName);
  48. /**
  49. * 通过用户卡号查询
  50. *
  51. * @param cardNum 用户名
  52. * @return 用户对象信息
  53. */
  54. public SysUser selectUserByCardNum(String cardNum);
  55. /**
  56. * 通过用户ID查询用户
  57. *
  58. * @param userId 用户ID
  59. * @return 用户对象信息
  60. */
  61. public SysUser selectUserById(Long userId);
  62. /**
  63. * 根据用户ID查询用户所属角色组
  64. *
  65. * @param userName 用户名
  66. * @return 结果
  67. */
  68. public String selectUserRoleGroup(String userName);
  69. /**
  70. * 根据用户ID查询用户所属岗位组
  71. *
  72. * @param userName 用户名
  73. * @return 结果
  74. */
  75. public String selectUserPostGroup(String userName);
  76. /**
  77. * 校验用户名称是否唯一
  78. *
  79. * @param userName 用户名称
  80. * @return 结果
  81. */
  82. public String checkUserNameUnique(String userName);
  83. /**
  84. * 校验用户名称是否唯一
  85. *
  86. * @param userId 用户id,userName 用户名称
  87. * @return 结果
  88. */
  89. public String checkUserNameUniqueNotOwn(Long userId,String userName);
  90. /**
  91. * 校验手机号码是否唯一
  92. *
  93. * @param user 用户信息
  94. * @return 结果
  95. */
  96. public String checkPhoneUnique(SysUser user);
  97. /**
  98. * 校验email是否唯一
  99. *
  100. * @param user 用户信息
  101. * @return 结果
  102. */
  103. public String checkEmailUnique(SysUser user);
  104. /**
  105. * 校验用户是否允许操作
  106. *
  107. * @param user 用户信息
  108. */
  109. public void checkUserAllowed(SysUser user);
  110. /**
  111. * 新增用户信息
  112. *
  113. * @param user 用户信息
  114. * @return 结果
  115. */
  116. public int insertUser(SysUser user);
  117. /**
  118. * 注册用户信息
  119. *
  120. * @param user 用户信息
  121. * @return 结果
  122. */
  123. public boolean registerUser(SysUser user);
  124. /**
  125. * 修改用户信息
  126. *
  127. * @param user 用户信息
  128. * @return 结果
  129. */
  130. public int updateUser(SysUser user);
  131. /**
  132. * 修改用户手机号
  133. *
  134. * @param user 用户信息
  135. * @return 结果
  136. */
  137. public int changePhone(SysUser user);
  138. /**
  139. * 用户授权角色
  140. *
  141. * @param userId 用户ID
  142. * @param roleIds 角色组
  143. */
  144. public void insertUserAuth(Long userId, Long[] roleIds);
  145. /**
  146. * 修改用户状态
  147. *
  148. * @param user 用户信息
  149. * @return 结果
  150. */
  151. public int updateUserStatus(SysUser user);
  152. /**
  153. * 修改用户基本信息
  154. *
  155. * @param user 用户信息
  156. * @return 结果
  157. */
  158. public int updateUserProfile(SysUser user);
  159. /**
  160. * 修改用户头像
  161. *
  162. * @param userName 用户名
  163. * @param avatar 头像地址
  164. * @return 结果
  165. */
  166. public boolean updateUserAvatar(String userName, String avatar);
  167. /**
  168. * 重置用户密码
  169. *
  170. * @param user 用户信息
  171. * @return 结果
  172. */
  173. public int resetPwd(SysUser user);
  174. /**
  175. * 重置用户密码
  176. *
  177. * @param userName 用户名
  178. * @param password 密码
  179. * @return 结果
  180. */
  181. public int resetUserPwd(String userName, String password);
  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. /**
  206. * 导入用户数据 (教职工专用)
  207. *
  208. * @param userList 用户数据列表
  209. * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据
  210. * @param operName 操作用户
  211. * @return 结果
  212. */
  213. public List<SysUserTeaCherByExcel> importUserByTeaCher(List <SysUserTeaCherByExcel> userList, Boolean isUpdateSupport, String operName, SysUserTeaCherByExcel sysUserTeaCherByExcel);
  214. /**
  215. * 导入用户数据 (学生专用)
  216. *
  217. * @param userList 用户数据列表
  218. * @param isUpdateSupport 是否更新支持,如果已存在,则进行更新数据
  219. * @param operName 操作用户
  220. * @return 结果
  221. */
  222. public List<SysUserStudentByExcel> importUserByStudent(List <SysUserStudentByExcel> userList, Boolean isUpdateSupport, String operName, SysUserStudentByExcel sysUserStudentByExcel);
  223. List<Map<String, Object>> selectOption(SysUser user);
  224. /**
  225. * 根据ID查询电话号码
  226. * @param ids
  227. * @return
  228. */
  229. public List<String> queryPhoneByIds(Long... ids);
  230. /***
  231. * 查询用户信息列表
  232. * @param sysUser
  233. * @return
  234. */
  235. public List<SysUser> selectUserListByName(SysUser sysUser);
  236. /***
  237. * 根据用户名查询不在白名单的用户
  238. * @param sysUser
  239. * @return
  240. */
  241. public List<SysUser> selectUserListByNotWhite(SysUser sysUser);
  242. /**
  243. * 根据条件分页查询用户列表
  244. *
  245. * @param user 用户信息
  246. * @return 用户信息集合信息
  247. */
  248. public List<SysUser> noJoinPositionByList(SysUser user);
  249. /**
  250. * 给用户绑定职位
  251. *
  252. * @param user 用户信息
  253. * @return 结果
  254. */
  255. public int bingUserByPosition(SysUser user);
  256. /**
  257. * 解除用户绑定职位
  258. *
  259. * @param user 用户信息
  260. * @return 结果
  261. */
  262. public int relieveUserByPosition(SysUser user);
  263. /**
  264. * 修改用户信息
  265. * 不设计全新修改
  266. * @param user 用户信息
  267. * @return 结果
  268. */
  269. int update(SysUser user);
  270. /**
  271. * 修改用户所属部门 "system:user_teacher:edit" (老师专用)
  272. * @param userList 用户信息
  273. * @return 结果
  274. */
  275. int editUserByDept(List <SysUser> userList);
  276. /**
  277. * 修改用户信息
  278. * @param userList 用户信息列表
  279. * @return 结果
  280. */
  281. Map <String, Object> updateCardNum(List<SysUser> userList);
  282. }