From 0c72b319535bd4b5ab30b1faf5a60012373d5370 Mon Sep 17 00:00:00 2001 From: Martin Brodbeck Date: Mon, 9 Jul 2018 16:06:27 +0200 Subject: [PATCH] New classes added --- src/core/article.cpp | 24 ++++++++++++++++++++++++ src/core/article.h | 27 +++++++++++++++++++++++++++ src/core/seller.cpp | 26 ++++++++++++++++++++++++++ src/core/seller.h | 30 ++++++++++++++++++++++++++++++ 4 files changed, 107 insertions(+) create mode 100644 src/core/article.cpp create mode 100644 src/core/article.h create mode 100644 src/core/seller.cpp create mode 100644 src/core/seller.h diff --git a/src/core/article.cpp b/src/core/article.cpp new file mode 100644 index 0000000..4ba0b33 --- /dev/null +++ b/src/core/article.cpp @@ -0,0 +1,24 @@ +#include "article.h" + +Article::Article() : Entity() +{} + +Article::Article(const std::shared_ptr sellerPtr) : Entity() +{ + this->sellerPtr = sellerPtr; +} + +void Article::setArticleNo(int articleNo) +{ + this->articleNo = articleNo; +} + +void Article::setPrice(int price) +{ + this->price = price; +} + +void Article::setDescription(const std::string& description) +{ + this->description = description; +} \ No newline at end of file diff --git a/src/core/article.h b/src/core/article.h new file mode 100644 index 0000000..cc25ffa --- /dev/null +++ b/src/core/article.h @@ -0,0 +1,27 @@ +#ifndef ARTICLE_H +#define ARTICLE_H + +#include "entity.h" +#include "seller.h" + +#include +#include + +class Seller; + +class Article : public Entity +{ +public: + Article(); + Article(std::shared_ptr sellerPtr); + void setArticleNo(int articleNo); + void setPrice(int price); + void setDescription(const std::string& description); +private: + std::shared_ptr sellerPtr{}; + int articleNo{}; + int price{}; + std::string description{}; +}; + +#endif \ No newline at end of file diff --git a/src/core/seller.cpp b/src/core/seller.cpp new file mode 100644 index 0000000..58861bd --- /dev/null +++ b/src/core/seller.cpp @@ -0,0 +1,26 @@ +#include "seller.h" + +void Seller::setSellerNo(int seller_no) +{ + this->sellerNo = seller_no; +} + +void Seller::setFirstName(const std::string& firstName) +{ + this->firstName = firstName; +} + +void Seller::setLastName(const std::string& lastName) +{ + this->lastName = lastName; +} + +void Seller::setNumberOfOfferedArticles(int number) +{ + numberOfOfferedArticles = number; +} + +size_t Seller::getNumberOfOfferedArticles() +{ + return articles.size(); +} \ No newline at end of file diff --git a/src/core/seller.h b/src/core/seller.h new file mode 100644 index 0000000..16edd98 --- /dev/null +++ b/src/core/seller.h @@ -0,0 +1,30 @@ +#ifndef SELLER_H +#define SELLER_H + +#include "entity.h" +#include "article.h" + +#include +#include + +class Article; + +class Seller : public Entity +{ + public: + void setSellerNo(int sellerNo); + void setFirstName(const std::string& firstName); + void setLastName(const std::string& lastName); + void setNumberOfOfferedArticles(int number); + + size_t getNumberOfOfferedArticles(); + + private: + int sellerNo{}; + int numberOfOfferedArticles{}; + std::string firstName{}; + std::string lastName{}; + std::vector
articles{}; +}; + +#endif \ No newline at end of file