diff options
| author | rtz12 <koenig@fagott.pw> | 2016-10-09 15:27:29 (UTC) |
|---|---|---|
| committer | rtz12 <koenig@fagott.pw> | 2016-10-09 15:27:29 (UTC) |
| commit | 99ce3d4d3b06d735206fbd4ed4946dbd7b8c6419 (patch) | |
| tree | e7e48a0161ae78af9614a5954ee14168d700859c | |
| parent | bbfd2e21ab39bb3e30aaf463d38c946dcdfe0345 (diff) | |
Serienverknuepfung hinzugefuegt
| -rw-r--r-- | modules/grils/gril.go | 3 | ||||
| -rw-r--r-- | tools/importer/ACDv2Reader.go | 8 | ||||
| -rw-r--r-- | tools/importer/main.go | 23 |
3 files changed, 34 insertions, 0 deletions
diff --git a/modules/grils/gril.go b/modules/grils/gril.go index edec05a..0462e86 100644 --- a/modules/grils/gril.go +++ b/modules/grils/gril.go | |||
| @@ -8,6 +8,8 @@ import ( | |||
| 8 | "strings" | 8 | "strings" |
| 9 | "time" | 9 | "time" |
| 10 | 10 | ||
| 11 | "fagott.pw/grilist/modules/series" | ||
| 12 | |||
| 11 | "github.com/lib/pq" | 13 | "github.com/lib/pq" |
| 12 | ) | 14 | ) |
| 13 | 15 | ||
| @@ -37,6 +39,7 @@ type Gril struct { | |||
| 37 | ForeignIDs map[DataSource]int | 39 | ForeignIDs map[DataSource]int |
| 38 | UpdatedAt time.Time | 40 | UpdatedAt time.Time |
| 39 | Lists []int | 41 | Lists []int |
| 42 | Series []series.Series | ||
| 40 | } | 43 | } |
| 41 | 44 | ||
| 42 | func (g *Gril) Slug() string { | 45 | func (g *Gril) Slug() string { |
diff --git a/tools/importer/ACDv2Reader.go b/tools/importer/ACDv2Reader.go index 974da52..4dab3c0 100644 --- a/tools/importer/ACDv2Reader.go +++ b/tools/importer/ACDv2Reader.go | |||
| @@ -7,6 +7,7 @@ import ( | |||
| 7 | "strings" | 7 | "strings" |
| 8 | 8 | ||
| 9 | "fagott.pw/grilist/modules/grils" | 9 | "fagott.pw/grilist/modules/grils" |
| 10 | "fagott.pw/grilist/modules/series" | ||
| 10 | ) | 11 | ) |
| 11 | 12 | ||
| 12 | const failMsg = "Offenbar war meine Annahme bzgl. der Traits nicht ganz korrekt" | 13 | const failMsg = "Offenbar war meine Annahme bzgl. der Traits nicht ganz korrekt" |
| @@ -75,6 +76,13 @@ func (r *ACDv2Reader) Read(path string) WrappedGril { | |||
| 75 | } | 76 | } |
| 76 | g.Gril.Traits = append(g.Gril.Traits, t) | 77 | g.Gril.Traits = append(g.Gril.Traits, t) |
| 77 | } | 78 | } |
| 79 | g.Gril.Series = make([]series.Series, 0) | ||
| 80 | for _, v := range jObj.Assignments { | ||
| 81 | s := series.Series{ | ||
| 82 | ID: v, | ||
| 83 | } | ||
| 84 | g.Gril.Series = append(g.Gril.Series, s) | ||
| 85 | } | ||
| 78 | return g | 86 | return g |
| 79 | } | 87 | } |
| 80 | 88 | ||
diff --git a/tools/importer/main.go b/tools/importer/main.go index fd7af37..4eba9a0 100644 --- a/tools/importer/main.go +++ b/tools/importer/main.go | |||
| @@ -179,6 +179,28 @@ func InsertTraits(dbID int, g WrappedGril, traitlist map[string]int) { | |||
| 179 | LogErr(err) | 179 | LogErr(err) |
| 180 | } | 180 | } |
| 181 | } | 181 | } |
| 182 | |||
| 183 | func InsertSeries(dbID int, g WrappedGril) { | ||
| 184 | rows, err := db.Query("SELECT appearance_id FROM grils_appearances WHERE gril_id = $1;", dbID) | ||
| 185 | LogErr(err) | ||
| 186 | existingSeries := make(map[int]bool, 0) | ||
| 187 | for rows.Next() { | ||
| 188 | var seriesID int | ||
| 189 | rows.Scan(&seriesID) | ||
| 190 | existingSeries[seriesID] = true | ||
| 191 | } | ||
| 192 | for _, v := range g.Gril.Series { | ||
| 193 | if _, ok := existingSeries[v.ID]; ok { | ||
| 194 | continue | ||
| 195 | } | ||
| 196 | _, err := db.Exec("INSERT INTO grilist.grils_appearances (gril_id, appearance_id) VALUES ($1, $2);", | ||
| 197 | dbID, v.ID) | ||
| 198 | existingSeries[v.ID] = true | ||
| 199 | fmt.Printf("Assigned series %d to %s\n", v.ID, g.Gril.RomajiName) | ||
| 200 | LogErr(err) | ||
| 201 | } | ||
| 202 | } | ||
| 203 | |||
| 182 | func main() { | 204 | func main() { |
| 183 | flag.StringVar(&path, "path", "", "path of the source files") | 205 | flag.StringVar(&path, "path", "", "path of the source files") |
| 184 | flag.StringVar(&sourceType, "type", "", "type of the files (ACD, AniDB)") | 206 | flag.StringVar(&sourceType, "type", "", "type of the files (ACD, AniDB)") |
| @@ -252,6 +274,7 @@ func main() { | |||
| 252 | } | 274 | } |
| 253 | InsertTags(dbID, g, taglist) | 275 | InsertTags(dbID, g, taglist) |
| 254 | InsertTraits(dbID, g, traitlist) | 276 | InsertTraits(dbID, g, traitlist) |
| 277 | InsertSeries(dbID, g) | ||
| 255 | 278 | ||
| 256 | return nil | 279 | return nil |
| 257 | }) | 280 | }) |
