@Override public UserResult getUserAndRemark(RemarkQueryCondition condition) { UserResult ur = new UserResult(); try { User user = null; if (condition != null && condition.getFriendId() != null && condition.getFriendId() > 0) { Integer friendId = condition.getFriendId(); user = userService.findById(friendId); } if (condition != null && !StringUtils.isBlank(condition.getFriendLoginName())) { String loginname = condition.getFriendLoginName(); user = userService.findByLoginName(loginname); } if (user != null) { UserDetail userdetail = userDetailService.findByUserId(user.getId()); UserEntity userVO = ConvertHelper.toUserEntity(user, userdetail); Integer friendId = 0; if (condition != null && condition.getFriendId() != null && condition.getFriendId() > 0) { friendId = condition.getFriendId(); } else { friendId = user.getId(); } Integer userId = 0; if (condition != null && condition.getUserName() != null & (condition.getUserId() == null || condition.getUserId() == 0)) { User userself = userService.findByLoginName(condition.getUserName()); if (userself != null) { userId = userself.getId(); } } else { userId = condition.getUserId(); } if (userId > 0 && friendId > 0) { List<UserRemark> userRemarks = userRemarkService.find( " from UserRemark where userId=" + userId + " and friendId=" + friendId); UserRemark userRemark = null; if (userRemarks != null && userRemarks.size() > 0) { userRemark = userRemarks.get(0); userVO.setRemark(userRemark.getRemark()); } } ur.setUser(userVO); } ur.setErrorCode(0); ur.setErrorMessage(""); } catch (Exception ex) { ValidationError ve = ValidationError.SYSTEM_ERROR; ur.setErrorCode(ve.getErrorCode()); ur.setErrorMessage("系统错误"); logger.error(ex.getMessage()); } return ur; }
/** 登录服务 return UserResult */ @Override public UserResult login(UserEntity user) { UserResult ur = new UserResult(); try { String username = user.getLoginname(); String password = MD5Util.md5(user.getPwd()); User u = null; u = userService.findByLoginNameAndPwd(username, password); if (u == null) { ValidationError er = ValidationError.LOGINFAILE; int errorCode = er.getErrorCode(); String errorMessage = er.getErrorMessage(); ur.setErrorCode(errorCode); ur.setErrorMessage(errorMessage); } else { if (u.getUsertype() == 2) { BusinessUserDetail businessUserdetail = businessUserDetailService.findByUserId(u.getId()); BusinessUserEntity businessUserVO = ConvertHelper.toBusinessUserEntity(u, businessUserdetail); ur.setBusinessUser(businessUserVO); } else { UserDetail userdetail = userDetailService.findByUserId(u.getId()); UserEntity userVO = ConvertHelper.toUserEntity(u, userdetail); ur.setUser(userVO); } ur.setErrorCode(0); ur.setErrorMessage(""); } } catch (Exception ex) { ValidationError er = ValidationError.SYSTEM_ERROR; ur.setErrorCode(er.getErrorCode()); ur.setErrorMessage("系统错误"); logger.error(ex.getMessage()); } return ur; }
@Override public UserResult register(UserEntity user) { UserResult ur = new UserResult(); try { if (user != null) { String loginName = user.getLoginname(); // 检查登录名是否重复 boolean res = chekLoginName(loginName); if (!res) { User usr = new User(); String pwd = ""; if (user.getPwd() != null) { pwd = MD5Util.md5(user.getPwd()); usr.setPlainPassword(user.getPwd()); } usr.setCreateDate(new Date()); usr.setLoginname(loginName); usr.setPwd(pwd); usr.setName(user.getName()); usr.setPhone(user.getPhone()); usr.setStatus(3); usr.setLat(user.getLat()); usr.setLon(user.getLon()); usr.setParseaddress(user.getParseaddress()); usr.setUsertype(user.getUsertype()); this.saveOrUpdate(usr); User userinfo = userService.findByLoginName(loginName); if (userinfo != null) { user.setId(userinfo.getId().toString()); } user.setPwd(""); user.setState(Constants.DEFAULT_STATE); user.setCity(Constants.DEFAULT_CITY); user.setSex(Constants.DEFAULT_SEX_VALUE); ur.setUser(user); ur.setErrorCode(0); ur.setErrorMessage(""); } else { ValidationError ve = ValidationError.LOGINNAMEREPEAT; int errorCode = ve.getErrorCode(); String message = Utils.getErrorMessage(ve); ur.setErrorCode(errorCode); ur.setErrorMessage(message); } } } catch (Exception ex) { ValidationError er = ValidationError.SYSTEM_ERROR; int errorCode = er.getErrorCode(); ur.setErrorCode(errorCode); ur.setErrorMessage("系统错误"); logger.error(ex.getMessage()); } return ur; }
@Override public QueryUsersResult getAllConditionUser(QueryCondition condition) { QueryUsersResult result = null; Map<Integer, String> remarkMap = new HashMap<Integer, String>(); if (condition.getRemarkUserId() != null) { // 获取所有好友的remark信息 List<UserRemark> userRemarks = userRemarkService.find(" from UserRemark where userId=" + condition.getRemarkUserId()); if (userRemarks != null && userRemarks.size() > 0) { for (int i = 0; i < userRemarks.size(); i++) { UserRemark userRemark = userRemarks.get(i); remarkMap.put(userRemark.getFriendId(), userRemark.getRemark()); } } } // 先查询航班号 String hsql = "from User order by createDate desc"; List<User> husers = userService.find(hsql, 1, 5); String voyagId = null; if (husers != null && husers.size() > 0) { voyagId = husers.get(0).getVoyagId(); } try { List<UserEntity> userList = new ArrayList<UserEntity>(); String phone = condition.getPhone(); System.out.println("query pageNumber is =" + condition.getPageNum()); int pageSize = condition.getPageSize(); if (pageSize < 1) { pageSize = 1; } int curNum = condition.getPageNum(); if (curNum < 1) { curNum = 1; } String sql = "where "; if (condition.getUserName() != null && !condition.getUserName().isEmpty()) { sql += " loginname like '%" + condition.getUserName() + "%' and"; } if (condition.getName() != null && !condition.getName().isEmpty()) { sql += " name like '%" + condition.getName() + "%' and"; } if (condition.getCountry() != null && !condition.getCountry().isEmpty()) { sql += " country='" + condition.getCountry() + "' and"; } if (condition.getPhone() != null && !condition.getPhone().isEmpty()) { sql += " phone='" + condition.getPhone() + "' and"; } if (condition.getArea() != null && !condition.getArea().isEmpty()) { sql += " area ='" + condition.getArea() + "' and"; } if (condition.getAgeStart() > 0) { sql += " age >" + condition.getAgeStart() + " and"; } if (condition.getAgeEnd() > 0) { sql += " age <" + condition.getAgeEnd() + " and"; } if (condition.getSex() > 0) { sql += " sex =" + condition.getSex() + " and"; } if (condition.getUsertype() != null) { sql += " usertype =" + condition.getUsertype() + " and"; } sql = sql.substring(0, sql.length() - 3); String searchSql = ""; if (sql.length() > 8) { if (StringUtils.isBlank(phone)) { searchSql = "from User " + sql + " and cansearch=1"; } else { searchSql = "from User " + sql + " and cansearchbyphone=1"; } } else { if (StringUtils.isBlank(phone)) { searchSql = "from User where cansearch=1"; } else { searchSql = "from User " + sql + " and cansearchbyphone=1"; } } if (condition.getUsertype() != null && condition.getUsertype().equals(1) && voyagId != null) { searchSql += " and voyagId='" + voyagId + "'"; } List<User> users = userService.find(searchSql, curNum, pageSize); try { if (users != null && users.size() > 0) { for (User user : users) { UserDetail userdetail = userDetailService.findByUserId(user.getId()); UserEntity userInfo = ConvertHelper.toUserEntity(user, userdetail); String remark = remarkMap.get(user.getId()); if (remark != null) { userInfo.setRemark(remark); } userList.add(userInfo); } } } catch (Exception e1) { e1.printStackTrace(); } System.out.println("get all users"); result = new QueryUsersResult(0, "", userList, userList.size()); return result; } catch (Exception e) { // TODO: handle exception result = new QueryUsersResult(-1, "系统错误!", null, 0); return result; } }
/** 修改普通用户 支持单字段更新 */ @Override public UserResult updateuser(UserEntity user) { UserResult ur = new UserResult(); try { if (user != null) { UserDetail userdetail = null; String id = user.getId(); int userid = 0; if (!StringUtils.isBlank(id)) { userid = Integer.parseInt(id); updateUserCommon( id, user.getName(), user.getPhone(), user.getBoatcard(), user.getCansearchbyphone(), user.getHideroomtelephone(), user.getCansearch(), user.getRealname(), user.getRoomtelephone(), user.getAge()); userdetail = userDetailService.findByUserId(userid); } if (userid > 0) { Date date = new Date(); if (userdetail == null) { userdetail = new UserDetail(); userdetail.setUserid(userid); userdetail.setCreateDate(date); } userdetail.setUpdateDate(date); if (user.getAge() != null) { userdetail.setAge(user.getAge()); } if (user.getCity() != null) { userdetail.setCity(user.getCity()); } if (user.getCountry() != null) { userdetail.setCountry(user.getCountry()); } String sex = user.getSex(); if (sex != null) { userdetail.setSex(Integer.valueOf(sex)); } if (user.getState() != null) { userdetail.setState(user.getState()); } if (user.getConstellation() != null) { userdetail.setConstellation(user.getConstellation()); } if (user.getSignature() != null) { userdetail.setSignature(user.getSignature()); } if (user.getHobby() != null) { userdetail.setHobby(user.getHobby()); } if (user.getCansearchbyphone() != null) {} if (user.getRoomtelephone() != null) { userdetail.setRoom(user.getRoomtelephone()); } userDetailService.saveOrUpdate(userdetail); if (!StringUtils.isBlank(id)) { User usr = userService.findById(Integer.parseInt(id)); if (usr != null) { ur.setErrorCode(0); ur.setErrorMessage(""); UserEntity userVO = ConvertHelper.toUserEntity(usr, userdetail); ur.setUser(userVO); } else { ValidationError er = ValidationError.USER_NOEXIST; int errorCode = er.getErrorCode(); String errorMessage = er.getErrorMessage(); ur.setErrorCode(errorCode); ur.setErrorMessage(errorMessage); } } } } } catch (Exception ex) { ValidationError ve = ValidationError.SYSTEM_ERROR; ur.setErrorCode(ve.getErrorCode()); ur.setErrorMessage("系统错误"); logger.error(ex.getMessage()); } return ur; }