1
0

Added zero_nil to Quantity form and import

This commit is contained in:
cryptogopher 2020-02-20 21:55:38 +01:00
parent 9bddc67a3f
commit b1e7236460
4 changed files with 10 additions and 5 deletions

View File

@ -29,6 +29,8 @@ class BodyTrackersController < ApplicationController
attrs = q.attributes.except('id', 'project_id', 'parent_id', 'lft', 'rgt',
'created_at', 'updated_at')
attrs['parent'] = q.parent ? available[[q.parent.name, q.parent.domain]] : nil
attrs['formula_attributes'] = q.formula.attributes.except('id', 'quantity_id',
'created_at', 'updated_at')
obj = @project.quantities.create(attrs)
available[[q.name, q.domain]] = obj
end

View File

@ -13,6 +13,7 @@
<p><%= f.text_field :description, style: "width: 100%;" %></p>
<%= f.fields_for :formula do |ff| %>
<p><%= ff.text_field :code, placeholder: t('.formula_placeholder'),
style: "width: 100%;" %></p>
style: "width: 100%;" %></p>
<p><%= ff.check_box :zero_nil, {label: ''} %><%= t('.zero_nil') %></p>
<% end %>
</div>

View File

@ -123,6 +123,7 @@ en:
null_parent: '- none -'
formula_placeholder: 'provide if value of quantity has to be computed in terms of
other quantities'
zero_nil: 'substitute missing formula values with 0?'
units:
index:
heading: 'Units'

View File

@ -13,6 +13,8 @@ class LoadDefaults < ActiveRecord::Migration
# https://www.fsai.ie/legislation/food_legislation/food_information_fic/nutrition_labelling.html
e1 = Quantity.create project: nil, domain: :diet, parent: nil, name: "Energy",
description: "Total energy"
e2 = Quantity.create project: nil, domain: :diet, parent: e1, name: "Calculated",
description: "Total energy calculated from macronutrients"
p1 = Quantity.create project: nil, domain: :diet, parent: nil, name: "Proteins",
description: "Total amount of proteins"
@ -141,10 +143,9 @@ class LoadDefaults < ActiveRecord::Migration
b9 = Quantity.create project: nil, domain: :measurement, parent: b1,
name: "VF", description: "Visceral fat"
# Calculated quantities go at the and to make sure dependencies exist
e2 = Quantity.create project: nil, domain: :diet, parent: e1, name: "Calculated",
description: "Total energy calculated from macronutrients",
formula_attributes: {code: "4*Proteins + 9*Fats + 4*Carbohydrates", zero_nil: true}
# Formulas go at the and to make sure dependencies exist
e2.create_formula code: "4*Proteins + 9*Fats + 4*Carbohydrates", zero_nil: true
b3.create_formula code: "'% fat' * 'Weight'", zero_nil: true
Source.create project: nil, name: "nutrition label",
description: "nutrition facts taken from package nutrition label"