src/EditEquipment.cpp

changeset 385
09af9f46518f
parent 90
2396457a8167
child 419
d49f38cc76a0
equal deleted inserted replaced
384:d68826df8b63 385:09af9f46518f
70 */ 70 */
71 query2.prepare("SELECT eq_name FROM products WHERE eq_name=:name"); 71 query2.prepare("SELECT eq_name FROM products WHERE eq_name=:name");
72 query2.bindValue(":name", query.value(1).toString()); 72 query2.bindValue(":name", query.value(1).toString());
73 query2.exec(); 73 query2.exec();
74 inuse = query2.size(); 74 inuse = query2.size();
75 qDebug() << "in use" << inuse;
76 ui->nameEdit->setReadOnly(inuse > 0); 75 ui->nameEdit->setReadOnly(inuse > 0);
77 } else { 76 } else {
78 /* Set some defaults */ 77 /* Set some defaults */
79 ui->boil_sizeEdit->setValue(18); 78 ui->boil_sizeEdit->setValue(18);
80 ui->batch_sizeEdit->setValue(15.3); 79 ui->batch_sizeEdit->setValue(15.3);
130 } 129 }
131 130
132 131
133 EditEquipment::~EditEquipment() 132 EditEquipment::~EditEquipment()
134 { 133 {
135 qDebug() << "EditEquipment done";
136 delete ui; 134 delete ui;
137 emit entry_changed(); 135 emit entry_changed();
138 } 136 }
139 137
140 138
219 } else { 217 } else {
220 query.bindValue(":recno", this->recno); 218 query.bindValue(":recno", this->recno);
221 } 219 }
222 query.exec(); 220 query.exec();
223 if (query.lastError().isValid()) { 221 if (query.lastError().isValid()) {
224 qDebug() << "EditEquipment" << query.lastError(); 222 qWarning() << "EditEquipment" << query.lastError();
225 QMessageBox::warning(this, tr("Database error"), 223 QMessageBox::warning(this, tr("Database error"),
226 tr("MySQL error: %1\n%2\n%3") 224 tr("MySQL error: %1\n%2\n%3")
227 .arg(query.lastError().nativeErrorCode()) 225 .arg(query.lastError().nativeErrorCode())
228 .arg(query.lastError().driverText()) 226 .arg(query.lastError().driverText())
229 .arg(query.lastError().databaseText())); 227 .arg(query.lastError().databaseText()));
236 this->textIsChanged = false; 234 this->textIsChanged = false;
237 WindowTitle(); 235 WindowTitle();
238 } 236 }
239 237
240 238
239 void EditEquipment::on_cloneButton_clicked()
240 {
241 QSqlQuery query;
242
243 query.prepare("INSERT INTO inventory_equipments SET name=:name, boil_size=:boil_size, "
244 "batch_size=:batch_size, tun_volume=:tun_volume, tun_weight=:tun_weight, "
245 "tun_specific_heat=:tun_specific_heat, tun_material=:tun_material, tun_height=:tun_height, "
246 "top_up_water=:top_up_water, trub_chiller_loss=:chiller_loss, evap_rate=:evap_rate, "
247 "boil_time=:boil_time, calc_boil_volume=:calcboil, top_up_kettle=:top_up_kettle, "
248 "hop_utilization=:hopfactor, notes=:notes, lauter_volume=:lauter_volume, "
249 "lauter_height=:lauter_height, lauter_deadspace=:lauter_deadspace, kettle_volume=:kettle_volume, "
250 "kettle_height=:kettle_height, mash_volume=:mash_volume, mash_max=:mash_max, "
251 "efficiency=:efficiency, uuid=:uuid");
252
253 query.bindValue(":name", ui->nameEdit->text() + " [copy]");
254 query.bindValue(":boil_size", QString("%1").arg(ui->boil_sizeEdit->value(), 2, 'f', 1, '0'));
255 query.bindValue(":batch_size", QString("%1").arg(ui->batch_sizeEdit->value(), 3, 'f', 2, '0'));
256 query.bindValue(":tun_volume", QString("%1").arg(ui->tun_volumeEdit->value(), 2, 'f', 1, '0'));
257 query.bindValue(":tun_weight", QString("%1").arg(ui->tun_weightEdit->value(), 2, 'f', 1, '0'));
258 query.bindValue(":tun_specific_heat", QString("%1").arg(ui->tun_specific_heatEdit->value(), 4, 'f', 3, '0'));
259 query.bindValue(":tun_material", ui->tun_materialEdit->currentIndex());
260 query.bindValue(":tun_height", QString("%1").arg(ui->tun_heightEdit->value() / 100, 4, 'f', 3, '0'));
261 query.bindValue(":top_up_water", QString("%1").arg(ui->top_up_waterEdit->value(), 2, 'f', 1, '0'));
262 query.bindValue(":chiller_loss", QString("%1").arg(ui->chiller_lossEdit->value(), 2, 'f', 1, '0'));
263 query.bindValue(":evap_rate", QString("%1").arg(ui->evap_rateEdit->value(), 3, 'f', 2, '0'));
264 query.bindValue(":boil_time", QString("%1").arg(ui->boil_timeEdit->value(), 1, 'f', 0, '0'));
265 query.bindValue(":calcboil", ui->calcboilEdit->isChecked() ? 1:0);
266 query.bindValue(":top_up_kettle", QString("%1").arg(ui->top_up_kettleEdit->value(), 2, 'f', 1, '0'));
267 query.bindValue(":hopfactor", QString("%1").arg(ui->hopfactorEdit->value(), 1, 'f', 0, '0'));
268 query.bindValue(":notes", ui->notesEdit->toPlainText());
269 query.bindValue(":lauter_volume", QString("%1").arg(ui->lauter_volumeEdit->value(), 2, 'f', 1, '0'));
270 query.bindValue(":lauter_height", QString("%1").arg(ui->lauter_heightEdit->value() / 100, 4, 'f', 3, '0'));
271 query.bindValue(":lauter_deadspace", QString("%1").arg(ui->lauter_deadspaceEdit->value(), 2, 'f', 1, '0'));
272 query.bindValue(":kettle_volume", QString("%1").arg(ui->kettle_volumeEdit->value(), 2, 'f', 1, '0'));
273 query.bindValue(":kettle_height", QString("%1").arg(ui->kettle_heightEdit->value() / 100, 4, 'f', 3, '0'));
274 query.bindValue(":mash_volume", QString("%1").arg(ui->mash_volumeEdit->value(), 2, 'f', 1, '0'));
275 query.bindValue(":mash_max", QString("%1").arg(ui->mash_maxEdit->value(), 2, 'f', 1, '0'));
276 query.bindValue(":efficiency", QString("%1").arg(ui->efficiencyEdit->value(), 2, 'f', 1, '0'));
277 query.bindValue(":uuid", QUuid::createUuid().toString().mid(1, 36));
278 query.exec();
279 if (query.lastError().isValid()) {
280 qWarning() << "EditEquipment" << query.lastError();
281 QMessageBox::warning(this, tr("Database error"),
282 tr("MySQL error: %1\n%2\n%3")
283 .arg(query.lastError().nativeErrorCode())
284 .arg(query.lastError().driverText())
285 .arg(query.lastError().databaseText()));
286 } else {
287 qDebug() << "EditEquipment Saved";
288 }
289 }
290
291
241 void EditEquipment::on_deleteButton_clicked() 292 void EditEquipment::on_deleteButton_clicked()
242 { 293 {
243 QSqlQuery query; 294 QSqlQuery query;
295
296 int rc = QMessageBox::warning(this, tr("Delete equipment"), tr("Delete %1").arg(ui->nameEdit->text()),
297 QMessageBox::Yes | QMessageBox::No, QMessageBox::No);
298 if (rc == QMessageBox::No)
299 return;
244 300
245 query.prepare("DELETE FROM inventory_equipments WHERE record = :recno"); 301 query.prepare("DELETE FROM inventory_equipments WHERE record = :recno");
246 query.bindValue(":recno", this->recno); 302 query.bindValue(":recno", this->recno);
247 query.exec(); 303 query.exec();
248 if (query.lastError().isValid()) { 304 if (query.lastError().isValid()) {
249 qDebug() << "EditEquipment" << query.lastError(); 305 qWarning() << "EditEquipment" << query.lastError();
250 QMessageBox::warning(this, tr("Database error"), 306 QMessageBox::warning(this, tr("Database error"),
251 tr("MySQL error: %1\n%2\n%3") 307 tr("MySQL error: %1\n%2\n%3")
252 .arg(query.lastError().nativeErrorCode()) 308 .arg(query.lastError().nativeErrorCode())
253 .arg(query.lastError().driverText()) 309 .arg(query.lastError().driverText())
254 .arg(query.lastError().databaseText())); 310 .arg(query.lastError().databaseText()));

mercurial