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) }