diff --git a/iFacility/objects/user.cpp b/iFacility/objects/user.cpp index 0770360..b0bd3ab 100644 --- a/iFacility/objects/user.cpp +++ b/iFacility/objects/user.cpp @@ -1,5 +1,10 @@ #include "user.h" +UserType User::getUserType() const +{ + return mUserType; +} + UID User::uID() const { return mUID; } @@ -32,13 +37,14 @@ PID User::getCurrentProfession() const { return mCurrentProfession; } -User User::createUser(QString login, QString password, +User User::createUser(QString login, QString password, UserType userType, QString firstName, QString secondName, QString patronymic) { User u; u.mUID = QUuid::createUuid(); u.mLogin = login; u.mPassword = password; + u.mUserType = userType; u.mFirstName = firstName; u.mSecondName = secondName; u.mPatronymic = patronymic; diff --git a/iFacility/objects/user.h b/iFacility/objects/user.h index 34385ab..2f920ec 100644 --- a/iFacility/objects/user.h +++ b/iFacility/objects/user.h @@ -10,11 +10,18 @@ typedef QUuid UID; typedef QVector ProfessionsList; +enum class UserType { + ADMINISTRATOR, + DISPATCHER, + WORKER +}; + class User { private: UID mUID; QString mLogin; QString mPassword; + UserType mUserType; QString mFirstName; QString mSecondName; QString mPatronymic; @@ -27,13 +34,14 @@ public: UID uID() const; QString getLogin() const; bool checkPassword(const QString &password); + UserType getUserType() const; QString firstName() const; QString secondName() const; QString patronymic() const; ProfessionsList getProfessions() const; PID getCurrentProfession() const; - static User createUser(QString login, QString password, + static User createUser(QString login, QString password, UserType userType, QString firstName, QString secondName, QString patronymic); bool addProfession(const Profession &p);