src/EditRecipeTab7.cpp

changeset 358
d89bc21e2f07
parent 350
37b3c690b02c
child 359
dfbb012c631c
equal deleted inserted replaced
357:08f73b616345 358:d89bc21e2f07
159 int AT; 159 int AT;
160 160
161 qDebug() << "calcWater()"; 161 qDebug() << "calcWater()";
162 162
163 ui->w1_hardnessEdit->setValue(Utils::Hardness(recipe->w1_calcium, recipe->w1_magnesium)); 163 ui->w1_hardnessEdit->setValue(Utils::Hardness(recipe->w1_calcium, recipe->w1_magnesium));
164 ui->w1_raEdit->setValue(Utils::RA_ppm(recipe->w1_total_alkalinity, recipe->w1_calcium, recipe->w1_magnesium)); 164 ui->w1_raEdit->setValue(Utils::ResidualAlkalinity(recipe->w1_total_alkalinity, recipe->w1_calcium, recipe->w1_magnesium));
165 165
166 /* 166 /*
167 * If there is a dilute water source, mix the waters. 167 * If there is a dilute water source, mix the waters.
168 */ 168 */
169 if (recipe->w2_name != "") { 169 if (recipe->w2_name != "") {
174 chloride = Utils::mix(recipe->w1_amount, recipe->w2_amount, recipe->w1_chloride, recipe->w2_chloride); 174 chloride = Utils::mix(recipe->w1_amount, recipe->w2_amount, recipe->w1_chloride, recipe->w2_chloride);
175 sulfate = Utils::mix(recipe->w1_amount, recipe->w2_amount, recipe->w1_sulfate, recipe->w2_sulfate); 175 sulfate = Utils::mix(recipe->w1_amount, recipe->w2_amount, recipe->w1_sulfate, recipe->w2_sulfate);
176 total_alkalinity = Utils::mix(recipe->w1_amount, recipe->w2_amount, recipe->w1_total_alkalinity, recipe->w2_total_alkalinity); 176 total_alkalinity = Utils::mix(recipe->w1_amount, recipe->w2_amount, recipe->w1_total_alkalinity, recipe->w2_total_alkalinity);
177 ph = -log10(((pow(10, -recipe->w1_ph) * recipe->w1_amount) + (pow(10, -recipe->w2_ph) * recipe->w2_amount)) / liters); 177 ph = -log10(((pow(10, -recipe->w1_ph) * recipe->w1_amount) + (pow(10, -recipe->w2_ph) * recipe->w2_amount)) / liters);
178 ui->w2_hardnessEdit->setValue(Utils::Hardness(recipe->w2_calcium, recipe->w2_magnesium)); 178 ui->w2_hardnessEdit->setValue(Utils::Hardness(recipe->w2_calcium, recipe->w2_magnesium));
179 ui->w2_raEdit->setValue(Utils::RA_ppm(recipe->w2_total_alkalinity, recipe->w2_calcium, recipe->w2_magnesium)); 179 ui->w2_raEdit->setValue(Utils::ResidualAlkalinity(recipe->w2_total_alkalinity, recipe->w2_calcium, recipe->w2_magnesium));
180 } else { 180 } else {
181 liters = recipe->w1_amount; 181 liters = recipe->w1_amount;
182 calcium = recipe->w1_calcium; 182 calcium = recipe->w1_calcium;
183 magnesium = recipe->w1_magnesium; 183 magnesium = recipe->w1_magnesium;
184 sodium = recipe->w1_sodium; 184 sodium = recipe->w1_sodium;
195 recipe->wg_chloride = round(chloride * 10.0) / 10.0; 195 recipe->wg_chloride = round(chloride * 10.0) / 10.0;
196 recipe->wg_sulfate = round(sulfate * 10.0) / 10.0; 196 recipe->wg_sulfate = round(sulfate * 10.0) / 10.0;
197 recipe->wg_total_alkalinity = round(total_alkalinity * 10.0) / 10.0; 197 recipe->wg_total_alkalinity = round(total_alkalinity * 10.0) / 10.0;
198 recipe->wg_ph = ph; 198 recipe->wg_ph = ph;
199 199
200 bicarbonate = Utils::Bicarbonate(total_alkalinity, ph);
200 ui->wg_volEdit->setValue(liters); 201 ui->wg_volEdit->setValue(liters);
201 ui->wg_caEdit->setValue(calcium); 202 ui->wg_caEdit->setValue(calcium);
202 ui->wg_mgEdit->setValue(magnesium); 203 ui->wg_mgEdit->setValue(magnesium);
203 ui->wg_hco3Edit->setValue(total_alkalinity * 1.22); 204 ui->wg_hco3Edit->setValue(bicarbonate);
204 ui->wg_caco3Edit->setValue(total_alkalinity); 205 ui->wg_caco3Edit->setValue(total_alkalinity);
205 ui->wg_naEdit->setValue(sodium); 206 ui->wg_naEdit->setValue(sodium);
206 ui->wg_clEdit->setValue(chloride); 207 ui->wg_clEdit->setValue(chloride);
207 ui->wg_so4Edit->setValue(sulfate); 208 ui->wg_so4Edit->setValue(sulfate);
208 ui->wg_phEdit->setValue(ph); 209 ui->wg_phEdit->setValue(ph);
209 ui->wg_hardnessEdit->setValue(Utils::Hardness(calcium, magnesium)); 210 ui->wg_hardnessEdit->setValue(Utils::Hardness(calcium, magnesium));
210 ui->wg_raEdit->setValue(Utils::RA_ppm(total_alkalinity, calcium, magnesium)); 211 ui->wg_raEdit->setValue(Utils::ResidualAlkalinity(total_alkalinity, calcium, magnesium));
211 bicarbonate = total_alkalinity * 1.22;
212 212
213 /* Save mixed water ions for later */ 213 /* Save mixed water ions for later */
214 double wg_calcium = calcium; 214 double wg_calcium = calcium;
215 double wg_sodium = sodium; 215 double wg_sodium = sodium;
216 double wg_total_alkalinity = total_alkalinity; 216 double wg_total_alkalinity = total_alkalinity;
381 ui->wb_caco3Edit->setValue(total_alkalinity); 381 ui->wb_caco3Edit->setValue(total_alkalinity);
382 ui->wb_naEdit->setValue(sodium); 382 ui->wb_naEdit->setValue(sodium);
383 ui->wb_clEdit->setValue(chloride); 383 ui->wb_clEdit->setValue(chloride);
384 ui->wb_so4Edit->setValue(sulfate); 384 ui->wb_so4Edit->setValue(sulfate);
385 ui->wb_hardnessEdit->setValue(Utils::Hardness(calcium, magnesium)); 385 ui->wb_hardnessEdit->setValue(Utils::Hardness(calcium, magnesium));
386 ui->wb_raEdit->setValue(Utils::RA_ppm(total_alkalinity, calcium, magnesium)); 386 ui->wb_raEdit->setValue(Utils::ResidualAlkalinity(total_alkalinity, calcium, magnesium));
387 387
388 ui->wb_caEdit->setStyleSheet((calcium < 40 || calcium > 150) ? "background-color: red":"background-color: green"); 388 ui->wb_caEdit->setStyleSheet((calcium < 40 || calcium > 150) ? "background-color: red":"background-color: green");
389 ui->wb_mgEdit->setStyleSheet((magnesium < 5 || magnesium > 40) ? "background-color: red":"background-color: green"); 389 ui->wb_mgEdit->setStyleSheet((magnesium < 5 || magnesium > 40) ? "background-color: red":"background-color: green");
390 ui->wb_naEdit->setStyleSheet((sodium > 150) ? "background-color: red":"background-color: green"); 390 ui->wb_naEdit->setStyleSheet((sodium > 150) ? "background-color: red":"background-color: green");
391 /* 391 /*
655 for (int i = 0; i < (val - 1); i++) { 655 for (int i = 0; i < (val - 1); i++) {
656 query.next(); 656 query.next();
657 } 657 }
658 qDebug() << "set water" << query.value(1).toString(); 658 qDebug() << "set water" << query.value(1).toString();
659 659
660 recipe->w1_name = query.value(1).toString(); 660 recipe->w1_name = query.value("name").toString();
661 recipe->w1_calcium = query.value(3).toDouble(); 661 recipe->w1_calcium = query.value("calcium").toDouble();
662 recipe->w1_magnesium = query.value(8).toDouble(); 662 recipe->w1_magnesium = query.value("magnesium").toDouble();
663 recipe->w1_total_alkalinity = query.value(11).toDouble(); 663 recipe->w1_total_alkalinity = query.value("total_alkalinity").toDouble();
664 recipe->w1_sodium = query.value(7).toDouble(); 664 recipe->w1_sodium = query.value("sodium").toDouble();
665 recipe->w1_chloride = query.value(6).toDouble(); 665 recipe->w1_chloride = query.value("chloride").toDouble();
666 recipe->w1_sulfate = query.value(5).toDouble(); 666 recipe->w1_sulfate = query.value("sulfate").toDouble();
667 recipe->w1_ph = query.value(9).toDouble(); 667 recipe->w1_ph = query.value("ph").toDouble();
668 668
669 ui->w1_caEdit->setValue(recipe->w1_calcium); 669 ui->w1_caEdit->setValue(recipe->w1_calcium);
670 ui->w1_mgEdit->setValue(recipe->w1_magnesium); 670 ui->w1_mgEdit->setValue(recipe->w1_magnesium);
671 ui->w1_hco3Edit->setValue(recipe->w1_total_alkalinity * 1.22); 671 ui->w1_hco3Edit->setValue(Utils::Bicarbonate(recipe->w1_total_alkalinity, recipe->w1_ph));
672 ui->w1_caco3Edit->setValue(recipe->w1_total_alkalinity); 672 ui->w1_caco3Edit->setValue(recipe->w1_total_alkalinity);
673 ui->w1_naEdit->setValue(recipe->w1_sodium); 673 ui->w1_naEdit->setValue(recipe->w1_sodium);
674 ui->w1_clEdit->setValue(recipe->w1_chloride); 674 ui->w1_clEdit->setValue(recipe->w1_chloride);
675 ui->w1_so4Edit->setValue(recipe->w1_sulfate); 675 ui->w1_so4Edit->setValue(recipe->w1_sulfate);
676 ui->w1_phEdit->setValue(recipe->w1_ph); 676 ui->w1_phEdit->setValue(recipe->w1_ph);
677 ui->w1_hardnessEdit->setValue(Utils::Hardness(product->w1_calcium, product->w1_magnesium)); 677 ui->w1_hardnessEdit->setValue(Utils::Hardness(recipe->w1_calcium, recipe->w1_magnesium));
678 ui->w1_raEdit->setValue(Utils::RA_ppm(product->w1_total_alkalinity, product->w1_calcium, product->w1_magnesium)); 678 ui->w1_raEdit->setValue(Utils::ResidualAlkalinity(recipe->w1_total_alkalinity, recipe->w1_calcium, recipe->w1_magnesium));
679 679
680 is_changed(); 680 is_changed();
681 calcWater(); 681 calcWater();
682 } 682 }
683 683
708 for (int i = 0; i < (val - 1); i++) { 708 for (int i = 0; i < (val - 1); i++) {
709 query.next(); 709 query.next();
710 } 710 }
711 qDebug() << "set water" << query.value(1).toString(); 711 qDebug() << "set water" << query.value(1).toString();
712 712
713 recipe->w2_name = query.value(1).toString(); 713 recipe->w2_name = query.value("name").toString();
714 recipe->w2_calcium = query.value(3).toDouble(); 714 recipe->w2_calcium = query.value("calcium").toDouble();
715 recipe->w2_magnesium = query.value(8).toDouble(); 715 recipe->w2_magnesium = query.value("magnesium").toDouble();
716 recipe->w2_total_alkalinity = query.value(11).toDouble(); 716 recipe->w2_total_alkalinity = query.value("total_alkalinity").toDouble();
717 recipe->w2_sodium = query.value(7).toDouble(); 717 recipe->w2_sodium = query.value("sodium").toDouble();
718 recipe->w2_chloride = query.value(6).toDouble(); 718 recipe->w2_chloride = query.value("chloride").toDouble();
719 recipe->w2_sulfate = query.value(5).toDouble(); 719 recipe->w2_sulfate = query.value("sulfate").toDouble();
720 recipe->w2_ph = query.value(9).toDouble(); 720 recipe->w2_ph = query.value("ph").toDouble();
721 hardness = Utils::Hardness(product->w2_calcium, product->w2_magnesium); 721 hardness = Utils::Hardness(recipe->w2_calcium, recipe->w2_magnesium);
722 ra_ppm = Utils::RA_ppm(product->w2_total_alkalinity, product->w2_calcium, product->w2_magnesium); 722 ra_ppm = Utils::ResidualAlkalinity(recipe->w2_total_alkalinity, recipe->w2_calcium, recipe->w2_magnesium);
723 } 723 }
724 ui->w1_volEdit->setValue(recipe->w1_amount); 724 ui->w1_volEdit->setValue(recipe->w1_amount);
725 ui->w2_volEdit->setValue(recipe->w2_amount); 725 ui->w2_volEdit->setValue(recipe->w2_amount);
726 ui->w2_caEdit->setValue(recipe->w2_calcium); 726 ui->w2_caEdit->setValue(recipe->w2_calcium);
727 ui->w2_mgEdit->setValue(recipe->w2_magnesium); 727 ui->w2_mgEdit->setValue(recipe->w2_magnesium);
728 ui->w2_hco3Edit->setValue(recipe->w2_total_alkalinity * 1.22); 728 ui->w2_hco3Edit->setValue(Utils::Bicarbonate(recipe->w2_total_alkalinity, recipe->w2_ph));
729 ui->w2_caco3Edit->setValue(recipe->w2_total_alkalinity); 729 ui->w2_caco3Edit->setValue(recipe->w2_total_alkalinity);
730 ui->w2_naEdit->setValue(recipe->w2_sodium); 730 ui->w2_naEdit->setValue(recipe->w2_sodium);
731 ui->w2_clEdit->setValue(recipe->w2_chloride); 731 ui->w2_clEdit->setValue(recipe->w2_chloride);
732 ui->w2_so4Edit->setValue(recipe->w2_sulfate); 732 ui->w2_so4Edit->setValue(recipe->w2_sulfate);
733 ui->w2_phEdit->setValue(recipe->w2_ph); 733 ui->w2_phEdit->setValue(recipe->w2_ph);
767 ui->wt_caco3Edit->setValue(query.value("total_alkalinity").toDouble()); 767 ui->wt_caco3Edit->setValue(query.value("total_alkalinity").toDouble());
768 ui->wt_naEdit->setValue(query.value("sodium").toDouble()); 768 ui->wt_naEdit->setValue(query.value("sodium").toDouble());
769 ui->wt_clEdit->setValue(query.value("chloride").toDouble()); 769 ui->wt_clEdit->setValue(query.value("chloride").toDouble());
770 ui->wt_so4Edit->setValue(query.value("sulfate").toDouble()); 770 ui->wt_so4Edit->setValue(query.value("sulfate").toDouble());
771 ui->wt_hardnessEdit->setValue(Utils::Hardness(query.value("calcium").toDouble(), query.value("magnesium").toDouble())); 771 ui->wt_hardnessEdit->setValue(Utils::Hardness(query.value("calcium").toDouble(), query.value("magnesium").toDouble()));
772 ui->wt_raEdit->setValue(Utils::RA_ppm(query.value("total_alkalinity").toDouble(), query.value("calcium").toDouble(), query.value("magnesium").toDouble())); 772 ui->wt_raEdit->setValue(Utils::ResidualAlkalinity(query.value("total_alkalinity").toDouble(), query.value("calcium").toDouble(), query.value("magnesium").toDouble()));
773 } 773 }
774 calcWater(); 774 calcWater();
775 } 775 }
776 776
777 777

mercurial