Files
RRJServer/ServerLMS/Data/Client.h
2025-08-05 16:34:26 +03:00

139 lines
2.5 KiB
C++

#ifndef CLIENT_H
#define CLIENT_H
#include <QString>
#include <QTcpSocket>
#include "typesDataServerClient.h"
class Client
{
public:
Client(QString name, QString address, QString port,QObject *parent = nullptr):
login(""),
ready(false),
typeClient(TypeClientAutorization::TYPE_QT_CLIENT)
{
this->name = name;
this->address = address;
this->port = port;
this->fullName = "Name: " + name + " IP: " + address + " port : " + port + " login: " + login;
};
~Client();
public:
QString getFullName()
{
return fullName;
};
void setLogin(QString login)
{
this->login = login;
isLoggedIn = true;
fullName = "Name: " + name + " IP: " + address + " port : " + port + " login: " + login;
}
QString getLogin()
{
return login;
}
QString getAddress()
{
return address;
}
QString getPort()
{
return port;
}
bool getReady()
{
return ready;
}
void setReady(bool ready)
{
this->ready = ready;
}
void setUnity(TypeClientAutorization type)
{
typeClient = type;
}
TypeClientAutorization GETTYPE()
{
return typeClient;
}
void setTypeClient(TypeClientAutorization TypeClient)
{
this->typeClient = TypeClient;
}
TypeClientAutorization getTypeClient()
{
return typeClient;
}
void changePackageResponse()
{
if (typeClient == TypeClientAutorization::TYPE_QT_CLIENT)
typeClient = TypeClientAutorization::TYPE_UNITY_CLIENT;
else if (typeClient == TypeClientAutorization::TYPE_UNITY_CLIENT)
typeClient = TypeClientAutorization::TYPE_QT_CLIENT;
}
bool operator == (Client* right)
{
return this->address == right->address;
}
bool getIsLoggedIn()
{
return isLoggedIn;
}
void setIsLoggedIn(bool value)
{
isLoggedIn = value;
}
void setAccessType(UserType type)
{
userType = type;
}
UserType getAccessType()
{
return userType;
}
QString getId()
{
return id;
}
void setId(QString value)
{
id = value;
}
private:
QString name;
QString address;
QString port;
QString fullName;
QString id;
QString login;
bool ready;
bool isLoggedIn;
TypeClientAutorization typeClient;
UserType userType;
};
#endif // CLIENT_H