2018-07-09 16:06:27 +02:00
|
|
|
#ifndef ARTICLE_H
|
|
|
|
#define ARTICLE_H
|
|
|
|
|
2019-10-04 14:05:19 +02:00
|
|
|
#include "entityuuid.h"
|
2018-07-09 16:06:27 +02:00
|
|
|
|
|
|
|
#include <memory>
|
2018-07-11 13:25:39 +02:00
|
|
|
#include <string>
|
2018-07-09 16:06:27 +02:00
|
|
|
|
|
|
|
class Seller;
|
2018-07-12 13:36:13 +02:00
|
|
|
class Sale;
|
2018-07-09 16:06:27 +02:00
|
|
|
|
2019-10-04 14:05:19 +02:00
|
|
|
class Article : public EntityUuid
|
2018-07-09 16:06:27 +02:00
|
|
|
{
|
2022-07-07 15:21:46 +02:00
|
|
|
public:
|
2018-07-20 11:52:26 +02:00
|
|
|
Article() = default;
|
2018-07-21 19:24:56 +02:00
|
|
|
Article(int price);
|
2022-07-07 15:21:46 +02:00
|
|
|
Article(const Article &) = delete;
|
2019-10-07 08:32:37 +02:00
|
|
|
virtual ~Article() = default;
|
2018-07-20 11:52:26 +02:00
|
|
|
|
2018-07-09 16:06:27 +02:00
|
|
|
void setArticleNo(int articleNo);
|
|
|
|
void setPrice(int price);
|
2022-07-07 15:21:46 +02:00
|
|
|
void setDescription(const std::string &description);
|
2018-07-11 12:52:57 +02:00
|
|
|
bool isSold();
|
2022-07-07 15:21:46 +02:00
|
|
|
void setSale(Sale *salePtr);
|
|
|
|
void setSeller(Seller *sellerPtr);
|
2018-07-11 13:25:39 +02:00
|
|
|
|
2018-07-30 14:43:02 +02:00
|
|
|
int getArticleNo() const;
|
|
|
|
std::string getCompleteArticleNo() const;
|
2018-07-12 12:06:55 +02:00
|
|
|
std::string getDescription();
|
2022-07-07 15:21:46 +02:00
|
|
|
Seller *getSeller();
|
|
|
|
Sale *getSale();
|
2018-07-20 11:52:26 +02:00
|
|
|
int getPrice() const;
|
2018-07-23 14:25:18 +02:00
|
|
|
std::string getPriceAsString() const;
|
2018-07-12 12:06:55 +02:00
|
|
|
|
2022-07-07 15:21:46 +02:00
|
|
|
private:
|
|
|
|
Seller *m_sellerPtr{};
|
|
|
|
Sale *m_salePtr{};
|
2022-07-07 15:03:39 +02:00
|
|
|
int m_articleNo{};
|
|
|
|
int m_price{};
|
|
|
|
std::string m_description{};
|
2018-07-09 16:06:27 +02:00
|
|
|
};
|
|
|
|
|
2019-10-04 14:05:19 +02:00
|
|
|
#endif
|