toji 1.3.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  require 'toji'
2
2
  require 'terminal-table'
3
3
 
4
- shubo = Toji::Brew::Shubo.template
4
+ shubo = Toji::Brew::Shubo.load_yaml_file("shubo.yaml")
5
5
 
6
6
  table = Terminal::Table.new do |t|
7
7
  t << ["作業", "日数", "品温(度)", "ボーメ", "酸度", "経過時間", "日時"]
@@ -0,0 +1,75 @@
1
+ date_line: 0
2
+ records:
3
+ - elapsed_time: 0
4
+ mark: mizukoji
5
+ temps: 12.0
6
+ acid: 13.0
7
+ - elapsed_time: 3600
8
+ mark: shikomi
9
+ temps: 20.0
10
+ acid: 13.0
11
+ - elapsed_time: 86400
12
+ mark: utase
13
+ temps: 14.0
14
+ baume: 15.0
15
+ acid: 13.0
16
+ - elapsed_time: 172800
17
+ temps:
18
+ - 8.0
19
+ - 11.0
20
+ baume: 16.0
21
+ acid: 13.0
22
+ warmings: daki
23
+ - elapsed_time: 259200
24
+ temps:
25
+ - 10.0
26
+ - 13.0
27
+ baume: 16.5
28
+ acid: 13.5
29
+ warmings: daki
30
+ - elapsed_time: 345600
31
+ temps:
32
+ - 12.0
33
+ - 15.0
34
+ baume: 17.0
35
+ acid: 13.5
36
+ warmings: daki
37
+ - elapsed_time: 432000
38
+ temps: 14.0
39
+ baume: 17.0
40
+ acid: 14.0
41
+ warmings: anka
42
+ - elapsed_time: 518400
43
+ temps: 20.0
44
+ baume: 17.0
45
+ acid: 14.5
46
+ warmings: anka
47
+ - elapsed_time: 604800
48
+ temps: 20.0
49
+ baume: 14.0
50
+ acid: 15.5
51
+ - elapsed_time: 691200
52
+ temps: 20.0
53
+ baume: 12.0
54
+ acid: 16.0
55
+ - elapsed_time: 777600
56
+ mark: wake
57
+ temps: 20.0
58
+ baume: 9.0
59
+ acid: 16.0
60
+ - elapsed_time: 864000
61
+ temps: 15.0
62
+ baume: 8.0
63
+ acid: 16.5
64
+ - elapsed_time: 950400
65
+ temps: 12.0
66
+ baume: 7.0
67
+ acid: 17.0
68
+ - elapsed_time: 1036800
69
+ temps: 10.0
70
+ baume: 6.0
71
+ acid: 17.5
72
+ - elapsed_time: 1123200
73
+ temps: 9.0
74
+ baume: 5.0
75
+ acid: 17.5
@@ -1,5 +1,6 @@
1
1
  require "toji/version"
2
2
  require 'active_support/all'
3
+ require 'yaml'
3
4
 
4
5
  require 'toji/recipe'
5
6
  require 'toji/brew'
@@ -2,10 +2,6 @@ module Toji
2
2
  module Brew
3
3
  HOUR = 60 * 60
4
4
  DAY = 24 * HOUR
5
-
6
- WARM_DAKI = 1
7
- WARM_ANKA = 1<<1
8
- WARM_MAT = 1<<2
9
5
  end
10
6
  end
11
7
 
@@ -26,7 +26,6 @@ module Toji
26
26
  :amino_acid,
27
27
  :alcohol,
28
28
  :bmd,
29
- :warming,
30
29
  :warmings,
31
30
  :note,
32
31
  ].freeze
@@ -116,6 +115,19 @@ module Toji
116
115
  def self.builder
117
116
  Builder.new(self)
118
117
  end
118
+
119
+ def self.load_hash(hash)
120
+ hash = hash.deep_symbolize_keys
121
+ date_line = hash[:date_line] || 0
122
+ records = hash[:records] || []
123
+
124
+ builder.add(records).date_line(date_line).build
125
+ end
126
+
127
+ def self.load_yaml_file(fname)
128
+ hash = YAML.load_file(fname)
129
+ load_hash(hash)
130
+ end
119
131
  end
