From dc37ef9983080ad9973895e9dbd15fb6f1c3f845 Mon Sep 17 00:00:00 2001 From: rtz12 Date: Sun, 9 Oct 2016 17:44:22 +0200 Subject: Series muessen natuerlich umgemappt werden diff --git a/tools/importer/main.go b/tools/importer/main.go index 4eba9a0..8c60ef7 100644 --- a/tools/importer/main.go +++ b/tools/importer/main.go @@ -180,7 +180,7 @@ func InsertTraits(dbID int, g WrappedGril, traitlist map[string]int) { } } -func InsertSeries(dbID int, g WrappedGril) { +func InsertSeries(dbID int, g WrappedGril, seriesmap map[int]int) { rows, err := db.Query("SELECT appearance_id FROM grils_appearances WHERE gril_id = $1;", dbID) LogErr(err) existingSeries := make(map[int]bool, 0) @@ -190,13 +190,17 @@ func InsertSeries(dbID int, g WrappedGril) { existingSeries[seriesID] = true } for _, v := range g.Gril.Series { - if _, ok := existingSeries[v.ID]; ok { + seriesID, ok := seriesmap[v.ID] + if !ok { + panic(fmt.Sprintf("Could not find series %s! Did you import the series?", v.ID)) + } + if _, ok := existingSeries[seriesID]; ok { continue } _, err := db.Exec("INSERT INTO grilist.grils_appearances (gril_id, appearance_id) VALUES ($1, $2);", - dbID, v.ID) - existingSeries[v.ID] = true - fmt.Printf("Assigned series %d to %s\n", v.ID, g.Gril.RomajiName) + dbID, seriesID) + existingSeries[seriesID] = true + fmt.Printf("Assigned series %d to %s\n", seriesID, g.Gril.RomajiName) LogErr(err) } } @@ -261,6 +265,14 @@ func main() { rows.Scan(&sourceID, &grilID) idmap[sourceID] = grilID } + seriesmap := make(map[int]int) + rows, _ = db.Query("SELECT appearance_id, source_id FROM grilist.appearances_id_mappings WHERE source = $1", r.ID()) + for rows.Next() { + var seriesID int + var sourceID int + rows.Scan(&seriesID, &sourceID) + seriesmap[sourceID] = seriesID + } filepath.Walk(path, func(path string, info os.FileInfo, err error) error { if info.IsDir() { @@ -274,7 +286,7 @@ func main() { } InsertTags(dbID, g, taglist) InsertTraits(dbID, g, traitlist) - InsertSeries(dbID, g) + InsertSeries(dbID, g, seriesmap) return nil }) -- cgit v0.10.1