src/database/db_product.cpp

Tue, 05 Mar 2024 10:25:15 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 05 Mar 2024 10:25:15 +0100
changeset 521
5fbe71d69fe5
parent 519
1b9e887392aa
permissions
-rw-r--r--

Clear mash measurments when duplicating a product.

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
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
36 // QSqlRecord rec = query.record();
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
37 // for (int i = 0; i < rec.count(); i++)
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
38 // qDebug() << i << rec.fieldName(i) << query.value(i);
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
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();
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 433
diff changeset
64 prod->eq_trub_loss = query.value("eq_trub_loss").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
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_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
68 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
69 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
70 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
71 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
72 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
73 prod->eq_efficiency = query.value("eq_efficiency").toDouble();
423
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
74 prod->eq_chiller_type = query.value("eq_chiller_type").toInt();
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
75 prod->eq_chiller_to79 = query.value("eq_chiller_to79").toDouble();
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
76 prod->eq_chiller_volume = query.value("eq_chiller_volume").toDouble();
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
77 prod->eq_chiller_lpm = query.value("eq_chiller_lpm").toDouble();
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
78 prod->eq_chiller_loss = query.value("eq_chiller_loss").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
79
1a7a5dffba58 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_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
81 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
82 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
83 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
84 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
85 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
86 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
87 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
88 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
89 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
90 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
91 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
92 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
93 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
94 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
95 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
96 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
97 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
98 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
99 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
100 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
101 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
102 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
103 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
104 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
105 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
106 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
107 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
108 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
109 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
110 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
111 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
112 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
113
1a7a5dffba58 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->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
115 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
116 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
117 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
118 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
119 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
120 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
121 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
122 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
123 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
124 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
125
1a7a5dffba58 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_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
127 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
128 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
129 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
130 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
131 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
132 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
133
1a7a5dffba58 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_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
135 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
136 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
137 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
138 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
139 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
140
1a7a5dffba58 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_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
142 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
143 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
144 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
145 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
146 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
147 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
148 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
149
1a7a5dffba58 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_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
151 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
152 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
153 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
154 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
155 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
156 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
157 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
158 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
159 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
160
1a7a5dffba58 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_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
162 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
163 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
164 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
165 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
166 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
167 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
168 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
169 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
170 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
171 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
172 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
173 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
174 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
175 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
176 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
177 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
178 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
179
1a7a5dffba58 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->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
181 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
182 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
183 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
184 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
185 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
186 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
187 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
188 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
189 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
190 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
191 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
192 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
193 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
194
1a7a5dffba58 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_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
196 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
197 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
198 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
199 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
200 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
201 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
202 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
203 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
204 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
205
1a7a5dffba58 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_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
207 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
208 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
209 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
210 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
211 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
212 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
213 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
214 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
215 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
216 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
217 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
218 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
219 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
220 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
221 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
222 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
223 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
224 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
225 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
226 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
227 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
228 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
229 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
230 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
231 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
232 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
233 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
234 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
235 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
236 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
237 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
238 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
239 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
240 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
241 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
242 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
243 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
244
1a7a5dffba58 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_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
246 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
247 prod->starter_sg = query.value("starter_sg").toDouble();
478
a3653722b0d6 Add dry primary yeasts weights to get a mixed total. Use the parameters from the first and mmost used yeast. Changed in products and recipes. Recalculated WLP purepitch viability and planned next generation purepitch. We need a better way to set these parameters like a packages table. Fixed several yeast edit values due to adding a STA1 column. Removed several unneeded refresh_all() calls as they screwed the sorting of the yeasts during edit. Added STA1 display to recipes. Changed products database starter_viability from integer to float.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
248 prod->starter_viability = query.value("starter_viability").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
249 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
250 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
251 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
252 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
253 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
254 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
255 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
256 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
257 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
258 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
259 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
260 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
261 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
262
1a7a5dffba58 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_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
264 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
265 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
266 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
267 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
268
1a7a5dffba58 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 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
270 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
271 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
272 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
273 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
274 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
275 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
276 } 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
277 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
278 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
279 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
280 Fermentables f;
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
281 f.inventory = 0;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
282 f.avail = false;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
283 f.name = obj["f_name"].toString();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
284 f.origin = obj["f_origin"].toString();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
285 f.supplier = obj["f_supplier"].toString();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
286 f.amount = obj["f_amount"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
287 f.cost = obj["f_cost"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
288 f.type = obj["f_type"].toInt();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
289 f.yield = obj["f_yield"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
290 f.color = obj["f_color"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
291 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
292 f.moisture = obj["f_moisture"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
293 f.diastatic_power = obj["f_diastatic_power"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
294 f.protein = obj["f_protein"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
295 f.dissolved_protein = obj["f_dissolved_protein"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
296 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
297 f.graintype = obj["f_graintype"].toInt();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
298 f.added = obj["f_added"].toInt();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
299 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
300 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
301 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
302 f.percentage = obj["f_percentage"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
303 f.di_ph = obj["f_di_ph"].toDouble();
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
304 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
305 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
306 prod->fermentables_use100 = true;
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
307 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
308 /* 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
309 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
310 yquery.bindValue(":name", f.name);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
311 yquery.bindValue(":supplier", f.supplier);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
312 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
313 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
314 if (yquery.first()) {
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
315 f.avail = true;
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
316 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
317 }
1a7a5dffba58 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 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
319 }
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
320 // qDebug() << "fermentables" << prod->fermentables.size() << percentcheck;
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
321 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
322 /* 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
323 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
324 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
325 if (prod->fermentables.at(i).added < 4)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
326 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
327 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
328 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
329 if (prod->fermentables.at(i).added < 4)
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
330 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
331 }
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
332 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
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 {
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
336 qInfo() << "empty fermentables";
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
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 }
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
387 // qDebug() << "hops" << prod->hops.size();
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
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 {
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
390 qInfo() << "empty hops";
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
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 }
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
422 // qDebug() << "miscs" << prod->miscs.size();
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
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 {
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
425 qInfo() << "empty miscs";
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
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();
485
83b5c2b3c414 Database upgrade will let the yeastpack cells at 0. Disabled some debug messages needed for development. Updated yeastpack editor tooltips.
Michiel Broek <mbroek@mbse.eu>
parents: 482
diff changeset
437 // 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
438 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
439 /* First some defaults for newer fields. */
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
440 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
441 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
442 y.gr_hl_lo = 50;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
443 y.sg_lo = 1.04;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
444 y.gr_hl_hi = 80;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
445 y.sg_hi = 1.08;
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
446 /* Clear Yeast Package data */
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
447 y.yp_uuid = QString();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
448 y.yp_package = QString();
485
83b5c2b3c414 Database upgrade will let the yeastpack cells at 0. Disabled some debug messages needed for development. Updated yeastpack editor tooltips.
Michiel Broek <mbroek@mbse.eu>
parents: 482
diff changeset
449 y.yp_cells = 0;
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
450 y.yp_viability = 0.99;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
451 y.yp_max = 100;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
452 y.yp_size = 0.01;
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
453 /* Now get what we have got */
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
454 y.name = obj["y_name"].toString();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
455 y.laboratory = obj["y_laboratory"].toString();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
456 y.product_id = obj["y_product_id"].toString();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
457 y.amount = obj["y_amount"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
458 y.type = obj["y_type"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
459 y.form = obj["y_form"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
460 y.min_temperature = obj["y_min_temperature"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
461 y.max_temperature = obj["y_max_temperature"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
462 y.flocculation = obj["y_flocculation"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
463 y.attenuation = obj["y_attenuation"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
464 y.cells = obj["y_cells"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
465 y.tolerance = obj["y_tolerance"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
466 y.inventory = obj["y_inventory"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
467 y.use = obj["y_use"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
468 y.sta1 = obj["y_sta1"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
469 y.bacteria = obj["y_bacteria"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
470 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
471 y.harvest_time = obj["y_harvest_time"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
472 y.pitch_temperature = obj["y_pitch_temperature"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
473 y.pofpos = obj["y_pofpos"].toInt() ? true:false;
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
474 y.zymocide = obj["y_zymocide"].toInt();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
475 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
476 y.sg_lo = obj["y_sg_lo"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
477 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
478 y.sg_hi = obj["y_sg_hi"].toDouble();
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
479 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
480 /*
1a7a5dffba58 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 * 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
482 */
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
483 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
484 "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
485 "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
486 yquery.bindValue(":name", y.name);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
487 yquery.bindValue(":laboratory", y.laboratory);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
488 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
489 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
490 if (yquery.first()) {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
491 if (y.tolerance == 0 || y.cells == 0) {
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
492 y.tolerance = yquery.value("tolerance").toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
493 y.cells = yquery.value("cells").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
494 }
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
495 y.sta1 = yquery.value("sta1").toInt() ? true:false;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
496 y.bacteria = yquery.value("bacteria").toInt() ? true:false;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
497 y.harvest_top = yquery.value("harvest_top").toInt() ? true:false;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
498 y.harvest_time = yquery.value("harvest_time").toInt();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
499 y.pitch_temperature = yquery.value("pitch_temperature").toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
500 y.pofpos = yquery.value("pofpos").toInt() ? true:false;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
501 y.zymocide = yquery.value("zymocide").toInt();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
502 y.gr_hl_lo = yquery.value("gr_hl_lo").toInt();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
503 y.sg_lo = yquery.value("sg_lo").toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
504 y.gr_hl_hi = yquery.value("gr_hl_hi").toInt();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
505 y.sg_hi = yquery.value("sg_hi").toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
506 y.inventory = yquery.value("inventory").toDouble();
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
507 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
508 } else {
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
509 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
510 }
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
511 /*
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
512 * Yeast Pack.
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
513 */
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
514 if (obj.contains("y_package") && obj["y_package"].isObject()) {
485
83b5c2b3c414 Database upgrade will let the yeastpack cells at 0. Disabled some debug messages needed for development. Updated yeastpack editor tooltips.
Michiel Broek <mbroek@mbse.eu>
parents: 482
diff changeset
515 // qDebug() << "y_package object present";
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
516 QJsonObject package = obj.value("y_package").toObject();
487
04c67c9f903c Clean debug log settings after last changes.
Michiel Broek <mbroek@mbse.eu>
parents: 485
diff changeset
517 // qDebug() << "yeasts_Json package" << i << package;
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
518 y.yp_uuid = package["uuid"].toString();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
519 y.yp_package = package["package"].toString();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
520 y.yp_cells = package["cells"].toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
521 y.yp_viability = package["viability"].toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
522 y.yp_max = package["max"].toInt();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
523 y.yp_size = package["size"].toDouble();
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
524 }
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
525
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
526 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
527 }
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
528 // qDebug() << "yeasts" << prod->yeasts.size();
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
529 }
1a7a5dffba58 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 } else {
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
531 qInfo() << "empty yeasts";
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
532 }
1a7a5dffba58 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
1a7a5dffba58 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 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
535 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
536 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
537 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
538 if (parseError.error != QJsonParseError::NoError) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
539 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
540 } 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
541 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
542 QJsonObject obj = mashs.array().at(i).toObject();
287
83e66c6b6e07 Renamed struct Mashs to MashSteps
Michiel Broek <mbroek@mbse.eu>
parents: 284
diff changeset
543 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
544 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
545 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
546 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
547 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
548 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
549 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
550 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
551 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
552 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
553 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
554 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
555 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
556 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
557 }
1a7a5dffba58 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 }
1a7a5dffba58 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 } else {
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
560 qInfo() << "empty mashs";
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
561 }
432
f189af715073 Removed several debug logmessages in tab 3 and database load.
Michiel Broek <mbroek@mbse.eu>
parents: 423
diff changeset
562 // qDebug() << "mashs" << prod->mashs.size();
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
563
521
5fbe71d69fe5 Clear mash measurments when duplicating a product.
Michiel Broek <mbroek@mbse.eu>
parents: 519
diff changeset
564 qInfo() << "loadProduct" << prod->record << "done";
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
565 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
566 }
1a7a5dffba58 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
1a7a5dffba58 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
1a7a5dffba58 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
1a7a5dffba58 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
1a7a5dffba58 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 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
572 {
1a7a5dffba58 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 QSqlQuery query;
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
574 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
575
1a7a5dffba58 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 if (prod->record == -1) {
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
577 sql = "INSERT INTO products SET ";
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
578 } else {
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
579 sql = "UPDATE products SET ";
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
580 }
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
581 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
582 "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
583 "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
584 "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
585 "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
586 "eq_tun_specific_heat=:eq_tun_specific_heat, eq_tun_material=:eq_tun_material, eq_tun_height=:eq_tun_height, "
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 433
diff changeset
587 "eq_top_up_water=:eq_top_up_water, eq_trub_loss=:eq_trub_loss, eq_evap_rate=:eq_evap_rate, "
423
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
588 "eq_boil_time=:eq_boil_time, eq_top_up_kettle=:eq_top_up_kettle, eq_notes=:eq_notes, "
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
589 "eq_lauter_deadspace=:eq_lauter_deadspace, eq_kettle_volume=:eq_kettle_volume, "
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
590 "eq_kettle_height=:eq_kettle_height, eq_mash_volume=:eq_mash_volume, eq_mash_max=:eq_mash_max, "
423
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
591 "eq_chiller_type=:eq_chiller_type, eq_chiller_to79=:eq_chiller_to79, eq_chiller_volume=:eq_chiller_volume, "
8cb46020796a Adjusted chiller_loss default value to 0.4. Disabled product fields eq_calc_boil_volume, eq_hop_utilization, eq_lauter_volume and eq_lauter_height. Added eq_chiller_type, eq_chiller_to79, eq_chiller_volume, eq_chiller_lpm, eq_chiller_loss with default values for immersion chilling. Load these values from new selected equipment. Changed edit product tab 2 to show new the new fields and removed the obsolete fields.
Michiel Broek <mbroek@mbse.eu>
parents: 384
diff changeset
592 "eq_chiller_lpm=:eq_chiller_lpm, eq_chiller_loss=:eq_chiller_loss, "
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
593 "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
594 "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
595 "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
596 "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
597 "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
598 "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
599 "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
600 "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
601 "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
602 "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
603 "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
604 "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
605 "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
606 "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
607 "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
608 "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
609 "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
610 "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
611 "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
612 "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
613 "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
614 "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
615 "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
616 "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
617 "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
618 "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
619 "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
620 "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
621 "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
622 "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
623 "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
624 "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
625 "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
626 "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
627 "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
628 "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
629 "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
630 "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
631 "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
632 "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
633 "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
634 "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
635 "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
636 "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
637 "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
638 "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
639 "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
640 "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
641 "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
642 "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
643 "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
644 "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
645 "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
646 "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
647 "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
648 "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
649 "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
650 "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
651 "json_yeasts=:json_yeasts, json_mashs=:json_mashs");
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
652
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
653 if (prod->record == -1) {
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
654 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
655 } else {
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
656 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
657 }
1a7a5dffba58 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
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
659 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
660 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
661 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
662 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
663 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
664 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
665 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
666 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
667 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
668 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
669 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
670 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
671 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
672 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
673 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
674 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
675 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
676 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
677 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
678 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
679 query.bindValue(":eq_top_up_water", round(prod->eq_top_up_water * 10) / 10);
458
ac216a75ca9b Renamed trub_chiller_loss fields to trub_loss
Michiel Broek <mbroek@mbse.eu>
parents: 433
diff changeset
680 query.bindValue(":eq_trub_loss", round(prod->eq_trub_loss * 10) / 10);
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
681 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
682 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
683 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
684 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
685 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
686 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
687 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
688 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
689 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
690 query.bindValue(":eq_efficiency", round(prod->eq_efficiency * 10) / 10);
433
40d4d2bb5f11 Forgot to save the new eq_chiller_* fields in products.
Michiel Broek <mbroek@mbse.eu>
parents: 432
diff changeset
691 query.bindValue(":eq_chiller_type", prod->eq_chiller_type);
40d4d2bb5f11 Forgot to save the new eq_chiller_* fields in products.
Michiel Broek <mbroek@mbse.eu>
parents: 432
diff changeset
692 query.bindValue(":eq_chiller_to79", round(prod->eq_chiller_to79));
40d4d2bb5f11 Forgot to save the new eq_chiller_* fields in products.
Michiel Broek <mbroek@mbse.eu>
parents: 432
diff changeset
693 query.bindValue(":eq_chiller_volume", round(prod->eq_chiller_volume * 100) / 100);
40d4d2bb5f11 Forgot to save the new eq_chiller_* fields in products.
Michiel Broek <mbroek@mbse.eu>
parents: 432
diff changeset
694 query.bindValue(":eq_chiller_lpm", round(prod->eq_chiller_lpm * 100) / 100);
40d4d2bb5f11 Forgot to save the new eq_chiller_* fields in products.
Michiel Broek <mbroek@mbse.eu>
parents: 432
diff changeset
695 query.bindValue(":eq_chiller_loss", round(prod->eq_chiller_loss * 100) / 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
696 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
697 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
698 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
699 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
700 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
701 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
702 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
703 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
704 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
705 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
706 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
707 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
708 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
709 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
710 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
711 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
712 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
713 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
714 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
715 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
716 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
717 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
718 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
719 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
720 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
721 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
722 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
723 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
724 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
725 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
726 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
727 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
728 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
729 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
730 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
731 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
732 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
733 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
734 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
735 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
736 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
737 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
738 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
739 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
740 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
741 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
742 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
743 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
744 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
745 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
746 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
747 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
748 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
749 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
750 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
751 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
752 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
753 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
754 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
755 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
756 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
757 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
758 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
759 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
760 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
761 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
762 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
763 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
764 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
765 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
766 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
767 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
768 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
769 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
770 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
771 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
772 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
773 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
774 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
775 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
776 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
777 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
778 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
779 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
780 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
781 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
782 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
783 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
784 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
785 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
786 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
787 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
788 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
789 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
790 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
791 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
792 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
793 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
794 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
795 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
796 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
797 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
798 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
799 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
800 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
801 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
802 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
803 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
804 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
805 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
806 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
807 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
808 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
809 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
810 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
811 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
812 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
813 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
814 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
815 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
816 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
817 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
818 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
819 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
820 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
821 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
822 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
823 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
824 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
825 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
826 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
827 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
828 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
829 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
830 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
831 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
832 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
833 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
834 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
835 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
836 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
837 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
838 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
839 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
840 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
841 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
842 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
843 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
844 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
845 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
846 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
847 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
848 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
849 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
850 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
851 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
852 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
853 query.bindValue(":starter_sg", round(prod->starter_sg * 1000) / 1000);
478
a3653722b0d6 Add dry primary yeasts weights to get a mixed total. Use the parameters from the first and mmost used yeast. Changed in products and recipes. Recalculated WLP purepitch viability and planned next generation purepitch. We need a better way to set these parameters like a packages table. Fixed several yeast edit values due to adding a STA1 column. Removed several unneeded refresh_all() calls as they screwed the sorting of the yeasts during edit. Added STA1 display to recipes. Changed products database starter_viability from integer to float.
Michiel Broek <mbroek@mbse.eu>
parents: 458
diff changeset
854 query.bindValue(":starter_viability", round(prod->starter_viability * 10) / 10);
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
855 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
856 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
857 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
858 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
859 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
860 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
861 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
862 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
863 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
864 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
865 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
866 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
867 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
868 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
869 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
870
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
871 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
872 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
873 } 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
874 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
875 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
876 QJsonObject obj;
283
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
877 obj.insert("f_name", prod->fermentables.at(i).name);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
878 obj.insert("f_origin", prod->fermentables.at(i).origin);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
879 obj.insert("f_supplier", prod->fermentables.at(i).supplier);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
880 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
881 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
882 obj.insert("f_type", prod->fermentables.at(i).type);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
883 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
884 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
885 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
886 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
887 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
888 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
889 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
890 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
891 obj.insert("f_graintype", prod->fermentables.at(i).graintype);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
892 obj.insert("f_added", prod->fermentables.at(i).added);
242a68fa7186 Member names for fermentables normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 282
diff changeset
893 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
894 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
895 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
896 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
897 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
898 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
899 // 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
900 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
901 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
902 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
903 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
904 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
905 }
1a7a5dffba58 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
1a7a5dffba58 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 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
908 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
909 } 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
910 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
911 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
912 QJsonObject obj;
282
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
913 obj.insert("h_name", prod->hops.at(i).name);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
914 obj.insert("h_origin", prod->hops.at(i).origin);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
915 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
916 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
917 obj.insert("h_type", prod->hops.at(i).type);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
918 obj.insert("h_form", prod->hops.at(i).form);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
919 obj.insert("h_useat", prod->hops.at(i).useat);
d1d208a857b0 Member names for hops normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 280
diff changeset
920 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
921 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
922 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
923 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
924 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
925 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
926 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
927 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
928 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
929 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
930 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
931 // 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
932 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
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 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
935 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
936 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
937 }
1a7a5dffba58 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
1a7a5dffba58 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 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
940 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
941 } 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
942 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
943 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
944 QJsonObject obj;
294
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
945 obj.insert("m_name", prod->miscs.at(i).name);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
946 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
947 obj.insert("m_type", prod->miscs.at(i).type);
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
948 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
949 obj.insert("m_time", round(prod->miscs.at(i).time));
afc763d9fd89 Fixed losing miscs ingredients.
Michiel Broek <mbroek@mbse.eu>
parents: 287
diff changeset
950 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
951 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
952 // 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
953 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
954 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
955 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
956 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
957 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
958 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
959
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
960 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
961 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
962 } 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
963 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
964 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
965 QJsonObject obj;
284
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
966 obj.insert("y_name", prod->yeasts.at(i).name);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
967 obj.insert("y_laboratory", prod->yeasts.at(i).laboratory);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
968 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
969 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
970 obj.insert("y_type", prod->yeasts.at(i).type);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
971 obj.insert("y_form", prod->yeasts.at(i).form);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
972 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
973 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
974 obj.insert("y_flocculation", prod->yeasts.at(i).flocculation);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
975 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
976 obj.insert("y_cells", prod->yeasts.at(i).cells);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
977 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
978 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
979 obj.insert("y_use", prod->yeasts.at(i).use);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
980 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
981 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
982 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
983 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
984 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
985 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
986 obj.insert("y_zymocide", prod->yeasts.at(i).zymocide);
33bb98c33e6a Member names for yeasts normalized.
Michiel Broek <mbroek@mbse.eu>
parents: 283
diff changeset
987 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
988 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
989 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
990 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
991 obj.insert("y_cost", round(prod->yeasts.at(i).cost * 1000) / 1000);
519
1b9e887392aa Fix export recipe to new product crash
Michiel Broek <mbroek@mbse.eu>
parents: 487
diff changeset
992 if (! prod->yeasts.at(i).yp_uuid.isNull() && (prod->yeasts.at(i).yp_uuid.length() == 36)) {
485
83b5c2b3c414 Database upgrade will let the yeastpack cells at 0. Disabled some debug messages needed for development. Updated yeastpack editor tooltips.
Michiel Broek <mbroek@mbse.eu>
parents: 482
diff changeset
993 // qDebug() << "yeasts_Json append package";
482
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
994 QJsonObject package;
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
995 package.insert("uuid", prod->yeasts.at(i).yp_uuid);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
996 package.insert("package", prod->yeasts.at(i).yp_package);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
997 package.insert("cells", prod->yeasts.at(i).yp_cells);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
998 package.insert("viability", round(prod->yeasts.at(i).yp_viability * 10000) / 10000);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
999 package.insert("max", prod->yeasts.at(i).yp_max);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
1000 package.insert("size", round(prod->yeasts.at(i).yp_size * 100000) / 100000);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
1001 obj.insert("y_package", package);
e13763ec829f Expanded Yeast edit popup with a Yeast Pack dropdown list. Prepared database product read and write with values for yeast package. They will be stored as json object in the yeast records.
Michiel Broek <mbroek@mbse.eu>
parents: 478
diff changeset
1002 }
487
04c67c9f903c Clean debug log settings after last changes.
Michiel Broek <mbroek@mbse.eu>
parents: 485
diff changeset
1003 // 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
1004 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
1005 }
1a7a5dffba58 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 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
1007 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
1008 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
1009 }
1a7a5dffba58 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
1a7a5dffba58 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 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
1012 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
1013 } 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
1014 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
1015 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
1016 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
1017 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
1018 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
1019 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
1020 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
1021 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
1022 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
1023 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
1024 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
1025 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
1026 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
1027 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
1028 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
1029 // 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
1030 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
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 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
1033 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
1034 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
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
1a7a5dffba58 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 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
1038 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
1039 } 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
1040 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
1041 }
1a7a5dffba58 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 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
1043 if (query.lastError().isValid()) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
1044 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
1045 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
1046 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
1047 .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
1048 .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
1049 .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
1050 return false;
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1051 }
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1052
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1053 /*
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1054 * 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
1055 * 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
1056 * 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
1057 */
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1058 if (prod->record < 0) {
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1059 QVariant id = query.lastInsertId();
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1060 prod->record = id.toInt();
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1061 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
1062 } else {
262
6bab9440aeb9 Code cleanup in database functions.
Michiel Broek <mbroek@mbse.eu>
parents: 256
diff changeset
1063 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
1064 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1065 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
1066 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1067
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1068
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1069 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
1070 {
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1071 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
1072
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1073 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
1074 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
1075 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
1076 if (query.lastError().isValid()) {
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
1077 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
1078 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
1079 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
1080 .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
1081 .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
1082 .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
1083 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
1084 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1085
256
c136bd15b084 Make use of new logging handler.
Michiel Broek <mbroek@mbse.eu>
parents: 248
diff changeset
1086 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
1087 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
1088 }
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1089
1a7a5dffba58 Moved product record load, save and delete to a separate file and use passed record data.
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1090

mercurial