diff --git a/src/core/csvreader.cpp b/src/core/csvreader.cpp index 18a0a04..830b25a 100644 --- a/src/core/csvreader.cpp +++ b/src/core/csvreader.cpp @@ -39,11 +39,6 @@ std::size_t CsvReader::readSellersFromFile(const fs::path &filePath, Marketplace continue; } - if (row[2].get().empty() && row[3].get().empty()) { - ++rowCount; - continue; - } - auto seller = std::make_unique(); seller->setSellerNo(row[0].get()); if (row[1].is_int()) { @@ -51,10 +46,19 @@ std::size_t CsvReader::readSellersFromFile(const fs::path &filePath, Marketplace } else { seller->setNumArticlesOffered(0); } - std::string firstName = row[2].get(); - seller->setFirstName(trim(firstName)); - std::string lastName = row[3].get(); - seller->setLastName(trim(lastName)); + + // If both, first name and last name, are empty, use N. N. + // Else, use the real values. + if (row[2].get().empty() && row[3].get().empty()) { + seller->setFirstName("N."); + seller->setLastName("N."); + } else { + std::string firstName = row[2].get(); + seller->setFirstName(trim(firstName)); + std::string lastName = row[3].get(); + seller->setLastName(trim(lastName)); + } + market->getSellers().push_back(std::move(seller)); rowCount++; } diff --git a/src/core/excelreader.cpp b/src/core/excelreader.cpp index 82440ca..34e10c8 100644 --- a/src/core/excelreader.cpp +++ b/src/core/excelreader.cpp @@ -28,17 +28,22 @@ std::size_t ExcelReader::readSellersFromFile(const fs::path &filePath, Marketpla continue; } - // Skip the row if the seller has neither a first name nor a surname - if (row[2].value().empty() && row[3].value().empty()) { - continue; - } auto seller = std::make_unique(); seller->setSellerNo(row[0].value()); seller->setNumArticlesOffered(row[1].value()); - std::string firstName = row[2].value(); - seller->setFirstName(trim(firstName)); - std::string lastName = row[3].value(); - seller->setLastName(trim(lastName)); + + // If both, first name and last name, are empty, use N. N. + // Else, use the real values. + if (row[2].value().empty() && row[3].value().empty()) { + seller->setFirstName("N."); + seller->setLastName("N."); + } else { + std::string firstName = row[2].value(); + seller->setFirstName(trim(firstName)); + std::string lastName = row[3].value(); + seller->setLastName(trim(lastName)); + } + market->getSellers().push_back(std::move(seller)); }