56 lines
1.6 KiB
Ruby
56 lines
1.6 KiB
Ruby
|
class FoodSerializer < ApplicationSerializer
|
||
|
|
||
|
def serialize
|
||
|
{
|
||
|
**item_properties(:id,
|
||
|
:name,
|
||
|
:ndbn,
|
||
|
:usda_food_name,
|
||
|
:notes,
|
||
|
:density,
|
||
|
:water,
|
||
|
:ash,
|
||
|
:protein,
|
||
|
:kcal,
|
||
|
:fiber,
|
||
|
:sugar,
|
||
|
:carbohydrates,
|
||
|
:calcium,
|
||
|
:iron,
|
||
|
:magnesium,
|
||
|
:phosphorus,
|
||
|
:potassium,
|
||
|
:sodium,
|
||
|
:zinc,
|
||
|
:copper,
|
||
|
:manganese,
|
||
|
:vit_c,
|
||
|
:vit_b6,
|
||
|
:vit_b12,
|
||
|
:vit_a,
|
||
|
:vit_e,
|
||
|
:vit_d,
|
||
|
:vit_k,
|
||
|
:cholesterol,
|
||
|
:lipids),
|
||
|
|
||
|
ndbn_units: self.ndbn_units,
|
||
|
food_units: item.food_units.map { |u| { id: u.id, name: u.name, gram_weight: u.gram_weight, _destroy: false } }
|
||
|
}
|
||
|
end
|
||
|
|
||
|
def ndbn_units
|
||
|
if item.ndbn.present?
|
||
|
item.usda_food.usda_food_weights.map do |fw|
|
||
|
{
|
||
|
amount: fw.amount,
|
||
|
description: fw.description,
|
||
|
gram_weight: fw.gram_weight
|
||
|
}
|
||
|
end
|
||
|
else
|
||
|
[]
|
||
|
end
|
||
|
end
|
||
|
|
||
|
end
|