diff --git a/src/core/marketplace.cpp b/src/core/marketplace.cpp index 1b074cf..d910b07 100644 --- a/src/core/marketplace.cpp +++ b/src/core/marketplace.cpp @@ -73,6 +73,14 @@ int Marketplace::getNumSellersDelete() return count; } +int Marketplace::getNumArticlesSold() +{ + int sum = std::accumulate(sellers_.begin(), sellers_.end(), 0, [](int a, const auto& seller) { + return a + seller->numArticlesSold(); + }); + return sum; +} + void Marketplace::sortSellers() { std::sort(sellers_.begin(), sellers_.end()); } Seller* Marketplace::findSellerWithSellerNo(int sellerNo) diff --git a/src/core/marketplace.h b/src/core/marketplace.h index 3dd848f..5fc8ae2 100644 --- a/src/core/marketplace.h +++ b/src/core/marketplace.h @@ -29,6 +29,7 @@ class Marketplace int getNextSellerNo(); int getNextArticleNo(); int getNumSellersDelete(); + int getNumArticlesSold(); BasketVec& getBasket(); int getBasketSumInCent(); std::string getBasketSumAsString(); diff --git a/src/gui/reportdialog.cpp b/src/gui/reportdialog.cpp index 7f7f10a..e3d1857 100644 --- a/src/gui/reportdialog.cpp +++ b/src/gui/reportdialog.cpp @@ -144,13 +144,13 @@ void ReportDialog::onPrintReportButtonClicked() painter.setFont(fixedFont); QString content("Gesamtstatistik\n===============\n\n"); content += QString("Registrierte Verkäufer: %1\n").arg(sellers.size(), 6); - content += QString("Verkaufte Artikel: %1\n\n").arg(6, 6); - content += QString("Gesamtumsatz: %1\n").arg(market_->getOverallSumAsString().c_str(), 10); + content += QString("Verkaufte Artikel: %1\n\n").arg(market_->getNumArticlesSold(), 6); + content += QString(" Gesamtumsatz: %1\n").arg(market_->getOverallSumAsString().c_str(), 10); content += - QString("Ausgezahlt: %1\n") + QString(" Ausgezahlt: %1\n") .arg(market_->getOverallPaymentAsString(feeInPercent, maxFeeInEuro * 100).c_str(), 10); content += - QString("Verbleibend: %1\n") + QString(" Verbleibend: %1\n") .arg(market_->getOverallRevenueAsString(feeInPercent, maxFeeInEuro * 100).c_str(), 10); painter.drawText(QRect(0, 50, width, height), Qt::AlignLeft, content);