120
132
  end
121
133
  end
@@ -51,6 +51,18 @@ module Toji
51
51
  }
52
52
  end
53
53
 
54
+ #if 0<@data.states.length && @data.states.last.time.strftime("%T")!="00:00:00"
55
+ # t = @data.states.last.elapsed_time_with_offset
56
+ # t -= (t % DAY) - DAY
57
+ #
58
+ # result = result.map{|h|
59
+ # h[:x] << t
60
+ # h[:y] << nil
61
+ # h[:text] << nil
62
+ # h
63
+ # }
64
+ #end
65
+
54
66
  result
55
67
  end
56
68
 
@@ -79,7 +91,6 @@ module Toji
79
91
  keys.delete(:moromi_day)
80
92
  keys.delete(:baume)
81
93
  keys.delete(:nihonshudo)
82
- keys.delete(:warming)
83
94
  else
84
95
  keys &= @data.has_keys
85
96
  end
@@ -2,68 +2,6 @@ module Toji
2
2
  module Brew
3
3
  class Koji < Base
4
4
 
5
- TEMPLATES = {
6
- default: [
7
- {
8
- elapsed_time: 0 * Brew::HOUR,
9
- id: :hikikomi,
10
- temps: 35.0,
11
- room_temp: 28.0,
12
- room_psychrometry: nil,
13
- },
14
- {
15
- elapsed_time: 1 * Brew::HOUR,
16
- id: :tokomomi,
17
- temps: 32.0,
18
- room_temp: 28.0,
19
- room_psychrometry: nil,
20
- },
21
- {
22
- elapsed_time: 9 * Brew::HOUR,
23
- id: :kirikaeshi,
24
- temps: [32.0, 31.0],
25
- room_temp: 28.0,
26
- room_psychrometry: nil,
27
- },
28
- {
29
- elapsed_time: 21 * Brew::HOUR,
30
- id: :mori,
31
- temps: [35.0, 33.0],
32
- room_temp: 28.0,
33
- room_psychrometry: 4,
34
- },
35
- {
36
- elapsed_time: 29 * Brew::HOUR,
37
- id: :naka_shigoto,
38
- temps: [37.0, 35.0],
39
- room_temp: 28.0,
40
- room_psychrometry: 4,
41
- },
42
- {
43
- elapsed_time: 35 * Brew::HOUR,
44
- id: :shimai_shigoto,
45
- temps: [38.0, 37.0],
46
- room_temp: 28.0,
47
- room_psychrometry: 5,
48
- },
49
- {
50
- elapsed_time: 39 * Brew::HOUR,
51
- id: :tsumikae,
52
- temps: 40.0,
53
- room_temp: 28.0,
54
- room_psychrometry: 5,
55
- },
56
- {
57
- elapsed_time: 44 * Brew::HOUR,
58
- id: :dekoji,
59
- temps: 40.0,
60
- room_temp: 28.0,
61
- room_psychrometry: 5,
62
- },
63
- ],
64
- }
65
-
66
-
67
5
  state_reader :hikikomi
68
6
  state_reader :tokomomi
69
7
  state_reader :kirikaeshi
@@ -77,10 +15,6 @@ module Toji
77
15
  def progress(enable_annotations: true)
78
16
  Graph::Progress.new(self, enable_annotations: enable_annotations)
79
17
  end
80
-
81
- def self.template(key=:default)
82
- create(TEMPLATES[key])
83
- end
84
18
  end
85
19
  end
86
20
  end
@@ -2,170 +2,6 @@ module Toji
2
2
  module Brew
3
3
  class Moromi < Base
4
4
 
