Add missing user feature

This commit is contained in:
E. Kozlovskaya 2021-01-03 23:26:38 +07:00
parent af7d8ab5c8
commit 3ec99d9632
2 changed files with 16 additions and 2 deletions

View file

@ -1,5 +1,10 @@
#include "user.h" #include "user.h"
UserType User::getUserType() const
{
return mUserType;
}
UID User::uID() const { UID User::uID() const {
return mUID; return mUID;
} }
@ -32,13 +37,14 @@ PID User::getCurrentProfession() const {
return mCurrentProfession; return mCurrentProfession;
} }
User User::createUser(QString login, QString password, User User::createUser(QString login, QString password, UserType userType,
QString firstName, QString secondName, QString patronymic) { QString firstName, QString secondName, QString patronymic) {
User u; User u;
u.mUID = QUuid::createUuid(); u.mUID = QUuid::createUuid();
u.mLogin = login; u.mLogin = login;
u.mPassword = password; u.mPassword = password;
u.mUserType = userType;
u.mFirstName = firstName; u.mFirstName = firstName;
u.mSecondName = secondName; u.mSecondName = secondName;
u.mPatronymic = patronymic; u.mPatronymic = patronymic;

View file

@ -10,11 +10,18 @@
typedef QUuid UID; typedef QUuid UID;
typedef QVector<PID> ProfessionsList; typedef QVector<PID> ProfessionsList;
enum class UserType {
ADMINISTRATOR,
DISPATCHER,
WORKER
};
class User { class User {
private: private:
UID mUID; UID mUID;
QString mLogin; QString mLogin;
QString mPassword; QString mPassword;
UserType mUserType;
QString mFirstName; QString mFirstName;
QString mSecondName; QString mSecondName;
QString mPatronymic; QString mPatronymic;
@ -27,13 +34,14 @@ public:
UID uID() const; UID uID() const;
QString getLogin() const; QString getLogin() const;
bool checkPassword(const QString &password); bool checkPassword(const QString &password);
UserType getUserType() const;
QString firstName() const; QString firstName() const;
QString secondName() const; QString secondName() const;
QString patronymic() const; QString patronymic() const;
ProfessionsList getProfessions() const; ProfessionsList getProfessions() const;
PID getCurrentProfession() 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); QString firstName, QString secondName, QString patronymic);
bool addProfession(const Profession &p); bool addProfession(const Profession &p);