public User store(User user) { UserRecord record = getEntityManager().find(UserRecord.class, user.getId()); try { getEntityManager().getTransaction().begin(); if (record != null) { user.setStatusCode(IUsersManager.STATUS_ERROR); user.setStatus(user.getId() + " 使用者帳號已存在!"); } else { record = new UserRecord(); record.setUserId(user.getId()); record.setPassword(user.getPassword()); record = parseParameters(record, user.getTicket()); getEntityManager().persist(record); user.setStatusCode(IUsersManager.STATUS_OK); user.setStatus(" 使用者註冊完成. "); } } catch (Throwable e) { e.printStackTrace(); user.setStatusCode(IUsersManager.STATUS_ERROR); user.setStatus(" 使用者註冊處理出現錯誤!! - " + e.getMessage()); } finally { getEntityManager().getTransaction().commit(); } return user; }
public String getPassword(String id) { UserRecord record = getEntityManager().find(UserRecord.class, id); if (record != null) { return record.getPassword(); } return null; }
private UserRecord parseParameters(UserRecord record, String parameters) { if (parameters == null) { return record; } StringTokenizer tokenizer = new StringTokenizer(parameters, ","); while (tokenizer.hasMoreTokens()) { String aToken = tokenizer.nextToken(); if ("name".equals(aToken.substring(0, aToken.indexOf('=')))) { record.setName(aToken.substring(aToken.indexOf('=') + 1)); } if ("mobile".equals(aToken.substring(0, aToken.indexOf('=')))) { record.setMobile(aToken.substring(aToken.indexOf('=') + 1)); } if ("phone".equals(aToken.substring(0, aToken.indexOf('=')))) { record.setPhone(aToken.substring(aToken.indexOf('=') + 1)); } if ("fax".equals(aToken.substring(0, aToken.indexOf('=')))) { record.setFax(aToken.substring(aToken.indexOf('=') + 1)); } if ("address".equals(aToken.substring(0, aToken.indexOf('=')))) { record.setAddress(aToken.substring(aToken.indexOf('=') + 1)); } if ("eMail".equals(aToken.substring(0, aToken.indexOf('=')))) { record.seteMail(aToken.substring(aToken.indexOf('=') + 1)); } } return record; }