mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-28 19:55:48 +03:00
Рефакторинг
This commit is contained in:
@@ -19,8 +19,8 @@ enum TypeQueryToDB{
|
|||||||
TYPE_QUERY_GET_TASKS_AMM_FOR_TRAINEE,
|
TYPE_QUERY_GET_TASKS_AMM_FOR_TRAINEE,
|
||||||
TYPE_QUERY_GET_TASKS_FIM_FOR_TRAINEE,
|
TYPE_QUERY_GET_TASKS_FIM_FOR_TRAINEE,
|
||||||
|
|
||||||
TYPE_QUERY_DELETE_TASK_AMM_TO_TRAINEE,
|
TYPE_QUERY_DEL_TASK_AMM_TO_TRAINEE,
|
||||||
TYPE_QUERY_DELETE_TASK_FIM_TO_TRAINEE
|
TYPE_QUERY_DEL_TASK_FIM_TO_TRAINEE
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // TYPEQUERYTODB_H
|
#endif // TYPEQUERYTODB_H
|
||||||
|
|||||||
@@ -300,7 +300,7 @@ void AMMtasksWidget::on_btnDelete_clicked()
|
|||||||
|
|
||||||
if(QMessageBox::warning(this, tr("Attention!"), tr("The deletion will be irrevocable.\nDelete it anyway?"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
|
if(QMessageBox::warning(this, tr("Attention!"), tr("The deletion will be irrevocable.\nDelete it anyway?"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
|
||||||
{
|
{
|
||||||
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_DELETE_TASK_AMM_TO_TRAINEE, id);
|
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_DEL_TASK_AMM_TO_TRAINEE, id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -438,7 +438,7 @@ void FIMtasksWidget::on_btnDelete_clicked()
|
|||||||
|
|
||||||
if(QMessageBox::warning(this, tr("Attention!"), tr("The deletion will be irrevocable.\nDelete it anyway?"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
|
if(QMessageBox::warning(this, tr("Attention!"), tr("The deletion will be irrevocable.\nDelete it anyway?"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok)
|
||||||
{
|
{
|
||||||
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_DELETE_TASK_FIM_TO_TRAINEE, id);
|
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_DEL_TASK_FIM_TO_TRAINEE, id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -255,160 +255,79 @@ void ProcessingSystem::processingClientQueryToDB(ClientHandler *client, ClientQu
|
|||||||
|
|
||||||
case TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE:
|
case TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE:
|
||||||
{
|
{
|
||||||
int id_new;
|
if(int id_new = providerDBLMS->newTaskAMM(*(TaskAmmFim*)data, id))
|
||||||
id_new = providerDBLMS->newTaskAMM(*(TaskAmmFim*)data, id);
|
|
||||||
|
|
||||||
if(id_new)
|
|
||||||
{//Отправка списка задач AMM клиенту Юнити
|
|
||||||
QString login = providerDBLMS->getLoginTraineeById(id);
|
|
||||||
//Проходим все открытые сокеты, ищем нужный
|
|
||||||
foreach(int idSocket, server->getClientsMap().keys())
|
|
||||||
{
|
{
|
||||||
ClientHandler *handler = server->getClientsMap().value(idSocket);
|
//Отправка списка задач AMM клиенту GUI
|
||||||
if(handler->getClient()->getLogin() == login)
|
sendListTasksAMMofTraineetoClient(client, id);
|
||||||
{
|
|
||||||
if(handler->getClient()->getIsUnity())
|
|
||||||
{//Отправляем ему
|
|
||||||
//AMM
|
|
||||||
QList<TaskAmmFim> listTasksAMM = providerDBLMS->GetListTasksAMMofTrainee(id);
|
|
||||||
QByteArray arrayAnswerTasksAMM = dataParser->DbAnswer()->listTasksAMMofTrainee(true, &listTasksAMM, id);
|
|
||||||
handler->sendXmlAnswer(arrayAnswerTasksAMM, PacketType::TYPE_XMLANSWER_QUERY_TASKS_AMM_FOR_TRAINEE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
if(id_new)
|
|
||||||
{
|
|
||||||
(*(TaskAmmFim*)data).setID(id_new);
|
|
||||||
providerDBLMS->editTaskAMM(*(TaskAmmFim*)data);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
//emit sigTasksChanged();
|
|
||||||
//break;
|
|
||||||
}
|
|
||||||
case TypeQueryToDB::TYPE_QUERY_GET_TASKS_AMM_FOR_TRAINEE:
|
|
||||||
{
|
|
||||||
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksAMMofTrainee(id);
|
|
||||||
|
|
||||||
arrayAnswer = dataParser->DbAnswer()->listTasksAMMofTrainee(true, &listTasks, id);
|
|
||||||
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_AMM_FOR_TRAINEE);
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_FIM_TO_TRAINEE:
|
|
||||||
{
|
|
||||||
int id_new;
|
|
||||||
id_new = providerDBLMS->newTaskFIM(*(TaskAmmFim*)data, id);
|
|
||||||
|
|
||||||
if(id_new)
|
|
||||||
{//Отправка списка задач FIM клиенту Юнити
|
|
||||||
QString login = providerDBLMS->getLoginTraineeById(id);
|
|
||||||
//Проходим все открытые сокеты, ищем нужный
|
|
||||||
foreach(int idSocket, server->getClientsMap().keys())
|
|
||||||
{
|
|
||||||
ClientHandler *handler = server->getClientsMap().value(idSocket);
|
|
||||||
if(handler->getClient()->getLogin() == login)
|
|
||||||
{
|
|
||||||
if(handler->getClient()->getIsUnity())
|
|
||||||
{//Отправляем ему
|
|
||||||
//FIM
|
|
||||||
QList<TaskAmmFim> listTasksFIM = providerDBLMS->GetListTasksFIMofTrainee(id);
|
|
||||||
QByteArray arrayAnswerFIM = dataParser->DbAnswer()->listTasksFIMofTrainee(true, &listTasksFIM, id);
|
|
||||||
handler->sendXmlAnswer(arrayAnswerFIM, PacketType::TYPE_XMLANSWER_QUERY_TASKS_FIM_FOR_TRAINEE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
if(id_new)
|
|
||||||
{
|
|
||||||
(*(TaskAmmFim*)data).setID(id_new);
|
|
||||||
providerDBLMS->editTaskFIM(*(TaskAmmFim*)data);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
//emit sigTasksChanged();
|
|
||||||
//break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case TypeQueryToDB::TYPE_QUERY_GET_TASKS_FIM_FOR_TRAINEE:
|
|
||||||
{
|
|
||||||
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksFIMofTrainee(id);
|
|
||||||
|
|
||||||
arrayAnswer = dataParser->DbAnswer()->listTasksFIMofTrainee(true, &listTasks, id);
|
|
||||||
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_FIM_FOR_TRAINEE);
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case TypeQueryToDB::TYPE_QUERY_DELETE_TASK_AMM_TO_TRAINEE:
|
|
||||||
{
|
|
||||||
int id_trainee = providerDBLMS->delTaskAMM(id);
|
|
||||||
if(id_trainee)
|
|
||||||
{
|
|
||||||
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksAMMofTrainee(id_trainee);
|
|
||||||
arrayAnswer = dataParser->DbAnswer()->listTasksAMMofTrainee(true, &listTasks, id_trainee);
|
|
||||||
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_AMM_FOR_TRAINEE);
|
|
||||||
|
|
||||||
//Отправка списка задач AMM клиенту Юнити
|
//Отправка списка задач AMM клиенту Юнити
|
||||||
QString login = providerDBLMS->getLoginTraineeById(id_trainee);
|
if(ClientHandler* handler = getUnityClientById(id))
|
||||||
//Проходим все открытые сокеты, ищем нужный
|
{//Есть такой
|
||||||
foreach(int idSocket, server->getClientsMap().keys())
|
sendListTasksAMMofTraineetoClient(handler, id);
|
||||||
{
|
|
||||||
ClientHandler *handler = server->getClientsMap().value(idSocket);
|
|
||||||
if(handler->getClient()->getLogin() == login)
|
|
||||||
{
|
|
||||||
if(handler->getClient()->getIsUnity())
|
|
||||||
{//Отправляем ему
|
|
||||||
//AMM
|
|
||||||
QList<TaskAmmFim> listTasksAMM = providerDBLMS->GetListTasksAMMofTrainee(id_trainee);
|
|
||||||
QByteArray arrayAnswerTasksAMM = dataParser->DbAnswer()->listTasksAMMofTrainee(true, &listTasksAMM, id_trainee);
|
|
||||||
handler->sendXmlAnswer(arrayAnswerTasksAMM, PacketType::TYPE_XMLANSWER_QUERY_TASKS_AMM_FOR_TRAINEE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_FIM_TO_TRAINEE:
|
||||||
case TypeQueryToDB::TYPE_QUERY_DELETE_TASK_FIM_TO_TRAINEE:
|
|
||||||
{
|
{
|
||||||
int id_trainee = providerDBLMS->delTaskFIM(id);
|
if(int id_new = providerDBLMS->newTaskFIM(*(TaskAmmFim*)data, id))
|
||||||
if(id_trainee)
|
|
||||||
{
|
{
|
||||||
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksFIMofTrainee(id_trainee);
|
//Отправка списка задач FIM клиенту GUI
|
||||||
arrayAnswer = dataParser->DbAnswer()->listTasksFIMofTrainee(true, &listTasks, id_trainee);
|
sendListTasksFIMofTraineetoClient(client, id);
|
||||||
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_FIM_FOR_TRAINEE);
|
|
||||||
|
|
||||||
//Отправка списка задач FIM клиенту Юнити
|
//Отправка списка задач FIM клиенту Юнити
|
||||||
QString login = providerDBLMS->getLoginTraineeById(id_trainee);
|
if(ClientHandler* handler = getUnityClientById(id))
|
||||||
//Проходим все открытые сокеты, ищем нужный
|
{//Есть такой
|
||||||
foreach(int idSocket, server->getClientsMap().keys())
|
sendListTasksFIMofTraineetoClient(handler, id);
|
||||||
{
|
|
||||||
ClientHandler *handler = server->getClientsMap().value(idSocket);
|
|
||||||
if(handler->getClient()->getLogin() == login)
|
|
||||||
{
|
|
||||||
if(handler->getClient()->getIsUnity())
|
|
||||||
{//Отправляем ему
|
|
||||||
//FIM
|
|
||||||
QList<TaskAmmFim> listTasksFIM = providerDBLMS->GetListTasksFIMofTrainee(id_trainee);
|
|
||||||
QByteArray arrayAnswerTasksFIM = dataParser->DbAnswer()->listTasksFIMofTrainee(true, &listTasksFIM, id_trainee);
|
|
||||||
handler->sendXmlAnswer(arrayAnswerTasksFIM, PacketType::TYPE_XMLANSWER_QUERY_TASKS_FIM_FOR_TRAINEE);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case TypeQueryToDB::TYPE_QUERY_GET_TASKS_AMM_FOR_TRAINEE:
|
||||||
|
{
|
||||||
|
//Отправка списка задач AMM клиенту GUI
|
||||||
|
sendListTasksAMMofTraineetoClient(client, id);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case TypeQueryToDB::TYPE_QUERY_GET_TASKS_FIM_FOR_TRAINEE:
|
||||||
|
{
|
||||||
|
//Отправка списка задач FIM клиенту GUI
|
||||||
|
sendListTasksFIMofTraineetoClient(client, id);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case TypeQueryToDB::TYPE_QUERY_DEL_TASK_AMM_TO_TRAINEE:
|
||||||
|
{
|
||||||
|
if(int id_trainee = providerDBLMS->delTaskAMM(id))
|
||||||
|
{
|
||||||
|
//Отправка списка задач AMM клиенту GUI
|
||||||
|
sendListTasksAMMofTraineetoClient(client, id_trainee);
|
||||||
|
|
||||||
|
//Отправка списка задач AMM клиенту Юнити
|
||||||
|
if(ClientHandler* handler = getUnityClientById(id_trainee))
|
||||||
|
{//Есть такой
|
||||||
|
sendListTasksAMMofTraineetoClient(handler, id_trainee);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case TypeQueryToDB::TYPE_QUERY_DEL_TASK_FIM_TO_TRAINEE:
|
||||||
|
{
|
||||||
|
if(int id_trainee = providerDBLMS->delTaskFIM(id))
|
||||||
|
{
|
||||||
|
//Отправка списка задач FIM клиенту GUI
|
||||||
|
sendListTasksFIMofTraineetoClient(client, id_trainee);
|
||||||
|
|
||||||
|
//Отправка списка задач FIM клиенту Юнити
|
||||||
|
if(ClientHandler* handler = getUnityClientById(id_trainee))
|
||||||
|
{//Есть такой
|
||||||
|
sendListTasksFIMofTraineetoClient(handler, id_trainee);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_DB_LIST_INSTRUCTORS);
|
|
||||||
|
|
||||||
//QString str = QString(arrayAnswer);
|
|
||||||
//logger->addTextToLogger("To Client: " + str);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void ProcessingSystem::processingClientQueryTasksXML(ClientHandler *client, ClientQueryTasksXML clientQueryTasksXML)
|
void ProcessingSystem::processingClientQueryTasksXML(ClientHandler *client, ClientQueryTasksXML clientQueryTasksXML)
|
||||||
@@ -500,5 +419,38 @@ void ProcessingSystem::setCurrentDataInfo(DataInfo *dataInfo)
|
|||||||
emit sigSetData(dataInfo);
|
emit sigSetData(dataInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ProcessingSystem::sendListTasksAMMofTraineetoClient(ClientHandler *client, int id_trainee)
|
||||||
|
{
|
||||||
|
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksAMMofTrainee(id_trainee);
|
||||||
|
QByteArray arrayAnswer = dataParser->DbAnswer()->listTasksAMMofTrainee(true, &listTasks, id_trainee);
|
||||||
|
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_AMM_FOR_TRAINEE);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ProcessingSystem::sendListTasksFIMofTraineetoClient(ClientHandler *client, int id_trainee)
|
||||||
|
{
|
||||||
|
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksFIMofTrainee(id_trainee);
|
||||||
|
QByteArray arrayAnswer = dataParser->DbAnswer()->listTasksFIMofTrainee(true, &listTasks, id_trainee);
|
||||||
|
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_FIM_FOR_TRAINEE);
|
||||||
|
}
|
||||||
|
|
||||||
|
ClientHandler *ProcessingSystem::getUnityClientById(int id)
|
||||||
|
{
|
||||||
|
QString login = providerDBLMS->getLoginTraineeById(id);
|
||||||
|
|
||||||
|
//Проходим все открытые сокеты, ищем нужный
|
||||||
|
foreach(int idSocket, server->getClientsMap().keys())
|
||||||
|
{
|
||||||
|
ClientHandler *handler = server->getClientsMap().value(idSocket);
|
||||||
|
if(handler->getClient()->getLogin() == login)
|
||||||
|
{
|
||||||
|
if(handler->getClient()->getIsUnity())
|
||||||
|
{
|
||||||
|
return handler;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -39,6 +39,10 @@ public:
|
|||||||
void processingClientNotify(ClientHandler *client, ClientNotify clientNotify);
|
void processingClientNotify(ClientHandler *client, ClientNotify clientNotify);
|
||||||
|
|
||||||
void setCurrentDataInfo(DataInfo *dataInfo);
|
void setCurrentDataInfo(DataInfo *dataInfo);
|
||||||
|
|
||||||
|
void sendListTasksAMMofTraineetoClient(ClientHandler* client, int id_trainee);
|
||||||
|
void sendListTasksFIMofTraineetoClient(ClientHandler* client, int id_trainee);
|
||||||
|
ClientHandler* getUnityClientById(int id);
|
||||||
signals:
|
signals:
|
||||||
void sigUpdateListClients();
|
void sigUpdateListClients();
|
||||||
void sigListsInstructorsTraineesChanged();
|
void sigListsInstructorsTraineesChanged();
|
||||||
|
|||||||
Reference in New Issue
Block a user