toji 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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