Camp wizard is now able to open from shop plugin
							parent
							
								
									397ec82d06
								
							
						
					
					
						commit
						13d90445cc
					
				@ -0,0 +1,28 @@
 | 
			
		||||
#include "campseller.h"
 | 
			
		||||
 | 
			
		||||
#include "campwizard.h"
 | 
			
		||||
#include "campservice.h"
 | 
			
		||||
#include "data/camp-data.h"
 | 
			
		||||
#include "campshopitem.h"
 | 
			
		||||
 | 
			
		||||
CampSeller::CampSeller(QObject *parent)
 | 
			
		||||
    :ISeller(parent)
 | 
			
		||||
{  
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CampSeller::prepareItem()
 | 
			
		||||
{
 | 
			
		||||
    CampWizard *wizard = new CampWizard();
 | 
			
		||||
    wizard->setAttribute(Qt::WA_DeleteOnClose);
 | 
			
		||||
 | 
			
		||||
    CampService srv;
 | 
			
		||||
    CampDataPtr data = srv.create();
 | 
			
		||||
    wizard->setData(data);
 | 
			
		||||
    wizard->show();
 | 
			
		||||
 | 
			
		||||
    connect(wizard, &QDialog::accepted, [this, data](){
 | 
			
		||||
        CampShopItemPtr item(new CampShopItem);
 | 
			
		||||
        item->setUnitPrice(data->totalPrice());
 | 
			
		||||
        emit itemPrepared(item, 1);
 | 
			
		||||
    });
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,17 @@
 | 
			
		||||
#ifndef CAMPSELLER_H
 | 
			
		||||
#define CAMPSELLER_H
 | 
			
		||||
 | 
			
		||||
#include <iseller.h>
 | 
			
		||||
 | 
			
		||||
class CampSeller : public ISeller
 | 
			
		||||
{
 | 
			
		||||
    Q_OBJECT
 | 
			
		||||
public:
 | 
			
		||||
    explicit CampSeller(QObject *parent = 0);
 | 
			
		||||
 | 
			
		||||
    // ISeller interface
 | 
			
		||||
public:
 | 
			
		||||
    void prepareItem();
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif // CAMPSELLER_H
 | 
			
		||||
@ -0,0 +1,48 @@
 | 
			
		||||
#include "campshopitem.h"
 | 
			
		||||
 | 
			
		||||
CampShopItem::CampShopItem(QObject *parent)
 | 
			
		||||
    :ShopItem(parent)
 | 
			
		||||
{
 | 
			
		||||
    m_unitPrice = QDecDouble(0);
 | 
			
		||||
    m_vatType = Enums::NONE;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
QString CampShopItem::name()
 | 
			
		||||
{
 | 
			
		||||
    return "Camp";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
QString CampShopItem::shortName()
 | 
			
		||||
{
 | 
			
		||||
    return "Camp";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
QDecDouble CampShopItem::unitPrice()
 | 
			
		||||
{
 | 
			
		||||
    return m_unitPrice;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
Enums::VatType CampShopItem::vatType()
 | 
			
		||||
{
 | 
			
		||||
    return m_vatType;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
QString CampShopItem::pluginId()
 | 
			
		||||
{
 | 
			
		||||
    return "CAMP";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
QString CampShopItem::code()
 | 
			
		||||
{
 | 
			
		||||
    return "Camp";
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CampShopItem::setUnitPrice(const QDecDouble &unitPrice)
 | 
			
		||||
{
 | 
			
		||||
    m_unitPrice = unitPrice;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void CampShopItem::setVatType(const Enums::VatType &vatType)
 | 
			
		||||
{
 | 
			
		||||
    m_vatType = vatType;
 | 
			
		||||
}
 | 
			
		||||
@ -0,0 +1,34 @@
 | 
			
		||||
#ifndef CAMPSHOPITEM_H
 | 
			
		||||
#define CAMPSHOPITEM_H
 | 
			
		||||
 | 
			
		||||
#include <shopitem.h>
 | 
			
		||||
 | 
			
		||||
class CampShopItem : public ShopItem
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    CampShopItem(QObject *parent = 0);
 | 
			
		||||
 | 
			
		||||
    // IShopItem interface
 | 
			
		||||
public:
 | 
			
		||||
    QString name();
 | 
			
		||||
    QString shortName();
 | 
			
		||||
    QDecDouble unitPrice();
 | 
			
		||||
    Enums::VatType vatType();
 | 
			
		||||
    QString pluginId();
 | 
			
		||||
 | 
			
		||||
    // ShopItem interface
 | 
			
		||||
public:
 | 
			
		||||
    QString code();
 | 
			
		||||
 | 
			
		||||
    void setUnitPrice(const QDecDouble &unitPrice);
 | 
			
		||||
 | 
			
		||||
    void setVatType(const Enums::VatType &vatType);
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
    QDecDouble m_unitPrice;
 | 
			
		||||
    Enums::VatType m_vatType;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
typedef QSharedPointer<CampShopItem> CampShopItemPtr;
 | 
			
		||||
 | 
			
		||||
#endif // CAMPSHOPITEM_H
 | 
			
		||||
					Loading…
					
					
				
		Reference in New Issue