Files
prodejna/commodity/data/commoditydata.h
T

72 lines
1.7 KiB
C++
Raw Normal View History

2016-03-02 23:26:37 +01:00
#ifndef COMMODITYDATA_H
#define COMMODITYDATA_H
#include <QObject>
#include <QString>
#include <odb/core.hxx>
#include "commoditytypedata.h"
#include <shopitem.h>
2016-03-02 23:26:37 +01:00
#include <QDecDouble.hh>
#include <QSharedDataPointer>
#include <enums.h>
#pragma db object
class CommodityData : public ShopItem
2016-03-02 23:26:37 +01:00
{
Q_OBJECT
2016-07-21 16:24:07 +02:00
Q_PROPERTY(QString code READ code WRITE setCode)
2016-03-02 23:26:37 +01:00
Q_PROPERTY(QString name READ name WRITE setName)
Q_PROPERTY(QString shortName READ shortName WRITE setShortName)
Q_PROPERTY(QSharedPointer<QObject> type READ type WRITE setType)
Q_PROPERTY(QDecDouble price READ price WRITE setPrice)
Q_PROPERTY(Enums::VatType vat READ vat WRITE setVat)
Q_PROPERTY(int count READ count WRITE setCount)
public:
CommodityData(QObject *parent = 0);
2016-07-21 16:24:07 +02:00
int id() override;
2016-03-02 23:26:37 +01:00
void setId(int id);
2016-07-21 16:24:07 +02:00
QString name() override;
2016-03-02 23:26:37 +01:00
void setName(const QString &name);
QString shortName() const;
void setShortName(const QString &shortName);
QString code() const;
void setCode(const QString &code);
QSharedPointer<QObject> type() const;
void setType(const QSharedPointer<QObject> &type);
QDecDouble price() const;
void setPrice(const QDecDouble &price);
Enums::VatType vat() const;
void setVat(const Enums::VatType &vat);
int count() const;
void setCount(int count);
private:
friend class odb::access;
#pragma db id auto
int m_id;
QString m_name;
QString m_shortName;
QString m_code;
QSharedPointer<CommodityTypeData> m_type;
int m_price;
Enums::VatType m_vat;
int m_count;
2016-07-21 16:24:07 +02:00
// IShopItem interface
public:
QDecDouble unitPrice() override;
Enums::VatType vatType() override;
QString pluginId() override;
2016-03-02 23:26:37 +01:00
};
#endif // COMMODITYDATA_H