src/ImportXML.cpp

changeset 279
8540fd0166e7
parent 278
ed562a2a4ca4
child 281
af3dac6ff6c3
equal deleted inserted replaced
278:ed562a2a4ca4 279:8540fd0166e7
506 if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "HOP")) { 506 if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "HOP")) {
507 /* 507 /*
508 * Hop 508 * Hop
509 */ 509 */
510 total++; 510 total++;
511 Hops *h = new Hops;
512 h->h_inventory = h->h_cost = 0;
513 h->h_notes = h->h_origin = h->h_substitutes = "";
514 h->h_beta = h->h_hsi = h->h_humulene = h->h_caryophyllene = h->h_cohumulone = h->h_myrcene = h->h_total_oil = 0;
511 515
512 while (xml->readNext()) { 516 while (xml->readNext()) {
513 if (xml->atEnd()) 517 if (xml->atEnd())
514 break; 518 break;
515 if ((xml->tokenType() == QXmlStreamReader::EndElement) && (xml->name() == "HOP")) { 519 if ((xml->tokenType() == QXmlStreamReader::EndElement) && (xml->name() == "HOP")) {
516 // query.exec(sql); 520 query.prepare("INSERT INTO inventory_hops SET name=:name, alpha=:alpha, beta=:beta, "
521 "humulene=:humulene, caryophyllene=:cary, cohumulone=:cohumulone, myrcene=:myrcene, "
522 "hsi=:hsi, type=:type, form=:form, notes=:notes, origin=:origin, substitutes=:substitutes, "
523 "total_oil=:oil, uuid = :uuid");
524 query.bindValue(":name", h->h_name);
525 query.bindValue(":alpha", QString("%1").arg(h->h_alpha, 2, 'f', 1, '0'));
526 query.bindValue(":beta", QString("%1").arg(h->h_beta, 2, 'f', 1, '0'));
527 query.bindValue(":humulene", QString("%1").arg(h->h_humulene, 2, 'f', 1, '0'));
528 query.bindValue(":cary", QString("%1").arg(h->h_caryophyllene, 2, 'f', 1, '0'));
529 query.bindValue(":cohumulone", QString("%1").arg(h->h_cohumulone, 2, 'f', 1, '0'));
530 query.bindValue(":myrcene", QString("%1").arg(h->h_myrcene, 2, 'f', 1, '0'));
531 query.bindValue(":hsi", QString("%1").arg(h->h_hsi, 2, 'f', 1, '0'));
532 query.bindValue(":type", h->h_type);
533 query.bindValue(":form", h->h_form);
534 query.bindValue(":notes", h->h_notes);
535 query.bindValue(":origin", h->h_origin);
536 query.bindValue(":substitutes", h->h_substitutes);
537 query.bindValue(":oil", QString("%1").arg(h->h_total_oil, 2, 'f', 1, '0'));
538 query.bindValue(":uuid", QUuid::createUuid().toString().mid(1, 36));
539 query.exec();
517 if (query.lastError().isValid()) { 540 if (query.lastError().isValid()) {
518 // qWarning() << sql << query.lastError(); 541 qWarning() << query.lastError();
519 errors++; 542 errors++;
520 } 543 }
521 ui->progressBar->setValue(round(100 * xml->characterOffset() / fsize)); 544 ui->progressBar->setValue(round(100 * xml->characterOffset() / fsize));
522 break; 545 break;
523 } 546 }
524 if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "VERSION")) { 547 if ((xml->tokenType() == QXmlStreamReader::StartElement) && (
548 (xml->name() == "VERSION") || (xml->name() == "ALWAYS_ON_STOCK") ||
549 (xml->name() == "HARVEST_DATE") || (xml->name() == "DISPLAY_COST") ||
550 (xml->name() == "COST") || (xml->name() == "INVENTORY"))) {
525 // Ignore. 551 // Ignore.
552 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "NAME")) {
553 h->h_name = xml->readElementText();
554 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "ORIGIN")) {
555 h->h_origin = xml->readElementText();
556 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "NOTES")) {
557 h->h_notes = xml->readElementText();
558 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "FORM")) {
559 QString temp = xml->readElementText();
560 if (temp == "Plug")
561 h->h_form = 1;
562 else if (temp == "Leaf")
563 h->h_form = 2;
564 else if (temp == "Leaf wet")
565 h->h_form = 3;
566 else if (temp == "Cryo")
567 h->h_form = 4;
568 else
569 h->h_form = 0;
570 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "ALPHA")) {
571 h->h_alpha = xml->readElementText().toDouble();
572 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "TYPE")) {
573 QString temp = xml->readElementText();
574 if (temp == "Aroma")
575 h->h_type = 1;
576 else if (temp == "Both")
577 h->h_type = 2;
578 else
579 h->h_type = 0;
580 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "USE")) {
581 QString temp = xml->readElementText();
582 if (temp == "First wort")
583 h->h_useat = 1;
584 else if (temp == "Boil")
585 h->h_useat = 2;
586 else if (temp == "Aroma")
587 h->h_useat = 3;
588 else if (temp == "Whirlpool")
589 h->h_useat = 4;
590 else if (temp == "Dry hop")
591 h->h_useat = 5;
592 else
593 h->h_useat = 0;
594 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "BETA")) {
595 h->h_beta = xml->readElementText().toDouble();
596 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "HSI")) {
597 h->h_hsi = xml->readElementText().toDouble();
598 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "SUBSTITUTES")) {
599 h->h_substitutes = xml->readElementText();
600 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "HUMULENE")) {
601 h->h_humulene = xml->readElementText().toDouble();
602 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) &&
603 ((xml->name() == "CARYOPHYLLENE") || (xml->name() == "CAROPHYLLENE"))) {
604 h->h_caryophyllene = xml->readElementText().toDouble();
605 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "COHUMULONE")) {
606 h->h_cohumulone = xml->readElementText().toDouble();
607 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "MYRCENE")) {
608 h->h_myrcene = xml->readElementText().toDouble();
609 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "TOTAL_OIL")) {
610 h->h_total_oil = xml->readElementText().toDouble();
526 } else { 611 } else {
527 if (xml->tokenType() == QXmlStreamReader::StartElement) 612 if (xml->tokenType() == QXmlStreamReader::StartElement)
528 qDebug() << "2 " << xml->tokenType() << xml->name(); 613 qDebug() << "2 " << xml->tokenType() << xml->name();
529 } 614 }
530 } 615 }
557 errors++; 642 errors++;
558 } 643 }
559 ui->progressBar->setValue(round(100 * xml->characterOffset() / fsize)); 644 ui->progressBar->setValue(round(100 * xml->characterOffset() / fsize));
560 break; 645 break;
561 } 646 }
562 if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "VERSION")) { 647 if ((xml->tokenType() == QXmlStreamReader::StartElement) && (
648 (xml->name() == "VERSION")
649 )) {
563 // Ignore. 650 // Ignore.
651 } else if ((xml->tokenType() == QXmlStreamReader::StartElement) && (xml->name() == "NAME")) {
564 } else { 652 } else {
565 if (xml->tokenType() == QXmlStreamReader::StartElement) 653 if (xml->tokenType() == QXmlStreamReader::StartElement)
566 qDebug() << "2 " << xml->tokenType() << xml->name(); 654 qDebug() << "2 " << xml->tokenType() << xml->name();
567 } 655 }
568 } 656 }

mercurial