예제 #1
0
  /**
   * @param bowlPick
   * @return Scored pick status
   */
  public BowlPickStatus scoreBowlPick(BowlPick bowlPick) {
    BowlMatchup matchup = bowlPick.getBowlMatchup();
    if (matchup.getWinningTeam() == null && matchup.getLockFlag() == false) {
      return BowlPickStatus.OPEN;
    }

    if (matchup.getWinningTeam() == null && matchup.getLockFlag() == true) {
      return BowlPickStatus.LOCKED;
    }

    if (matchup.getWinningTeam().getCfbTeamId() == bowlPick.getSelectedTeam().getCfbTeamId()) {
      return BowlPickStatus.RIGHT;
    }

    return BowlPickStatus.WRONG;
  }
예제 #2
0
  /** Save the bowl picks */
  public void saveBowlPicks(Integer userId, List<BowlPickBo> bowlPicks) {
    UserManager userMgr = new UserManager();
    User user = userMgr.getUserById(userId);

    Transaction saveTransaction = session.beginTransaction();
    for (BowlPickBo bowlPickBo : bowlPicks) {
      BowlMatchup matchup = getMatchupById(bowlPickBo.getBowlMatchupId());
      if (matchup.getLockFlag() == true) {
        continue;
      }

      BowlPick pick = null;
      if (bowlPickBo.getBowlPickId() != null) {
        pick = getBowlPickById(bowlPickBo.getBowlPickId());
      } else {
        pick = new BowlPick();
      }
      pick.setBowlMatchup(getMatchupById(bowlPickBo.getBowlMatchupId()));
      pick.setSelectedTeam(getCfbTeamById(bowlPickBo.getSelectedTeamId()));
      pick.setUser(user);
      pick.setLastEditTimestamp(new Date());
      pick.setCreateTimestamp(new Date());
      user.getBowlPicks().add(pick);

      if (pick.getBowlMatchup().getLockFlag() == true) {
        continue;
      }

      session.saveOrUpdate(pick);
    }
    saveTransaction.commit();
    session.flush();
  }