5
- TEMPLATES = {
6
- default: [
7
- {
8
- time: Time.mktime(2019, 1, 16),
9
- mark: :soe,
10
- room_temp: 9,
11
- temps: [14.8, 11.0],
12
- },
13
- {
14
- time: Time.mktime(2019, 1, 17),
15
- room_temp: 9,
16
- temps: 14.3,
17
- },
18
- {
19
- time: Time.mktime(2019, 1, 18),
20
- room_temp: 8.5,
21
- temps: 11.3,
22
- },
23
- {
24
- time: Time.mktime(2019, 1, 19),
25
- mark: :naka,
26
- room_temp: 9,
27
- temps: [6.9, 10.6],
28
- },
29
- {
30
- time: Time.mktime(2019, 1, 20),
31
- mark: :tome,
32
- room_temp: 6,
33
- temps: [7.5, 8.0],
34
- },
35
- {
36
- time: Time.mktime(2019, 1, 21),
37
- room_temp: 7,
38
- temps: 9.1,
39
- },
40
- {
41
- time: Time.mktime(2019, 1, 22),
42
- room_temp: 7,
43
- temps: 10.4,
44
- },
45
- {
46
- time: Time.mktime(2019, 1, 23),
47
- room_temp: 8,
48
- temps: 11.9,
49
- baume: 8.6,
50
- },
51
- {
52
- time: Time.mktime(2019, 1, 24),
53
- room_temp: 8,
54
- temps: 12.3,
55
- baume: 8.0,
56
- alcohol: 4.8,
57
- },
58
- {
59
- time: Time.mktime(2019, 1, 25),
60
- room_temp: 7.5,
61
- temps: 13.1,
62
- baume: 7.2,
63
- alcohol: 6.75,
64
- },
65
- {
66
- time: Time.mktime(2019, 1, 26),
67
- room_temp: 7.5,
68
- temps: 13.1,
69
- baume: 5.8,
70
- alcohol: 7.992,
71
- },
72
- {
73
- time: Time.mktime(2019, 1, 27),
74
- room_temp: 7.5,
75
- temps: 12.9,
76
- baume: 4.8,
77
- },
78
- {
79
- time: Time.mktime(2019, 1, 28),
80
- room_temp: 7.0,
81
- temps: 12.8,
82
- baume: 4.0,
83
- alcohol: 10.7,
84
- },
85
- {
86
- time: Time.mktime(2019, 1, 29),
87
- room_temp: 8.0,
88
- temps: 12.9,
89
- baume: 3.4,
90
- alcohol: 11.6,
91
- },
92
- {
93
- time: Time.mktime(2019, 1, 30),
94
- room_temp: 8.0,
95
- temps: 12.6,
96
- nihonshudo: -27,
97
- alcohol: 12.7,
98
- },
99
- {
100
- time: Time.mktime(2019, 1, 31),
101
- room_temp: 7.0,
102
- temps: 12.0,
103
- nihonshudo: -21,
104
- alcohol: 13.7,
105
- },
106
- {
107
- time: Time.mktime(2019, 2, 1),
108
- room_temp: 7.0,
109
- temps: 11.2,
110
- nihonshudo: -17,
111
- },
112
- {
113
- time: Time.mktime(2019, 2, 2),
114
- room_temp: 6.5,
115
- temps: 10.2,
116
- nihonshudo: -13,
117
- },
118
- {
119
- time: Time.mktime(2019, 2, 3),
120
- room_temp: 7.0,
121
- temps: 9.7,
122
- },
123
- {
124
- time: Time.mktime(2019, 2, 4),
125
- room_temp: 8.0,
126
- temps: 9.8,
127
- nihonshudo: -8,
128
- alcohol: 16.0,
129
- },
130
- {
131
- time: Time.mktime(2019, 2, 5),
132
- room_temp: 6.0,
133
- temps: 9.1,
134
- nihonshudo: -5,
135
- },
136
- {
137
- time: Time.mktime(2019, 2, 6),
138
- room_temp: 5.0,
139
- temps: 8.4,
140
- nihonshudo: -3,
141
- alcohol: 16.3,
142
- },
143
- {
144
- time: Time.mktime(2019, 2, 7),
145
- room_temp: 5.0,
146
- temps: 8.1,
147
- nihonshudo: -2,
148
- },
149
- {
150
- time: Time.mktime(2019, 2, 8),
151
- room_temp: 7.0,
152
- temps: 8.3,
153
- nihonshudo: 0,
154
- },
155
- {
156
- time: Time.mktime(2019, 2, 9),
157
- room_temp: 6.0,
158
- temps: 8.1,
159
- },
160
- ],
161
- }
162
-
163
- DAY_LABELS = {
164
- default: [:soe, :odori, :naka, :tome].freeze,
165
- moto1: [:moto, :soe, :odori, :naka, :tome].freeze,
166
- odori2: [:soe, :odori, :odori, :naka, :tome].freeze,
167
- }.freeze
168
-
169
5
  state_reader :moto
