class Einutricional::MenuDietetico
Attributes
alimentos[RW]
alm[RW]
cen[RW]
des[RW]
dia_semana[RW]
ingesta_max[RW]
ingesta_min[RW]
tit[RW]
Public Class Methods
new(dia_semana) { |self| ... }
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 6 def initialize(dia_semana, &block) @dia_semana = dia_semana @des = Array.new @alm = Array.new @cen = Array.new if block_given? if block.arity == 1 yield self else instance_eval(&block) end end end
Public Instance Methods
<=>(other)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 56 def <=>(other) valor_energetico_menu <=> other.valor_energetico_menu end
almuerzo(alm)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 34 def almuerzo(alm) alm[:ve] = valor_energetico(alm) @alm << alm end
cena(cen)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 39 def cena(cen) cen[:ve] = valor_energetico(cen) @cen << cen end
desayuno(des)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 29 def desayuno(des) des[:ve] = valor_energetico(des) @des << des end
ingesta(datos)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 24 def ingesta(datos) @ingesta_min = datos[:min] @ingesta_max = datos[:max] end
titulo(t)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 20 def titulo(t) @tit = t end
to_s()
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 60 def to_s # Barra superior de información print @tit.upcase.ljust(55), "COMPOSICIÓN NUTRICIONAL\n" print ' ' * 35, 'Grasas'.ljust(9), 'Hidratos'.ljust(11), 'Proteínas'.ljust(12), 'Fibra'.ljust(8), 'Sal'.ljust(6), 'Valor energético', "\n" puts '=' * 97 ve = 0 # Datos [@des, @alm, @cen].each do |momento_del_dia| unless momento_del_dia.empty? if momento_del_dia == @des puts '>> DESAYUNO' elsif momento_del_dia == @alm puts '>> ALMUERZO' else puts '>> CENA' end end momento_del_dia.each do |menu| ve += menu[:ve] print menu[:descripcion].ljust(35), menu[:grasas].to_s.ljust(9), menu[:hidratos].to_s.ljust(11), menu[:proteinas].to_s.ljust(12), menu[:fibra].to_s.ljust(8), menu[:sal].to_s.ljust(6), menu[:ve].round(0).to_s print "\n" end end puts '=' * 97 print 'Total '.rjust(81), ve end
valor_energetico(hash)
click to toggle source
# File lib/einutricional/menu_dietetico.rb, line 44 def valor_energetico(hash) ve = 0 ve += hash[:grasas] * 9 ve += (hash[:hidratos] - hash[:azucares] - hash[:polialcoholes] - hash[:almidon]) * 4 ve += hash[:azucares] * 4 ve += hash[:polialcoholes] * 2.4 ve += hash[:almidon] * 4 ve += hash[:fibra] * 2 ve += hash[:proteinas] * 4 ve += hash[:sal] * 6 end