populate both tables in loop

This commit is contained in:
Ravi Prasad
2025-04-30 22:49:38 -05:00
parent 80e4823b35
commit e3c8c76f35
15 changed files with 506 additions and 32 deletions
+29 -5
View File
@@ -2,6 +2,8 @@ package main
import (
"log"
"time"
"github.com/gofiber/fiber/v2/middleware/logger"
"github.com/gofiber/fiber/v2"
"github.com/nprasad2077/NBA_Go/config"
"github.com/nprasad2077/NBA_Go/routes"
@@ -12,22 +14,44 @@ import (
func main() {
app := fiber.New()
db := config.InitDB()
// Automatically fetch player stats on startup
go func() {
if err := services.FetchAndStorePlayerStats(db, 2025); err != nil {
log.Println("Initial fetch failed:", err)
} else {
log.Println("Initial player stats fetch successful.")
for season := 2020; season <= 2025; season++ {
if err := services.FetchAndStorePlayerAdvancedStats(db, season); err != nil {
log.Printf("Fetch failed for player advanced season %d: %v\n", season, err)
} else {
log.Printf("Fetch successful for player advanced season %d\n", season)
}
time.Sleep(2 * time.Second) // optional delay
}
log.Printf("player advanced Import Success")
}()
go func() {
for season := 2020; season <= 2025; season++ {
if err := services.FetchAndStorePlayerTotalStats(db, season); err != nil {
log.Printf("Fetch failed for player totals season %d: %v\n", season, err)
} else {
log.Printf("Fetch successful for player totals season %d\n", season)
}
time.Sleep(1 * time.Second) // optional delay
}
log.Printf("player totals Import Success")
}()
routes.RegisterPlayerRoutes(app, db)
routes.RegisterPlayerAdvancedRoutes(app, db)
routes.RegisterPlayerTotalRoutes(app, db)
app.Get("/swagger/*", fiberswagger.WrapHandler)
app.Use(logger.New())
app.Listen(":3001")
}