#ifndef PRODUCTOBJECT_H
#define PRODUCTOBJECT_H

#include "baseObject.h"

class ProductObject : public BaseObject
{
    Q_OBJECT
public:
    ProductObject(QObject *parent=0)
        :BaseObject(parent){}

    /* 功能:从Json对象初获取数据
     * 参数:[1]JSon对象
     * 返回:NULL
     * */
    void FromJson(const QJsonObject& json);

    Q_PROPERTY (QString pid READ getPid WRITE setPid)
    Q_PROPERTY (QString name READ getName WRITE setName)
    Q_PROPERTY (QString upc READ getupc WRITE setupc)
    Q_PROPERTY (int price READ getprice WRITE setprice)
    Q_PROPERTY (int productAmount READ getProductAmount WRITE setProductAmount)

    QString pid;
    QString name;
    QString upc;
    int price;
    int productAmount;
    QList<ProductObject*> sub_products;//子商品

protected:
    QString getPid() const ;
    void setPid(const QString& v);

    QString getName() const ;
    void setName(const QString& v);

    QString getupc() const ;
    void setupc(const QString& v);

    int getprice() const ;
    void setprice(const int& v);

    int getProductAmount() const ;
    void setProductAmount(const int &v);
};

#endif // PRODUCTOBJECT_H
