发表于: 2017-10-27 22:35:14
1 676
今天完成的事情:
1.完成启动APP登陆/注册/忘记密码模块
用户注册首先判断参数(手机号,验证码,密码)是否为空,如果为空通过状态码返回错误信息。再判断用户是否已经注册(聚金融只能通过手机号注册),通过手机号判断。再校验验证码是否正确。判断通过之后注册用户。
// 注册账号
@RequestMapping(value = "/a/register", method = RequestMethod.POST)
public String addUserJson(HttpServletRequest request, HttpServletResponse response,
ModelMap model, String mobile, String verify, String pwd,
String adviserNo)
throws Exception {
log.info(" user register : mobile= " + mobile + " verify = " + verify + "" + " password = "
+ pwd + " adviserNo =" + adviserNo);
String type = "register";
try {
// 1、校验参数是否为空
if (StringUtil.isEmpty(mobile)) {
log.info("mobile is null");
model.addAttribute("code", -2001);
return "/data/json";
}
if (StringUtil.isEmpty(verify)) {
log.info("verify is null");
model.addAttribute("code", -2020);
return "/data/json";
}
if (StringUtil.isEmpty(pwd)) {
log.info("pwd is null");
model.addAttribute("code", -2005);
return "/data/json";
}
// 2、校验用户是否注册
Long oldUserOpenId = userService.getUserIdByMobile(mobile);
if (oldUserOpenId != null) {
log.info(mobile + " is already exist " + oldUserOpenId);
model.addAttribute("code", -2007);
return "/data/json";
}
else {
log.info(mobile + " not exist ,so can register ");
}
boolean verifyResult = false;
// 3、校验验证码
if (verifyModel()) {
log.info("is test model ");
if ("555555".equals(verify)) {
log.info("test ,so not verify mobile ");
verifyResult = true;
}
else {
log.info("log1: mobile is " + mobile + ",type = " + type + ",verify" + verify);
verifyResult = verifyMobileCode(model, mobile, type, verify);
}
}
else {
log.info("log1: mobile is " + mobile + ",type = " + type + ",verify" + verify);
verifyResult = verifyMobileCode(model, mobile, type, verify);
}
// 判断验证码是否正确
Long now = System.currentTimeMillis();
Long userId = null;
if (verifyResult) {
// 4、注册用户
User user = new User();
user.setMobile(mobile);
user.setStatus(User.STATUS_ON);
user.setAdviserNo(adviserNo);
String encodePass = PasswordUtils.encode(pwd);
user.setPwd(encodePass);
user.setIdentifyStatus(User.NOT_APPLY);
user.setNumber(generateUserNumber());
userId = userService.insert(user);
String token = IdentityUtil.encodeCookie("phone", userId);
UserFunc userFunc = new UserFunc();
userFunc.setId(userId);
Long userFuncId = userFuncService.insert(userFunc);
log.info("user id = " + userId + " userFuncId = " + userFuncId);
model.addAttribute("code", 0);
model.addAttribute("message", "注册成功");
model.addAttribute("token", token);
model.addAttribute("uid", userId);
}
else {
log.error("wrong verifycode");
model.addAttribute("code", -2021);
return "/common/success";
}
model.addAttribute("code", 0);
}
catch (Throwable t) {
log.error("add user error ", t);
model.addAttribute("code", -1);
}
return "/playboy-invest-service/user/json/userRegister";
}
明天计划的事情:梳理一下银行绑卡以及债券匹配的业务,写接口
遇到的问题:绑卡这个正常来说是调用银行的接口来进行,这个该怎么搞
收获:熟悉用户注册登录忘记密码等业务
评论