src/database/db_product.cpp

Sun, 31 Jul 2022 20:23:27 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Sun, 31 Jul 2022 20:23:27 +0200
changeset 384
d68826df8b63
parent 373
b02aca4e926c
child 423
8cb46020796a
permissions
-rw-r--r--

Product and recipe beerxml export support for hop extracts. Recipes with missing hop from the database use a default utilisation value.

248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /**
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 * db_product.cpp is part of bmsapp.
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 *
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 * bmsapp is free software: you can redistribute it and/or modify
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 * it under the terms of the GNU General Public License as published by
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 * the Free Software Foundation, either version 3 of the License, or
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 * (at your option) any later version.
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 *
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 * bmsapp is distributed in the hope that it will be useful,
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 * GNU General Public License for more details.
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 *
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 * You should have received a copy of the GNU General Public License
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 #include "global.h"
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 #include "db_product.h"
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22 bool DB_product::load(Product *prod, QDialog *dialog, int recno)
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23 {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 QSqlQuery query, yquery;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 query.prepare("SELECT * FROM products WHERE record = :recno");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 query.bindValue(":recno", recno);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 query.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29 if (! query.first()) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
30 qWarning() << "loadProduct seek error record" << recno;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 QMessageBox::warning(dialog, QObject::tr("Database error"), QObject::tr("MySQL error: record %1 not found").arg(recno));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32 dialog->done(QDialog::Rejected); // At this stage, this doesn't work because the dialog is not yet visible.
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 return false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36 QSqlRecord rec = query.record();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 for (int i = 0; i < rec.count(); i++)
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 qDebug() << i << rec.fieldName(i) << query.value(i);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40 prod->record = query.value("record").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 prod->uuid = query.value("uuid").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 prod->name = query.value("name").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43 prod->code = query.value("code").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44 prod->birth = query.value("birth").toDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45 prod->stage = query.value("stage").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46 prod->notes = query.value("notes").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47 prod->log_brew = query.value("log_brew").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 prod->log_fermentation = query.value("log_fermentation").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49 prod->log_ispindel = query.value("log_ispindel").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 prod->log_co2pressure = query.value("log_co2pressure").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 prod->inventory_reduced = query.value("inventory_reduced").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52 prod->locked = query.value("locked").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 prod->eq_name = query.value("eq_name").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 prod->eq_notes = query.value("eq_notes").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56 prod->eq_boil_size = query.value("eq_boil_size").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57 prod->eq_batch_size = query.value("eq_batch_size").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
58 prod->eq_tun_volume = query.value("eq_tun_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
59 prod->eq_tun_weight = query.value("eq_tun_weight").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
60 prod->eq_tun_specific_heat = query.value("eq_tun_specific_heat").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
61 prod->eq_tun_material = query.value("eq_tun_material").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
62 prod->eq_tun_height = query.value("eq_tun_height").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
63 prod->eq_top_up_water = query.value("eq_top_up_water").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
64 prod->eq_trub_chiller_loss = query.value("eq_trub_chiller_loss").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
65 prod->eq_evap_rate = query.value("eq_evap_rate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
66 prod->eq_boil_time = query.value("eq_boil_time").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
67 prod->eq_calc_boil_volume = query.value("eq_calc_boil_volume").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
68 prod->eq_top_up_kettle = query.value("eq_top_up_kettle").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
69 prod->eq_hop_utilization = query.value("eq_hop_utilization").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
70 prod->eq_lauter_volume = query.value("eq_lauter_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
71 prod->eq_lauter_height = query.value("eq_lauter_height").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
72 prod->eq_lauter_deadspace = query.value("eq_lauter_deadspace").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 prod->eq_kettle_volume = query.value("eq_kettle_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74 prod->eq_kettle_height = query.value("eq_kettle_height").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 prod->eq_mash_volume = query.value("eq_mash_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
76 prod->eq_mash_max = query.value("eq_mash_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
77 prod->eq_efficiency = query.value("eq_efficiency").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
78
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
79 prod->brew_date_start = query.value("brew_date_start").toDateTime();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
80 prod->brew_mash_ph = query.value("brew_mash_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
81 prod->brew_mash_sg = query.value("brew_mash_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
82 prod->brew_mash_efficiency = query.value("brew_mash_efficiency").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
83 prod->brew_sparge_temperature = query.value("brew_sparge_temperature").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
84 prod->brew_sparge_volume = query.value("brew_sparge_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
85 prod->brew_sparge_est = query.value("brew_sparge_est").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
86 prod->brew_sparge_ph = query.value("brew_sparge_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
87 prod->brew_preboil_volume = query.value("brew_preboil_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
88 prod->brew_preboil_sg = query.value("brew_preboil_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
89 prod->brew_preboil_ph = query.value("brew_preboil_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
90 prod->brew_preboil_efficiency = query.value("brew_preboil_efficiency").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
91 prod->brew_aboil_volume = query.value("brew_aboil_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
92 prod->brew_aboil_sg = query.value("brew_aboil_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
93 prod->brew_aboil_ph = query.value("brew_aboil_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
94 prod->brew_aboil_efficiency = query.value("brew_aboil_efficiency").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
95 prod->brew_cooling_method = query.value("brew_cooling_method").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
96 prod->brew_cooling_time = query.value("brew_cooling_time").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
97 prod->brew_cooling_to = query.value("brew_cooling_to").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
98 prod->brew_whirlpool9 = query.value("brew_whirlpool9").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
99 prod->brew_whirlpool7 = query.value("brew_whirlpool7").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
100 prod->brew_whirlpool6 = query.value("brew_whirlpool6").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
101 prod->brew_whirlpool2 = query.value("brew_whirlpool2").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
102 prod->brew_fermenter_volume = query.value("brew_fermenter_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
103 prod->brew_fermenter_extrawater = query.value("brew_fermenter_extrawater").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
104 prod->brew_fermenter_tcloss = query.value("brew_fermenter_tcloss").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
105 prod->brew_aeration_time = query.value("brew_aeration_time").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
106 prod->brew_aeration_speed = query.value("brew_aeration_speed").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
107 prod->brew_aeration_type = query.value("brew_aeration_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
108 prod->brew_fermenter_sg = query.value("brew_fermenter_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
109 prod->brew_fermenter_ibu = query.value("brew_fermenter_ibu").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
110 prod->brew_fermenter_color = query.value("brew_fermenter_color").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
111 prod->brew_date_end = query.value("brew_date_end").toDateTime();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
112
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
113 prod->og = query.value("og").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
114 prod->fg = query.value("fg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
115 prod->primary_start_temp = query.value("primary_start_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
116 prod->primary_max_temp = query.value("primary_max_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
117 prod->primary_end_temp = query.value("primary_end_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
118 prod->primary_end_sg = query.value("primary_end_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
119 prod->primary_end_date = query.value("primary_end_date").toDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
120 prod->secondary_temp = query.value("secondary_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
121 prod->secondary_end_sg = query.value("secondary_end_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
122 prod->secondary_end_date = query.value("secondary_end_date").toDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
123 prod->tertiary_temp = query.value("tertiary_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
124
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
125 prod->package_date = query.value("package_date").toDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
126 prod->package_volume = query.value("package_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
127 prod->package_infuse_amount = query.value("package_infuse_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
128 prod->package_infuse_abv = query.value("package_infuse_abv").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
129 prod->package_infuse_notes = query.value("package_infuse_notes").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
130 prod->package_abv = query.value("package_abv").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
131 prod->package_ph = query.value("package_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
132
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
133 prod->bottle_amount = query.value("bottle_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
134 prod->bottle_carbonation = query.value("bottle_carbonation").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
135 prod->bottle_priming_sugar = query.value("bottle_priming_sugar").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
136 prod->bottle_priming_amount = query.value("bottle_priming_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
137 prod->bottle_priming_water = query.value("bottle_priming_water").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
138 prod->bottle_carbonation_temp = query.value("bottle_carbonation_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
139
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
140 prod->keg_amount = query.value("keg_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
141 prod->keg_carbonation = query.value("keg_carbonation").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
142 prod->keg_priming_sugar = query.value("keg_priming_sugar").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
143 prod->keg_priming_amount = query.value("keg_priming_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
144 prod->keg_priming_water = query.value("keg_priming_water").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
145 prod->keg_carbonation_temp = query.value("keg_carbonation_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
146 prod->keg_forced_carb = query.value("keg_forced_carb").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
147 prod->keg_pressure = query.value("keg_pressure").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
148
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
149 prod->taste_notes = query.value("taste_notes").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
150 prod->taste_rate = query.value("taste_rate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
151 prod->taste_date = query.value("taste_date").toDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
152 prod->taste_color = query.value("taste_color").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
153 prod->taste_transparency = query.value("taste_transparency").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
154 prod->taste_head = query.value("taste_head").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
155 prod->taste_aroma = query.value("taste_aroma").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
156 prod->taste_taste = query.value("taste_taste").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
157 prod->taste_mouthfeel = query.value("taste_mouthfeel").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
158 prod->taste_aftertaste = query.value("taste_aftertaste").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
159
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
160 prod->st_name = query.value("st_name").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
161 prod->st_letter = query.value("st_letter").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
162 prod->st_guide = query.value("st_guide").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
163 prod->st_category = query.value("st_category").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
164 prod->st_category_number = query.value("st_category_number").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
165 prod->st_type = query.value("st_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
166 prod->st_og_min = query.value("st_og_min").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
167 prod->st_og_max = query.value("st_og_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
168 prod->st_fg_min = query.value("st_fg_min").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
169 prod->st_fg_max = query.value("st_fg_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
170 prod->st_ibu_min = query.value("st_ibu_min").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
171 prod->st_ibu_max = query.value("st_ibu_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
172 prod->st_color_min = query.value("st_color_min").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
173 prod->st_color_max = query.value("st_color_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
174 prod->st_carb_min = query.value("st_carb_min").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
175 prod->st_carb_max = query.value("st_carb_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
176 prod->st_abv_min = query.value("st_abv_min").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
177 prod->st_abv_max = query.value("st_abv_max").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
178
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
179 prod->type = query.value("type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
180 prod->batch_size = query.value("batch_size").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
181 prod->boil_size = query.value("boil_size").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
182 prod->boil_time = query.value("boil_time").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
183 prod->efficiency = query.value("efficiency").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
184 prod->est_og = query.value("est_og").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
185 prod->est_og3 = query.value("est_og3").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
186 prod->est_fg = query.value("est_fg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
187 prod->est_abv = query.value("est_abv").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
188 prod->est_color = query.value("est_color").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
189 prod->color_method = query.value("color_method").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
190 prod->est_ibu = query.value("est_ibu").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
191 prod->ibu_method = query.value("ibu_method").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
192 prod->est_carb = query.value("est_carb").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
193
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
194 prod->sparge_temp = query.value("sparge_temp").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
195 prod->sparge_ph = query.value("sparge_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
196 prod->sparge_volume = query.value("sparge_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
197 prod->sparge_source = query.value("sparge_source").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
198 prod->sparge_acid_type = query.value("sparge_acid_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
199 prod->sparge_acid_perc = query.value("sparge_acid_perc").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
200 prod->sparge_acid_amount = query.value("sparge_acid_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
201 prod->mash_ph = query.value("mash_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
202 prod->mash_name = query.value("mash_name").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
203 prod->calc_acid = query.value("calc_acid").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
204
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
205 prod->w1_name = query.value("w1_name").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
206 prod->w1_amount = query.value("w1_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
207 prod->w1_calcium = query.value("w1_calcium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
208 prod->w1_sulfate = query.value("w1_sulfate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
209 prod->w1_chloride = query.value("w1_chloride").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
210 prod->w1_sodium = query.value("w1_sodium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
211 prod->w1_magnesium = query.value("w1_magnesium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
212 prod->w1_total_alkalinity = query.value("w1_total_alkalinity").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
213 prod->w1_ph = query.value("w1_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
214 prod->w1_cost = query.value("w1_cost").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
215 prod->w2_name = query.value("w2_name").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
216 prod->w2_amount = query.value("w2_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
217 prod->w2_calcium = query.value("w2_calcium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
218 prod->w2_sulfate = query.value("w2_sulfate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
219 prod->w2_chloride = query.value("w2_chloride").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
220 prod->w2_sodium = query.value("w2_sodium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
221 prod->w2_magnesium = query.value("w2_magnesium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
222 prod->w2_total_alkalinity = query.value("w2_total_alkalinity").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
223 prod->w2_ph = query.value("w2_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
224 prod->w2_cost = query.value("w2_cost").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
225 prod->wg_amount = query.value("wg_amount").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
226 prod->wg_calcium = query.value("wg_calcium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
227 prod->wg_sulfate = query.value("wg_sulfate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
228 prod->wg_chloride = query.value("wg_chloride").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
229 prod->wg_sodium = query.value("wg_sodium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
230 prod->wg_magnesium = query.value("wg_magnesium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
231 prod->wg_total_alkalinity = query.value("wg_total_alkalinity").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
232 prod->wg_ph = query.value("wg_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
233 prod->wb_calcium = query.value("wb_calcium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
234 prod->wb_sulfate = query.value("wb_sulfate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
235 prod->wb_chloride = query.value("wb_chloride").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
236 prod->wb_sodium = query.value("wb_sodium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
237 prod->wb_magnesium = query.value("wb_magnesium").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
238 prod->wb_total_alkalinity = query.value("wb_total_alkalinity").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
239 prod->wb_ph = query.value("wb_ph").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
240 prod->wa_acid_name = query.value("wa_acid_name").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
241 prod->wa_acid_perc = query.value("wa_acid_perc").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
242 prod->wa_base_name = query.value("wa_base_name").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
243
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
244 prod->starter_enable = query.value("starter_enable").toInt() ? true:false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
245 prod->starter_type = query.value("starter_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
246 prod->starter_sg = query.value("starter_sg").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
247 prod->starter_viability = query.value("starter_viability").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
248 if (query.value("yeast_prod_date").toString().length() == 10)
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
249 prod->yeast_prod_date = query.value("yeast_prod_date").toDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
250 else
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
251 prod->yeast_prod_date = QDate();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
252 prod->yeast_pitchrate = query.value("yeast_pitchrate").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
253 prod->prop_type[0] = query.value("prop1_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
254 prod->prop_volume[0] = query.value("prop1_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
255 prod->prop_type[1] = query.value("prop2_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
256 prod->prop_volume[1] = query.value("prop2_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
257 prod->prop_type[2] = query.value("prop3_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
258 prod->prop_volume[2] = query.value("prop3_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
259 prod->prop_type[3] = query.value("prop4_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
260 prod->prop_volume[3] = query.value("prop4_volume").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
261
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
262 prod->divide_type = query.value("divide_type").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
263 prod->divide_size = query.value("divide_size").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
264 prod->divide_factor = query.value("divide_factor").toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
265 prod->divide_parts = query.value("divide_parts").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
266 prod->divide_part = query.value("divide_part").toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
267
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
268 QJsonParseError parseError;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
269 const auto& f_json = query.value("json_fermentables").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
270 if (!f_json.trimmed().isEmpty()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
271 const auto& formattedJson = QString("%1").arg(f_json);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
272 QJsonDocument fermentables = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
273 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
274 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset ;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
275 } else if (fermentables.isArray()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
276 double percentcheck = 0;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
277 for (int i = 0; i < fermentables.array().size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
278 QJsonObject obj = fermentables.array().at(i).toObject();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
279 Fermentables f;
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
280 f.inventory = 0;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
281 f.avail = false;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
282 f.name = obj["f_name"].toString();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
283 f.origin = obj["f_origin"].toString();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
284 f.supplier = obj["f_supplier"].toString();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
285 f.amount = obj["f_amount"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
286 f.cost = obj["f_cost"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
287 f.type = obj["f_type"].toInt();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
288 f.yield = obj["f_yield"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
289 f.color = obj["f_color"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
290 f.coarse_fine_diff = obj["f_coarse_fine_diff"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
291 f.moisture = obj["f_moisture"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
292 f.diastatic_power = obj["f_diastatic_power"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
293 f.protein = obj["f_protein"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
294 f.dissolved_protein = obj["f_dissolved_protein"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
295 f.max_in_batch = obj["f_max_in_batch"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
296 f.graintype = obj["f_graintype"].toInt();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
297 f.added = obj["f_added"].toInt();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
298 f.recommend_mash = obj["f_recommend_mash"].toInt() ? true:false;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
299 f.add_after_boil = obj["f_add_after_boil"].toInt() ? true:false;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
300 f.adjust_to_total_100 = obj["f_adjust_to_total_100"].toInt() ? true:false;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
301 f.percentage = obj["f_percentage"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
302 f.di_ph = obj["f_di_ph"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
303 f.acid_to_ph_57 = obj["f_acid_to_ph_57"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
304 if (f.adjust_to_total_100)
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
305 prod->fermentables_use100 = true;
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
306 percentcheck += f.percentage;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
307 /* Check and update inventory */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
308 yquery.prepare("SELECT inventory FROM inventory_fermentables WHERE name=:name AND supplier=:supplier AND origin=:origin");
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
309 yquery.bindValue(":name", f.name);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
310 yquery.bindValue(":supplier", f.supplier);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
311 yquery.bindValue(":origin", f.origin);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
312 yquery.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
313 if (yquery.first()) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
314 f.avail = true;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
315 f.inventory = yquery.value(0).toDouble();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
316 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
317 prod->fermentables.append(f);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
318 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
319 qDebug() << "fermentables" << prod->fermentables.size() << percentcheck;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
320 if (percentcheck == 0 && prod->fermentables.size()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
321 /* Missing percentages, fix it. */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
322 double total = 0;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
323 for (int i = 0; i < prod->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
324 if (prod->fermentables.at(i).added < 4)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
325 total += prod->fermentables.at(i).amount;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
326 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
327 for (int i = 0; i < prod->fermentables.size(); i++) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
328 if (prod->fermentables.at(i).added < 4)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
329 prod->fermentables[i].percentage = round((prod->fermentables.at(i).amount / total) * 10000.0) / 100.0;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
330 }
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
331 qInfo() << " fixed missing percentages";
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
332 // is_changed();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
333 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
334 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
335 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
336 qDebug() << "empty fermentables";
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
337 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
338
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
339 const auto& h_json = query.value("json_hops").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
340 if (!h_json.trimmed().isEmpty()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
341 const auto& formattedJson = QString("%1").arg(h_json);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
342 QJsonDocument hops = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
343 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
344 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
345 } else if (hops.isArray()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
346 for (int i = 0; i < hops.array().size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
347 QJsonObject obj = hops.array().at(i).toObject();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
348 Hops h;
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
349 h.avail = false;
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
350 h.inventory = 0;
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
351 h.name = obj["h_name"].toString();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
352 h.origin = obj["h_origin"].toString();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
353 h.amount = obj["h_amount"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
354 h.cost = obj["h_cost"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
355 h.type = obj["h_type"].toInt();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
356 h.form = obj["h_form"].toInt();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
357 h.useat = obj["h_useat"].toInt();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
358 h.time = obj["h_time"].toInt();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
359 h.alpha = obj["h_alpha"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
360 h.beta = obj["h_beta"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
361 h.hsi = obj["h_hsi"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
362 h.humulene = obj["h_humulene"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
363 h.caryophyllene = obj["h_caryophyllene"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
364 h.cohumulone = obj["h_cohumulone"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
365 h.myrcene = obj["h_myrcene"].toDouble();
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
366 h.total_oil = obj["h_total_oil"].toDouble();
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
367 h.utilisation = obj["h_utilisation"].toDouble();
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
368 h.bu_factor = obj["h_bu_factor"].toDouble();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
369 /* Check and update inventory */
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
370 yquery.prepare("SELECT inventory,utilisation,bu_factor FROM inventory_hops WHERE name=:name AND origin=:origin");
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
371 yquery.bindValue(":name", h.name);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
372 yquery.bindValue(":origin", h.origin);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
373 yquery.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
374 if (yquery.first()) {
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
375 h.avail = true;
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
376 h.inventory = yquery.value("inventory").toDouble();
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
377 if (h.utilisation == 0)
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
378 h.utilisation = yquery.value("utilisation").toDouble();
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
379 if (h.bu_factor == 0)
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
380 h.bu_factor = yquery.value("bu_factor").toDouble();
384
d68826df8b63 Product and recipe beerxml export support for hop extracts. Recipes with missing hop from the database use a default utilisation value.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
381 } else {
d68826df8b63 Product and recipe beerxml export support for hop extracts. Recipes with missing hop from the database use a default utilisation value.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
382 h.utilisation = my_ut_pellet;
d68826df8b63 Product and recipe beerxml export support for hop extracts. Recipes with missing hop from the database use a default utilisation value.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
383 h.bu_factor = 1.0;
d68826df8b63 Product and recipe beerxml export support for hop extracts. Recipes with missing hop from the database use a default utilisation value.
Michiel Broek <mbroek@mbse.eu>
parents: 373
diff changeset
384 }
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
385 prod->hops.append(h);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
386 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
387 qDebug() << "hops" << prod->hops.size();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
388 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
389 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
390 qDebug() << "empty hops";
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
391 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
392
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
393 const auto& json = query.value("json_miscs").toString();
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
394 if (!json.trimmed().isEmpty()) {
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
395 const auto& formattedJson = QString("%1").arg(json);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
396 QJsonDocument miscs = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
397 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
398 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
399 } else if (miscs.isArray()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
400 for (int i = 0; i < miscs.array().size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
401 QJsonObject obj = miscs.array().at(i).toObject();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
402 Miscs m;
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
403 m.avail = false;
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
404 m.inventory = 0;
294
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
405 m.name = obj["m_name"].toString();
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
406 m.amount = obj["m_amount"].toDouble();
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
407 m.type = obj["m_type"].toInt();
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
408 m.use_use = obj["m_use_use"].toInt();
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
409 m.time = obj["m_time"].toDouble();
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
410 m.amount_is_weight = obj["m_amount_is_weight"].toInt() ? true:false;
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
411 m.cost = obj["m_cost"].toDouble();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
412 /* Check and update inventory */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
413 yquery.prepare("SELECT inventory FROM inventory_miscs WHERE name=:name");
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
414 yquery.bindValue(":name", m.name);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
415 yquery.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
416 if (yquery.first()) {
280
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
417 m.avail = true;
efc213beb605 Member names of miscs normalized. This was a leftover from porting from php code.
Michiel Broek <mbroek@mbse.eu>
parents: 270
diff changeset
418 m.inventory = yquery.value(0).toDouble();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
419 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
420 prod->miscs.append(m);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
421 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
422 qDebug() << "miscs" << prod->miscs.size();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
423 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
424 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
425 qDebug() << "empty miscs";
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
426 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
427
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
428 const auto& y_json = query.value("json_yeasts").toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
429 if (!y_json.trimmed().isEmpty()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
430 const auto& formattedJson = QString("%1").arg(y_json);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
431 QJsonDocument yeasts = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
432 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
433 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset ;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
434 } else if (yeasts.isArray()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
435 for (int i = 0; i < yeasts.array().size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
436 QJsonObject obj = yeasts.array().at(i).toObject();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
437 Yeasts y;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
438 /* First some defaults for newer fields. */
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
439 y.tolerance = y.harvest_time = y.pitch_temperature = y.zymocide = 0;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
440 y.avail = y.sta1 = y.bacteria = y.harvest_top = y.pofpos = false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
441 y.gr_hl_lo = 50;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
442 y.sg_lo = 1.04;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
443 y.gr_hl_hi = 80;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
444 y.sg_hi = 1.08;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
445 /* Now get what we have got */
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
446 y.name = obj["y_name"].toString();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
447 y.laboratory = obj["y_laboratory"].toString();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
448 y.product_id = obj["y_product_id"].toString();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
449 y.amount = obj["y_amount"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
450 y.type = obj["y_type"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
451 y.form = obj["y_form"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
452 y.min_temperature = obj["y_min_temperature"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
453 y.max_temperature = obj["y_max_temperature"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
454 y.flocculation = obj["y_flocculation"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
455 y.attenuation = obj["y_attenuation"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
456 y.cells = obj["y_cells"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
457 y.tolerance = obj["y_tolerance"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
458 y.inventory = obj["y_inventory"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
459 y.use = obj["y_use"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
460 y.sta1 = obj["y_sta1"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
461 y.bacteria = obj["y_bacteria"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
462 y.harvest_top = obj["y_harvest_top"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
463 y.harvest_time = obj["y_harvest_time"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
464 y.pitch_temperature = obj["y_pitch_temperature"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
465 y.pofpos = obj["y_pofpos"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
466 y.zymocide = obj["y_zymocide"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
467 y.gr_hl_lo = obj["y_gr_hl_lo"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
468 y.sg_lo = obj["y_sg_lo"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
469 y.gr_hl_hi = obj["y_gr_hl_hi"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
470 y.sg_hi = obj["y_sg_hi"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
471 y.cost = obj["y_cost"].toDouble();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
472 /*
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
473 * Possible data upgrade needed.
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
474 */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
475 yquery.prepare("SELECT tolerance,cells,sta1,bacteria,harvest_top,harvest_time,pitch_temperature,"
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
476 "pofpos,zymocide,gr_hl_lo,sg_lo,gr_hl_hi,sg_hi,inventory "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
477 "FROM inventory_yeasts WHERE name=:name AND laboratory=:laboratory AND product_id=:product_id");
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
478 yquery.bindValue(":name", y.name);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
479 yquery.bindValue(":laboratory", y.laboratory);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
480 yquery.bindValue(":product_id", y.product_id);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
481 yquery.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
482 if (yquery.first()) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
483 if (y.tolerance == 0 || y.cells == 0) {
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
484 y.tolerance = yquery.value(0).toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
485 y.cells = yquery.value(1).toDouble();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
486 }
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
487 y.sta1 = yquery.value(2).toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
488 y.bacteria = yquery.value(3).toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
489 y.harvest_top = yquery.value(4).toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
490 y.harvest_time = yquery.value(5).toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
491 y.pitch_temperature = yquery.value(6).toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
492 y.pofpos = yquery.value(7).toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
493 y.zymocide = yquery.value(8).toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
494 y.gr_hl_lo = yquery.value(9).toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
495 y.sg_lo = yquery.value(10).toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
496 y.gr_hl_hi = yquery.value(11).toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
497 y.sg_hi = yquery.value(12).toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
498 y.inventory = yquery.value(13).toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
499 y.avail = true;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
500 } else {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
501 qDebug() << y.name << y.product_id << "not found for upgrade";
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
502 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
503 prod->yeasts.append(y);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
504 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
505 qDebug() << "yeasts" << prod->yeasts.size();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
506 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
507 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
508 qDebug() << "empty yeasts";
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
509 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
510
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
511 const auto& ma_json = query.value("json_mashs").toString().trimmed();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
512 if (!ma_json.trimmed().isEmpty()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
513 const auto& formattedJson = QString("%1").arg(ma_json);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
514 QJsonDocument mashs = QJsonDocument::fromJson(formattedJson.toUtf8(), &parseError);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
515 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
516 qWarning() << "Parse error: " << parseError.errorString() << "at" << parseError.offset ;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
517 } else if (mashs.isArray()) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
518 for (int i = 0; i < mashs.array().size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
519 QJsonObject obj = mashs.array().at(i).toObject();
287
83e66c6b6e07 Renamed struct Mashs to MashSteps
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
520 MashSteps m;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
521 m.step_name = obj["step_name"].toString();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
522 m.step_type = obj["step_type"].toInt();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
523 m.step_volume = obj["step_volume"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
524 m.step_infuse_amount = obj["step_infuse_amount"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
525 m.step_infuse_temp = obj["step_infuse_temp"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
526 m.step_temp = obj["step_temp"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
527 m.step_time = obj["step_time"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
528 m.ramp_time = obj["ramp_time"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
529 m.end_temp = obj["end_temp"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
530 m.step_wg_ratio = obj["step_wg_ratio"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
531 m.step_ph = obj["step_ph"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
532 m.step_sg = obj["step_sg"].toDouble();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
533 prod->mashs.append(m);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
534 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
535 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
536 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
537 qDebug() << "empty mashs";
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
538 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
539 qDebug() << "mashs" << prod->mashs.size();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
540
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
541 return true;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
542 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
543
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
544
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
545
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
546
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
547 bool DB_product::save(Product *prod, QDialog *dialog)
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
548 {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
549 QSqlQuery query;
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
550 QString sql = "";
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
551
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
552 if (prod->record == -1) {
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
553 sql = "INSERT INTO products SET ";
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
554 } else {
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
555 sql = "UPDATE products SET ";
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
556 }
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
557 sql.append("name=:name, code=:code, birth=:birth, stage=:stage, notes=:notes, log_brew=:log_brew, "
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
558 "log_fermentation=:log_fermentation, log_ispindel=:log_ispindel, log_co2pressure=:log_co2pressure, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
559 "inventory_reduced=:inventory_reduced, locked=:locked, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
560 "eq_name=:eq_name, eq_boil_size=:eq_boil_size, eq_efficiency=:eq_efficiency, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
561 "eq_batch_size=:eq_batch_size, eq_tun_volume=:eq_tun_volume, eq_tun_weight=:eq_tun_weight, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
562 "eq_tun_specific_heat=:eq_tun_specific_heat, eq_tun_material=:eq_tun_material, eq_tun_height=:eq_tun_height, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
563 "eq_top_up_water=:eq_top_up_water, eq_trub_chiller_loss=:eq_chiller_loss, eq_evap_rate=:eq_evap_rate, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
564 "eq_boil_time=:eq_boil_time, eq_calc_boil_volume=:eq_calcboil, eq_top_up_kettle=:eq_top_up_kettle, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
565 "eq_hop_utilization=:eq_hopfactor, eq_notes=:eq_notes, eq_lauter_volume=:eq_lauter_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
566 "eq_lauter_height=:eq_lauter_height, eq_lauter_deadspace=:eq_lauter_deadspace, eq_kettle_volume=:eq_kettle_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
567 "eq_kettle_height=:eq_kettle_height, eq_mash_volume=:eq_mash_volume, eq_mash_max=:eq_mash_max, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
568 "brew_date_start=:brew_date_start, brew_mash_ph=:brew_mash_ph, brew_mash_sg=:brew_mash_sg, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
569 "brew_mash_efficiency=:brew_mash_efficiency, brew_sparge_temperature=:brew_sparge_temperature, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
570 "brew_sparge_volume=:brew_sparge_volume, brew_sparge_est=:brew_sparge_est, brew_sparge_ph=:brew_sparge_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
571 "brew_preboil_volume=:brew_preboil_volume, brew_preboil_sg=:brew_preboil_sg, brew_preboil_ph=:brew_preboil_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
572 "brew_preboil_efficiency=:brew_preboil_efficiency, brew_aboil_volume=:brew_aboil_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
573 "brew_aboil_sg=:brew_aboil_sg, brew_aboil_ph=:brew_aboil_ph, brew_aboil_efficiency=:brew_aboil_efficiency, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
574 "brew_cooling_method=:brew_cooling_method, brew_cooling_time=:brew_cooling_time, brew_cooling_to=:brew_cooling_to, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
575 "brew_whirlpool9=:brew_whirlpool9, brew_whirlpool7=:brew_whirlpool7, brew_whirlpool6=:brew_whirlpool6, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
576 "brew_whirlpool2=:brew_whirlpool2, brew_fermenter_volume=:brew_fermenter_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
577 "brew_fermenter_extrawater=:brew_fermenter_extrawater, brew_fermenter_tcloss=:brew_fermenter_tcloss, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
578 "brew_aeration_time=:brew_aeration_time, brew_aeration_speed=:brew_aeration_speed, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
579 "brew_aeration_type=:brew_aeration_type, brew_fermenter_sg=:brew_fermenter_sg, brew_fermenter_ibu=:brew_fermenter_ibu, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
580 "brew_fermenter_color=:brew_fermenter_color, brew_date_end=:brew_date_end, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
581 "og=:og, fg=:fg, primary_start_temp=:primary_start_temp, primary_max_temp=:primary_max_temp, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
582 "primary_end_temp=:primary_end_temp, primary_end_sg=:primary_end_sg, primary_end_date=:primary_end_date, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
583 "secondary_temp=:secondary_temp, secondary_end_sg=:secondary_end_sg, secondary_end_date=:secondary_end_date, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
584 "tertiary_temp=:tertiary_temp, package_date=:package_date, package_volume=:package_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
585 "package_infuse_amount=:package_infuse_amount, package_infuse_abv=:package_infuse_abv, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
586 "package_infuse_notes=:package_infuse_notes, package_abv=:package_abv, package_ph=:package_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
587 "bottle_amount=:bottle_amount, bottle_carbonation=:bottle_carbonation, bottle_priming_sugar=:bottle_priming_sugar, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
588 "bottle_priming_amount=:bottle_priming_amount, bottle_priming_water=:bottle_priming_water, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
589 "bottle_carbonation_temp=:bottle_carbonation_temp, keg_amount=:keg_amount, keg_carbonation=:keg_carbonation, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
590 "keg_priming_sugar=:keg_priming_sugar, keg_priming_amount=:keg_priming_amount, keg_priming_water=:keg_priming_water, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
591 "keg_carbonation_temp=:keg_carbonation_temp, keg_forced_carb=:keg_forced_carb, keg_pressure=:keg_pressure, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
592 "taste_notes=:taste_notes, taste_rate=:taste_rate, taste_date=:taste_date, taste_color=:taste_color, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
593 "taste_transparency=:taste_transparency, taste_head=:taste_head, taste_aroma=:taste_aroma, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
594 "taste_taste=:taste_taste, taste_mouthfeel=:taste_mouthfeel, taste_aftertaste=:taste_aftertaste, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
595 "st_name=:st_name, st_letter=:st_letter, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
596 "st_guide=:st_guide, st_category=:st_category, st_category_number=:st_catnr, st_type=:st_type, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
597 "st_og_min=:st_og_min, st_og_max=:st_og_max, st_fg_min=:st_fg_min, st_fg_max=:st_fg_max, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
598 "st_ibu_min=:st_ibu_min, st_ibu_max=:st_ibu_max, st_color_min=:st_color_min, st_color_max=:st_color_max, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
599 "st_carb_min=:st_carb_min, st_carb_max=:st_carb_max, st_abv_min=:st_abv_min, st_abv_max=:st_abv_max, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
600 "type=:type, batch_size=:batch_size, boil_size=:boil_size, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
601 "boil_time=:boil_time, efficiency=:efficiency, est_og=:est_og, est_og3=:est_og3, est_fg=:est_fg, est_abv=:est_abv, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
602 "est_color=:est_color, color_method=:color_method, est_ibu=:est_ibu, ibu_method=:ibu_method, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
603 "est_carb=:est_carb, sparge_temp=:sparge_temp, sparge_ph=:sparge_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
604 "sparge_volume=:sparge_volume, sparge_source=:sparge_source, sparge_acid_type=:sparge_acid_type, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
605 "sparge_acid_perc=:sparge_acid_perc, sparge_acid_amount=:sparge_acid_amount, mash_ph=:mash_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
606 "mash_name=:mash_name, calc_acid=:calc_acid, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
607 "w1_name=:w1_name, w1_amount=:w1_amount, w1_calcium=:w1_calcium, w1_sulfate=:w1_sulfate, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
608 "w1_chloride=:w1_chloride, w1_sodium=:w1_sodium, w1_magnesium=:w1_magnesium, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
609 "w1_total_alkalinity=:w1_total_alkalinity, w1_ph=:w1_ph, w1_cost=:w1_cost, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
610 "w2_name=:w2_name, w2_amount=:w2_amount, w2_calcium=:w2_calcium, w2_sulfate=:w2_sulfate, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
611 "w2_chloride=:w2_chloride, w2_sodium=:w2_sodium, w2_magnesium=:w2_magnesium, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
612 "w2_total_alkalinity=:w2_total_alkalinity, w2_ph=:w2_ph, w2_cost=:w2_cost, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
613 "wg_amount=:wg_amount, wg_calcium=:wg_calcium, wg_sulfate=:wg_sulfate, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
614 "wg_chloride=:wg_chloride, wg_sodium=:wg_sodium, wg_magnesium=:wg_magnesium, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
615 "wg_total_alkalinity=:wg_total_alkalinity, wg_ph=:wg_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
616 "wb_calcium=:wb_calcium, wb_sulfate=:wb_sulfate, wb_chloride=:wb_chloride, wb_sodium=:wb_sodium, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
617 "wb_magnesium=:wb_magnesium, wb_total_alkalinity=:wb_total_alkalinity, wb_ph=:wb_ph, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
618 "wa_acid_name=:wa_acid_name, wa_acid_perc=:wa_acid_perc, wa_base_name=:wa_base_name, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
619 "starter_enable=:starter_enable, starter_type=:starter_type, starter_sg=:starter_sg, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
620 "starter_viability=:starter_viability, yeast_prod_date=:yeast_prod_date, yeast_pitchrate=:yeast_pitchrate, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
621 "prop1_type=:prop1_type, prop1_volume=:prop1_volume, prop2_type=:prop2_type, prop2_volume=:prop2_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
622 "prop3_type=:prop3_type, prop3_volume=:prop3_volume, prop4_type=:prop4_type, prop4_volume=:prop4_volume, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
623 "divide_type=:divide_type, divide_size=:divide_size, divide_factor=:divide_factor, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
624 "divide_parts=:divide_parts, divide_part=:divide_part, "
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
625 "json_fermentables=:json_fermentables, json_hops=:json_hops, json_miscs=:json_miscs, "
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
626 "json_yeasts=:json_yeasts, json_mashs=:json_mashs");
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
627
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
628 if (prod->record == -1) {
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
629 sql.append(", uuid=:uuid");
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
630 } else {
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
631 sql.append(" WHERE record = :recno");
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
632 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
633
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
634 query.prepare(sql);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
635 query.bindValue(":name", prod->name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
636 query.bindValue(":code", prod->code);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
637 query.bindValue(":birth", prod->birth);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
638 query.bindValue(":stage", prod->stage);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
639 query.bindValue(":notes", prod->notes);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
640 query.bindValue(":log_brew", prod->log_brew ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
641 query.bindValue(":log_fermentation", prod->log_fermentation ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
642 query.bindValue(":log_ispindel", prod->log_ispindel ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
643 query.bindValue(":log_co2pressure", prod->log_co2pressure ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
644 query.bindValue(":inventory_reduced", prod->inventory_reduced);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
645 query.bindValue(":locked", prod->locked ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
646 query.bindValue(":eq_name", prod->eq_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
647 query.bindValue(":eq_boil_size", round(prod->eq_boil_size * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
648 query.bindValue(":eq_batch_size", round(prod->eq_batch_size * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
649 query.bindValue(":eq_tun_volume", round(prod->eq_tun_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
650 query.bindValue(":eq_tun_weight", round(prod->eq_tun_weight * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
651 query.bindValue(":eq_tun_specific_heat", round(prod->eq_tun_specific_heat * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
652 query.bindValue(":eq_tun_material", prod->eq_tun_material);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
653 query.bindValue(":eq_tun_height", round(prod->eq_tun_height * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
654 query.bindValue(":eq_top_up_water", round(prod->eq_top_up_water * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
655 query.bindValue(":eq_chiller_loss", round(prod->eq_trub_chiller_loss * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
656 query.bindValue(":eq_evap_rate", round(prod->eq_evap_rate * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
657 query.bindValue(":eq_boil_time", round(prod->eq_boil_time));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
658 query.bindValue(":eq_calcboil", prod->eq_calc_boil_volume ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
659 query.bindValue(":eq_top_up_kettle", round(prod->eq_top_up_kettle * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
660 query.bindValue(":eq_hopfactor", round(prod->eq_hop_utilization));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
661 query.bindValue(":eq_notes", prod->eq_notes);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
662 query.bindValue(":eq_lauter_volume", round(prod->eq_lauter_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
663 query.bindValue(":eq_lauter_height", round(prod->eq_lauter_height * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
664 query.bindValue(":eq_lauter_deadspace", round(prod->eq_lauter_deadspace * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
665 query.bindValue(":eq_kettle_volume", round(prod->eq_kettle_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
666 query.bindValue(":eq_kettle_height", round(prod->eq_kettle_height * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
667 query.bindValue(":eq_mash_volume", round(prod->eq_mash_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
668 query.bindValue(":eq_mash_max", round(prod->eq_mash_max * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
669 query.bindValue(":eq_efficiency", round(prod->eq_efficiency * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
670 query.bindValue(":brew_date_start", prod->brew_date_start);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
671 query.bindValue(":brew_mash_ph", round(prod->brew_mash_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
672 query.bindValue(":brew_mash_sg", round(prod->brew_mash_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
673 query.bindValue(":brew_mash_efficiency", round(prod->brew_mash_efficiency * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
674 query.bindValue(":brew_sparge_temperature", round(prod->brew_sparge_temperature * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
675 query.bindValue(":brew_sparge_volume", round(prod->brew_sparge_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
676 query.bindValue(":brew_sparge_est", round(prod->brew_sparge_est * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
677 query.bindValue(":brew_sparge_ph", round(prod->brew_sparge_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
678 query.bindValue(":brew_preboil_volume", round(prod->brew_preboil_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
679 query.bindValue(":brew_preboil_sg", round(prod->brew_preboil_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
680 query.bindValue(":brew_preboil_ph", round(prod->brew_preboil_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
681 query.bindValue(":brew_preboil_efficiency", round(prod->brew_preboil_efficiency * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
682 query.bindValue(":brew_aboil_volume", round(prod->brew_aboil_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
683 query.bindValue(":brew_aboil_sg", round(prod->brew_aboil_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
684 query.bindValue(":brew_aboil_ph", round(prod->brew_aboil_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
685 query.bindValue(":brew_aboil_efficiency", round(prod->brew_aboil_efficiency * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
686 query.bindValue(":brew_cooling_method", prod->brew_cooling_method);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
687 query.bindValue(":brew_cooling_time", round(prod->brew_cooling_time * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
688 query.bindValue(":brew_cooling_to", round(prod->brew_cooling_to * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
689 query.bindValue(":brew_whirlpool9", round(prod->brew_whirlpool9));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
690 query.bindValue(":brew_whirlpool7", round(prod->brew_whirlpool7));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
691 query.bindValue(":brew_whirlpool6", round(prod->brew_whirlpool6));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
692 query.bindValue(":brew_whirlpool2", round(prod->brew_whirlpool2));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
693 query.bindValue(":brew_fermenter_volume", round(prod->brew_fermenter_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
694 query.bindValue(":brew_fermenter_extrawater", round(prod->brew_fermenter_extrawater * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
695 query.bindValue(":brew_fermenter_tcloss", round(prod->brew_fermenter_tcloss * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
696 query.bindValue(":brew_aeration_time", round(prod->brew_aeration_time));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
697 query.bindValue(":brew_aeration_speed", round(prod->brew_aeration_speed * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
698 query.bindValue(":brew_aeration_type", prod->brew_aeration_type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
699 query.bindValue(":brew_fermenter_sg", round(prod->brew_fermenter_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
700 query.bindValue(":brew_fermenter_ibu", round(prod->brew_fermenter_ibu * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
701 query.bindValue(":brew_fermenter_color", round(prod->brew_fermenter_color * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
702 query.bindValue(":brew_date_end", prod->brew_date_end);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
703 query.bindValue(":og", round(prod->og * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
704 query.bindValue(":fg", round(prod->fg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
705 query.bindValue(":primary_start_temp", round(prod->primary_start_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
706 query.bindValue(":primary_max_temp", round(prod->primary_max_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
707 query.bindValue(":primary_end_temp", round(prod->primary_end_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
708 query.bindValue(":primary_end_sg", round(prod->primary_end_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
709 query.bindValue(":primary_end_date", prod->primary_end_date);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
710 query.bindValue(":secondary_temp", round(prod->secondary_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
711 query.bindValue(":secondary_end_sg", round(prod->secondary_end_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
712 query.bindValue(":secondary_end_date", prod->secondary_end_date);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
713 query.bindValue(":tertiary_temp", round(prod->tertiary_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
714 query.bindValue(":package_date", prod->package_date);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
715 query.bindValue(":package_volume", round(prod->package_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
716 query.bindValue(":package_infuse_amount", round(prod->package_infuse_amount * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
717 query.bindValue(":package_infuse_abv", round(prod->package_infuse_abv * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
718 query.bindValue(":package_infuse_notes", prod->package_infuse_notes);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
719 query.bindValue(":package_abv", round(prod->package_abv * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
720 query.bindValue(":package_ph", round(prod->package_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
721 query.bindValue(":bottle_amount", round(prod->bottle_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
722 query.bindValue(":bottle_carbonation", round(prod->bottle_carbonation * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
723 query.bindValue(":bottle_priming_sugar", prod->bottle_priming_sugar);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
724 query.bindValue(":bottle_priming_amount", round(prod->bottle_priming_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
725 query.bindValue(":bottle_priming_water", round(prod->bottle_priming_water * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
726 query.bindValue(":bottle_carbonation_temp", round(prod->bottle_carbonation_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
727 query.bindValue(":keg_amount", round(prod->keg_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
728 query.bindValue(":keg_carbonation", round(prod->keg_carbonation * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
729 query.bindValue(":keg_priming_sugar", prod->keg_priming_sugar);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
730 query.bindValue(":keg_priming_amount", round(prod->keg_priming_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
731 query.bindValue(":keg_priming_water", round(prod->keg_priming_water * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
732 query.bindValue(":keg_carbonation_temp", round(prod->keg_carbonation_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
733 query.bindValue(":keg_forced_carb", prod->keg_forced_carb ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
734 query.bindValue(":keg_pressure", round(prod->keg_pressure * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
735 query.bindValue(":taste_notes", prod->taste_notes);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
736 query.bindValue(":taste_rate", round(prod->taste_rate * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
737 query.bindValue(":taste_date", prod->taste_date);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
738 query.bindValue(":taste_color", prod->taste_color);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
739 query.bindValue(":taste_transparency", prod->taste_transparency);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
740 query.bindValue(":taste_head", prod->taste_head);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
741 query.bindValue(":taste_aroma", prod->taste_aroma);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
742 query.bindValue(":taste_taste", prod->taste_taste);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
743 query.bindValue(":taste_mouthfeel", prod->taste_mouthfeel);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
744 query.bindValue(":taste_aftertaste", prod->taste_aftertaste);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
745 query.bindValue(":st_name", prod->st_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
746 query.bindValue(":st_letter", prod->st_letter);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
747 query.bindValue(":st_guide", prod->st_guide);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
748 query.bindValue(":st_category", prod->st_category);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
749 query.bindValue(":st_catnr", prod->st_category_number);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
750 query.bindValue(":st_type", prod->st_type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
751 query.bindValue(":st_og_min", round(prod->st_og_min * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
752 query.bindValue(":st_og_max", round(prod->st_og_max * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
753 query.bindValue(":st_fg_min", round(prod->st_fg_min * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
754 query.bindValue(":st_fg_max", round(prod->st_fg_max * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
755 query.bindValue(":st_ibu_min", round(prod->st_ibu_min * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
756 query.bindValue(":st_ibu_max", round(prod->st_ibu_max * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
757 query.bindValue(":st_color_min", round(prod->st_color_min * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
758 query.bindValue(":st_color_max", round(prod->st_color_max * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
759 query.bindValue(":st_carb_min", round(prod->st_carb_min * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
760 query.bindValue(":st_carb_max", round(prod->st_carb_max * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
761 query.bindValue(":st_abv_min", round(prod->st_abv_min * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
762 query.bindValue(":st_abv_max", round(prod->st_abv_max * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
763 query.bindValue(":type", prod->type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
764 query.bindValue(":batch_size", round(prod->batch_size * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
765 query.bindValue(":boil_size", round(prod->boil_size * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
766 query.bindValue(":boil_time", round(prod->boil_time * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
767 query.bindValue(":efficiency", round(prod->efficiency * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
768 query.bindValue(":est_og", round(prod->est_og * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
769 query.bindValue(":est_og3", round(prod->est_og3 * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
770 query.bindValue(":est_fg", round(prod->est_fg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
771 query.bindValue(":est_abv", round(prod->est_abv * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
772 query.bindValue(":est_color", round(prod->est_color * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
773 query.bindValue(":color_method", prod->color_method);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
774 query.bindValue(":est_ibu", round(prod->est_ibu * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
775 query.bindValue(":ibu_method", prod->ibu_method);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
776 query.bindValue(":est_carb", round(prod->est_carb * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
777 query.bindValue(":sparge_temp", round(prod->sparge_temp * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
778 query.bindValue(":sparge_ph", round(prod->sparge_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
779 query.bindValue(":sparge_volume", round(prod->sparge_volume * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
780 query.bindValue(":sparge_source", prod->sparge_source);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
781 query.bindValue(":sparge_acid_type", prod->sparge_acid_type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
782 query.bindValue(":sparge_acid_perc", round(prod->sparge_acid_perc * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
783 query.bindValue(":sparge_acid_amount", round(prod->sparge_acid_amount * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
784 query.bindValue(":mash_ph", round(prod->mash_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
785 query.bindValue(":mash_name", prod->mash_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
786 query.bindValue(":calc_acid", prod->calc_acid ?1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
787 query.bindValue(":w1_name", prod->w1_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
788 query.bindValue(":w1_amount", round(prod->w1_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
789 query.bindValue(":w1_calcium", round(prod->w1_calcium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
790 query.bindValue(":w1_sulfate", round(prod->w1_sulfate * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
791 query.bindValue(":w1_chloride", round(prod->w1_chloride * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
792 query.bindValue(":w1_sodium", round(prod->w1_sodium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
793 query.bindValue(":w1_magnesium", round(prod->w1_magnesium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
794 query.bindValue(":w1_total_alkalinity", round(prod->w1_total_alkalinity * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
795 query.bindValue(":w1_ph", round(prod->w1_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
796 query.bindValue(":w1_cost", round(prod->w1_cost * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
797 query.bindValue(":w2_name", prod->w2_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
798 query.bindValue(":w2_amount", round(prod->w2_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
799 query.bindValue(":w2_calcium", round(prod->w2_calcium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
800 query.bindValue(":w2_sulfate", round(prod->w2_sulfate * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
801 query.bindValue(":w2_chloride", round(prod->w2_chloride * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
802 query.bindValue(":w2_sodium", round(prod->w2_sodium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
803 query.bindValue(":w2_magnesium", round(prod->w2_magnesium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
804 query.bindValue(":w2_total_alkalinity", round(prod->w2_total_alkalinity * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
805 query.bindValue(":w2_ph", round(prod->w2_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
806 query.bindValue(":w2_cost", round(prod->w2_cost * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
807 query.bindValue(":wg_amount", round(prod->wg_amount * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
808 query.bindValue(":wg_calcium", round(prod->wg_calcium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
809 query.bindValue(":wg_sulfate", round(prod->wg_sulfate * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
810 query.bindValue(":wg_chloride", round(prod->wg_chloride * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
811 query.bindValue(":wg_sodium", round(prod->wg_sodium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
812 query.bindValue(":wg_magnesium", round(prod->wg_magnesium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
813 query.bindValue(":wg_total_alkalinity", round(prod->wg_total_alkalinity * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
814 query.bindValue(":wg_ph", round(prod->wg_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
815 query.bindValue(":wb_calcium", round(prod->wb_calcium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
816 query.bindValue(":wb_sulfate", round(prod->wb_sulfate * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
817 query.bindValue(":wb_chloride", round(prod->wb_chloride * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
818 query.bindValue(":wb_sodium", round(prod->wb_sodium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
819 query.bindValue(":wb_magnesium", round(prod->wb_magnesium * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
820 query.bindValue(":wb_total_alkalinity", round(prod->wb_total_alkalinity * 100000) / 100000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
821 query.bindValue(":wb_ph", round(prod->wb_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
822 query.bindValue(":wa_acid_name", prod->wa_acid_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
823 query.bindValue(":wa_acid_perc", round(prod->wa_acid_perc * 10) / 10);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
824 query.bindValue(":wa_base_name", prod->wa_base_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
825 query.bindValue(":starter_enable", prod->starter_enable ? 1:0);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
826 query.bindValue(":starter_type", prod->starter_type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
827 query.bindValue(":starter_sg", round(prod->starter_sg * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
828 query.bindValue(":starter_viability", prod->starter_viability);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
829 query.bindValue(":yeast_prod_date", prod->yeast_prod_date);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
830 query.bindValue(":yeast_pitchrate", round(prod->yeast_pitchrate * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
831 query.bindValue(":prop1_type", prod->prop_type[0]);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
832 query.bindValue(":prop1_volume", round(prod->prop_volume[0] * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
833 query.bindValue(":prop2_type", prod->prop_type[1]);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
834 query.bindValue(":prop2_volume", round(prod->prop_volume[1] * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
835 query.bindValue(":prop3_type", prod->prop_type[2]);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
836 query.bindValue(":prop3_volume", round(prod->prop_volume[2] * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
837 query.bindValue(":prop4_type", prod->prop_type[3]);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
838 query.bindValue(":prop4_volume", round(prod->prop_volume[3] * 1000) / 1000);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
839 query.bindValue(":divide_type", prod->divide_type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
840 query.bindValue(":divide_size", round(prod->divide_size * 10) / 10);
270
a0f72d7ace1f Added create splitted batches. Fixed rounding amount values at several places.
Michiel Broek <mbroek@mbse.eu>
parents: 262
diff changeset
841 query.bindValue(":divide_factor", round(prod->divide_factor * 10000) / 10000);
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
842 query.bindValue(":divide_parts", prod->divide_parts);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
843 query.bindValue(":divide_part", prod->divide_part);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
844
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
845 if (prod->fermentables.size() == 0) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
846 query.bindValue(":json_fermentables", "[]");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
847 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
848 QJsonArray array;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
849 for (int i = 0; i < prod->fermentables.size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
850 QJsonObject obj;
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
851 obj.insert("f_name", prod->fermentables.at(i).name);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
852 obj.insert("f_origin", prod->fermentables.at(i).origin);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
853 obj.insert("f_supplier", prod->fermentables.at(i).supplier);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
854 obj.insert("f_amount", round(prod->fermentables.at(i).amount * 100000) / 100000);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
855 obj.insert("f_cost", round(prod->fermentables.at(i).cost * 1000) / 1000);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
856 obj.insert("f_type", prod->fermentables.at(i).type);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
857 obj.insert("f_yield", round(prod->fermentables.at(i).yield * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
858 obj.insert("f_color", round(prod->fermentables.at(i).color * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
859 obj.insert("f_coarse_fine_diff", round(prod->fermentables.at(i).coarse_fine_diff * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
860 obj.insert("f_moisture", round(prod->fermentables.at(i).moisture * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
861 obj.insert("f_diastatic_power", round(prod->fermentables.at(i).diastatic_power * 100000) / 100000);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
862 obj.insert("f_protein", round(prod->fermentables.at(i).protein * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
863 obj.insert("f_dissolved_protein", round(prod->fermentables.at(i).dissolved_protein * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
864 obj.insert("f_max_in_batch", prod->fermentables.at(i).max_in_batch);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
865 obj.insert("f_graintype", prod->fermentables.at(i).graintype);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
866 obj.insert("f_added", prod->fermentables.at(i).added);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
867 obj.insert("f_recommend_mash", prod->fermentables.at(i).recommend_mash ? 1:0);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
868 obj.insert("f_add_after_boil", prod->fermentables.at(i).add_after_boil ? 1:0);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
869 obj.insert("f_adjust_to_total_100", prod->fermentables.at(i).adjust_to_total_100 ? 1:0);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
870 obj.insert("f_percentage", round(prod->fermentables.at(i).percentage * 10) / 10);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
871 obj.insert("f_di_ph", round(prod->fermentables.at(i).di_ph * 100000) / 100000);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
872 obj.insert("f_acid_to_ph_57", round(prod->fermentables.at(i).acid_to_ph_57 * 100000) / 100000);
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
873 // qDebug() << "fermentables_Json" << i << obj;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
874 array.append(obj); /* Append this object */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
875 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
876 QJsonDocument doc;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
877 doc.setArray(array);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
878 query.bindValue(":json_fermentables", doc.toJson(QJsonDocument::Compact));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
879 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
880
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
881 if (prod->hops.size() == 0) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
882 query.bindValue(":json_hops", "[]");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
883 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
884 QJsonArray array;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
885 for (int i = 0; i < prod->hops.size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
886 QJsonObject obj;
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
887 obj.insert("h_name", prod->hops.at(i).name);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
888 obj.insert("h_origin", prod->hops.at(i).origin);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
889 obj.insert("h_amount", round(prod->hops.at(i).amount * 100000) / 100000);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
890 obj.insert("h_cost", round(prod->hops.at(i).cost * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
891 obj.insert("h_type", prod->hops.at(i).type);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
892 obj.insert("h_form", prod->hops.at(i).form);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
893 obj.insert("h_useat", prod->hops.at(i).useat);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
894 obj.insert("h_time", round(prod->hops.at(i).time));
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
895 obj.insert("h_alpha", round(prod->hops.at(i).alpha * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
896 obj.insert("h_beta", round(prod->hops.at(i).beta * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
897 obj.insert("h_hsi", round(prod->hops.at(i).hsi * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
898 obj.insert("h_humulene", round(prod->hops.at(i).humulene * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
899 obj.insert("h_caryophyllene", round(prod->hops.at(i).caryophyllene * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
900 obj.insert("h_cohumulone", round(prod->hops.at(i).cohumulone * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
901 obj.insert("h_myrcene", round(prod->hops.at(i).myrcene * 100) / 100);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
902 obj.insert("h_total_oil", round(prod->hops.at(i).total_oil * 100) / 100);
373
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
903 obj.insert("h_utilisation", round(prod->hops.at(i).utilisation * 100) / 100);
b02aca4e926c First load of changes for hops. In EditHop load the dropdown buttons from the global table. Use named query fields. Added database utilisation and bu_factor fields for hop extracts. Added edit fields for these new fields. Added post boil SG, utilisation and bu_factor parameters to the toIBU function. Added hops form parameter to the hopFlavourContribution and hopAromaContribution display bars. In the hops inventory list dispay volumes instead of weight for hop extracts. Modified the TinsethIBU function to use utilisation and bu_factor parameters. Add calculations for co2 and iso hop extracts, this is work in progress. The toIBU function makes use of the preSG and postSG values to use the correct SG to caall the TinsethIBU function. This results in a bit lower IBU values mostly affecting the late additions. Added use hop at bottling for iso hop extracts like Tetra hops using the formula from BarthHaas.
Michiel Broek <mbroek@mbse.eu>
parents: 294
diff changeset
904 obj.insert("h_bu_factor", round(prod->hops.at(i).bu_factor * 100) / 100);
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
905 // qDebug() << "hops_Json" << i << obj;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
906 array.append(obj); /* Append this object */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
907 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
908 QJsonDocument doc;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
909 doc.setArray(array);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
910 query.bindValue(":json_hops", doc.toJson(QJsonDocument::Compact));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
911 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
912
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
913 if (prod->miscs.size() == 0) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
914 query.bindValue(":json_miscs", "[]");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
915 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
916 QJsonArray array;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
917 for (int i = 0; i < prod->miscs.size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
918 QJsonObject obj;
294
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
919 obj.insert("m_name", prod->miscs.at(i).name);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
920 obj.insert("m_amount", round(prod->miscs.at(i).amount * 100000) / 100000);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
921 obj.insert("m_type", prod->miscs.at(i).type);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
922 obj.insert("m_use_use", prod->miscs.at(i).use_use);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
923 obj.insert("m_time", round(prod->miscs.at(i).time));
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
924 obj.insert("m_amount_is_weight", prod->miscs.at(i).amount_is_weight ? 1:0);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
925 obj.insert("m_cost", round(prod->miscs.at(i).cost * 10000) / 10000);
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
926 // qDebug() << "miscs_Json" << i << obj;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
927 array.append(obj); /* Append this object */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
928 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
929 QJsonDocument doc;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
930 doc.setArray(array);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
931 query.bindValue(":json_miscs", doc.toJson(QJsonDocument::Compact));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
932 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
933
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
934 if (prod->yeasts.size() == 0) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
935 query.bindValue(":json_yeasts", "[]");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
936 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
937 QJsonArray array;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
938 for (int i = 0; i < prod->yeasts.size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
939 QJsonObject obj;
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
940 obj.insert("y_name", prod->yeasts.at(i).name);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
941 obj.insert("y_laboratory", prod->yeasts.at(i).laboratory);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
942 obj.insert("y_product_id", prod->yeasts.at(i).product_id);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
943 obj.insert("y_amount", round(prod->yeasts.at(i).amount * 100000) / 100000);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
944 obj.insert("y_type", prod->yeasts.at(i).type);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
945 obj.insert("y_form", prod->yeasts.at(i).form);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
946 obj.insert("y_min_temperature", round(prod->yeasts.at(i).min_temperature * 10) / 10);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
947 obj.insert("y_max_temperature", round(prod->yeasts.at(i).max_temperature * 10) / 10);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
948 obj.insert("y_flocculation", prod->yeasts.at(i).flocculation);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
949 obj.insert("y_attenuation", round(prod->yeasts.at(i).attenuation * 10) / 10);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
950 obj.insert("y_cells", prod->yeasts.at(i).cells);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
951 obj.insert("y_tolerance", round(prod->yeasts.at(i).tolerance * 10) / 10);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
952 obj.insert("y_inventory", round(prod->yeasts.at(i).inventory * 10000) / 10000);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
953 obj.insert("y_use", prod->yeasts.at(i).use);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
954 obj.insert("y_sta1", prod->yeasts.at(i).sta1 ? 1:0);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
955 obj.insert("y_bacteria", prod->yeasts.at(i).bacteria ? 1:0);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
956 obj.insert("y_harvest_top", prod->yeasts.at(i).harvest_top ? 1:0);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
957 obj.insert("y_harvest_time", prod->yeasts.at(i).harvest_time);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
958 obj.insert("y_pitch_temperature", round(prod->yeasts.at(i).pitch_temperature * 10) / 10);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
959 obj.insert("y_pofpos", prod->yeasts.at(i).pofpos ? 1:0);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
960 obj.insert("y_zymocide", prod->yeasts.at(i).zymocide);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
961 obj.insert("y_gr_hl_lo", prod->yeasts.at(i).gr_hl_lo);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
962 obj.insert("y_sg_lo", round(prod->yeasts.at(i).sg_lo * 1000) / 1000);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
963 obj.insert("y_gr_hl_hi", prod->yeasts.at(i).gr_hl_hi);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
964 obj.insert("y_sg_hi", round(prod->yeasts.at(i).sg_hi * 1000) / 1000);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
965 obj.insert("y_cost", round(prod->yeasts.at(i).cost * 1000) / 1000);
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
966 // qDebug() << "yeasts_Json" << i << obj;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
967 array.append(obj); /* Append this object */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
968 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
969 QJsonDocument doc;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
970 doc.setArray(array);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
971 query.bindValue(":json_yeasts", doc.toJson(QJsonDocument::Compact));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
972 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
973
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
974 if (prod->mashs.size() == 0) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
975 query.bindValue(":json_mashs", "[]");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
976 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
977 QJsonArray array;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
978 for (int i = 0; i < prod->mashs.size(); i++) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
979 QJsonObject obj;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
980 obj.insert("step_name", prod->mashs.at(i).step_name);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
981 obj.insert("step_type", prod->mashs.at(i).step_type);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
982 obj.insert("step_volume", round(prod->mashs.at(i).step_volume * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
983 obj.insert("step_infuse_amount", round(prod->mashs.at(i).step_infuse_amount * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
984 obj.insert("step_infuse_temp", round(prod->mashs.at(i).step_infuse_temp * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
985 obj.insert("step_temp", round(prod->mashs.at(i).step_temp * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
986 obj.insert("step_time", round(prod->mashs.at(i).step_time * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
987 obj.insert("ramp_time", round(prod->mashs.at(i).ramp_time * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
988 obj.insert("end_temp", round(prod->mashs.at(i).end_temp * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
989 obj.insert("step_wg_ratio", round(prod->mashs.at(i).step_wg_ratio * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
990 obj.insert("step_ph", round(prod->mashs.at(i).step_ph * 100) / 100);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
991 obj.insert("step_sg", round(prod->mashs.at(i).step_sg * 10000) / 10000);
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
992 // qDebug() << "mashs_Json" << i << obj;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
993 array.append(obj); /* Append this object */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
994 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
995 QJsonDocument doc;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
996 doc.setArray(array);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
997 query.bindValue(":json_mashs", doc.toJson(QJsonDocument::Compact));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
998 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
999
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1000 if (prod->record == -1) {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1001 query.bindValue(":uuid", QUuid::createUuid().toString().mid(1, 36));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1002 } else {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1003 query.bindValue(":recno", prod->record);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1004 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1005 query.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1006 if (query.lastError().isValid()) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
1007 qWarning() << "saveProduct" << query.lastError();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1008 QMessageBox::warning(dialog, QObject::tr("Database error"),
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1009 QObject::tr("MySQL error: %1\n%2\n%3")
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1010 .arg(query.lastError().nativeErrorCode())
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1011 .arg(query.lastError().driverText())
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1012 .arg(query.lastError().databaseText()));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1013 return false;
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1014 }
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1015
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1016 /*
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1017 * If this was a new product, find out what record number we
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1018 * have got and set it. So when the user saves this record
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1019 * again, it will be updated instead of inserting a new copy.
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1020 */
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1021 if (prod->record < 0) {
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1022 QVariant id = query.lastInsertId();
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1023 prod->record = id.toInt();
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1024 qInfo() << "saveProduct Inserted record" << prod->record;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1025 } else {
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1026 qInfo() << "saveProduct Updated record" << prod->record;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1027 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1028 return true;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1029 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1030
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1031
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1032 bool DB_product::dele(QDialog *dialog, int recno)
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1033 {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1034 QSqlQuery query;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1035
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1036 query.prepare("DELETE FROM products WHERE record = :recno");
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1037 query.bindValue(":recno", recno);
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1038 query.exec();
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1039 if (query.lastError().isValid()) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
1040 qWarning() << "deleteProduct" << query.lastError();
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1041 QMessageBox::warning(dialog, QObject::tr("Database error"),
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1042 QObject::tr("MySQL error: %1\n%2\n%3")
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1043 .arg(query.lastError().nativeErrorCode())
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1044 .arg(query.lastError().driverText())
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1045 .arg(query.lastError().databaseText()));
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1046 return false;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1047 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1048
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
1049 qInfo() << "deleteProduct Deleted" << recno;
248
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1050 return true;
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1051 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1052
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1053

mercurial