|
|
|
#ifndef ISHOPITEM_H
|
|
|
|
#define ISHOPITEM_H
|
|
|
|
|
|
|
|
#include "shop_global.h"
|
|
|
|
#include <QDecDouble.hh>
|
|
|
|
#include <QString>
|
|
|
|
#include <enums.h>
|
|
|
|
#include <QObject>
|
|
|
|
#include <QSharedPointer>
|
|
|
|
|
|
|
|
class SHOPSHARED_EXPORT IShopItem : public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
Q_PROPERTY(QString code READ code)
|
|
|
|
Q_PROPERTY(QString name READ name)
|
|
|
|
Q_PROPERTY(QString shortName READ shortName)
|
|
|
|
Q_PROPERTY(QDecDouble unitPrice READ unitPrice)
|
|
|
|
Q_PROPERTY(Enums::VatType vatType READ vatType)
|
|
|
|
|
|
|
|
public:
|
|
|
|
explicit IShopItem(QObject* parent = nullptr);
|
|
|
|
~IShopItem() override = default;
|
|
|
|
|
|
|
|
virtual long id() { return {}; }
|
|
|
|
virtual QString name() { return {}; }
|
|
|
|
virtual QString code() { return {}; }
|
|
|
|
virtual QString shortName() { return {}; }
|
|
|
|
virtual QDecDouble unitPrice() { return {}; }
|
|
|
|
virtual Enums::VatType vatType() { return {}; }
|
|
|
|
virtual QString pluginId() { return {}; }
|
|
|
|
};
|
|
|
|
|
|
|
|
using IShopItemPtr = QSharedPointer<IShopItem>;
|
|
|
|
|
|
|
|
QX_REGISTER_HPP_SHOP(IShopItem, QObject, 0)
|
|
|
|
|
|
|
|
#endif // ISHOPITEM_H
|