Class: Menu::Menu

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/menu/codigo_menu.rb

Overview

Clase que representa menús dietéticos

Direct Known Subclasses

DietaPorAlimentos, DietaPorEdades

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(titulo, porcent, plat, vct, prot, grss, hidr) ⇒ Menu

Meodo initialize para la llamada del new



16
17
18
19
20
21
22
23
24
# File 'lib/menu/codigo_menu.rb', line 16

def initialize (titulo, porcent, plat, vct, prot, grss, hidr)
    @titulo = titulo
    @porcent = porcent
    @plat = plat
	@vct = vct
    @prot = prot
    @grss = grss
    @hidr = hidr	        
end

Instance Attribute Details

#grssObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def grss
  @grss
end

#hidrObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def hidr
  @hidr
end

#platObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def plat
  @plat
end

#porcentObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def porcent
  @porcent
end

#protObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def prot
  @prot
end

#tituloObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def titulo
  @titulo
end

#vctObject (readonly)

Atributos



8
9
10
# File 'lib/menu/codigo_menu.rb', line 8

def vct
  @vct
end

Instance Method Details

#<=>(other) ⇒ Object

Método para la comparación de menús con el módulo comparable



11
12
13
# File 'lib/menu/codigo_menu.rb', line 11

def <=>(other)
	vct <=> other.vct
end

#get_conjunto_platObject

Método que devuelve el conjunto de platos como string



60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/menu/codigo_menu.rb', line 60

def get_conjunto_plat
	i = 1
	s = ""
	while i <= @plat.length
		s << "- #{get_un_plat(i)}"
		i += 1
		if i <= @plat.length
			s << "\n"
		end
	end
	s
end

#get_desc(n) ⇒ Object

Método que devuelve la descripción como string



37
38
39
# File 'lib/menu/codigo_menu.rb', line 37

def get_desc(n)
	s = "#{@plat[n-1][0]}"
end

#get_grssObject

Método que devuelve el porcentaje de grasas como string



84
85
86
# File 'lib/menu/codigo_menu.rb', line 84

def get_grss
   @grss 
end

#get_hidrObject

Método que devuelve el porcentaje de carbohidratos como string



89
90
91
# File 'lib/menu/codigo_menu.rb', line 89

def get_hidr
   @hidr 
end

#get_ing(n) ⇒ Object

Método que devuelve la ingesta como string



47
48
49
# File 'lib/menu/codigo_menu.rb', line 47

def get_ing(n)
	s = "#{@plat[n-1][2]}"
end

#get_porcentajeObject

Método que devuelve el porcentaje diario de un menú



32
33
34
# File 'lib/menu/codigo_menu.rb', line 32

def get_porcentaje
   @porcent
end

#get_prcn(n) ⇒ Object

Método que devuelve la porción como string



42
43
44
# File 'lib/menu/codigo_menu.rb', line 42

def get_prcn(n)
	s = "#{@plat[n-1][1]}"
end

#get_protObject

Método que devuelve el porcentaje de proteínas como string



79
80
81
# File 'lib/menu/codigo_menu.rb', line 79

def get_prot
   @prot
end

#get_tituloObject

Método que devuelve el título del menú



27
28
29
# File 'lib/menu/codigo_menu.rb', line 27

def get_titulo
    @titulo
end

#get_un_plat(n) ⇒ Object

Método que devuelve un plato como string



52
53
54
55
56
57
# File 'lib/menu/codigo_menu.rb', line 52

def get_un_plat(n)
	s = "#{get_desc(n)}, "
	s << "#{get_prcn(n)}, "
	s << "#{get_ing(n)}"
	s
end

#get_vctObject

Método que devuelve el VCT como string



74
75
76
# File 'lib/menu/codigo_menu.rb', line 74

def get_vct
   @vct 
end

#to_sObject

Método que devuelve el menú como string



94
95
96
97
98
99
100
101
# File 'lib/menu/codigo_menu.rb', line 94

def to_s
	s = "\n#{get_titulo} (#{get_porcentaje})\n#{get_conjunto_plat}"
	s << "\nVCT: #{get_vct} kcal | "
	s << "#{get_prot}% proteínas - "
	s << "#{get_grss}% grasas - "
	s << "#{get_hidr}% hidratos de carbono\n"
	s
end