170
6
  state_reader :soe
171
7
  state_reader :naka
@@ -236,10 +72,6 @@ module Toji
236
72
  def ab(coef=1.5)
237
73
  Graph::Ab.new(coef).actual(self)
238
74
  end
239
-
240
- def self.template(key=:default)
241
- create(TEMPLATES[key])
242
- end
243
75
  end
244
76
  end
245
77
  end
@@ -2,109 +2,6 @@ module Toji
2
2
  module Brew
3
3
  class Shubo < Base
4
4
 
5
- TEMPLATES = {
6
- default: [
7
- {
8
- elapsed_time: 0 * Brew::DAY,
9
- mark: :mizukoji,
10
- temps: 12.0,
11
- acid: 13.0,
12
- },
13
- {
14
- elapsed_time: 0 * Brew::DAY + 1 * Brew::HOUR,
15
- mark: :shikomi,
16
- temps: 20.0,
17
- acid: 13.0,
18
- },
19
- {
20
- elapsed_time: 1 * Brew::DAY,
21
- mark: :utase,
22
- temps: 14.0,
23
- baume: 15.0,
24
- acid: 13.0,
25
- },
26
- {
27
- elapsed_time: 2 * Brew::DAY,
28
- temps: [8.0, 11.0],
29
- baume: 16.0,
30
- acid: 13.0,
31
- warming: WARM_DAKI,
32
- },
33
- {
34
- elapsed_time: 3 * Brew::DAY,
35
- temps: [10.0, 13.0],
36
- baume: 16.5,
37
- acid: 13.5,
38
- warming: WARM_DAKI,
39
- },
40
- {
41
- elapsed_time: 4 * Brew::DAY,
42
- temps: [12.0, 15.0],
43
- baume: 17.0,
44
- acid: 13.5,
45
- warming: WARM_DAKI,
46
- },
47
- {
48
- elapsed_time: 5 * Brew::DAY,
49
- temps: 14.0,
50
- baume: 17.0,
51
- acid: 14.0,
52
- warming: WARM_ANKA,
53
- },
54
- {
55
- elapsed_time: 6 * Brew::DAY,
56
- temps: 20.0,
57
- baume: 17.0,
58
- acid: 14.5,
59
- warming: WARM_ANKA,
60
- },
61
- {
62
- elapsed_time: 7 * Brew::DAY,
63
- temps: 20.0,
64
- baume: 14.0,
65
- acid: 15.5,
66
- },
67
- {
68
- elapsed_time: 8 * Brew::DAY,
69
- temps: 20.0,
70
- baume: 12.0,
71
- acid: 16.0,
72
- },
73
- {
74
- elapsed_time: 9 * Brew::DAY,
75
- mark: :wake,
76
- temps: 20.0,
77
- baume: 9.0,
78
- acid: 16.0,
79
- },
80
- {
81
- elapsed_time: 10 * Brew::DAY,
82
- temps: 15.0,
83
- baume: 8.0,
84
- acid: 16.5,
85
- },
86
- {
87
- elapsed_time: 11 * Brew::DAY,
88
- temps: 12.0,
89
- baume: 7.0,
90
- acid: 17.0,
91
- },
92
- {
93
- elapsed_time: 12 * Brew::DAY,
94
- temps: 10.0,
95
- baume: 6.0,
96
- acid: 17.5,
97
- },
98
- {
99
- elapsed_time: 13 * Brew::DAY,
100
- temps: 9.0,
101
- baume: 5.0,
102
- acid: 17.5,
103
- },
104
- ],
105
- }
106
-
107
-
108
5
  state_reader :mizukoji
109
6
  state_reader :shikomi
110
7
  state_reader :utase
@@ -113,10 +10,6 @@ module Toji
113
10
  def progress(enable_annotations: true)
114
11
  Graph::Progress.new(self, enable_annotations: enable_annotations)
115
12
  end
116
-
117
- def self.template(key=:default)
118
- create(TEMPLATES[key])
119
- end
120
13
  end
121
14
  end
122
15
  end