From 74855d03f44adf2e77d5d6af38e18e1cfe45e700 Mon Sep 17 00:00:00 2001 From: Tucker Evans Date: Mon, 2 Dec 2019 10:52:47 -0500 Subject: Fix changes json encoding to match frontend --- backend/recipe.go | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) (limited to 'backend') diff --git a/backend/recipe.go b/backend/recipe.go index fed83ca..8589beb 100644 --- a/backend/recipe.go +++ b/backend/recipe.go @@ -5,29 +5,30 @@ import "errors" import "strings" type Ingredient struct { - Name string - Amount float64 - Unit string + Name string `json:"name"` + Amount float64 `json:"amount"` + Unit string `json:"units"` + Type string `json:"type"` } type Step struct { - Num int - Desc string - Time int + Num int `json:"index"` //Is this needed + Desc string `json:"instructions"` + Time int `json:"timer"` } type Recipe struct { - Id int - Title string - Desc string - Photos []string - Serving_size int - Cook_time int - Rating int - Num_cooked int - Keywords []string - Ingredients []Ingredient - Steps []Step + Id int `json:"id"` + Title string `json:"name"` + Desc string `json:"description"` + Photos []string `json:"photos"` + Serving_size int `json:"servingSize"` + Cook_time int `json:"cookTime"` + Rating int `json:"rating"` + Num_cooked int `json:"timesCooked"` + Keywords []string `json:"tags"` + Ingredients []Ingredient `json:"ingredients"` + Steps []Step `json:"steps"` } func MakeRecipe() *Recipe { -- cgit v1.1 From ba3fc1b1ec14035009cbfc642e04fbf1034ce735 Mon Sep 17 00:00:00 2001 From: Tucker Evans Date: Mon, 2 Dec 2019 16:40:03 -0500 Subject: Fix remove Num from Step struct The index of the array can be used instead. --- backend/recipe.go | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) (limited to 'backend') diff --git a/backend/recipe.go b/backend/recipe.go index 8589beb..a3191c3 100644 --- a/backend/recipe.go +++ b/backend/recipe.go @@ -1,7 +1,6 @@ package main import "database/sql" -import "errors" import "strings" type Ingredient struct { @@ -12,7 +11,6 @@ type Ingredient struct { } type Step struct { - Num int `json:"index"` //Is this needed Desc string `json:"instructions"` Time int `json:"timer"` } @@ -115,13 +113,12 @@ func RecipeFromId(id int, db *sql.DB) *Recipe { var num, timer int rows_steps, err := db.Query(`SELECT step, description, timer - FROM steps WHERE recipe_id = $1`, id) + FROM steps WHERE recipe_id = $1 ORDER BY step`, id) defer rows_steps.Close() if err == nil { for rows_steps.Next() { rows_steps.Scan(&num, &desc, &timer) step = Step{ - Num: num, Desc: desc, Time: timer, } @@ -190,7 +187,7 @@ func AddRecipeDB(r *Recipe, db *sql.DB) error { res, err := tx.Exec(`INSERT INTO steps (step, description, timer, recipe_id) VALUES ($1, $2, $3, $4)`, - step.Num, + i, step.Desc, step.Time, id, @@ -280,10 +277,6 @@ func UpdateRecipeDB(r *Recipe, db *sql.DB) error { } for i, step := range r.Steps { - if step.Num != 0 { - tx.Rollback() - return errors.New("invalid json Recipe") - } _, err := tx.Exec(`INSERT INTO steps (step, description, timer, recipe_id) VALUES ($1, $2, $3, $4) -- cgit v1.1