public void DropGameForPublisher(Publisher publisherToEdit, PublisherGame publisherGame, LeagueOptions leagueOptions) { if (publisherGame.WillRelease()) { if (leagueOptions.WillReleaseDroppableGames == -1 || leagueOptions.WillReleaseDroppableGames > publisherToEdit.WillReleaseGamesDropped) { UpdatePublisher(publisherToEdit, null, publisherGame, 0, DropType.WillRelease); return; } if (leagueOptions.FreeDroppableGames == -1 || leagueOptions.FreeDroppableGames > publisherToEdit.FreeGamesDropped) { UpdatePublisher(publisherToEdit, null, publisherGame, 0, DropType.Free); return; } throw new Exception("Publisher cannot drop any more 'Will Release' games"); } if (leagueOptions.WillNotReleaseDroppableGames == -1 || leagueOptions.WillNotReleaseDroppableGames > publisherToEdit.WillNotReleaseGamesDropped) { UpdatePublisher(publisherToEdit, null, publisherGame, 0, DropType.WillNotRelease); return; } if (leagueOptions.FreeDroppableGames == -1 || leagueOptions.FreeDroppableGames > publisherToEdit.FreeGamesDropped) { UpdatePublisher(publisherToEdit, null, publisherGame, 0, DropType.Free); return; } throw new Exception("Publisher cannot drop any more 'Will Not Release' games"); }
protected override decimal?GetPointsInternal(PublisherGame publisherGame, IClock clock, LeagueWideValues leagueWideValues) { if (publisherGame.MasterGame.HasNoValue) { return(null); } if (!publisherGame.WillRelease()) { return(0m); } if (!publisherGame.MasterGame.Value.MasterGame.IsReleased(clock)) { return(null); } decimal?possibleManualScore = publisherGame.ManualCriticScore; if (possibleManualScore.HasValue) { return(GetPointsForScore(publisherGame, possibleManualScore.Value, leagueWideValues)); } decimal?possibleCriticScore = publisherGame.MasterGame.Value.MasterGame.CriticScore; if (!possibleCriticScore.HasValue) { return(0m); } return(GetPointsForScore(publisherGame, possibleCriticScore.Value, leagueWideValues)); }
public PublisherGameViewModel(PublisherGame publisherGame, LocalDate currentDate, bool counterPicked, bool counterPicksBlockDrops) { PublisherGameID = publisherGame.PublisherGameID; GameName = publisherGame.GameName; Timestamp = publisherGame.Timestamp.ToDateTimeUtc(); CounterPick = publisherGame.CounterPick; FantasyPoints = publisherGame.FantasyPoints; Linked = publisherGame.MasterGame is not null; if (Linked) { GameName = publisherGame.MasterGame !.MasterGame.GameName; EstimatedReleaseDate = publisherGame.MasterGame.MasterGame.EstimatedReleaseDate; if (publisherGame.MasterGame.MasterGame.ReleaseDate.HasValue) { ReleaseDate = publisherGame.MasterGame.MasterGame.ReleaseDate.Value.ToDateTimeUnspecified(); } CriticScore = publisherGame.MasterGame.MasterGame.CriticScore; Released = publisherGame.MasterGame.MasterGame.IsReleased(currentDate); if (publisherGame.MasterGame is not null) { MasterGame = new MasterGameYearViewModel(publisherGame.MasterGame, currentDate); } } if (publisherGame.ManualCriticScore.HasValue) { CriticScore = publisherGame.ManualCriticScore; ManualCriticScore = true; } WillRelease = publisherGame.WillRelease(); ManualWillNotRelease = publisherGame.ManualWillNotRelease; OverallDraftPosition = publisherGame.OverallDraftPosition; BidAmount = publisherGame.BidAmount; AcquiredInTradeID = publisherGame.AcquiredInTradeID; SlotNumber = publisherGame.SlotNumber; CounterPicked = counterPicked; DropBlocked = counterPicked && counterPicksBlockDrops; }
public PublisherGameViewModel(PublisherGame publisherGame, IClock clock, ScoringSystem scoringSystem, SystemWideValues systemWideValues) { PublisherGameID = publisherGame.PublisherGameID; GameName = publisherGame.GameName; Timestamp = publisherGame.Timestamp.ToDateTimeUtc(); CounterPick = publisherGame.CounterPick; FantasyPoints = publisherGame.FantasyPoints; SimpleProjectedFantasyPoints = publisherGame.GetProjectedOrRealFantasyPoints(scoringSystem, systemWideValues, true, clock); AdvancedProjectedFantasyPoints = publisherGame.GetProjectedOrRealFantasyPoints(scoringSystem, systemWideValues, false, clock); Linked = publisherGame.MasterGame.HasValue; if (Linked) { GameName = publisherGame.MasterGame.Value.MasterGame.GameName; EstimatedReleaseDate = publisherGame.MasterGame.Value.MasterGame.EstimatedReleaseDate; if (publisherGame.MasterGame.Value.MasterGame.ReleaseDate.HasValue) { ReleaseDate = publisherGame.MasterGame.Value.MasterGame.ReleaseDate.Value.ToDateTimeUnspecified(); } CriticScore = publisherGame.MasterGame.Value.MasterGame.CriticScore; Released = publisherGame.MasterGame.Value.MasterGame.IsReleased(clock.GetCurrentInstant()); if (publisherGame.MasterGame.HasValue) { MasterGame = new MasterGameYearViewModel(publisherGame.MasterGame.Value, clock); } } if (publisherGame.ManualCriticScore.HasValue) { CriticScore = publisherGame.ManualCriticScore; ManualCriticScore = true; } WillRelease = publisherGame.WillRelease(); ManualWillNotRelease = publisherGame.ManualWillNotRelease; }
public PublisherGameViewModel(PublisherGame publisherGame, IClock clock) { PublisherGameID = publisherGame.PublisherGameID; GameName = publisherGame.GameName; Timestamp = publisherGame.Timestamp.ToDateTimeUtc(); CounterPick = publisherGame.CounterPick; FantasyPoints = publisherGame.FantasyPoints; Linked = publisherGame.MasterGame.HasValue; if (Linked) { GameName = publisherGame.MasterGame.Value.MasterGame.GameName; EstimatedReleaseDate = publisherGame.MasterGame.Value.MasterGame.EstimatedReleaseDate; if (publisherGame.MasterGame.Value.MasterGame.ReleaseDate.HasValue) { ReleaseDate = publisherGame.MasterGame.Value.MasterGame.ReleaseDate.Value.ToDateTimeUnspecified(); } CriticScore = publisherGame.MasterGame.Value.MasterGame.CriticScore; Released = publisherGame.MasterGame.Value.MasterGame.IsReleased(clock); MasterGameID = publisherGame.MasterGame.Value.MasterGame.MasterGameID; if (publisherGame.ManualCriticScore.HasValue) { CriticScore = publisherGame.ManualCriticScore; ManualCriticScore = true; } PercentStandardGame = publisherGame.MasterGame.Value.PercentStandardGame; PercentCounterPick = publisherGame.MasterGame.Value.PercentCounterPick; AverageDraftPosition = publisherGame.MasterGame.Value.AverageDraftPosition; } WillRelease = publisherGame.WillRelease(); }