Ejemplo n.º 1
0
  /** 保存. */
  @RequestMapping(value = {"save"})
  @ResponseBody
  public Result save(@ModelAttribute("model") User user) {
    Result result = null;
    // 名称重复校验
    User nameCheckUser = userManager.getUserByLoginName(user.getLoginName());
    if (nameCheckUser != null && !nameCheckUser.getId().equals(user.getId())) {
      result = new Result(Result.WARN, "登录名为[" + user.getLoginName() + "]已存在,请修正!", "loginName");
      logger.debug(result.toString());
      return result;
    }

    if (user.getId() == null) { // 新增
      user.setPassword(Encrypt.e(user.getPassword()));
    } else { // 修改
      User superUser = userManager.getSuperUser();
      User sessionUser = userManager.getCurrentUser();
      if (!sessionUser.getId().equals(superUser.getId())) {
        result = new Result(Result.ERROR, "超级用户信息仅允许自己修改!", null);
        logger.debug(result.toString());
        return result;
      }
    }
    userManager.saveEntity(user);
    result = Result.successResult();
    logger.debug(result.toString());
    return result;
  }
Ejemplo n.º 2
0
 /**
  * 修改用户密码. <br>
  * 参数upateOperate 需要密码"1" 不需要密码"0".
  */
 @RequestMapping(value = {"updateUserPassword"})
 @ResponseBody
 public Result updateUserPassword(
     @ModelAttribute("model") User user, String upateOperate, String newPassword)
     throws Exception {
   Result result;
   if (!StringUtils.isEmpty(upateOperate)) {
     User u = userManager.loadById(user.getId());
     if (u != null) {
       boolean isCheck = true;
       // 需要输入原始密码
       if (AppConstants.USER_UPDATE_PASSWORD_YES.equals(upateOperate)) {
         String originalPassword = u.getPassword(); // 数据库存储的原始密码
         String pagePassword = u.getPassword(); // 页面输入的原始密码(未加密)
         if (!originalPassword.equals(Encrypt.e(pagePassword))) {
           isCheck = false;
         }
       }
       // 不需要输入原始密码
       if (AppConstants.USER_UPDATE_PASSWORD_NO.equals(upateOperate)) {
         isCheck = true;
       }
       if (isCheck) {
         u.setPassword(Encrypt.e(newPassword));
         userManager.saveEntity(u);
         result = Result.successResult();
       } else {
         result = new Result(Result.WARN, "原始密码输入错误.", "password");
       }
     } else {
       result = new Result(Result.ERROR, "修改的用户不存在或已被删除.", null);
     }
   } else {
     result = Result.errorResult();
     logger.warn("请求参数错误,未设置参数[upateOperate].");
   }
   logger.debug(result.toString());
   return result;
 }