
#ifndef QUERIEDPOLICY_H__
#define QUERIEDPOLICY_H__

#include <QtCore/QString>

class QueriedPolicy
{
public:
	QueriedPolicy();
	~QueriedPolicy();

	QString getPolicySerial() const
	{
		return policySerial;
	}

	void setPolicySerial( const QString & policySerial )
	{
		this->policySerial = policySerial;
	}

	QString getSalerCode() const
	{
		return salerCode;
	}

	void setSalerCode( const QString & salerCode )
	{
		this->salerCode = salerCode;
	}

	QString getDeptName() const
	{
		return deptName;
	}

	void setDeptName( const QString & deptName )
	{
		this->deptName = deptName;
	}

	QString getOfficeName() const
	{
		return officeName;
	}

	void setOfficeName( const QString & officeName )
	{
		this->officeName = officeName;
	}

	QString getCdlh() const
	{
		return CDLH;
	}

	void setCdlh( const QString & cdlh )
	{
		CDLH = cdlh;
	}

	QString getAutoTraderCode() const
	{
		return autoTraderCode;
	}

	void setAutoTraderCode( const QString & autoTraderCode )
	{
		this->autoTraderCode = autoTraderCode;
	}

	QString getAutoTraderName() const
	{
		return autoTraderName;
	}

	void setAutoTraderName( const QString & autoTraderName )
	{
		this->autoTraderName = autoTraderName;
	}

	QString getGifts() const
	{
		return gifts;
	}

	void setGifts( const QString & gifts )
	{
		this->gifts = gifts;
	}

	QString getEntryDate() const
	{
		return entryDate;
	}

	void setEntryDate( const QString & entryDate )
	{
		this->entryDate = entryDate;
	}

	double getGiftPriceSum() const
	{
		return giftPriceSum;
	}

	void setGiftPriceSum( double giftPriceSum )
	{
		this->giftPriceSum = giftPriceSum;
	}


	QueriedPolicy( const QueriedPolicy & other )
		: policySerial( other.policySerial ),
		  salerCode( other.salerCode ),
		  deptName( other.deptName ),
		  officeName( other.officeName ),
		  CDLH( other.CDLH ),
		  autoTraderCode( other.autoTraderCode ),
		  autoTraderName( other.autoTraderName ),
		  gifts( other.gifts ),
		  entryDate( other.entryDate ),
		  giftPriceSum( other.giftPriceSum )
	{
	}

	QueriedPolicy( QueriedPolicy && other ) noexcept
		: policySerial( std::move(other.policySerial) ),
		  salerCode( std::move(other.salerCode) ),
		  deptName( std::move(other.deptName) ),
		  officeName( std::move(other.officeName) ),
		  CDLH( std::move(other.CDLH) ),
		  autoTraderCode( std::move(other.autoTraderCode) ),
		  autoTraderName( std::move(other.autoTraderName) ),
		  gifts( std::move(other.gifts) ),
		  entryDate( std::move(other.entryDate) ),
		  giftPriceSum( other.giftPriceSum )
	{
	}

	QueriedPolicy & operator=( const QueriedPolicy & other )
	{
		if ( this == &other )
			return *this;
		policySerial   = other.policySerial;
		salerCode      = other.salerCode;
		deptName       = other.deptName;
		officeName     = other.officeName;
		CDLH           = other.CDLH;
		autoTraderCode = other.autoTraderCode;
		autoTraderName = other.autoTraderName;
		gifts          = other.gifts;
		entryDate      = other.entryDate;
		giftPriceSum   = other.giftPriceSum;
		return *this;
	}

	QueriedPolicy & operator=( QueriedPolicy && other ) noexcept
	{
		if ( this == &other )
			return *this;
		policySerial   = std::move( other.policySerial );
		salerCode      = std::move( other.salerCode );
		deptName       = std::move( other.deptName );
		officeName     = std::move( other.officeName );
		CDLH           = std::move( other.CDLH );
		autoTraderCode = std::move( other.autoTraderCode );
		autoTraderName = std::move( other.autoTraderName );
		gifts          = std::move( other.gifts );
		entryDate      = std::move( other.entryDate );
		giftPriceSum   = other.giftPriceSum;
		return *this;
	}

private:
	QString policySerial;
	QString salerCode;
	QString deptName;
	QString officeName;
	QString CDLH;
	QString autoTraderCode;
	QString autoTraderName;
	QString gifts;
	QString entryDate;
	double  giftPriceSum;
};

#endif