Taobin-Recipe-Manager/server/data/data.go
2023-09-25 15:29:42 +07:00

48 lines
676 B
Go

package data
import (
"encoding/json"
"log"
"os"
"recipe-manager/models"
)
func readFile() *models.Recipe {
file, err := os.Open("data/data.json")
if err != nil {
log.Fatalf("Error when open file: %s", err)
return nil
}
defer file.Close()
var data *models.Recipe
err = json.NewDecoder(file).Decode(&data)
if err != nil {
log.Fatalf("Error when decode file: %s", err)
return nil
}
return data
}
type Data struct {
recipe *models.Recipe
}
func NewData() *Data {
return &Data{
recipe: readFile(),
}
}
func (d *Data) GetRecipe() models.Recipe {
return *d.recipe
}
func (d *Data) GetRecipe01() []models.Recipe01 {
return d.recipe.Recipe01
}