You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
98 lines
2.8 KiB
C++
98 lines
2.8 KiB
C++
#ifndef ADDRESSBOOKDATA_H
|
|
#define ADDRESSBOOKDATA_H
|
|
|
|
#include "../addressbook_global.h"
|
|
#include <data/comboitem.h>
|
|
#include <data/countrydata.h>
|
|
|
|
#include <QObject>
|
|
#include <QString>
|
|
#include <QDate>
|
|
#include <QtCore/qglobal.h>
|
|
#include <QSharedPointer>
|
|
|
|
#include <QxOrm.h>
|
|
|
|
class ADDRESSBOOKSHARED_EXPORT AddressbookData : public ComboItem
|
|
{
|
|
Q_OBJECT
|
|
QX_REGISTER_FRIEND_CLASS(AddressbookData)
|
|
Q_PROPERTY(QString title READ title WRITE setTitle)
|
|
Q_PROPERTY(QString firstName READ firstName WRITE setFirstName)
|
|
Q_PROPERTY(QString lastName READ lastName WRITE setLastName)
|
|
Q_PROPERTY(QDate birthDate READ birthDate WRITE setBirthDate)
|
|
Q_PROPERTY(QString idCardNumber READ idCardNumber WRITE setIdCardNumber)
|
|
Q_PROPERTY(bool ztp READ ztp WRITE setZtp)
|
|
Q_PROPERTY(QString addressCity READ addressCity WRITE setAddressCity)
|
|
Q_PROPERTY(QString addressStreet READ addressStreet WRITE setAddressStreet)
|
|
Q_PROPERTY(QString addressHouseNumber READ addressHouseNumber WRITE setAddressHouseNumber)
|
|
Q_PROPERTY(QString addressZipCode READ addressZipCode WRITE setAddressZipCode)
|
|
Q_PROPERTY(QSharedPointer<QObject> country READ country WRITE setCountry)
|
|
|
|
public:
|
|
AddressbookData(QObject *parent = 0);
|
|
|
|
QString title() const;
|
|
void setTitle(const QString &title);
|
|
|
|
QString firstName() const;
|
|
void setFirstName(const QString &firstName);
|
|
|
|
QString lastName() const;
|
|
void setLastName(const QString &lastName);
|
|
|
|
QDate birthDate() const;
|
|
void setBirthDate(const QDate &birthDate);
|
|
|
|
QString idCardNumber() const;
|
|
void setIdCardNumber(const QString &idCardNumber);
|
|
|
|
bool ztp() const;
|
|
void setZtp(bool ztp);
|
|
|
|
QString addressCity() const;
|
|
void setAddressCity(const QString &addressCity);
|
|
|
|
QString addressStreet() const;
|
|
void setAddressStreet(const QString &addressStreet);
|
|
|
|
QString addressHouseNumber() const;
|
|
void setAddressHouseNumber(const QString &addressHouseNumber);
|
|
|
|
QString addressZipCode() const;
|
|
void setAddressZipCode(const QString &addressZipCode);
|
|
|
|
long id() const;
|
|
void setId(long id);
|
|
|
|
QSharedPointer<QObject> country() const;
|
|
void setCountry(const QSharedPointer<QObject> &country);
|
|
|
|
Q_INVOKABLE QStringList eagerLoad();
|
|
|
|
private:
|
|
long m_id{0};
|
|
QString m_title;
|
|
QString m_firstName;
|
|
QString m_lastName;
|
|
QDate m_birthDate;
|
|
QString m_idCardNumber;
|
|
bool m_ztp;
|
|
QString m_addressCity;
|
|
QString m_addressStreet;
|
|
QString m_addressHouseNumber;
|
|
QString m_addressZipCode;
|
|
CountryDataPtr m_country;
|
|
|
|
// ComboItem interface
|
|
public:
|
|
bool eq(ComboItem *other) override;
|
|
QString toString() override;
|
|
};
|
|
|
|
typedef QSharedPointer<AddressbookData> AddressbookDataPtr;
|
|
|
|
QX_REGISTER_HPP_ADDR(AddressbookData, ComboItem, 0)
|
|
|
|
#endif // ADDRESSBOOKDATA_H
|