/** * @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; }
/** 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(); }