package main

import (
	"context"
	"fmt"
	"log"

	csvimporter "catalogue.midpdsa.com/modules/csv"
	"catalogue.midpdsa.com/src/db/catalogue"
	"github.com/jackc/pgx/v5"
)

func main() {
	ctx := context.Background()
	connStr := "postgres://user:password@172.24.0.2:5432/mydatabase?sslmode=disable"

	conn, err := pgx.Connect(ctx, connStr)
	if err != nil {
		log.Fatalf("Unable to connect to database: %v\n", err)
	}
	defer conn.Close(ctx)

	queries := catalogue.New(conn)
	importer := csvimporter.NewImporter(queries)

	fmt.Println("Importing AG Shock...")
	result, err := importer.ImportAGShock("/home/hall9003/Projects/MIPDSA/docs/database/csv/AG_shock.csv")
	if err != nil {
		log.Fatalf("Import failed: %v\n", err)
	}

	fmt.Printf("Result: Inserted=%d, Errors=%d\n", result.Inserted, result.Errors)

	fmt.Println("\nImporting Monroe...")
	result2, err := importer.ImportMonroe("/home/hall9003/Projects/MIPDSA/docs/database/csv/monroe_merged.csv")
	if err != nil {
		log.Fatalf("Import failed: %v\n", err)
	}

	fmt.Printf("Result: Inserted=%d, Errors=%d\n", result2.Inserted, result2.Errors)
}