File tree Expand file tree Collapse file tree 2 files changed +30
-15
lines changed
Expand file tree Collapse file tree 2 files changed +30
-15
lines changed Original file line number Diff line number Diff line change 1+ class Height
2+ def initialize ( observation )
3+ return unless observation . present?
4+ @height = observation . value
5+ @imperial = ( observation . units == 'in' )
6+ end
7+
8+ def feet
9+ if @imperial
10+ ( @height / 12 ) . floor
11+ else
12+ ( @height / 30 ) . floor
13+ end
14+ end
15+
16+ def inches
17+ if @imperial
18+ @height % 12
19+ else
20+ ( @height / 30 / 2.54 ) . round
21+ end
22+ end
23+
24+ def to_s
25+ return 'N/A' unless @height . present?
26+ "#{ feet } ft. #{ inches } in."
27+ end
28+ end
Original file line number Diff line number Diff line change @@ -46,21 +46,8 @@ def age
4646 end
4747
4848 def height
49- if observations . map ( &:code_display ) . include? ( "Body Height" )
50- height_observation = [ observations . select { |observation | observation . code_display == "Body Height" } ] . flatten . sort_by ( &:date ) . last
51- height_number = height_observation . value
52- if height_observation . units == "in"
53- height_feet = ( height_number / 12 ) . floor
54- height_inches = height_number % 12
55- else
56- height_feet = ( height_number / 30 ) . floor
57- height_inches = ( height_number / 30 / 2.54 ) . round
58- end
59- height = "#{ height_feet } ft. #{ height_inches } in."
60- else
61- height = "N/A"
62- end
63- height
49+ height_observation = observations . select { |observation | observation . code_display == "Body Height" }
50+ Height . new ( height_observation ) . to_s
6451 end
6552
6653 def observations
You can’t perform that action at this time.
0 commit comments