创建登录和注册接口
创建LoginVo和RegisterVo用于数据封装
@Data
@ApiModel(value='登录对象', description='登录对象')
public class LoginVo {
@ApiModelProperty(value = '手机号')
private String mobile;
@ApiModelProperty(value = '密码')
private String password;
}
@Data
@ApiModel(value='注册对象', description='注册对象')
public class RegisterVo {
@ApiModelProperty(value = '昵称')
private String nickname;
@ApiModelProperty(value = '手机号')
private String mobile;
@ApiModelProperty(value = '密码')
private String password;
@ApiModelProperty(value = '验证码')
private String code;
}
创建controller编写登录和注册方法
@RestController@RequestMapping('/ucenterservice/apimember')@CrossOriginpublicclassMemberApiController{@AutowiredprivateMemberServicememberService;@ApiOperation(value='会员登录')@PostMapping('login')publicRlogin(@RequestBodyLoginVologinVo){Stringtoken=memberServiclogin(loginVo);returnR.ok().data('token',toke;}@ApiOperation(value='会员注册')@PostMapping('register')publicRregister(@RequestBodyRegisterVoregisterVo){memberServicregister(registerVo);returnR.ok();}}创建service接口和实现类@ServicepublicclassMemberServiceImplextendsServiceImplimplementsMemberService{@AutowiredprivateRedisTemplateredisTemplate;/***会员登录*@paramloginVo*@return*/@OverridepublicStringlogin(LoginVologinVo){Stringmobile=loginVo.getMobile();Stringpassword=loginVo.getPassword();//校验参数if(StringUtils.isEmpty(mobil||StringUtils.isEmpty(passwor||StringUtils.isEmpty(mobi{thrownewException(20001,'error');}//获取会员Membermember=baseMapper.selectOne(newQueryWrapper().eq('mobile',mobi;if(null==member){thrownewException(20001,'error');}//校验密码if(!MDencrypt(passwor.equals(member.getPassword())){thrownewException(20001,'error');}//校验是否被禁用if(member.getIsDisabled()){thrownewException(20001,'error');}//使用JWT生成token字符串Stringtoken=JwtUtils.getJwtToken(member.getId(),member.getNickname());returntoken;}/***会员注册*@paramregisterVo*/@Overridepublicvoidregister(RegisterVoregisterVo){//获取注册信息,进行校验Stringnickname=registerVo.getNickname();Stringmobile=registerVo.getMobile();Stringpassword=registerVo.getPassword();Stringcode=registerVo.getCode();//校验参数if(StringUtils.isEmpty(mobil||StringUtils.isEmpty(mobil||StringUtils.isEmpty(passwor||StringUtils.isEmpty(cod){thrownewException(20001,'error');}//校验校验验证码//从redis获取发送的验证码StringmobleCode=redisTemplatopsForValue().get(mobil;if(!codequals(mobleCod){thrownewException(20001,'error');}//查询数据库中是否存在相同的手机号码Integercount=baseMapper.selectCount(newQueryWrapper().eq('mobile',mobi;if(count.intValue()>0){thrownewException(20001,'error');}//添加注册信息到数据库Membermember=newMember();member.setNickname(nicknam;member.setMobile(registerVo.getMobile());member.setPassword(MDencrypt(passwor);member.setIsDisabled(fals;member.setAvatar('http://thirdwx.qlogo.cn/mmopen/vi_32/DYAIOgq83eoj0hHXhgJNOTSOFsS4uZs8x1ConecaVOB8eIl115xmJZcT4oCicvia7wMEufibKtTLqiaJeanU2Lpg3w/132');this.save(member);}}
文章为作者独立观点,不代表 股票程序化软件自动交易接口观点