You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
quartermaster/nutrition.go

32 lines
860 B

package quartermaster
type Nutrition struct {
ID int `json:"id"`
Unit Unit `json:"unit"`
Calories float32 `json:"calories"`
Fat float32 `json:"fat"`
Sodium float32 `json:"sodium"`
Protein float32 `json:"protein"`
Vitamins []*Vitamin `json:"vitamins"`
}
type Vitamin struct {
Vitamin VitaminType `json:"vitamin"`
Amount float32 `json:"amount"`
}
type NutritionService interface {
Nutrition(int) (*Nutrition, error)
AddNutrition(*Nutrition) (*Nutrition, error)
UpdateNutrition(*Nutrition) error
DeleteNutrition(*Nutrition) error
}
type VitaminService interface {
Vitamin(VitaminType, *Nutrition) (*Vitamin, error)
AddVitamin(*Vitamin, *Nutrition) error
UpdateVitamin(*Vitamin, *Nutrition) error
DeleteVitamin(*Vitamin, *Nutrition) error
GetNutritionVitamins(*Nutrition) ([]*Vitamin, error)
}