SysUserController.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. package com.dgtly.api.controller;
  2. import com.dgtly.common.annotation.ApiPassToken;
  3. import com.dgtly.common.core.controller.ApiBaseController;
  4. import com.dgtly.common.core.domain.AjaxResult;
  5. import com.dgtly.common.core.domain.ParameterObject;
  6. import com.dgtly.common.utils.security.EncryptPassWordClass;
  7. import com.dgtly.system.domain.SysUser;
  8. import com.dgtly.system.domain.WxQyUser;
  9. import com.dgtly.system.service.ISysUserService;
  10. import com.dgtly.system.service.IWxQyUserService;
  11. import io.swagger.annotations.Api;
  12. import io.swagger.annotations.ApiImplicitParam;
  13. import io.swagger.annotations.ApiImplicitParams;
  14. import io.swagger.annotations.ApiOperation;
  15. import org.springframework.beans.factory.annotation.Autowired;
  16. import org.springframework.web.bind.annotation.PostMapping;
  17. import org.springframework.web.bind.annotation.RequestMapping;
  18. import org.springframework.web.bind.annotation.RestController;
  19. import java.util.List;
  20. @Api(tags = "系统用户相关API")
  21. @RestController
  22. @RequestMapping("sysuser")
  23. public class SysUserController extends ApiBaseController {
  24. @Autowired
  25. private IWxQyUserService wxQyUserService;
  26. @Autowired
  27. private ISysUserService sysUserService;
  28. @ApiOperation(value = "绑定微信用户和系统用户",
  29. notes = "参数:{wxUserId:'xxxxxxxxxxxxxxxxxxxx'," +
  30. "username:'admin',password:'admin123'}" +
  31. "错误:" +
  32. "301 用户不存在或密码错误")
  33. @ApiImplicitParams({
  34. @ApiImplicitParam(name = "params" , paramType = "body")
  35. })
  36. @ApiPassToken
  37. @PostMapping("bindingUser")
  38. public Object bindingUser(){
  39. ParameterObject obj = getParameterObject();
  40. obj.checkParameterNotNull("wxUserId,username,password");
  41. SysUser sysUser = sysUserService.selectUserByLoginName(obj.getString("username"));
  42. if(sysUser==null){
  43. return AjaxResult.error(301,"用户不存在或密码错误");
  44. }
  45. String p =EncryptPassWordClass.encryptPassword(sysUser.getLoginName(), obj.getString("password"), sysUser.getSalt());
  46. if(!sysUser.getPassword().equals(p)){
  47. return AjaxResult.error(301,"用户不存在或密码错误");
  48. }
  49. WxQyUser wxQyUser = new WxQyUser();
  50. wxQyUser.setUserid(obj.getString("wxUserId"));
  51. wxQyUser.setSysUserId(sysUser.getUserId());
  52. int i =wxQyUserService.updateWxQyUser(wxQyUser);
  53. if (i > 0) {
  54. return AjaxResult.success().putKV("user",sysUser);
  55. }else{
  56. return AjaxResult.error();
  57. }
  58. }
  59. @ApiOperation(value = "接触绑定",
  60. notes = "参数:{" +
  61. "userId:xxxxxx}")
  62. @ApiImplicitParams({
  63. @ApiImplicitParam(name = "params" , paramType = "body")
  64. })
  65. @PostMapping("bonded")
  66. public Object bonded(){
  67. ParameterObject obj = getParameterObject();
  68. obj.checkParameterNotNull("userId");
  69. Long userId =obj.getLong("userId");
  70. int i = wxQyUserService.bondedSysUserBySysUserId(userId);
  71. return toAjax(i);
  72. }
  73. @ApiOperation(value = "获取用户信息",
  74. notes = "参数:{" +
  75. "userId:xxxxxx}")
  76. @ApiImplicitParams({
  77. @ApiImplicitParam(name = "params" , paramType = "body")
  78. })
  79. @PostMapping("getUserInfo")
  80. public Object getUserInfo(){
  81. ParameterObject obj = getParameterObject();
  82. obj.checkParameterNotNull("userId");
  83. Long userId =obj.getLong("userId");
  84. SysUser user = sysUserService.selectUserById(userId);
  85. WxQyUser wxQyUser = new WxQyUser();
  86. wxQyUser.setSysUserId(userId);
  87. List<WxQyUser> wxQyUsers = wxQyUserService.selectWxQyUserList(wxQyUser);
  88. wxQyUser = wxQyUsers.size()>0?wxQyUsers.get(0):null;
  89. return AjaxResult.success().putKV("wxUser",wxQyUser).putKV("sysUser",user);
  90. }
  91. }