aboutsummaryrefslogtreecommitdiff
path: root/cmd/airlines/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/airlines/main.go')
-rw-r--r--cmd/airlines/main.go60
1 files changed, 21 insertions, 39 deletions
diff --git a/cmd/airlines/main.go b/cmd/airlines/main.go
index 6bf097a..092a280 100644
--- a/cmd/airlines/main.go
+++ b/cmd/airlines/main.go
@@ -1,15 +1,15 @@
package main
import (
+ "context"
+ "encoding/json"
"fmt"
"os"
- "time"
- "github.com/joho/godotenv"
- "gorm.io/driver/postgres"
- "gorm.io/gorm"
+ ljson "airlines/pkg/adapters/json"
+ "airlines/pkg/store"
- "airlines/pkg/model"
+ "github.com/joho/godotenv"
)
func main() {
@@ -19,44 +19,26 @@ func main() {
fmt.Println(err)
}
- dsn := fmt.Sprintf("postgres://%s:%s@%s:%s/%s", os.Getenv("DB_USER"), os.Getenv("DB_PASSWORD"), os.Getenv("DB_HOST"), os.Getenv("DB_PORT"), os.Getenv("DB_NAME"))
- db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})
-
+ store, err := store.NewStore(fmt.Sprintf("postgres://%s:%s@%s:%s/%s", os.Getenv("DB_USER"), os.Getenv("DB_PASSWORD"), os.Getenv("DB_HOST"), os.Getenv("DB_PORT"), os.Getenv("DB_NAME")))
if err != nil {
- fmt.Println(err)
- return
- }
- // db.Migrator().DropTable(&model.User{}, &model.Card{}, &model.Flight{}) // ;-)
- if err := db.AutoMigrate(&model.User{}, &model.Card{}, &model.Flight{}); err != nil {
- return
+ panic(err)
}
+ _ = store.AutoMigrate()
- jinzhuFlights := []model.Flight{
- {
- Number: "SU1111",
- From: "North pole",
- To: "Mars",
- Departure: time.Now(),
- Arrival: time.Now().AddDate(0, 0, 162),
- },
- }
- user := model.User{
- Name: "Jinzhu",
- Age: 18,
- Birthday: time.Now(),
- Flights: jinzhuFlights,
- Cards: []model.Card{
- {
- Prefix: "AA",
- Number: 123,
- Bonusprogramm: "AbObA airlines SuPrEmE",
- Flights: jinzhuFlights,
- },
- },
+ // i, err := json.ImportForumProfilesJSON(context.Background(), store, "../../full.json", 16384)
+ // fmt.Println(i, err)
+ f, err := os.Open("../../full.json")
+
+ dec := json.NewDecoder(f)
+ // optional: be strict about unexpected fields
+ // dec.DisallowUnknownFields()
+
+ var root ljson.JsonRoot
+ if err := dec.Decode(&root); err != nil {
+ panic(err)
}
- // Create a single record
- result := db.Create(&user)
- fmt.Println(result.Error)
+ root.DumpToDb(context.Background(), store)
+ // fmt.Println(root)
}