Завел контроллер Месанджера

This commit is contained in:
2025-09-03 17:24:36 +03:00
parent e9b571aa81
commit 5e834b582f
11 changed files with 178 additions and 60 deletions

View File

@@ -12,8 +12,7 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
viewerTrainees(nullptr),
viewerInstructors(nullptr),
messangerWidget(nullptr),
//ammTasksWidget(nullptr),
//fimTasksWidget(nullptr),
messangerController(nullptr),
adminMode(false),
loginInstructorLoggedInLocal(QStringLiteral("")),
nameInstructorLoggedInLocal(QStringLiteral("")),
@@ -22,7 +21,6 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
ui->setupUi(this);
ui->btnSettings->setObjectName("btnSettings");
//ui->tabWidget_Tasks->setObjectName("tabWidgetTasks");
ui->widget_Top->setObjectName("widgetTop");
ui->groupBox_Trainees->setObjectName("groupBox_Trainees");
@@ -52,45 +50,26 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
connect(connectorToServer,&ConnectorToServer::sigLoginResult,this,&InstructorsAndTraineesWidget::checkLoginResult);
connect(connectorToServer,&ConnectorToServer::sigDeLoginResult,this,&InstructorsAndTraineesWidget::checkDeLoginResult);
viewerTrainees = new ViewerTrainees(connectorToServer, this);
messangerController = new MessangerController(connectorToServer, this);
viewerTrainees = new ViewerTrainees(connectorToServer, messangerController, this);
viewerInstructors = new ViewerInstructors(connectorToServer, this);
connect(this, &InstructorsAndTraineesWidget::signal_NeedUpdateUI, viewerTrainees, &ViewerTrainees::slot_NeedUpdateUI);
connect(this, &InstructorsAndTraineesWidget::signal_NeedUpdateUI, viewerInstructors, &ViewerInstructors::slot_NeedUpdateUI);
connect(viewerInstructors, &ViewerInstructors::signal_BlockAutorization, this, &InstructorsAndTraineesWidget::signal_BlockAutorization);
connect(viewerTrainees, &ViewerTrainees::signal_BlockAutorization, this, &InstructorsAndTraineesWidget::signal_BlockAutorization);
//connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
//connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
connect(connectorToServer,&ConnectorToServer::signal_ConnectedToServer,this,&InstructorsAndTraineesWidget::slot_ConnectedToServer);
/*
ammTasksWidget = new AMMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listCommon, this);
fimTasksWidget = new FIMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listCommon, this);
connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, messangerController, &MessangerController::signal_traineeSelected);
connect(messangerController, &MessangerController::signal_tabMessengerChanged, viewerTrainees, &ViewerTrainees::slot_tabMessengerChanged);
connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksFIM, fimTasksWidget, &FIMtasksWidget::slot_NeedUpdateUI);
connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksAMM, ammTasksWidget, &AMMtasksWidget::slot_NeedUpdateUI);
connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, fimTasksWidget, &FIMtasksWidget::slot_traineeSelected);
connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, ammTasksWidget, &AMMtasksWidget::slot_traineeSelected);
*/
messangerWidget = new MessangerWidget(this);
//connect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerWidget,&MessangerWidget::slot_InitMessanger);
connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, messangerWidget, &MessangerWidget::slot_traineeSelected);
connect(messangerWidget, &MessangerWidget::signal_tabMessengerChanged, viewerTrainees, &ViewerTrainees::slot_tabMessengerChanged);
connect(messangerWidget, &MessangerWidget::signal_sendMessage, connectorToServer, &ConnectorToServer::slot_sendMessage);
connect(connectorToServer,&ConnectorToServer::signal_receiveMessage,messangerWidget,&MessangerWidget::slot_showMessage);
//connect(fimTasksWidget, &FIMtasksWidget::signal_AssignedTask, viewerTrainees, &ViewerTrainees::slot_waitAnimationWidgetShowWithPlayFIM);
//connect(ammTasksWidget, &AMMtasksWidget::signal_AssignedTask, viewerTrainees, &ViewerTrainees::slot_waitAnimationWidgetShowWithPlayAMM);
messangerWidget = messangerController->newWidget(this);
//Размещение
ui->verticalLayout_Trainees->addWidget(viewerTrainees);
//ui->verticalLayout_AMM->addWidget(ammTasksWidget);
//ui->verticalLayout_FIM->addWidget(fimTasksWidget);
ui->verticalLayout_Messenger->addWidget(messangerWidget);
ui->verticalLayout_Instructors->addWidget(viewerInstructors);
@@ -123,9 +102,7 @@ InstructorsAndTraineesWidget::~InstructorsAndTraineesWidget()
if(authorizationIsCompleted())
deAuthorizationInstructor(loginInstructorLoggedInLocal);
//delete ammTasksWidget;
//delete fimTasksWidget;
delete messangerWidget;
delete messangerController;
delete viewerInstructors;
delete viewerTrainees;
delete connectorToServer;
@@ -218,7 +195,7 @@ void InstructorsAndTraineesWidget::checkLoginResult(ServerAuthorization *serverA
updateLabelLoggedInInstructor(serverAuth->Login, serverAuth->ClientName);
connectorToServer->setLoginName(nameInstructorLoggedInLocal);
messangerWidget->initialize(serverAuth->Id);
messangerController->initialize(serverAuth->Id);
connectorToServer->sendQueryTasksXML("fim");
connectorToServer->sendQueryTasksXML("amm");
@@ -298,7 +275,7 @@ void InstructorsAndTraineesWidget::slot_ConnectedToServer(bool state)
//ammTasksWidget->deactivate();
//fimTasksWidget->deactivate();
messangerWidget->clear();
messangerController->clear();
loginInstructorLoggedInLocal = "";
nameInstructorLoggedInLocal = "";
@@ -368,7 +345,7 @@ void InstructorsAndTraineesWidget::on_btnAuthorizationInstructor_clicked()
{
connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
connect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerWidget,&MessangerWidget::slot_InitMessanger);
connect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerController,&MessangerController::signal_InitMessanger);
}
else
ui->btnAuthorizationInstructor->setChecked(false);
@@ -381,7 +358,7 @@ void InstructorsAndTraineesWidget::on_btnAuthorizationInstructor_clicked()
{
disconnect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
disconnect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
disconnect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerWidget,&MessangerWidget::slot_InitMessanger);
disconnect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerController,&MessangerController::signal_InitMessanger);
viewerTrainees->deactivate();
viewerInstructors->deactivate();
@@ -389,7 +366,7 @@ void InstructorsAndTraineesWidget::on_btnAuthorizationInstructor_clicked()
//ammTasksWidget->deactivate();
//fimTasksWidget->deactivate();
messangerWidget->clear();
messangerController->clear();
}
else
ui->btnAuthorizationInstructor->setChecked(true);