package com.dgtly.api.controller; import com.dgtly.common.annotation.ApiPassToken; import com.dgtly.common.core.controller.ApiBaseController; import com.dgtly.common.core.domain.AjaxResult; import com.dgtly.common.core.domain.ParameterObject; import com.dgtly.common.utils.security.EncryptPassWordClass; import com.dgtly.system.domain.SysUser; import com.dgtly.system.domain.WxQyUser; import com.dgtly.system.service.ISysUserService; import com.dgtly.system.service.IWxQyUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; @Api(tags = "系统用户相关API") @RestController @RequestMapping("sysuser") public class SysUserController extends ApiBaseController { @Autowired private IWxQyUserService wxQyUserService; @Autowired private ISysUserService sysUserService; @ApiOperation(value = "绑定微信用户和系统用户", notes = "参数:{wxUserId:'xxxxxxxxxxxxxxxxxxxx'," + "username:'admin',password:'admin123'}" + "错误:" + "301 用户不存在或密码错误") @ApiImplicitParams({ @ApiImplicitParam(name = "params" , paramType = "body") }) @ApiPassToken @PostMapping("bindingUser") public Object bindingUser(){ ParameterObject obj = getParameterObject(); obj.checkParameterNotNull("wxUserId,username,password"); SysUser sysUser = sysUserService.selectUserByLoginName(obj.getString("username")); if(sysUser==null){ return AjaxResult.error(301,"用户不存在或密码错误"); } String p =EncryptPassWordClass.encryptPassword(sysUser.getLoginName(), obj.getString("password"), sysUser.getSalt()); if(!sysUser.getPassword().equals(p)){ return AjaxResult.error(301,"用户不存在或密码错误"); } WxQyUser wxQyUser = new WxQyUser(); wxQyUser.setUserid(obj.getString("wxUserId")); wxQyUser.setSysUserId(sysUser.getUserId()); int i =wxQyUserService.updateWxQyUser(wxQyUser); if (i > 0) { return AjaxResult.success().putKV("user",sysUser); }else{ return AjaxResult.error(); } } @ApiOperation(value = "接触绑定", notes = "参数:{" + "userId:xxxxxx}") @ApiImplicitParams({ @ApiImplicitParam(name = "params" , paramType = "body") }) @PostMapping("bonded") public Object bonded(){ ParameterObject obj = getParameterObject(); obj.checkParameterNotNull("userId"); Long userId =obj.getLong("userId"); int i = wxQyUserService.bondedSysUserBySysUserId(userId); return toAjax(i); } @ApiOperation(value = "获取用户信息", notes = "参数:{" + "userId:xxxxxx}") @ApiImplicitParams({ @ApiImplicitParam(name = "params" , paramType = "body") }) @PostMapping("getUserInfo") public Object getUserInfo(){ ParameterObject obj = getParameterObject(); obj.checkParameterNotNull("userId"); Long userId =obj.getLong("userId"); SysUser user = sysUserService.selectUserById(userId); WxQyUser wxQyUser = new WxQyUser(); wxQyUser.setSysUserId(userId); List wxQyUsers = wxQyUserService.selectWxQyUserList(wxQyUser); wxQyUser = wxQyUsers.size()>0?wxQyUsers.get(0):null; return AjaxResult.success().putKV("wxUser",wxQyUser).putKV("sysUser",user); } }