GUI.Тип ошибки авторизации

This commit is contained in:
2025-11-27 16:54:40 +03:00
parent 00c9ec8893
commit bf87a2c982
13 changed files with 182 additions and 42 deletions

View File

@@ -39,8 +39,6 @@ void ProcessingSystem::processingClientAutorization(ClientHandler *client, Clien
{
QByteArray arrayAnswer = dataParser->ClientAnswer()->notify(NOTIFY_SERVER_BLOCKED);
client->sendXmlAnswer(arrayAnswer);
QString str = QString(arrayAnswer);
return;
}
@@ -50,8 +48,10 @@ void ProcessingSystem::processingClientAutorization(ClientHandler *client, Clien
QByteArray arrayAnswer;
int clientID = 0;
InterfaceDataBaseLMS::ErrorAuth errorAuth = InterfaceDataBaseLMS::ErrorAuth::errNo;
if(providerDBLMS->authorizationInstructor(clientAutorization.Login, clientAutorization.Password))
if(providerDBLMS->authorizationInstructor(clientAutorization.Login, clientAutorization.Password, errorAuth))
{//Авторизуется инструктор
client->getClient()->setLogin(clientAutorization.Login);
@@ -67,7 +67,7 @@ void ProcessingSystem::processingClientAutorization(ClientHandler *client, Clien
}
else if(clientAutorization.TypeClient != TypeClientAutorization::TYPE_GUI)
{
if(providerDBLMS->authorizationTrainee(clientAutorization.Login, clientAutorization.Password, "", ""))
if(providerDBLMS->authorizationTrainee(clientAutorization.Login, clientAutorization.Password, errorAuth, "", ""))
{//Авторизуется обучаемый
client->getClient()->setLogin(clientAutorization.Login);
@@ -91,15 +91,42 @@ void ProcessingSystem::processingClientAutorization(ClientHandler *client, Clien
arrayAnswer = dataParser->ClientAnswer()->authorization(false, "", "", "", "", 0);
}
client->sendXmlAnswer(arrayAnswer);
client->sendVersion();
//client->sendPacketType(PacketType::BUSY);
//client->sendPacketType(PacketType::FREE);
if(errorAuth == InterfaceDataBaseLMS::ErrorAuth::errNo)
{
client->sendVersion();
QString str = QString(arrayAnswer);
//logger->addTextToLogger("To Client: " + str);
//Извещаем об изменениях в авторизации
emit sigListsInstructorsTraineesChanged();
//client->sendPacketType(PacketType::BUSY);
//client->sendPacketType(PacketType::FREE);
//Извещаем об изменениях в авторизации
emit sigListsInstructorsTraineesChanged();
}
else
{
QString notifyText = "";
switch (errorAuth)
{
case InterfaceDataBaseLMS::ErrorAuth::errDB:
notifyText = NOTIFY_ERROR_AUTH_DB;
break;
case InterfaceDataBaseLMS::ErrorAuth::errArchived:
notifyText = NOTIFY_ERROR_AUTH_ARCHIVED;
break;
case InterfaceDataBaseLMS::ErrorAuth::errAlreadyLogIn:
notifyText = NOTIFY_ERROR_AUTH_ALREADYLOGIN;
break;
case InterfaceDataBaseLMS::ErrorAuth::errLoginOrPassword:
notifyText = NOTIFY_ERROR_AUTH_LOGINORPASSWORD;
break;
default:
break;
}
QByteArray arrayAnswer = dataParser->ClientAnswer()->notify(notifyText);
client->sendXmlAnswer(arrayAnswer);
}
}
void ProcessingSystem::processingClientDeAutorization(ClientHandler *client, ClientDeAutorization clientDeAutorization)
@@ -129,6 +156,10 @@ void ProcessingSystem::processingClientDeAutorization(ClientHandler *client, Cli
emit sigUpdateListClients();
arrayAnswer = dataParser->ClientAnswer()->deAuthorization(true, clientDeAutorization.Login);
client->sendXmlAnswer(arrayAnswer);
//Извещаем об изменениях в авторизации
emit sigListsInstructorsTraineesChanged();
}
else if(providerDBLMS->deAuthorizationInstructor(clientDeAutorization.Login))
{//ДеАвторизуется инструктор
@@ -139,18 +170,16 @@ void ProcessingSystem::processingClientDeAutorization(ClientHandler *client, Cli
emit sigUpdateListClients();
arrayAnswer = dataParser->ClientAnswer()->deAuthorization(true, clientDeAutorization.Login);
client->sendXmlAnswer(arrayAnswer);
//Извещаем об изменениях в авторизации
emit sigListsInstructorsTraineesChanged();
}
else
{//Никто не ДеАвторизовался
arrayAnswer = dataParser->ClientAnswer()->deAuthorization(false, "");
client->sendXmlAnswer(arrayAnswer);
}
client->sendXmlAnswer(arrayAnswer);
QString str = QString(arrayAnswer);
//logger->addTextToLogger("To Client: " + str);
//Извещаем об изменениях в авторизации
emit sigListsInstructorsTraineesChanged();
}
void ProcessingSystem::processingClientBlockAuth(ClientHandler *client, bool block)