--- a/src/DetailCO2meter.cpp Fri Nov 18 12:17:32 2022 +0100 +++ b/src/DetailCO2meter.cpp Fri Nov 18 16:57:02 2022 +0100 @@ -18,6 +18,7 @@ #include "ChartCarbonate.h" #include "../ui/ui_DetailCO2meter.h" #include "global.h" +#include "Utils.h" #include "MainWindow.h" @@ -62,7 +63,8 @@ void DetailCO2meter::refreshTable() { - QSqlQuery query; + QSqlQuery query, query2; + QString sql = ""; qDebug() << "refreshTable co2meter rec:" << this->recno; @@ -80,6 +82,34 @@ _beercode = query.value("beercode").toString(); _beername = query.value("beername").toString(); + sql = "SELECT " + "st_carb_min,st_carb_max,secondary_temp,primary_end_temp,bottle_carbonation_temp" + " FROM products WHERE code=:code AND name=:name"; + query2.prepare(sql); + query2.bindValue(":code", _beercode); + query2.bindValue(":name", _beername); + query2.exec(); + if (query2.next()) { + /* Get highest fermentation temperature. */ + double TSec = query2.value("secondary_temp").toDouble(); + if (TSec < 1) + TSec = query2.value("primary_end_temp").toDouble(); + if (TSec < 1) + TSec = 18; + + double carbtemp = query2.value("bottle_carbonation_temp").toDouble(); + double barmin = Utils::GetPressureBar(Utils::CarbCO2toS(query2.value("st_carb_min").toDouble(), TSec, 1), carbtemp); + double barmax = Utils::GetPressureBar(Utils::CarbCO2toS(query2.value("st_carb_max").toDouble(), TSec, 1), carbtemp); + ui->minVol->setValue(query2.value("st_carb_min").toDouble()); + ui->maxVol->setValue(query2.value("st_carb_max").toDouble()); + ui->minBar->setValue(barmin); + ui->maxBar->setValue(barmax); + qDebug() << " beerdata" << TSec << carbtemp << barmin << barmax; + + ui->barMeter->setNominal(barmin); + ui->barMeter->setCritical(barmax); + } + ui->uuidEdit->setText(_uuid); ui->systemEdit->setText(_node+"/"+_alias); ui->codePick->setItemText(0, _alias.toUpper()+" - "+_alias); @@ -123,7 +153,6 @@ DetailCO2meter::~DetailCO2meter() { - qDebug() << "DetailCO2meter done"; delete ui; emit entry_changed(); }