From f8fe7796f353404bf8c43c5af06733083ab0f583 Mon Sep 17 00:00:00 2001 From: CalebRose Date: Tue, 30 Sep 2025 10:17:05 -0700 Subject: [PATCH 1/4] play by plays --- controller/PlayerController.go | 9 ++- main.go | 3 +- managers/ExportManager.go | 88 +++++++++++++++++++++++++ managers/GameplanManager.go | 15 +++-- managers/StatsManager.go | 110 ++++++++++++++++--------------- repository/CapsheetRepository.go | 10 +++ structs/NFLPlayer.go | 50 ++++++++------ structs/PlayByPlay.go | 40 +++++++++++ 8 files changed, 244 insertions(+), 81 deletions(-) diff --git a/controller/PlayerController.go b/controller/PlayerController.go index 06cf6b4b..d6f4b340 100644 --- a/controller/PlayerController.go +++ b/controller/PlayerController.go @@ -149,17 +149,22 @@ func ExportNFLRosterToCSV(w http.ResponseWriter, r *http.Request) { } managers.ExportNFLTeamToCSV(teamId, w) - // ? } -func ExportAllRostersToCSV(w http.ResponseWriter, r *http.Request) { +func ExportAllCFBRostersToCSV(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "text/csv") managers.ExportAllRostersToCSV(w) // ? } +func ExportAllNFLRostersToCSV(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "text/csv") + + managers.ExportAllNFLTeamsToCSV(w) +} + // Place player on NFL Trade block func PlaceNFLPlayerOnPracticeSquad(w http.ResponseWriter, r *http.Request) { vars := mux.Vars(r) diff --git a/main.go b/main.go index 3e60ecca..b67678cd 100644 --- a/main.go +++ b/main.go @@ -223,11 +223,12 @@ func handleRequests() http.Handler { apiRouter.HandleFunc("/nflplayers/team/{teamID}/", controller.AllNFLPlayersByTeamIDForDC).Methods("GET") apiRouter.HandleFunc("/nflplayers/freeagency/available/{teamID}", controller.FreeAgencyAvailablePlayers).Methods("GET") apiRouter.HandleFunc("/nflplayers/team/export/{teamID}/", controller.ExportNFLRosterToCSV).Methods("GET") + apiRouter.HandleFunc("/nflplayers/teams/export/all/", controller.ExportAllNFLRostersToCSV).Methods("GET") apiRouter.HandleFunc("/nflplayers/tag/player/", controller.TagPlayer).Methods("POST") apiRouter.HandleFunc("/nflplayers/cut/player/{PlayerID}/", controller.CutNFLPlayerFromRoster).Methods("GET") apiRouter.HandleFunc("/nflplayers/place/player/squad/{PlayerID}/", controller.PlaceNFLPlayerOnPracticeSquad).Methods("GET") apiRouter.HandleFunc("/nflplayers/injury/reserve/player/{PlayerID}/", controller.PlaceNFLPlayerOnInjuryReserve).Methods("GET") - apiRouter.HandleFunc("/collegeplayers/teams/export/", controller.ExportAllRostersToCSV).Methods("GET") // DO NOT USE + apiRouter.HandleFunc("/collegeplayers/teams/export/", controller.ExportAllCFBRostersToCSV).Methods("GET") // DO NOT USE // Poll Controls apiRouter.HandleFunc("/college/poll/create/", controller.CreatePollSubmission).Methods("POST") diff --git a/managers/ExportManager.go b/managers/ExportManager.go index 45c37ca7..e227cc60 100644 --- a/managers/ExportManager.go +++ b/managers/ExportManager.go @@ -184,6 +184,70 @@ func ExportNFLTeamToCSV(TeamID string, w http.ResponseWriter) { } } +func ExportAllNFLTeamsToCSV(w http.ResponseWriter) { + // Get Team Data + nflPlayers := GetAllNFLPlayers() + nflPlayerMap := MakeNFLPlayerMapByTeamID(nflPlayers, true) + w.Header().Set("Content-Type", "text/csv; charset=utf-8") + w.Header().Set("Content-Disposition", "attachment;filename=all_nfl_players_on_roster.csv") + w.Header().Set("Transfer-Encoding", "chunked") + // Initialize writer + writer := csv.NewWriter(w) + + // Get Players + nflTeams := GetAllNFLTeams() + + HeaderRow := []string{ + "Team", "ID", "First Name", "Last Name", "Position", + "Archetype", "Position Two", "Archetype Two", "Year", "Age", + "High School", "Hometown", "State", "Height", + "Weight", "Overall", "Speed", + "Football IQ", "Agility", "Carrying", + "Catching", "Route Running", "Zone Coverage", "Man Coverage", + "Strength", "Tackle", "Pass Block", "Run Block", + "Pass Rush", "Run Defense", "Throw Power", "Throw Accuracy", + "Kick Power", "Kick Accuracy", "Punt Power", "Punt Accuracy", + "Stamina", "Injury", "Potential Grade", + } + + err := writer.Write(HeaderRow) + if err != nil { + log.Fatal("Cannot write header row", err) + } + + for _, team := range nflTeams { + players := nflPlayerMap[team.ID] + + for _, player := range players { + csvModel := structs.MapNFLPlayerToCSVModel(player) + playerRow := []string{ + team.TeamName, strconv.Itoa(int(player.ID)), csvModel.FirstName, csvModel.LastName, csvModel.Position, + csvModel.Archetype, csvModel.PositionTwo, csvModel.ArchetypeTwo, csvModel.Year, strconv.Itoa(player.Age), + player.HighSchool, player.Hometown, player.State, strconv.Itoa(player.Height), + strconv.Itoa(player.Weight), csvModel.OverallGrade, csvModel.SpeedGrade, + csvModel.FootballIQGrade, csvModel.AgilityGrade, csvModel.CarryingGrade, + csvModel.CatchingGrade, csvModel.RouteRunningGrade, csvModel.ZoneCoverageGrade, csvModel.ManCoverageGrade, + csvModel.StrengthGrade, csvModel.TackleGrade, csvModel.PassBlockGrade, csvModel.RunBlockGrade, + csvModel.PassRushGrade, csvModel.RunDefenseGrade, csvModel.ThrowPowerGrade, csvModel.ThrowAccuracyGrade, + csvModel.KickPowerGrade, csvModel.KickAccuracyGrade, csvModel.PuntPowerGrade, csvModel.PuntAccuracyGrade, + csvModel.StaminaGrade, csvModel.InjuryGrade, csvModel.PotentialGrade, + } + + err = writer.Write(playerRow) + if err != nil { + log.Fatal("Cannot write player row to CSV", err) + } + + writer.Flush() + err = writer.Error() + if err != nil { + log.Fatal("Error while writing to file ::", err) + } + } + } + +} + func ExportCrootsToCSV(w http.ResponseWriter) { w.Header().Set("Content-Type", "text/csv; charset=utf-8") w.Header().Set("Content-Disposition", "attachment;filename=2022SimNFLDraftClass.csv") @@ -425,6 +489,9 @@ func ExportNFLPlayByPlayToCSV(gameID string, w http.ResponseWriter) { "Defensive Tendency", "# of Blitzers", "LB Coverage", "CB Coverage", "S Coverage", "QB Player ID", "Ballcarrier ID", "Tackler1 ID", "Tackler2 ID", "Yards Gained", "Result", + "QB Id", "Back1 Id", "Back2 Id", "Back3 Id", "Slot1 Id", "Slot2 Id", "Le Id", "Re Id", "Lt Id", "LG id", "C id", "Rg Id", "Rt Id", + "Rde id", "Rdt Id", "Nt Id", "Ldt Id", "Lde Id", "Rolb Id", "Rilb Id", "Mlb Id", "Lilb Id", "Lolb Id", "Rcb Id", "DB1 Id", "DB2 Id", "DB3 ID", "Fs ID", "SS Id", "Lcb Id", + "Blitzer1 Id", "Blitzer2 Id", "Blitzer3 Id", } err := writer.Write(HeaderRow) if err != nil { @@ -452,6 +519,15 @@ func ExportNFLPlayByPlayToCSV(gameID string, w http.ResponseWriter) { play.DefensiveTendency, blitzNumber, play.LBCoverage, play.CBCoverage, play.SCoverage, qbID, bcID, t1ID, t2ID, yards, play.Result, + strconv.Itoa(int(play.Qb)), strconv.Itoa(int(play.Back1)), strconv.Itoa(int(play.Back2)), strconv.Itoa(int(play.Back3)), + strconv.Itoa(int(play.Slot1)), strconv.Itoa(int(play.Slot2)), strconv.Itoa(int(play.Le)), strconv.Itoa(int(play.Re)), + strconv.Itoa(int(play.Lt)), strconv.Itoa(int(play.Lg)), strconv.Itoa(int(play.C)), strconv.Itoa(int(play.Rg)), strconv.Itoa(int(play.Rt)), + strconv.Itoa(int(play.Rde)), strconv.Itoa(int(play.Rdt)), strconv.Itoa(int(play.Nt)), strconv.Itoa(int(play.Ldt)), strconv.Itoa(int(play.Lde)), + strconv.Itoa(int(play.Rolb)), strconv.Itoa(int(play.Rilb)), strconv.Itoa(int(play.Mlb)), strconv.Itoa(int(play.Lilb)), strconv.Itoa(int(play.Lolb)), + strconv.Itoa(int(play.Rcb)), + strconv.Itoa(int(play.Extradb1)), strconv.Itoa(int(play.Extradb2)), strconv.Itoa(int(play.Extradb3)), + strconv.Itoa(int(play.Fs)), strconv.Itoa(int(play.Ss)), strconv.Itoa(int(play.Fcb)), + strconv.Itoa(int(play.Blitzer1)), strconv.Itoa(int(play.Blitzer2)), strconv.Itoa(int(play.Blitzer3)), } err = writer.Write(row) @@ -497,6 +573,9 @@ func ExportCFBPlayByPlayToCSV(gameID string, w http.ResponseWriter) { "Defensive Tendency", "# of Blitzers", "LB Coverage", "CB Coverage", "S Coverage", "QB Player ID", "Ballcarrier ID", "Tackler1 ID", "Tackler2 ID", "Yards Gained", "Result", + "QB Id", "Back1 Id", "Back2 Id", "Back3 Id", "Slot1 Id", "Slot2 Id", "Le Id", "Re Id", "Lt Id", "LG id", "C id", "Rg Id", "Rt Id", + "Rde id", "Rdt Id", "Nt Id", "Ldt Id", "Lde Id", "Rolb Id", "Rilb Id", "Mlb Id", "Lilb Id", "Lolb Id", "Rcb Id", "DB1 Id", "DB2 Id", "DB3 ID", "Fs ID", "SS Id", "Lcb Id", + "Blitzer1 Id", "Blitzer2 Id", "Blitzer3 Id", } err := writer.Write(HeaderRow) if err != nil { @@ -524,6 +603,15 @@ func ExportCFBPlayByPlayToCSV(gameID string, w http.ResponseWriter) { play.DefensiveTendency, blitzNumber, play.LBCoverage, play.CBCoverage, play.SCoverage, qbID, bcID, t1ID, t2ID, yards, play.Result, + strconv.Itoa(int(play.Qb)), strconv.Itoa(int(play.Back1)), strconv.Itoa(int(play.Back2)), strconv.Itoa(int(play.Back3)), + strconv.Itoa(int(play.Slot1)), strconv.Itoa(int(play.Slot2)), strconv.Itoa(int(play.Le)), strconv.Itoa(int(play.Re)), + strconv.Itoa(int(play.Lt)), strconv.Itoa(int(play.Lg)), strconv.Itoa(int(play.C)), strconv.Itoa(int(play.Rg)), strconv.Itoa(int(play.Rt)), + strconv.Itoa(int(play.Rde)), strconv.Itoa(int(play.Rdt)), strconv.Itoa(int(play.Nt)), strconv.Itoa(int(play.Ldt)), strconv.Itoa(int(play.Lde)), + strconv.Itoa(int(play.Rolb)), strconv.Itoa(int(play.Rilb)), strconv.Itoa(int(play.Mlb)), strconv.Itoa(int(play.Lilb)), strconv.Itoa(int(play.Lolb)), + strconv.Itoa(int(play.Rcb)), + strconv.Itoa(int(play.Extradb1)), strconv.Itoa(int(play.Extradb2)), strconv.Itoa(int(play.Extradb3)), + strconv.Itoa(int(play.Fs)), strconv.Itoa(int(play.Ss)), strconv.Itoa(int(play.Fcb)), + strconv.Itoa(int(play.Blitzer1)), strconv.Itoa(int(play.Blitzer2)), strconv.Itoa(int(play.Blitzer3)), } err = writer.Write(row) diff --git a/managers/GameplanManager.go b/managers/GameplanManager.go index b68d0263..91dbf9ba 100644 --- a/managers/GameplanManager.go +++ b/managers/GameplanManager.go @@ -1235,10 +1235,8 @@ func ReAlignCollegeDepthChart(db *gorm.DB, teamID string, gp structs.CollegeGame for _, dcp := range dcPositions { positionList := positionMap[dcp.Position] for _, pos := range positionList { - if starterMap[pos.CollegePlayer.ID] && - dcp.Position != "FG" && - dcp.Position != "PR" && - dcp.Position != "KR" { + playerID := pos.CollegePlayer.ID + if starterMap[playerID] && !isSpecialTeams(dcp.Position) { continue } if backupMap[pos.CollegePlayer.ID] && dcp.PositionLevel != "1" && dcp.Position != "STU" { @@ -1278,6 +1276,15 @@ func ReAlignCollegeDepthChart(db *gorm.DB, teamID string, gp structs.CollegeGame } } +func isSpecialTeams(pos string) bool { + switch pos { + case "FG", "PR", "KR": + return true + default: + return false + } +} + // UpdateCollegeAIDepthCharts func UpdateNFLAIDepthCharts() { db := dbprovider.GetInstance().GetDB() diff --git a/managers/StatsManager.go b/managers/StatsManager.go index c9eabb96..f9bb1147 100644 --- a/managers/StatsManager.go +++ b/managers/StatsManager.go @@ -1294,33 +1294,34 @@ func GenerateCFBPlayByPlayResponse(playByPlays []structs.CollegePlayByPlay, part losFull := strconv.Itoa(int(los)) + " " + losSide play := structs.PlayByPlayResponse{ - PlayNumber: uint(number), - HomeTeamID: p.HomeTeamID, - HomeTeamScore: p.HomeTeamScore, - AwayTeamID: p.AwayTeamID, - AwayTeamScore: p.AwayTeamScore, - Quarter: p.Quarter, - TimeRemaining: p.TimeRemaining, - Down: p.Down, - Distance: p.Distance, - LineOfScrimmage: losFull, - PlayType: playType, - PlayName: playName, - PointOfAttack: poa, - OffensiveFormation: offFormation, - DefensiveFormation: defFormation, - DefensiveTendency: defTendency, - Possession: poss, - QBPlayerID: p.QBPlayerID, - BallCarrierID: p.BallCarrierID, - Tackler1ID: p.Tackler1ID, - Tackler2ID: p.Tackler2ID, - ResultYards: p.ResultYards, - BlitzNumber: p.BlitzNumber, - LBCoverage: lb, - CBCoverage: cb, - SCoverage: s, - PresureID: p.PressureID, + PlayNumber: uint(number), + HomeTeamID: p.HomeTeamID, + HomeTeamScore: p.HomeTeamScore, + AwayTeamID: p.AwayTeamID, + AwayTeamScore: p.AwayTeamScore, + Quarter: p.Quarter, + TimeRemaining: p.TimeRemaining, + Down: p.Down, + Distance: p.Distance, + LineOfScrimmage: losFull, + PlayType: playType, + PlayName: playName, + PointOfAttack: poa, + OffensiveFormation: offFormation, + DefensiveFormation: defFormation, + DefensiveTendency: defTendency, + Possession: poss, + QBPlayerID: p.QBPlayerID, + BallCarrierID: p.BallCarrierID, + Tackler1ID: p.Tackler1ID, + Tackler2ID: p.Tackler2ID, + ResultYards: p.ResultYards, + BlitzNumber: p.BlitzNumber, + LBCoverage: lb, + CBCoverage: cb, + SCoverage: s, + PresureID: p.PressureID, + PlayersInvoledInPlay: p.PlayersInvoledInPlay, } var result []string if isStream { @@ -1375,33 +1376,34 @@ func GenerateNFLPlayByPlayResponse(playByPlays []structs.NFLPlayByPlay, particip losFull := strconv.Itoa(int(los)) + " " + losSide play := structs.PlayByPlayResponse{ - PlayNumber: uint(number), - HomeTeamID: p.HomeTeamID, - HomeTeamScore: p.HomeTeamScore, - AwayTeamID: p.AwayTeamID, - AwayTeamScore: p.AwayTeamScore, - Quarter: p.Quarter, - TimeRemaining: p.TimeRemaining, - Down: p.Down, - Distance: p.Distance, - LineOfScrimmage: losFull, - PlayType: playType, - PlayName: playName, - PointOfAttack: poa, - OffensiveFormation: offFormation, - DefensiveFormation: defFormation, - DefensiveTendency: defTendency, - Possession: poss, - QBPlayerID: p.QBPlayerID, - BallCarrierID: p.BallCarrierID, - Tackler1ID: p.Tackler1ID, - Tackler2ID: p.Tackler2ID, - ResultYards: p.ResultYards, - BlitzNumber: p.BlitzNumber, - LBCoverage: lb, - CBCoverage: cb, - SCoverage: s, - PresureID: p.PressureID, + PlayNumber: uint(number), + HomeTeamID: p.HomeTeamID, + HomeTeamScore: p.HomeTeamScore, + AwayTeamID: p.AwayTeamID, + AwayTeamScore: p.AwayTeamScore, + Quarter: p.Quarter, + TimeRemaining: p.TimeRemaining, + Down: p.Down, + Distance: p.Distance, + LineOfScrimmage: losFull, + PlayType: playType, + PlayName: playName, + PointOfAttack: poa, + OffensiveFormation: offFormation, + DefensiveFormation: defFormation, + DefensiveTendency: defTendency, + Possession: poss, + QBPlayerID: p.QBPlayerID, + BallCarrierID: p.BallCarrierID, + Tackler1ID: p.Tackler1ID, + Tackler2ID: p.Tackler2ID, + ResultYards: p.ResultYards, + BlitzNumber: p.BlitzNumber, + LBCoverage: lb, + CBCoverage: cb, + SCoverage: s, + PresureID: p.PressureID, + PlayersInvoledInPlay: p.PlayersInvoledInPlay, } var result []string if isStream { diff --git a/repository/CapsheetRepository.go b/repository/CapsheetRepository.go index e202cf34..1d293e8b 100644 --- a/repository/CapsheetRepository.go +++ b/repository/CapsheetRepository.go @@ -16,3 +16,13 @@ func FindAllNFLCapsheets() []structs.NFLCapsheet { } return capsheets } + +func FindAllActiveNFLContracts() []structs.NFLContract { + var contracts []structs.NFLContract + db := dbprovider.GetInstance().GetDB() + err := db.Where("is_active = ?", true).Find(&contracts).Error + if err != nil { + log.Fatal(err) + } + return contracts +} diff --git a/structs/NFLPlayer.go b/structs/NFLPlayer.go index 9734585b..f2f6f80f 100644 --- a/structs/NFLPlayer.go +++ b/structs/NFLPlayer.go @@ -225,26 +225,26 @@ func (f *NFLPlayer) AddTagType(tagType uint8) { } func (np *NFLPlayer) ApplyTrainingCampInfo(attr CollegePlayerProgressions) { - np.Agility = attr.Agility - np.Speed = attr.Speed - np.FootballIQ = attr.FootballIQ - np.Carrying = attr.Carrying - np.Catching = attr.Catching - np.RouteRunning = attr.RouteRunning - np.PassBlock = attr.PassBlock - np.RunBlock = attr.RunBlock - np.PassRush = attr.PassRush - np.RunDefense = attr.RunDefense - np.Tackle = attr.Tackle - np.Strength = attr.Strength - np.ManCoverage = attr.ManCoverage - np.ZoneCoverage = attr.ZoneCoverage - np.KickAccuracy = attr.KickAccuracy - np.KickPower = attr.KickPower - np.PuntAccuracy = attr.PuntAccuracy - np.PuntPower = attr.PuntPower - np.ThrowAccuracy = attr.ThrowAccuracy - np.ThrowPower = attr.ThrowPower + np.Agility = AddAttribute(attr.Agility) + np.Speed = AddAttribute(attr.Speed) + np.FootballIQ = AddAttribute(attr.FootballIQ) + np.Carrying = AddAttribute(attr.Carrying) + np.Catching = AddAttribute(attr.Catching) + np.RouteRunning = AddAttribute(attr.RouteRunning) + np.PassBlock = AddAttribute(attr.PassBlock) + np.RunBlock = AddAttribute(attr.RunBlock) + np.PassRush = AddAttribute(attr.PassRush) + np.RunDefense = AddAttribute(attr.RunDefense) + np.Tackle = AddAttribute(attr.Tackle) + np.Strength = AddAttribute(attr.Strength) + np.ManCoverage = AddAttribute(attr.ManCoverage) + np.ZoneCoverage = AddAttribute(attr.ZoneCoverage) + np.KickAccuracy = AddAttribute(attr.KickAccuracy) + np.KickPower = AddAttribute(attr.KickPower) + np.PuntAccuracy = AddAttribute(attr.PuntAccuracy) + np.PuntPower = AddAttribute(attr.PuntPower) + np.ThrowAccuracy = AddAttribute(attr.ThrowAccuracy) + np.ThrowPower = AddAttribute(attr.ThrowPower) np.IsInjured = attr.WeeksOfRecovery > 0 np.WeeksOfRecovery = uint(attr.WeeksOfRecovery) np.InjuryName = attr.InjuryText @@ -255,3 +255,13 @@ func (np *NFLPlayer) ApplyTrainingCampInfo(attr CollegePlayerProgressions) { func (cp *NFLPlayer) AddSeasonStats(seasonStats NFLPlayerSeasonStats) { cp.SeasonStats = seasonStats } + +func AddAttribute(attr int) int { + newVal := attr + if newVal > 99 { + newVal = 99 + } else if newVal < 1 { + newVal = 1 + } + return newVal +} diff --git a/structs/PlayByPlay.go b/structs/PlayByPlay.go index 4ab34c5d..723f3951 100644 --- a/structs/PlayByPlay.go +++ b/structs/PlayByPlay.go @@ -8,6 +8,42 @@ type NFLPlayByPlay struct { PlayByPlay } +type PlayersInvoledInPlay struct { + Qb uint + Back1 uint + Back2 uint + Back3 uint + Slot1 uint + Slot2 uint + Le uint + Re uint + Lt uint + Lg uint + C uint + Rg uint + Rt uint + Rde uint + Rdt uint + Nt uint + Ldt uint + Lde uint + Rolb uint + Rilb uint + Mlb uint + Lilb uint + Lolb uint + Rcb uint + Extradb1 uint + Extradb2 uint + Extradb3 uint + Fs uint + Ss uint + Fcb uint + Blitzer1 uint + Blitzer2 uint + Blitzer3 uint +} + type PlayByPlay struct { ID uint GameID uint @@ -67,6 +103,7 @@ type PlayByPlay struct { OnOffense bool KickDistance int8 PressureID uint + PlayersInvoledInPlay } func (p *PlayByPlay) Map(play PlayByPlayDTO) { @@ -127,6 +164,7 @@ func (p *PlayByPlay) Map(play PlayByPlayDTO) { p.OnOffense = play.OnOffense p.HomeHasBall = play.HomeHasBall p.PressureID = uint(play.PressureID) + p.PlayersInvoledInPlay = play.PlayersInvoledInPlay } type PlayByPlayDTO struct { @@ -187,6 +225,7 @@ type PlayByPlayDTO struct { OnOffense bool KickDistance int PressureID int + PlayersInvoledInPlay } type PlayByPlayResponse struct { @@ -219,6 +258,7 @@ type PlayByPlayResponse struct { ResultYards int8 Result string StreamResult []string + PlayersInvoledInPlay } func (p *PlayByPlayResponse) AddPlayInformation(playType, playName, offFormation, defFormation, poa string) { From 3caa50153e64487e6e5370d46433ebea47fd02bd Mon Sep 17 00:00:00 2001 From: CalebRose Date: Tue, 30 Sep 2025 11:33:33 -0700 Subject: [PATCH 2/4] small fixes --- constants/constants.go | 2 +- managers/RecruitingProfileManager.go | 10 +++++----- managers/SyncManager.go | 2 +- managers/TransferPortalManager.go | 9 +++++---- 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/constants/constants.go b/constants/constants.go index 71324210..7bcee286 100644 --- a/constants/constants.go +++ b/constants/constants.go @@ -3,6 +3,6 @@ package constants const ( FinalPortalRound uint = 5 MaxFBSRosterSize int = 105 - MaxFCSRosterSize int = 80 + MaxFCSRosterSize int = 85 PortalSigningMinimum float64 = 0.66 ) diff --git a/managers/RecruitingProfileManager.go b/managers/RecruitingProfileManager.go index e154b682..1e75badf 100644 --- a/managers/RecruitingProfileManager.go +++ b/managers/RecruitingProfileManager.go @@ -322,16 +322,16 @@ func GetRecruitingNeeds(TeamID string) map[string]int { needsMap["FB"] = 1 needsMap["TE"] = 2 needsMap["WR"] = 3 - needsMap["OT"] = 2 - needsMap["OG"] = 2 - needsMap["C"] = 1 + needsMap["OT"] = 3 + needsMap["OG"] = 3 + needsMap["C"] = 2 needsMap["DE"] = 2 needsMap["DT"] = 2 needsMap["OLB"] = 2 needsMap["ILB"] = 2 needsMap["CB"] = 2 - needsMap["FS"] = 1 - needsMap["SS"] = 1 + needsMap["FS"] = 2 + needsMap["SS"] = 2 needsMap["P"] = 1 needsMap["K"] = 1 needsMap["ATH"] = 3 diff --git a/managers/SyncManager.go b/managers/SyncManager.go index 646f7b3f..7ec00082 100644 --- a/managers/SyncManager.go +++ b/managers/SyncManager.go @@ -852,7 +852,7 @@ func ResetAIBoardsForCompletedTeams() { db.Save(&croot) } team.ResetSpentPoints() - db.Save(&team) + repository.SaveRecruitingTeamProfile(team, db) } } } diff --git a/managers/TransferPortalManager.go b/managers/TransferPortalManager.go index 004301a2..244360f0 100644 --- a/managers/TransferPortalManager.go +++ b/managers/TransferPortalManager.go @@ -772,13 +772,14 @@ func AICoachFillBoardsPhase() { biasMod += 20 } } else if bias == nationalChampionshipContender { - if postSeasonStatus == "Bowl Game" { + switch postSeasonStatus { + case "Bowl Game": biasMod += 10 - } else if postSeasonStatus == "Playoffs" { + case "Playoffs": biasMod += 15 - } else if postSeasonStatus == "National Championship Participant" { + case "National Championship Participant": biasMod += 20 - } else if postSeasonStatus == "National Champions" { + case "National Champions": biasMod += 25 } } else if bias == upcomingTeam { From 3177e7ff8dfae602feedbfd8a85cbef6bc7d0950 Mon Sep 17 00:00:00 2001 From: CalebRose Date: Tue, 30 Sep 2025 11:51:52 -0700 Subject: [PATCH 3/4] capping on progressions --- structs/NFLPlayer.go | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/structs/NFLPlayer.go b/structs/NFLPlayer.go index f2f6f80f..f2404aaf 100644 --- a/structs/NFLPlayer.go +++ b/structs/NFLPlayer.go @@ -184,26 +184,26 @@ func (f *NFLPlayer) ToggleHasProgressed() { func (np *NFLPlayer) Progress(attr CollegePlayerProgressions) { np.Age++ np.Experience++ - np.Agility = attr.Agility - np.Speed = attr.Speed - np.FootballIQ = attr.FootballIQ - np.Carrying = attr.Carrying - np.Catching = attr.Catching - np.RouteRunning = attr.RouteRunning - np.PassBlock = attr.PassBlock - np.RunBlock = attr.RunBlock - np.PassRush = attr.PassRush - np.RunDefense = attr.RunDefense - np.Tackle = attr.Tackle - np.Strength = attr.Strength - np.ManCoverage = attr.ManCoverage - np.ZoneCoverage = attr.ZoneCoverage - np.KickAccuracy = attr.KickAccuracy - np.KickPower = attr.KickPower - np.PuntAccuracy = attr.PuntAccuracy - np.PuntPower = attr.PuntPower - np.ThrowAccuracy = attr.ThrowAccuracy - np.ThrowPower = attr.ThrowPower + np.Agility = AddAttribute(attr.Agility) + np.Speed = AddAttribute(attr.Speed) + np.FootballIQ = AddAttribute(attr.FootballIQ) + np.Carrying = AddAttribute(attr.Carrying) + np.Catching = AddAttribute(attr.Catching) + np.RouteRunning = AddAttribute(attr.RouteRunning) + np.PassBlock = AddAttribute(attr.PassBlock) + np.RunBlock = AddAttribute(attr.RunBlock) + np.PassRush = AddAttribute(attr.PassRush) + np.RunDefense = AddAttribute(attr.RunDefense) + np.Tackle = AddAttribute(attr.Tackle) + np.Strength = AddAttribute(attr.Strength) + np.ManCoverage = AddAttribute(attr.ManCoverage) + np.ZoneCoverage = AddAttribute(attr.ZoneCoverage) + np.KickAccuracy = AddAttribute(attr.KickAccuracy) + np.KickPower = AddAttribute(attr.KickPower) + np.PuntAccuracy = AddAttribute(attr.PuntAccuracy) + np.PuntPower = AddAttribute(attr.PuntPower) + np.ThrowAccuracy = AddAttribute(attr.ThrowAccuracy) + np.ThrowPower = AddAttribute(attr.ThrowPower) np.HasProgressed = true np.ShowLetterGrade = false np.IsInjured = false From 80e47b3bf7c36d27f94e65581f1b47ec1c2d1056 Mon Sep 17 00:00:00 2001 From: CalebRose Date: Sat, 4 Oct 2025 06:13:27 -0700 Subject: [PATCH 4/4] fixing bootstrap --- data/2026/2026_cfb_games_preseason.csv | 30 +- data/2026/2026_nfl_regularseason_games.csv | 321 +++++++++++++++++++++ managers/BootstrapManager.go | 8 +- managers/ImportManager.go | 49 ++-- managers/MapHelper.go | 20 ++ 5 files changed, 389 insertions(+), 39 deletions(-) create mode 100644 data/2026/2026_nfl_regularseason_games.csv diff --git a/data/2026/2026_cfb_games_preseason.csv b/data/2026/2026_cfb_games_preseason.csv index 56e1cc4e..c08987bb 100644 --- a/data/2026/2026_cfb_games_preseason.csv +++ b/data/2026/2026_cfb_games_preseason.csv @@ -66,16 +66,20 @@ GameID,Season,Week,Home Team,Away Team,Conference Game,Division Game,Neutral Sit 5475,2026,3,WISC,NAVY,0,0,0,0,0,0,0,0,0,JC,Syndakyt,Saturday Afternoon,Camp Randall Stadium,Madison,Wisconsin,0,,,0, 5476,2026,3,WMU,USC,0,0,0,0,0,0,0,0,0,Jieret,Dr_Novella,Saturday Evening,Waldo Stadium,Kalamazoo,Michigan,0,,,0, 5477,2026,3,WVU,FSU,0,0,0,0,0,0,0,0,0,smackemz3,Kirby,Thursday Night,Mountaineer Field at Milan Puskar Stadium,Morgantown,West Virginia,0,,,0, -5478,2026,1,ZONA,BOIS,0,0,0,0,0,0,0,0,0,Ares,cubansdoitbest,,Arizona Stadium,Tucson,Arizona,0,,,0, -5479,2026,3,MINN,CMU,0,0,0,0,0,0,0,0,0,Minnow,Raider42,,TCF Bank Stadium,Minneapolis,Minnesota,0,,,0, -5480,2026,1,BAMA,MINN,0,0,0,0,0,0,0,0,0,thatfunk,Minnow,,Bryant-Denny Stadium,Tuscaloosa,Alabama,0,,,0, -5481,2026,2,ZONA,APST,0,0,0,0,0,0,0,0,0,Ares,Mightydog135,,Arizona Stadium,Tucson,Arizona,0,,,0, -5482,2026,3,APST,BOIS,0,0,0,0,0,0,0,0,0,Mightydog135,cubansdoitbest,,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, -5483,2026,1,APST,CMU,0,0,0,0,0,0,0,0,0,Mightydog135,Raider42,,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, -5484,2026,2,MISS,MINN,0,0,0,0,0,0,0,0,0,SlapYourBasil,Minnow,,Vaught-Hemingway Stadium at Hollingsworth Field,Oxford,Mississippi,0,,,0, -5485,2026,1,USA,BC,0,0,0,0,0,0,0,0,0,jgreene816,Fireballer34,,Ladd-Peebles Stadium,Mobile,Alabama,0,,,0, -5486,2026,2,BC,PURD,0,0,0,0,0,0,0,0,0,Fireballer34,MasonAsher,,Alumni Stadium,Chestnut Hill,Massachusetts,0,,,0, -5487,2026,3,NIU,BC,0,0,0,0,0,0,0,0,0,Ape,Fireballer34,,Brigham Field at Huskie Stadium,DeKalb,Illinois,0,,,0, -5488,2026,1,OREG,NAVY,0,0,0,0,0,0,0,0,0,Dida28,Syndakyt,,Autzen Stadium,Eugene,Oregon,0,,,0, -5489,2026,2,UNT,ZONA,0,0,0,0,0,0,0,0,0,EmeraldSeasSunshine,Ares,,Apogee Stadium,Denton,Texas,0,,,0, -5490,2026,2,BOIS,FLA,0,0,0,0,0,0,0,0,0,cubansdoitbest,Weeze,,Albertsons Stadium,Boise,Idaho,0,,,0, +5478,2026,1,ZONA,BOIS,0,0,0,0,0,0,0,0,0,Ares,cubansdoitbest,Thursday Night,Arizona Stadium,Tucson,Arizona,0,,,0, +5479,2026,3,MINN,CMU,0,0,0,0,0,0,0,0,0,Minnow,Raider42,Thursday Night,TCF Bank Stadium,Minneapolis,Minnesota,0,,,0, +5480,2026,1,BAMA,MINN,0,0,0,0,0,0,0,0,0,thatfunk,Minnow,Thursday Night,Bryant-Denny Stadium,Tuscaloosa,Alabama,0,,,0, +5481,2026,2,ZONA,APST,0,0,0,0,0,0,0,0,0,Ares,Mightydog135,Thursday Night,Arizona Stadium,Tucson,Arizona,0,,,0, +5482,2026,3,APST,BOIS,0,0,0,0,0,0,0,0,0,Mightydog135,cubansdoitbest,Thursday Night,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, +5483,2026,1,APST,CMU,0,0,0,0,0,0,0,0,0,Mightydog135,Raider42,Thursday Night,Kidd Brewer Stadium,Boone,North Carolina,0,,,0, +5484,2026,2,MISS,MINN,0,0,0,0,0,0,0,0,0,SlapYourBasil,Minnow,Thursday Night,Vaught-Hemingway Stadium at Hollingsworth Field,Oxford,Mississippi,0,,,0, +5485,2026,1,USA,BC,0,0,0,0,0,0,0,0,0,jgreene816,Fireballer34,Thursday Night,Ladd-Peebles Stadium,Mobile,Alabama,0,,,0, +5486,2026,2,BC,PURD,0,0,0,0,0,0,0,0,0,Fireballer34,MasonAsher,Thursday Night,Alumni Stadium,Chestnut Hill,Massachusetts,0,,,0, +5487,2026,3,NIU,BC,0,0,0,0,0,0,0,0,0,Ape,Fireballer34,Thursday Night,Brigham Field at Huskie Stadium,DeKalb,Illinois,0,,,0, +5488,2026,1,OREG,NAVY,0,0,0,0,0,0,0,0,0,Dida28,Syndakyt,Thursday Night,Autzen Stadium,Eugene,Oregon,0,,,0, +5489,2026,2,UNT,ZONA,0,0,0,0,0,0,0,0,0,EmeraldSeasSunshine,Ares,Thursday Night,Apogee Stadium,Denton,Texas,0,,,0, +5490,2026,2,BOIS,FLA,0,0,0,0,0,0,0,0,0,cubansdoitbest,Weeze,Thursday Night,Albertsons Stadium,Boise,Idaho,0,,,0, +7075,2026,1,KANS,UTST,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, +7076,2026,2,KANS,USC,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, +7077,2026,2,ILLI,NCST,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, +7078,2026,3,UTST,ILLI,0,0,0,0,0,0,0,0,0,,,Thursday Night,,,,0,,,0, diff --git a/data/2026/2026_nfl_regularseason_games.csv b/data/2026/2026_nfl_regularseason_games.csv new file mode 100644 index 00000000..c5c9815c --- /dev/null +++ b/data/2026/2026_nfl_regularseason_games.csv @@ -0,0 +1,321 @@ +GameID,Season,Week,Home Team,Away Team,Neutral Site,PreSeason,Conference Champ,Playoff,National Champ,Listed Coach,Other Coach,TimeSlot,Stadium,City,State,GameTitle,Info,NextGameID,HoA +1000,2026,1,PHI,CLE,0,1,0,0,0,acewulf,LordLittleButt,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1001,2026,1,MIA,CAR,0,1,0,0,0,TheLiberator,Sarge,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1002,2026,1,DAL,LAC,0,1,0,0,0,Rocketcan,Dean,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1003,2026,1,GB,TEN,0,1,0,0,0,JC,Dearden,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1004,2026,1,LV,MIN,0,1,0,0,0,Jieret,Bellwood,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1005,2026,1,NO,KC,0,1,0,0,0,servo75,Newkbomb,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1006,2026,1,IND,NYJ,0,1,0,0,0,npklemm,Tryggr,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1007,2026,1,TB,BAL,0,1,0,0,0,ATonOfLaw,SyndaKyt,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1008,2026,1,HOU,ARI,0,1,0,0,0,lied,kgreene829,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1009,2026,1,JAX,WAS,0,1,0,0,0,Weeze,Ewade,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1010,2026,1,BUF,ATL,0,1,0,0,0,Minnow,mahrowkeen,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1011,2026,1,DEN,PIT,0,1,0,0,0,alexfall862,smackemz3,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1012,2026,1,CHI,SF,0,1,0,0,0,nemolee.exe,Dr_Novella,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1013,2026,1,CIN,NYG,0,1,0,0,0,Ezaco,thatfunk,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1014,2026,1,LAR,DET,0,1,0,0,0,Vivid,VerifiedThing,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1015,2026,1,SEA,NE,0,1,0,0,0,CoachCartier,Curby4,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1016,2026,2,CLE,CAR,0,1,0,0,0,LordLittleButt,Sarge,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1017,2026,2,MIA,GB,0,1,0,0,0,TheLiberator,JC,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1018,2026,2,DAL,NO,0,1,0,0,0,Rocketcan,servo75,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1019,2026,2,CHI,TEN,0,1,0,0,0,nemolee.exe,Dearden,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1020,2026,2,DET,KC,0,1,0,0,0,VerifiedThing,Newkbomb,Sunday Noon,Ford Field,Detroit,MI,,,0, +1021,2026,2,BAL,PHI,0,1,0,0,0,SyndaKyt,acewulf,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1022,2026,2,NYJ,SEA,0,1,0,0,0,Tryggr,CoachCartier,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1023,2026,2,MIN,HOU,0,1,0,0,0,Bellwood,lied,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1024,2026,2,LAC,WAS,0,1,0,0,0,Dean,Ewade,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1025,2026,2,ATL,LV,0,1,0,0,0,mahrowkeen,Jieret,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1026,2026,2,SF,BUF,0,1,0,0,0,Dr_Novella,Minnow,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1027,2026,2,NYG,JAX,0,1,0,0,0,thatfunk,Weeze,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1028,2026,2,ARI,CIN,0,1,0,0,0,kgreene829,Ezaco,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1029,2026,2,DEN,TB,0,1,0,0,0,alexfall862,ATonOfLaw,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1030,2026,2,IND,PIT,0,1,0,0,0,npklemm,smackemz3,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1031,2026,2,NE,LAR,0,1,0,0,0,Curby4,Vivid,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1032,2026,3,KC,CLE,0,1,0,0,0,Newkbomb,LordLittleButt,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1033,2026,3,DET,MIA,0,1,0,0,0,VerifiedThing,TheLiberator,Sunday Noon,Ford Field,Detroit,MI,,,0, +1034,2026,3,TEN,DAL,0,1,0,0,0,Dearden,Rocketcan,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1035,2026,3,NO,LV,0,1,0,0,0,servo75,Jieret,Sunday Afternoon,Caesars Superdome,New Orleans,LA,,,0, +1036,2026,3,ARI,NYJ,0,1,0,0,0,kgreene829,Tryggr,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1037,2026,3,LAC,MIN,0,1,0,0,0,Dean,Bellwood,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1038,2026,3,SF,HOU,0,1,0,0,0,Dr_Novella,lied,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1039,2026,3,BAL,JAX,0,1,0,0,0,SyndaKyt,Weeze,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1040,2026,3,GB,BUF,0,1,0,0,0,JC,Minnow,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1041,2026,3,PHI,ATL,0,1,0,0,0,acewulf,mahrowkeen,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1042,2026,3,CAR,NE,0,1,0,0,0,Sarge,Curby4,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1043,2026,3,CIN,DEN,0,1,0,0,0,Ezaco,alexfall862,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1044,2026,3,LAR,CHI,0,1,0,0,0,Vivid,nemolee.exe,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1045,2026,3,NYG,IND,0,1,0,0,0,thatfunk,npklemm,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1046,2026,3,PIT,TB,0,1,0,0,0,smackemz3,ATonOfLaw,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1047,2026,3,SEA,WAS,0,1,0,0,0,CoachCartier,Ewade,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1048,2026,1,BUF,CLE,0,0,0,0,0,Minnow,LordLittleButt,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1049,2026,1,NE,MIA,0,0,0,0,0,Curby4,TheLiberator,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1050,2026,1,NYJ,DAL,0,0,0,0,0,Tryggr,Rocketcan,Sunday Afternoon,MetLife Stadium,East Rutherford,NJ,,,0, +1051,2026,1,BAL,PIT,0,0,0,0,0,SyndaKyt,smackemz3,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1052,2026,1,IND,TEN,0,0,0,0,0,npklemm,Dearden,Monday Night Football,Lucas Oil Stadium,Indianapolis,IN,,,0, +1053,2026,1,JAX,CAR,0,0,0,0,0,Weeze,Sarge,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1054,2026,1,LV,HOU,0,0,0,0,0,Jieret,lied,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1055,2026,1,LAC,DEN,0,0,0,0,0,Dean,alexfall862,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1056,2026,1,KC,CIN,0,0,0,0,0,Newkbomb,Ezaco,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1057,2026,1,WAS,CHI,0,0,0,0,0,Ewade,nemolee.exe,Thursday Night Football,FedExField,Landover,MD,,,0, +1058,2026,1,NYG,SF,0,0,0,0,0,thatfunk,Dr_Novella,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1059,2026,1,GB,LAR,0,0,0,0,0,JC,Vivid,Sunday Night Football,Lambeau Field,Green Bay,WI,,,0, +1060,2026,1,DET,PHI,0,0,0,0,0,VerifiedThing,acewulf,Sunday Noon,Ford Field,Detroit,MI,,,0, +1061,2026,1,MIN,NO,0,0,0,0,0,Bellwood,servo75,Sunday Noon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1062,2026,1,SEA,ATL,0,0,0,0,0,CoachCartier,mahrowkeen,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1063,2026,1,ARI,TB,0,0,0,0,0,kgreene829,ATonOfLaw,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1064,2026,2,MIA,BAL,0,0,0,0,0,TheLiberator,SyndaKyt,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1065,2026,2,CLE,IND,0,0,0,0,0,LordLittleButt,npklemm,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1066,2026,2,PIT,JAX,0,0,0,0,0,smackemz3,Weeze,Sunday Night Football,Heinz Field,Pittsburgh,PA,,,0, +1067,2026,2,CIN,BUF,0,0,0,0,0,Ezaco,Minnow,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1068,2026,2,TEN,LV,0,0,0,0,0,Dearden,Jieret,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1069,2026,2,HOU,TB,0,0,0,0,0,lied,ATonOfLaw,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1070,2026,2,DEN,ARI,0,0,0,0,0,alexfall862,kgreene829,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1071,2026,2,LAC,NE,0,0,0,0,0,Dean,Curby4,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1072,2026,2,DAL,WAS,0,0,0,0,0,Rocketcan,Ewade,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1073,2026,2,PHI,NYJ,0,0,0,0,0,acewulf,Tryggr,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1074,2026,2,GB,DET,0,0,0,0,0,JC,VerifiedThing,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1075,2026,2,CHI,NYG,0,0,0,0,0,nemolee.exe,thatfunk,Sunday Noon,Soldier Field,Chicago,IL,,,0, +1076,2026,2,MIN,KC,0,0,0,0,0,Bellwood,Newkbomb,Sunday Noon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1077,2026,2,ATL,CAR,0,0,0,0,0,mahrowkeen,Sarge,Monday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1078,2026,2,NO,SEA,0,0,0,0,0,servo75,CoachCartier,Thursday Night Football,Caesars Superdome,New Orleans,LA,,,0, +1079,2026,2,LAR,SF,0,0,0,0,0,Vivid,Dr_Novella,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1080,2026,3,BUF,MIA,0,0,0,0,0,Minnow,TheLiberator,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1081,2026,3,NE,DAL,0,0,0,0,0,Curby4,Rocketcan,Sunday Afternoon,Gillette Stadium,Foxborough,MA,,,0, +1082,2026,3,NYJ,NYG,0,0,0,0,0,Tryggr,thatfunk,Thursday Night Football,MetLife Stadium,East Rutherford,NJ,,,0, +1083,2026,3,PIT,GB,0,0,0,0,0,smackemz3,JC,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1084,2026,3,CIN,CLE,0,0,0,0,0,Ezaco,LordLittleButt,Monday Night Football,Paul Brown Stadium,Cincinnati,OH,,,0, +1085,2026,3,IND,KC,0,0,0,0,0,npklemm,Newkbomb,Sunday Noon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1086,2026,3,JAX,HOU,0,0,0,0,0,Weeze,lied,Sunday Afternoon,TIAA Bank Field,Jacksonville,FL,,,0, +1087,2026,3,LV,LAC,0,0,0,0,0,Jieret,Dean,Sunday Night Football,Allegiant Stadium,Paradise,NV,,,0, +1088,2026,3,WAS,ATL,0,0,0,0,0,Ewade,mahrowkeen,Sunday Noon,FedExField,Landover,MD,,,0, +1089,2026,3,PHI,TEN,0,0,0,0,0,acewulf,Dearden,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1090,2026,3,CHI,MIN,0,0,0,0,0,nemolee.exe,Bellwood,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1091,2026,3,CAR,DET,0,0,0,0,0,Sarge,VerifiedThing,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1092,2026,3,TB,NO,0,0,0,0,0,ATonOfLaw,servo75,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1093,2026,3,SEA,LAR,0,0,0,0,0,CoachCartier,Vivid,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1094,2026,3,ARI,BAL,0,0,0,0,0,kgreene829,SyndaKyt,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1095,2026,3,SF,DEN,0,0,0,0,0,Dr_Novella,alexfall862,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1096,2026,4,MIA,CIN,0,0,0,0,0,TheLiberator,Ezaco,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1097,2026,4,NYJ,BUF,0,0,0,0,0,Tryggr,Minnow,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1098,2026,4,CLE,MIN,0,0,0,0,0,LordLittleButt,Bellwood,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1099,2026,4,BAL,GB,0,0,0,0,0,SyndaKyt,JC,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1100,2026,4,IND,JAX,0,0,0,0,0,npklemm,Weeze,Sunday Noon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1101,2026,4,HOU,ATL,0,0,0,0,0,lied,mahrowkeen,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1102,2026,4,DEN,LAR,0,0,0,0,0,alexfall862,Vivid,Monday Night Football,Empower Field at Mile High,Denver,CO,,,0, +1103,2026,4,KC,LAC,0,0,0,0,0,Newkbomb,Dean,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1104,2026,4,PHI,WAS,0,0,0,0,0,acewulf,Ewade,Sunday Night Football,Lincoln Financial Field,Philadelphia,PA,,,0, +1105,2026,4,NYG,NE,0,0,0,0,0,thatfunk,Curby4,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1106,2026,4,DET,LV,0,0,0,0,0,VerifiedThing,Jieret,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1107,2026,4,CHI,DAL,0,0,0,0,0,nemolee.exe,Rocketcan,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1108,2026,4,CAR,TEN,0,0,0,0,0,Sarge,Dearden,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1109,2026,4,SEA,PIT,0,0,0,0,0,CoachCartier,smackemz3,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1110,2026,4,ARI,NO,0,0,0,0,0,kgreene829,servo75,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1111,2026,4,SF,TB,0,0,0,0,0,Dr_Novella,ATonOfLaw,Thursday Night Football,Levi's Stadium,Santa Clara,CA,,,0, +1112,2026,5,BUF,PHI,0,0,0,0,0,Minnow,acewulf,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1113,2026,5,NE,PIT,0,0,0,0,0,Curby4,smackemz3,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1114,2026,5,CLE,NYJ,0,0,0,0,0,LordLittleButt,Tryggr,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1115,2026,5,CIN,BAL,0,0,0,0,0,Ezaco,SyndaKyt,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1116,2026,5,JAX,LAC,0,0,0,0,0,Weeze,Dean,Sunday Afternoon,TIAA Bank Field,Jacksonville,FL,,,0, +1117,2026,5,LV,DEN,0,0,0,0,0,Jieret,alexfall862,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1118,2026,5,KC,TEN,0,0,0,0,0,Newkbomb,Dearden,Thursday Night Football,Arrowhead Stadium,Kansas City,MO,,,0, +1119,2026,5,WAS,IND,0,0,0,0,0,Ewade,npklemm,Sunday Noon,FedExField,Landover,MD,,,0, +1120,2026,5,DAL,NYG,0,0,0,0,0,Rocketcan,thatfunk,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1121,2026,5,GB,CHI,0,0,0,0,0,JC,nemolee.exe,Monday Night Football,Lambeau Field,Green Bay,WI,,,0, +1122,2026,5,MIN,DET,0,0,0,0,0,Bellwood,VerifiedThing,Sunday Noon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1123,2026,5,ATL,MIA,0,0,0,0,0,mahrowkeen,TheLiberator,Sunday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1124,2026,5,TB,CAR,0,0,0,0,0,ATonOfLaw,Sarge,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1125,2026,5,NO,HOU,0,0,0,0,0,servo75,lied,Sunday Afternoon,Caesars Superdome,New Orleans,LA,,,0, +1126,2026,5,LAR,ARI,0,0,0,0,0,Vivid,kgreene829,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1127,2026,5,SF,SEA,0,0,0,0,0,Dr_Novella,CoachCartier,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1128,2026,6,MIA,NE,0,0,0,0,0,TheLiberator,Curby4,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1129,2026,6,BUF,LV,0,0,0,0,0,Minnow,Jieret,Sunday Night Football,Highmark Stadium,Orchard Park,NY,,,0, +1130,2026,6,PIT,DET,0,0,0,0,0,smackemz3,VerifiedThing,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1131,2026,6,IND,TB,0,0,0,0,0,npklemm,ATonOfLaw,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1132,2026,6,TEN,HOU,0,0,0,0,0,Dearden,lied,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1133,2026,6,LAC,ARI,0,0,0,0,0,Dean,kgreene829,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1134,2026,6,KC,JAX,0,0,0,0,0,Newkbomb,Weeze,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1135,2026,6,WAS,NYJ,0,0,0,0,0,Ewade,Tryggr,Sunday Noon,FedExField,Landover,MD,,,0, +1136,2026,6,NYG,PHI,0,0,0,0,0,thatfunk,acewulf,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1137,2026,6,GB,CLE,0,0,0,0,0,JC,LordLittleButt,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1138,2026,6,CHI,CIN,0,0,0,0,0,nemolee.exe,Ezaco,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1139,2026,6,MIN,BAL,0,0,0,0,0,Bellwood,SyndaKyt,Monday Night Football,U.S. Bank Stadium,Minneapolis,MN,,,0, +1140,2026,6,ATL,NO,0,0,0,0,0,mahrowkeen,servo75,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1141,2026,6,CAR,SF,0,0,0,0,0,Sarge,Dr_Novella,Sunday Afternoon,Bank of America Stadium,Charlotte,NC,,,0, +1142,2026,6,SEA,DAL,0,0,0,0,0,CoachCartier,Rocketcan,Thursday Night Football,Lumen Field,Seattle,WA,,,0, +1143,2026,7,NYJ,NE,0,0,0,0,0,Tryggr,Curby4,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1144,2026,7,CLE,PIT,0,0,0,0,0,LordLittleButt,smackemz3,Sunday Night Football,FirstEnergy Stadium,Cleveland,OH,,,0, +1145,2026,7,HOU,JAX,0,0,0,0,0,lied,Weeze,Monday Night Football,NRG Stadium,Houston,TX,,,0, +1146,2026,7,DEN,TEN,0,0,0,0,0,alexfall862,Dearden,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1147,2026,7,LV,SEA,0,0,0,0,0,Jieret,CoachCartier,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1148,2026,7,LAC,IND,0,0,0,0,0,Dean,npklemm,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1149,2026,7,WAS,DAL,0,0,0,0,0,Ewade,Rocketcan,Sunday Noon,FedExField,Landover,MD,,,0, +1150,2026,7,PHI,CHI,0,0,0,0,0,acewulf,nemolee.exe,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1151,2026,7,DET,BAL,0,0,0,0,0,VerifiedThing,SyndaKyt,Sunday Noon,Ford Field,Detroit,MI,,,0, +1152,2026,7,ATL,GB,0,0,0,0,0,mahrowkeen,JC,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1153,2026,7,TB,LAR,0,0,0,0,0,ATonOfLaw,Vivid,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1154,2026,7,NO,NYG,0,0,0,0,0,servo75,thatfunk,Thursday Night Football,Caesars Superdome,New Orleans,LA,,,0, +1155,2026,7,ARI,KC,0,0,0,0,0,kgreene829,Newkbomb,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1156,2026,7,SF,CIN,0,0,0,0,0,Dr_Novella,Ezaco,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1157,2026,8,MIA,NYJ,0,0,0,0,0,TheLiberator,Tryggr,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1158,2026,8,BAL,BUF,0,0,0,0,0,SyndaKyt,Minnow,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1159,2026,8,CIN,MIN,0,0,0,0,0,Ezaco,Bellwood,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1160,2026,8,IND,DEN,0,0,0,0,0,npklemm,alexfall862,Thursday Night Football,Lucas Oil Stadium,Indianapolis,IN,,,0, +1161,2026,8,JAX,TEN,0,0,0,0,0,Weeze,Dearden,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1162,2026,8,LAC,HOU,0,0,0,0,0,Dean,lied,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1163,2026,8,KC,SF,0,0,0,0,0,Newkbomb,Dr_Novella,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1164,2026,8,DAL,CAR,0,0,0,0,0,Rocketcan,Sarge,Monday Night Football,AT&T Stadium,Arlington,TX,,,0, +1165,2026,8,GB,WAS,0,0,0,0,0,JC,Ewade,Sunday Night Football,Lambeau Field,Green Bay,WI,,,0, +1166,2026,8,DET,SEA,0,0,0,0,0,VerifiedThing,CoachCartier,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1167,2026,8,CHI,PIT,0,0,0,0,0,nemolee.exe,smackemz3,Sunday Noon,Soldier Field,Chicago,IL,,,0, +1168,2026,8,NO,TB,0,0,0,0,0,servo75,ATonOfLaw,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1169,2026,8,LAR,CLE,0,0,0,0,0,Vivid,LordLittleButt,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1170,2026,8,ARI,LV,0,0,0,0,0,kgreene829,Jieret,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1171,2026,9,MIA,PHI,0,0,0,0,0,TheLiberator,acewulf,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1172,2026,9,BUF,NYJ,0,0,0,0,0,Minnow,Tryggr,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1173,2026,9,PIT,CIN,0,0,0,0,0,smackemz3,Ezaco,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1174,2026,9,JAX,NO,0,0,0,0,0,Weeze,servo75,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1175,2026,9,TEN,ATL,0,0,0,0,0,Dearden,mahrowkeen,Sunday Noon,Nissan Stadium,Nashville,TN,,,0, +1176,2026,9,HOU,IND,0,0,0,0,0,lied,npklemm,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1177,2026,9,DEN,LAC,0,0,0,0,0,alexfall862,Dean,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1178,2026,9,KC,LV,0,0,0,0,0,Newkbomb,Jieret,Monday Night Football,Arrowhead Stadium,Kansas City,MO,,,0, +1179,2026,9,NYG,WAS,0,0,0,0,0,thatfunk,Ewade,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1180,2026,9,DET,CHI,0,0,0,0,0,VerifiedThing,nemolee.exe,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1181,2026,9,MIN,GB,0,0,0,0,0,Bellwood,JC,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1182,2026,9,TB,NE,0,0,0,0,0,ATonOfLaw,Curby4,Thursday Night Football,Raymond James Stadium,Tampa,FL,,,0, +1183,2026,9,LAR,CAR,0,0,0,0,0,Vivid,Sarge,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1184,2026,9,ARI,SF,0,0,0,0,0,kgreene829,Dr_Novella,Sunday Night Football,State Farm Stadium,Glendale,AZ,,,0, +1185,2026,10,NE,BUF,0,0,0,0,0,Curby4,Minnow,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1186,2026,10,NYJ,CIN,0,0,0,0,0,Tryggr,Ezaco,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1187,2026,10,PIT,MIA,0,0,0,0,0,smackemz3,TheLiberator,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1188,2026,10,BAL,CLE,0,0,0,0,0,SyndaKyt,LordLittleButt,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1189,2026,10,TEN,NO,0,0,0,0,0,Dearden,servo75,Sunday Noon,Nissan Stadium,Nashville,TN,,,0, +1190,2026,10,DEN,KC,0,0,0,0,0,alexfall862,Newkbomb,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1191,2026,10,DAL,JAX,0,0,0,0,0,Rocketcan,Weeze,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1192,2026,10,PHI,MIN,0,0,0,0,0,acewulf,Bellwood,Thursday Night Football,Lincoln Financial Field,Philadelphia,PA,,,0, +1193,2026,10,NYG,HOU,0,0,0,0,0,thatfunk,lied,Sunday Afternoon,MetLife Stadium,East Rutherford,NJ,,,0, +1194,2026,10,ATL,IND,0,0,0,0,0,mahrowkeen,npklemm,Sunday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1195,2026,10,CAR,TB,0,0,0,0,0,Sarge,ATonOfLaw,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1196,2026,10,LAR,WAS,0,0,0,0,0,Vivid,Ewade,Monday Night Football,SoFi Stadium,Inglewood,CA,,,0, +1197,2026,10,SEA,ARI,0,0,0,0,0,CoachCartier,kgreene829,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1198,2026,10,SF,LAC,0,0,0,0,0,Dr_Novella,Dean,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1199,2026,11,CLE,MIA,0,0,0,0,0,LordLittleButt,TheLiberator,Thursday Night Football,FirstEnergy Stadium,Cleveland,OH,,,0, +1200,2026,11,BAL,NE,0,0,0,0,0,SyndaKyt,Curby4,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1201,2026,11,CIN,DET,0,0,0,0,0,Ezaco,VerifiedThing,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1202,2026,11,TEN,IND,0,0,0,0,0,Dearden,npklemm,Sunday Noon,Nissan Stadium,Nashville,TN,,,0, +1203,2026,11,HOU,NYJ,0,0,0,0,0,lied,Tryggr,Monday Night Football,NRG Stadium,Houston,TX,,,0, +1204,2026,11,LV,SF,0,0,0,0,0,Jieret,Dr_Novella,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1205,2026,11,KC,SEA,0,0,0,0,0,Newkbomb,CoachCartier,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1206,2026,11,DAL,PHI,0,0,0,0,0,Rocketcan,acewulf,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1207,2026,11,NYG,BUF,0,0,0,0,0,thatfunk,Minnow,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1208,2026,11,GB,DEN,0,0,0,0,0,JC,alexfall862,Sunday Noon,Lambeau Field,Green Bay,WI,,,0, +1209,2026,11,MIN,CHI,0,0,0,0,0,Bellwood,nemolee.exe,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1210,2026,11,TB,ATL,0,0,0,0,0,ATonOfLaw,mahrowkeen,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1211,2026,11,NO,CAR,0,0,0,0,0,servo75,Sarge,Sunday Night Football,Caesars Superdome,New Orleans,LA,,,0, +1212,2026,11,ARI,LAR,0,0,0,0,0,kgreene829,Vivid,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1213,2026,12,MIA,DEN,0,0,0,0,0,TheLiberator,alexfall862,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1214,2026,12,NE,WAS,0,0,0,0,0,Curby4,Ewade,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1215,2026,12,CLE,CIN,0,0,0,0,0,LordLittleButt,Ezaco,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1216,2026,12,PIT,BAL,0,0,0,0,0,smackemz3,SyndaKyt,Monday Night Football,Heinz Field,Pittsburgh,PA,,,0, +1217,2026,12,JAX,LV,0,0,0,0,0,Weeze,Jieret,Sunday Night Football,TIAA Bank Field,Jacksonville,FL,,,0, +1218,2026,12,HOU,KC,0,0,0,0,0,lied,Newkbomb,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1219,2026,12,DAL,BUF,0,0,0,0,0,Rocketcan,Minnow,Thursday Night Football,AT&T Stadium,Arlington,TX,,,0, +1220,2026,12,PHI,NYG,0,0,0,0,0,acewulf,thatfunk,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1221,2026,12,DET,GB,0,0,0,0,0,VerifiedThing,JC,Thursday Night Football,Ford Field,Detroit,MI,,,0, +1222,2026,12,CHI,TB,0,0,0,0,0,nemolee.exe,ATonOfLaw,Sunday Noon,Soldier Field,Chicago,IL,,,0, +1223,2026,12,CAR,ARI,0,0,0,0,0,Sarge,kgreene829,Sunday Afternoon,Bank of America Stadium,Charlotte,NC,,,0, +1224,2026,12,LAR,ATL,0,0,0,0,0,Vivid,mahrowkeen,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1225,2026,12,SEA,LAC,0,0,0,0,0,CoachCartier,Dean,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1226,2026,12,SF,MIN,0,0,0,0,0,Dr_Novella,Bellwood,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1227,2026,13,BUF,PIT,0,0,0,0,0,Minnow,smackemz3,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1228,2026,13,NE,CLE,0,0,0,0,0,Curby4,LordLittleButt,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1229,2026,13,BAL,CHI,0,0,0,0,0,SyndaKyt,nemolee.exe,Sunday Afternoon,M&T Bank Stadium,Baltimore,MD,,,0, +1230,2026,13,IND,CAR,0,0,0,0,0,npklemm,Sarge,Sunday Noon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1231,2026,13,LV,KC,0,0,0,0,0,Jieret,Newkbomb,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1232,2026,13,LAC,LAR,0,0,0,0,0,Dean,Vivid,Thursday Night Football,SoFi Stadium,Inglewood,CA,,,0, +1233,2026,13,WAS,MIA,0,0,0,0,0,Ewade,TheLiberator,Monday Night Football,FedExField,Landover,MD,,,0, +1234,2026,13,NYG,DET,0,0,0,0,0,thatfunk,VerifiedThing,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1235,2026,13,GB,PHI,0,0,0,0,0,JC,acewulf,Sunday Afternoon,Lambeau Field,Green Bay,WI,,,0, +1236,2026,13,MIN,DAL,0,0,0,0,0,Bellwood,Rocketcan,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1237,2026,13,ATL,JAX,0,0,0,0,0,mahrowkeen,Weeze,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1238,2026,13,TB,TEN,0,0,0,0,0,ATonOfLaw,Dearden,Sunday Afternoon,Raymond James Stadium,Tampa,FL,,,0, +1239,2026,13,NO,NYJ,0,0,0,0,0,servo75,Tryggr,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1240,2026,13,SEA,DEN,0,0,0,0,0,CoachCartier,alexfall862,Sunday Night Football,Lumen Field,Seattle,WA,,,0, +1241,2026,14,MIA,BUF,0,0,0,0,0,TheLiberator,Minnow,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1242,2026,14,NYJ,BAL,0,0,0,0,0,Tryggr,SyndaKyt,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1243,2026,14,CIN,NE,0,0,0,0,0,Ezaco,Curby4,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1244,2026,14,JAX,IND,0,0,0,0,0,Weeze,npklemm,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1245,2026,14,TEN,LAC,0,0,0,0,0,Dearden,Dean,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1246,2026,14,DEN,CLE,0,0,0,0,0,alexfall862,LordLittleButt,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1247,2026,14,LV,PIT,0,0,0,0,0,Jieret,smackemz3,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1248,2026,14,WAS,PHI,0,0,0,0,0,Ewade,acewulf,Sunday Noon,FedExField,Landover,MD,,,0, +1249,2026,14,DAL,GB,0,0,0,0,0,Rocketcan,JC,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1250,2026,14,CHI,DET,0,0,0,0,0,nemolee.exe,VerifiedThing,Monday Night Football,Soldier Field,Chicago,IL,,,0, +1251,2026,14,MIN,NYG,0,0,0,0,0,Bellwood,thatfunk,Thursday Night Football,U.S. Bank Stadium,Minneapolis,MN,,,0, +1252,2026,14,CAR,HOU,0,0,0,0,0,Sarge,lied,Sunday Night Football,Bank of America Stadium,Charlotte,NC,,,0, +1253,2026,14,NO,ATL,0,0,0,0,0,servo75,mahrowkeen,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1254,2026,14,ARI,SEA,0,0,0,0,0,kgreene829,CoachCartier,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1255,2026,14,SF,LAR,0,0,0,0,0,Dr_Novella,Vivid,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1256,2026,15,CLE,CHI,0,0,0,0,0,LordLittleButt,nemolee.exe,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1257,2026,15,PIT,NYJ,0,0,0,0,0,smackemz3,Tryggr,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1258,2026,15,BAL,CIN,0,0,0,0,0,SyndaKyt,Ezaco,Sunday Night Football,M&T Bank Stadium,Baltimore,MD,,,0, +1259,2026,15,IND,MIA,0,0,0,0,0,npklemm,TheLiberator,Sunday Afternoon,Lucas Oil Stadium,Indianapolis,IN,,,0, +1260,2026,15,HOU,TEN,0,0,0,0,0,lied,Dearden,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1261,2026,15,DEN,JAX,0,0,0,0,0,alexfall862,Weeze,Thursday Night Football,Empower Field at Mile High,Denver,CO,,,0, +1262,2026,15,LAC,LV,0,0,0,0,0,Dean,Jieret,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1263,2026,15,PHI,NE,0,0,0,0,0,acewulf,Curby4,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1264,2026,15,NYG,DAL,0,0,0,0,0,thatfunk,Rocketcan,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1265,2026,15,GB,MIN,0,0,0,0,0,JC,Bellwood,Sunday Afternoon,Lambeau Field,Green Bay,WI,,,0, +1266,2026,15,DET,WAS,0,0,0,0,0,VerifiedThing,Ewade,Sunday Noon,Ford Field,Detroit,MI,,,0, +1267,2026,15,ATL,ARI,0,0,0,0,0,mahrowkeen,kgreene829,Monday Night Football,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1268,2026,15,CAR,BUF,0,0,0,0,0,Sarge,Minnow,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1269,2026,15,TB,SEA,0,0,0,0,0,ATonOfLaw,CoachCartier,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1270,2026,15,LAR,KC,0,0,0,0,0,Vivid,Newkbomb,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1271,2026,15,SF,NO,0,0,0,0,0,Dr_Novella,servo75,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, +1272,2026,16,BUF,WAS,0,0,0,0,0,Minnow,Ewade,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1273,2026,16,NE,NYJ,0,0,0,0,0,Curby4,Tryggr,Sunday Noon,Gillette Stadium,Foxborough,MA,,,0, +1274,2026,16,CIN,HOU,0,0,0,0,0,Ezaco,lied,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1275,2026,16,TEN,BAL,0,0,0,0,0,Dearden,SyndaKyt,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1276,2026,16,KC,DEN,0,0,0,0,0,Newkbomb,alexfall862,Sunday Afternoon,Arrowhead Stadium,Kansas City,MO,,,0, +1277,2026,16,DAL,MIA,0,0,0,0,0,Rocketcan,TheLiberator,Sunday Night Football,AT&T Stadium,Arlington,TX,,,0, +1278,2026,16,PHI,ARI,0,0,0,0,0,acewulf,kgreene829,Sunday Afternoon,Lincoln Financial Field,Philadelphia,PA,,,0, +1279,2026,16,NYG,GB,0,0,0,0,0,thatfunk,JC,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1280,2026,16,DET,CLE,0,0,0,0,0,VerifiedThing,LordLittleButt,Monday Night Football,Ford Field,Detroit,MI,,,0, +1281,2026,16,CHI,LAC,0,0,0,0,0,nemolee.exe,Dean,Thursday Night Football,Soldier Field,Chicago,IL,,,0, +1282,2026,16,MIN,PIT,0,0,0,0,0,Bellwood,smackemz3,Sunday Afternoon,U.S. Bank Stadium,Minneapolis,MN,,,0, +1283,2026,16,CAR,ATL,0,0,0,0,0,Sarge,mahrowkeen,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1284,2026,16,TB,JAX,0,0,0,0,0,ATonOfLaw,Weeze,Sunday Noon,Raymond James Stadium,Tampa,FL,,,0, +1285,2026,16,NO,IND,0,0,0,0,0,servo75,npklemm,Sunday Noon,Caesars Superdome,New Orleans,LA,,,0, +1286,2026,16,LAR,LV,0,0,0,0,0,Vivid,Jieret,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1287,2026,16,SEA,SF,0,0,0,0,0,CoachCartier,Dr_Novella,Sunday Afternoon,Lumen Field,Seattle,WA,,,0, +1288,2026,17,MIA,NYG,0,0,0,0,0,TheLiberator,thatfunk,Sunday Noon,Hard Rock Stadium,Miami Gardens,FL,,,0, +1289,2026,17,NE,TEN,0,0,0,0,0,Curby4,Dearden,Monday Night Football,Gillette Stadium,Foxborough,MA,,,0, +1290,2026,17,NYJ,KC,0,0,0,0,0,Tryggr,Newkbomb,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1291,2026,17,PIT,CLE,0,0,0,0,0,smackemz3,LordLittleButt,Sunday Noon,Heinz Field,Pittsburgh,PA,,,0, +1292,2026,17,BAL,LAC,0,0,0,0,0,SyndaKyt,Dean,Sunday Noon,M&T Bank Stadium,Baltimore,MD,,,0, +1293,2026,17,JAX,BUF,0,0,0,0,0,Weeze,Minnow,Sunday Noon,TIAA Bank Field,Jacksonville,FL,,,0, +1294,2026,17,HOU,DEN,0,0,0,0,0,lied,alexfall862,Sunday Afternoon,NRG Stadium,Houston,TX,,,0, +1295,2026,17,LV,IND,0,0,0,0,0,Jieret,npklemm,Sunday Afternoon,Allegiant Stadium,Paradise,NV,,,0, +1296,2026,17,WAS,MIN,0,0,0,0,0,Ewade,Bellwood,Sunday Noon,FedExField,Landover,MD,,,0, +1297,2026,17,DAL,DET,0,0,0,0,0,Rocketcan,VerifiedThing,Sunday Afternoon,AT&T Stadium,Arlington,TX,,,0, +1298,2026,17,GB,CIN,0,0,0,0,0,JC,Ezaco,Sunday Afternoon,Lambeau Field,Green Bay,WI,,,0, +1299,2026,17,ATL,SF,0,0,0,0,0,mahrowkeen,Dr_Novella,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1300,2026,17,TB,PHI,0,0,0,0,0,ATonOfLaw,acewulf,Thursday Night Football,Raymond James Stadium,Tampa,FL,,,0, +1301,2026,17,NO,LAR,0,0,0,0,0,servo75,Vivid,Sunday Afternoon,Caesars Superdome,New Orleans,LA,,,0, +1302,2026,17,SEA,CAR,0,0,0,0,0,CoachCartier,Sarge,Sunday Night Football,Lumen Field,Seattle,WA,,,0, +1303,2026,17,ARI,CHI,0,0,0,0,0,kgreene829,nemolee.exe,Sunday Afternoon,State Farm Stadium,Glendale,AZ,,,0, +1304,2026,18,BUF,NE,0,0,0,0,0,Minnow,Curby4,Sunday Noon,Highmark Stadium,Orchard Park,NY,,,0, +1305,2026,18,NYJ,MIA,0,0,0,0,0,Tryggr,TheLiberator,Sunday Noon,MetLife Stadium,East Rutherford,NJ,,,0, +1306,2026,18,CLE,BAL,0,0,0,0,0,LordLittleButt,SyndaKyt,Sunday Noon,FirstEnergy Stadium,Cleveland,OH,,,0, +1307,2026,18,CIN,PIT,0,0,0,0,0,Ezaco,smackemz3,Sunday Noon,Paul Brown Stadium,Cincinnati,OH,,,0, +1308,2026,18,IND,HOU,0,0,0,0,0,npklemm,lied,Sunday Night Football,Lucas Oil Stadium,Indianapolis,IN,,,0, +1309,2026,18,TEN,JAX,0,0,0,0,0,Dearden,Weeze,Sunday Afternoon,Nissan Stadium,Nashville,TN,,,0, +1310,2026,18,DEN,LV,0,0,0,0,0,alexfall862,Jieret,Sunday Afternoon,Empower Field at Mile High,Denver,CO,,,0, +1311,2026,18,LAC,KC,0,0,0,0,0,Dean,Newkbomb,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1312,2026,18,WAS,NYG,0,0,0,0,0,Ewade,thatfunk,Sunday Noon,FedExField,Landover,MD,,,0, +1313,2026,18,PHI,DAL,0,0,0,0,0,acewulf,Rocketcan,Sunday Noon,Lincoln Financial Field,Philadelphia,PA,,,0, +1314,2026,18,DET,MIN,0,0,0,0,0,VerifiedThing,Bellwood,Sunday Afternoon,Ford Field,Detroit,MI,,,0, +1315,2026,18,CHI,GB,0,0,0,0,0,nemolee.exe,JC,Sunday Afternoon,Soldier Field,Chicago,IL,,,0, +1316,2026,18,ATL,TB,0,0,0,0,0,mahrowkeen,ATonOfLaw,Sunday Noon,Mercedes-Benz Stadium,Atlanta,GA,,,0, +1317,2026,18,CAR,NO,0,0,0,0,0,Sarge,servo75,Sunday Noon,Bank of America Stadium,Charlotte,NC,,,0, +1318,2026,18,LAR,SEA,0,0,0,0,0,Vivid,CoachCartier,Sunday Afternoon,SoFi Stadium,Inglewood,CA,,,0, +1319,2026,18,SF,ARI,0,0,0,0,0,Dr_Novella,kgreene829,Sunday Afternoon,Levi's Stadium,Santa Clara,CA,,,0, diff --git a/managers/BootstrapManager.go b/managers/BootstrapManager.go index 688083d0..e333b78a 100644 --- a/managers/BootstrapManager.go +++ b/managers/BootstrapManager.go @@ -25,6 +25,7 @@ type BootstrapData struct { CollegeInjuryReport []structs.CollegePlayer CollegeNotifications []structs.Notification CollegeGameplan structs.CollegeGameplan + CollegeGameplanMap map[uint]structs.CollegeGameplan CollegeDepthChart structs.CollegeTeamDepthChart ProTeam structs.NFLTeam AllProTeams []structs.NFLTeam @@ -104,7 +105,7 @@ func GetFirstBootstrapData(collegeID, proID string) BootstrapData { portalPlayers []structs.CollegePlayer injuredCollegePlayers []structs.CollegePlayer collegeNotifications []structs.Notification - collegeGameplan structs.CollegeGameplan + collegeGameplanMap map[uint]structs.CollegeGameplan collegeDepthChart structs.CollegeTeamDepthChart topPassers []structs.CollegePlayer topRushers []structs.CollegePlayer @@ -157,7 +158,8 @@ func GetFirstBootstrapData(collegeID, proID string) BootstrapData { }() go func() { defer wg.Done() - collegeGameplan = GetGameplanByTeamID(collegeID) + gameplans := GetAllCollegeGameplans() + collegeGameplanMap = MakeCollegeGameplanMap(gameplans) }() go func() { defer wg.Done() @@ -199,7 +201,7 @@ func GetFirstBootstrapData(collegeID, proID string) BootstrapData { CollegeRosterMap: collegePlayerMap, CollegeInjuryReport: injuredCollegePlayers, CollegeNotifications: collegeNotifications, - CollegeGameplan: collegeGameplan, + CollegeGameplanMap: collegeGameplanMap, CollegeDepthChart: collegeDepthChart, PortalPlayers: portalPlayers, ProTeam: proTeam, diff --git a/managers/ImportManager.go b/managers/ImportManager.go index 576d0f77..8bca5f59 100644 --- a/managers/ImportManager.go +++ b/managers/ImportManager.go @@ -557,11 +557,13 @@ func ImportUDFAs() { func ImportCFBGames(isSpringGames bool) { db := dbprovider.GetInstance().GetDB() - path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2026\\2026_cfb_games_regular.csv" + path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2026\\2026_cfb_games_preseason.csv" gamesCSV := util.ReadCSV(path) - + ts := GetTimestamp() teamMap := make(map[string]structs.CollegeTeam) + collegeGames := GetCollegeGamesBySeasonID(strconv.Itoa(int(ts.CollegeSeasonID))) + collegeGameMap := MakeCollegeGameMapByID(collegeGames) games := []structs.CollegeGame{} @@ -577,6 +579,10 @@ func ImportCFBGames(isSpringGames bool) { } gameID := util.ConvertStringToInt(row[0]) + existingGame := collegeGameMap[uint(gameID)] + if existingGame.ID > 0 { + continue + } season := util.ConvertStringToInt(row[1]) seasonID := season - 2020 week := util.ConvertStringToInt(row[2]) @@ -655,16 +661,15 @@ func ImportCFBGames(isSpringGames bool) { func ImportNFLGames() { db := dbprovider.GetInstance().GetDB() - path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2025\\2025_nfl_postseason_games.csv" + path := "C:\\Users\\ctros\\go\\src\\github.com\\CalebRose\\SimFBA\\data\\2026\\2026_nfl_regularseason_games.csv" gamesCSV := util.ReadCSV(path) - ts := GetTimestamp() - teamMap := make(map[string]structs.NFLTeam) allNFLTeams := GetAllNFLTeams() + games := []structs.NFLGame{} for _, t := range allNFLTeams { teamMap[t.TeamAbbr] = t } @@ -678,10 +683,7 @@ func ImportNFLGames() { season := util.ConvertStringToInt(row[1]) seasonID := season - 2020 week := util.ConvertStringToInt(row[2]) - weekID := week + 23 // Week 43 is week 0 of the 2024 Season - if gameID > 381 { - weekID = week + 51 - } + weekID := util.GetWeekID(uint(seasonID), uint(week)) homeTeamAbbr := row[3] awayTeamAbbr := row[4] ht := teamMap[homeTeamAbbr] @@ -704,27 +706,27 @@ func ImportNFLGames() { if len(awayTeamCoach) == 0 { awayTeamCoach = "AI" } - timeSlot := row[18] + timeSlot := row[12] // Need to implement Stadium ID stadium := ht.Stadium city := ht.City state := ht.State // Need to check for if a game is in a domed stadium or not - isConferenceGame := util.ConvertStringToBool(row[9]) - isDivisionGame := util.ConvertStringToBool(row[10]) - isNeutralSite := util.ConvertStringToBool(row[11]) - // isPreseasonGame := util.ConvertStringToBool(row[12]) - // isConferenceChampionship := util.ConvertStringToBool(row[13]) - isPlayoffGame := util.ConvertStringToBool(row[14]) - isNationalChampionship := util.ConvertStringToBool(row[15]) - gameTitle := row[23] - nextGame := util.ConvertStringToInt(row[24]) - nextGameHOA := row[25] + isConferenceGame := ht.ConferenceID == at.ConferenceID + isDivisionGame := ht.DivisionID == at.DivisionID && ht.DivisionID > 0 + isNeutralSite := util.ConvertStringToBool(row[5]) + isPreseasonGame := util.ConvertStringToBool(row[6]) + // isConferenceChampionship := util.ConvertStringToBool(row[7]) + isPlayoffGame := util.ConvertStringToBool(row[8]) + isNationalChampionship := util.ConvertStringToBool(row[9]) + gameTitle := row[17] + nextGame := util.ConvertStringToInt(row[18]) + nextGameHOA := row[19] game := structs.NFLGame{ Model: gorm.Model{ID: uint(gameID)}, SeasonID: seasonID, - WeekID: weekID, + WeekID: int(weekID), Week: week, HomeTeamID: int(homeTeamID), AwayTeamID: int(awayTeamID), @@ -732,7 +734,7 @@ func ImportNFLGames() { AwayTeam: awayTeamName, HomeTeamCoach: homeTeamCoach, AwayTeamCoach: awayTeamCoach, - IsPreseasonGame: ts.NFLPreseason, + IsPreseasonGame: isPreseasonGame, IsNeutral: isNeutralSite, IsConference: isConferenceGame, IsDivisional: isDivisionGame, @@ -747,9 +749,10 @@ func ImportNFLGames() { IsSuperBowl: isNationalChampionship, } - db.Create(&game) + games = append(games, game) } + repository.CreateNFLGameRecordsBatch(db, games, 250) GenerateWeatherForGames() } diff --git a/managers/MapHelper.go b/managers/MapHelper.go index 8d89443b..21812c1b 100644 --- a/managers/MapHelper.go +++ b/managers/MapHelper.go @@ -274,3 +274,23 @@ func MakePromiseMapByPlayerIDByTeam(promises []structs.CollegePromise) map[uint] return playerMap } + +func MakeCollegeGameMapByID(collegeGames []structs.CollegeGame) map[uint]structs.CollegeGame { + gamesMap := make(map[uint]structs.CollegeGame) + + for _, c := range collegeGames { + gamesMap[uint(c.ID)] = c + } + + return gamesMap +} + +func MakeCollegeGameplanMap(gameplans []structs.CollegeGameplan) map[uint]structs.CollegeGameplan { + gamesMap := make(map[uint]structs.CollegeGameplan) + + for _, c := range gameplans { + gamesMap[uint(c.ID)] = c + } + + return gamesMap +}