登录功能api

2018-12-19  本文已影响0人  酱式

@POST

@Path("login")

@Produces(APPLICATION_JSON)

@Consumes(MediaType.APPLICATION_FORM_URLENCODED)

public Maplogin(@FormParam("loginId")String loginId,

                                @FormParam("password")String password) {

if (StringUtils.isBlank(loginId)) {

return ResponseBuilder.error(50000, "请输入用户名");

  }

if (StringUtils.isBlank(password)) {

return ResponseBuilder.error(50000, "请输入密码");

  }

Mapcondition =new HashMap<>();

  if (StringUtils.contains(loginId, "@")) {

if (StringUtils.indexOf(loginId, "@") ==0 ||StringUtils.indexOf(loginId, "@") ==loginId.length() -1) {

return ResponseBuilder.error(50000, "请输入正确的邮箱地址");

    }

condition.put("email", loginId);

  }else {

condition.put("phone", loginId);

  }

Manager manager =entityDao.findOne("manager", condition, ManagerRowMapper.getInstance());

  if (manager ==null) {

return ResponseBuilder.error(50000, "用户名或密码错误。");

  }

if (manager.isDisabled()) {

return ResponseBuilder.error(50000, "用户名或密码错误,请稍后再试。");

  }

try {

password =PasswordUtils.encodeFromWeb(password);

  }catch (Exception e) {

LOG.error("Failed to encode password.", e);

    return ResponseBuilder.error(50000, "用户名或密码错误。");

  }

if (!StringUtils.equals(manager.getPassword(), password)) {

return ResponseBuilder.error(50000, "用户名或密码错误。");

  }

setSessionAttribute("_manager", manager);

  return ResponseBuilder.OK;

}

上一篇 下一篇

猜你喜欢

热点阅读