放出关键代码——UserController
/** * 用户登录 * @return */ @ApiOperation("用户登录") @PostMapping("login") public JsonData login(@ApiParam("用户登录对象") @RequestBody UserLoginRequest userLoginRequest){ JsonData jsonData = userService.login(userLoginRequest); return jsonData; }
UserService
/** * 用户登录 * @param userLoginRequest * @return */ JsonData login(UserLoginRequest userLoginRequest);
UserLoginRequest
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @Data @ApiModel(value = "登录对象",description = "用户登录请求对象") public class UserLoginRequest { @ApiModelProperty(value = "邮箱", example = "794666918@qq.com") private String mail; @ApiModelProperty(value = "密码", example = "123456") private String pwd; }
UserServiceImpl
/** * 用户注册,初始化福利信息 TODO * @param userDO */ private void userRegisterInitTask(UserDO userDO){ } /** * 1、根据Mail去找有没这记录 * 2、有的话,则用秘钥+用户传递的明文密码,进行加密,再和数据库的密文进行匹配 * * @param userLoginRequest * @return */ @Override public JsonData login(UserLoginRequest userLoginRequest) { List<UserDO> userDOList = userMapper.selectList(new QueryWrapper<UserDO>().eq("mail",userLoginRequest.getMail())); if(userDOList!=null && userDOList.size()==1){ //已经注册 UserDO userDO = userDOList.get(0); String cryptPwd = Md5Crypt.md5Crypt(userLoginRequest.getPwd().getBytes(),userDO.getSecret()); if(cryptPwd.equals(userDO.getPwd())){ //登录成功,生成token TODO return null; }else { return JsonData.buildResult(BizCodeEnum.ACCOUNT_PWD_ERROR); } }else { //未注册 return JsonData.buildResult(BizCodeEnum.ACCOUNT_UNREGISTER); } }
本文作者为DBC,转载请注明。