发表于: 2018-03-18 21:36:01

1 533


今日完成

1.前台登录、注册接口的完成


/**
* 用户注册
*
* @param model    返回code
* @param phoneNum 注册手机号
* @param pswd     密码
* @param verify   验证码
* @return
*/
@RequestMapping(value = "/a/user/register", method = RequestMethod.POST)
public String userRegister(HttpSession session, ModelMap model, String phoneNum, String pswd, String verify) {
/*
   String checkCode = (String) session.getAttribute("code");
   String checkphoneNum = (String) session.getAttribute("phoneNum");
   */
   User user = null;
   
   if (phoneNum != null && !phoneNum.equals("")) {
if (pswd != null && !pswd.equals("")) {

if (verify != null && !verify.equals("")) {
log.info("/a/user/register" + phoneNum );
               if (verify.equals("555555")) {
String salt = SecureUtil.getSalt();
                   user.setPhoneNum(phoneNum);
                   user.setPswd(SecureUtil.messageDigest(salt + pswd));
                   user.setSalt(salt);
                   user.setAccountsStatus(0);
                   
                   Long id = null;
                   try {
id = userService.insert(user);
                       
                   } catch (Throwable e) {
log.error(" insert wrong : " + user);
                       log.error(e);
                       e.printStackTrace();
                   }
log.info(" insert data success : " + id);
                   model.addAttribute("code", 0);
               }

} else {
model.addAttribute("code", -2002);
           }
} else {
model.addAttribute("code", -2005);
       }

} else {
model.addAttribute("code", -2004);
   }


return "/polyFinance-lgd-server/user/json/userDetailJson";
}


/**
* @param phoneNum 注册手机号码
* @param pswd     密码
* @return 状态码,消息
*/

@RequestMapping(value = "/a/login", method = RequestMethod.POST)
public String userLogin(ModelMap model, String phoneNum, String pswd) {

log.info("/a/login" + phoneNum);
   try {
User user = userService.getObjectByPhoneNum(phoneNum);
       if (user != null) {
String pswdCheck = SecureUtil.messageDigest(user.getSalt() + pswd);
           if (pswdCheck.equals(user.getPswd())) {
model.addAttribute("code", 0);
           } else {
model.addAttribute("code", 4002);
           }
} else {
model.addAttribute("code", 4001);
       }

} catch (ServiceException e) {
e.printStackTrace();
   } catch (ServiceDaoException e) {
log.error("get user error by phoneNum" + phoneNum);
       log.error(e);
       e.printStackTrace();
   }

return "/polyFinance-lgd-server/user/json/userDetailJson";
}

配置拦截器

/**
* @author lujing
* Create_at 2018/3/18 10:16
*/
public class LoginHomeInterceptor implements HandlerInterceptor{

private static final Log log = LogFactory.getLog(LoginHomeInterceptor.class);
   
   
   @Override
   public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {

String url = request.getRequestURI();
       String contextpath = request.getContextPath();
   
       log.info("请求的url" + url + "..." + contextpath);
       
       String token= WebUtils.getCookie(request, Constant.jwtCookieName).getValue();
       
       String sub = JwtUtils.getSubject(token, Constant.siginKey);
       if(sub == null || sub.equals("")){
return false;
       }
return true;
       
       
   }

@Override
   public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {

}

@Override
   public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {

}
}

2.用户列表接口

(1)动态查询工具

/**
* 用户列表动态查询
* @param name           姓名
* @param phoneNum       手机号
* @param accountsStatus 账户状态
* @param createAtStart  注册日期起
* @param createAtEnd    注册日期止
* @param managerNum     理财经理
* @return 拼接的查询条件
*/
public static Map<String, Object> getUserListSql(String name, String phoneNum, Integer accountsStatus, Long createAtStart, Long createAtEnd, String managerNum) {
Map<String, Object> param = new HashMap<>();
   
   if (name != null && !name.equals("")) {
param.put("name & like", "'%" + name + "%'");
   }
if (phoneNum != null && !phoneNum.equals("")) {
param.put("phone_num & like", "'%" + phoneNum + "%'");
   }

if (accountsStatus != null && !accountsStatus.equals("")) {
param.put("accounts_status & like", "'%" + accountsStatus + "%'");
   }
if (createAtStart != null && !createAtStart.equals("")) {
param.put("create_at & >=", createAtStart);
   }
if (createAtEnd != null && !createAtEnd.equals("")) {
param.put("create_at & <=", createAtEnd);
   }
if (managerNum != null && !managerNum.equals("")) {
param.put("manager_num & like", "'%" + managerNum + "%'");
   }

param.put("@table", "user");
   param.put("@order", "create_at desc");
   return param;
}

(2)用户列表接口

@RequestMapping(value = "/a/u/user/list", method = RequestMethod.GET)
public String getUserList(HttpServletRequest request , HttpServletResponse response ,ModelMap model, String name, String phoneNum, Integer accountsStatus, Long createAtStart, Long createAtEnd, String managerNum, Integer start, Integer size) {
Map<String, Object> param = DynamicUtil.getUserListSql(name, phoneNum, accountsStatus, createAtStart, createAtEnd, managerNum);
   
   log.info("/a/u/user/list " + SQLUtil.convert2Sql(param, start, size));
   
   try {
List<Long> ids = userService.getIdsByDynamicCondition(User.class, param, start, size);
       List<User> users = userService.getObjectsByIds(ids);
       
       model.addAttribute("code", 0);
       model.addAttribute("total",users.size());
       model.addAttribute("userList", users);
   } catch (Throwable e) {
log.info(e.getMessage());
       log.info("get user list error");
       e.printStackTrace();
       model.addAttribute("code", -100000);
   }

return "/polyFinance-lgd-server/user/json/userListJson";
}

遇到问题

1.spring国际化中文乱码,问题。试了好多办法还没有解决。

明日计划

1.解决中文乱码的问题

收获

1.两个接口,动态查询


返回列表 返回列表
评论

    分享到