Fixed bugs in calculation of boil volume/batch or boiltime changes.

Fri, 24 Apr 2020 14:10:47 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Fri, 24 Apr 2020 14:10:47 +0200
changeset 660
0e9a725354ac
parent 659
6e373acc5d00
child 661
74b442eae07b

Fixed bugs in calculation of boil volume/batch or boiltime changes.

www/js/prod_edit.js file | annotate | diff | comparison | revisions
www/js/rec_edit.js file | annotate | diff | comparison | revisions
--- a/www/js/prod_edit.js	Tue Apr 21 17:01:22 2020 +0200
+++ b/www/js/prod_edit.js	Fri Apr 24 14:10:47 2020 +0200
@@ -3951,11 +3951,11 @@
   $('#batch_size').on('change', function(event) {
    console.log('batch_size change:' + event.args.value + ' old:' + dataRecord.batch_size);
    $('#est_a_vol').val(event.args.value * 1.04);
-   var factor, new_boil = parseFloat(event.args.value) + dataRecord.boil_size - dataRecord.batch_size;
-   factor = parseFloat(event.args.value) / dataRecord.batch_size;
-   dataRecord.boil_size = new_boil;
-   $('#boil_size').val(Round(new_boil, 2));
-   $('#est_pre_vol').val(Round(new_boil * 1.04, 2));
+   var evap = parseFloat($('#eq_evap_rate').jqxNumberInput('decimal')) * dataRecord.boil_time / 60;
+   dataRecord.boil_size = parseFloat(event.args.value) + evap;
+   var factor = parseFloat(event.args.value) / dataRecord.batch_size;
+   $('#boil_size').val(Round(dataRecord.boil_size, 2));
+   $('#est_pre_vol').val(Round(dataRecord.boil_size * 1.04, 2));
    dataRecord.sparge_volume *= factor;
    $('#sparge_volume').val(dataRecord.sparge_volume);
    $('#brew_sparge_volume').val(dataRecord.sparge_volume);
@@ -3972,37 +3972,15 @@
    calcMash();
   });
   $('#boil_time').on('change', function(event) {
-   var new_boil, new_time, old_time, new_evap, old_evap;
+   var new_time, old_time, new_evap;
    old_time = parseFloat(dataRecord.boil_time);
    new_time = parseFloat(event.args.value);
-
-   if (new_time && old_time) {
-    /* normal boiltime change */
-    console.log('boil_time change:' + new_time + ' old:' + old_time);
-    old_evap = parseFloat(dataRecord.boil_size) - parseFloat(dataRecord.batch_size);
-    new_evap = old_evap * (new_time / old_time);
-    new_boil = parseFloat(dataRecord.batch_size) + new_evap;
-    dataRecord.boil_time = new_time;
-    dataRecord.boil_size = new_boil;
-    $('#est_pre_vol').val(Round(new_boil * 1.04, 2));
-    $('#boil_size').val(Round(new_boil, 2));
-   } else if (new_time && ! old_time) {
-    /* from noboil to boil */
-    console.log('boil_time change:' + new_time + ' old: noboil');
-    new_evap = parseFloat($('#eq_evap_rate').jqxNumberInput('decimal')) * new_time / 60;
-    new_boil = parseFloat(dataRecord.batch_size) + new_evap;
-    dataRecord.boil_time = new_time;
-    dataRecord.boil_size = new_boil;
-    $('#est_pre_vol').val(Round(new_boil * 1.04, 2));
-    $('#boil_size').val(Round(new_boil, 2));
-   } else if (! new_time && old_time) {
-    /* from boil to noboil */
-    console.log('boil_time change: noboil, old:' + old_time);
-    dataRecord.boil_time = 0;
-    dataRecord.boil_size = dataRecord.batch_size;
-    $('#est_pre_vol').val(Round(new_boil * 1.04, 2));
-    $('#boil_size').val(Round(dataRecord.boil_size, 2));
-   }
+   console.log('boil_time change:' + new_time + ' old:' + old_time);
+   new_evap = parseFloat($('#eq_evap_rate').jqxNumberInput('decimal')) * new_time / 60;
+   dataRecord.boil_size = parseFloat(dataRecord.batch_size) + new_evap;
+   dataRecord.boil_time = new_time;
+   $('#est_pre_vol').val(Round(dataRecord.boil_size * 1.04, 2));
+   $('#boil_size').val(Round(dataRecord.boil_size, 2));
    calcFermentables();
    calcIBUs();
    calcYeast();
--- a/www/js/rec_edit.js	Tue Apr 21 17:01:22 2020 +0200
+++ b/www/js/rec_edit.js	Fri Apr 24 14:10:47 2020 +0200
@@ -2534,10 +2534,10 @@
   });
   $('#batch_size').on('change', function(event) {
    console.log('batch_size change:' + event.args.value + ' old:' + dataRecord.batch_size);
-   var factor, new_boil = parseFloat(event.args.value) + dataRecord.boil_size - dataRecord.batch_size;
-   factor = parseFloat(event.args.value) / dataRecord.batch_size;
-   dataRecord.boil_size = new_boil;
-   $('#boil_size').val(Round(new_boil, 2));
+   var evap = (0.1 * parseFloat(event.args.value)) * dataRecord.boil_time / 60;
+   dataRecord.boil_size = parseFloat(event.args.value) + evap;
+   var factor = parseFloat(event.args.value) / dataRecord.batch_size;
+   $('#boil_size').val(Round(dataRecord.boil_size, 2));
    dataRecord.sparge_volume *= factor;
    $('#sparge_volume').val(dataRecord.sparge_volume);
    dataRecord.batch_size = parseFloat(event.args.value);
@@ -2554,14 +2554,11 @@
   });
   $('#boil_time').on('change', function(event) {
    console.log('boil_time change:' + parseFloat(event.args.value) + ' old:' + dataRecord.boil_time);
-   var new_boil, new_evap, old_evap = parseFloat(dataRecord.boil_size) - parseFloat(dataRecord.batch_size);
-   new_evap = old_evap * (parseFloat(event.args.value) / dataRecord.boil_time);
-   new_boil = parseFloat(dataRecord.batch_size) + new_evap;
+   var new_evap = (0.1 * parseFloat(dataRecord.batch_size)) * parseFloat(event.args.value) / 60;
+   dataRecord.boil_size = parseFloat(dataRecord.batch_size) + new_evap;
    dataRecord.boil_time = parseFloat(event.args.value);
-   dataRecord.boil_size = new_boil;
-   $('#boil_size').val(Round(new_boil, 2));
+   $('#boil_size').val(Round(dataRecord.boil_size, 2));
    calcFermentables();
-   // TODO: adjust the hops, miscs, yeast, water.
    calcIBUs();
   });
   $('#efficiency').on('change', function(event) {

mercurial