Created data sructures for user and permissions support
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
#ifndef ROLE_H
|
||||
#define ROLE_H
|
||||
|
||||
#include <QObject>
|
||||
#include "user.h"
|
||||
#include "permission.h"
|
||||
#include <QSharedPointer>
|
||||
#include <QList>
|
||||
#include <QWeakPointer>
|
||||
#include <QDateTime>
|
||||
#include <odb/core.hxx>
|
||||
|
||||
class Permission;
|
||||
class User;
|
||||
|
||||
#pragma db object
|
||||
class Role : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_PROPERTY(QString name READ name WRITE setName)
|
||||
Q_PROPERTY(QDateTime lastModDate READ lastModDate WRITE setLastModDate)
|
||||
Q_PROPERTY(QDateTime createDate READ createDate WRITE setCreateDate)
|
||||
Q_PROPERTY(bool active READ active WRITE setActive)
|
||||
public:
|
||||
explicit Role(QObject *parent = 0);
|
||||
|
||||
int id() const;
|
||||
void setId(int id);
|
||||
|
||||
QString name() const;
|
||||
void setName(const QString &name);
|
||||
|
||||
QDateTime lastModDate() const;
|
||||
void setLastModDate(const QDateTime &lastModDate);
|
||||
|
||||
QDateTime createDate() const;
|
||||
void setCreateDate(const QDateTime &createDate);
|
||||
|
||||
bool active() const;
|
||||
void setActive(bool active);
|
||||
|
||||
QList<QWeakPointer<User> > listUsers() const;
|
||||
void setListUsers(const QList<QWeakPointer<User> > &listUsers);
|
||||
|
||||
QList<QSharedPointer<Permission> > listPermissions() const;
|
||||
void setListPermissions(const QList<QSharedPointer<Permission> > &listPermissions);
|
||||
|
||||
private:
|
||||
friend class odb::access;
|
||||
|
||||
#pragma db id auto
|
||||
int m_id;
|
||||
QString m_name;
|
||||
QDateTime m_lastModDate;
|
||||
QDateTime m_createDate;
|
||||
bool m_active;
|
||||
#pragma db value_not_null inverse(m_listRoles)
|
||||
QList<QWeakPointer<User> > m_listUsers;
|
||||
#pragma db value_not_null unordered
|
||||
QList<QSharedPointer<Permission> > m_listPermissions;
|
||||
|
||||
|
||||
|
||||
};
|
||||
|
||||
#endif // ROLE_H
|
||||
Reference in New Issue
Block a user