mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-27 19:45:43 +03:00
Контроллер мессенджера упрощенный
This commit is contained in:
@@ -345,7 +345,7 @@ void InstructorsAndTraineesWidget::on_btnAuthorizationInstructor_clicked()
|
|||||||
{
|
{
|
||||||
connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
|
connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
|
||||||
connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
|
connect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
|
||||||
connect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerController,&MessangerController::signal_InitMessanger);
|
connect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerController,&MessangerController::slot_InitMessanger);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
ui->btnAuthorizationInstructor->setChecked(false);
|
ui->btnAuthorizationInstructor->setChecked(false);
|
||||||
@@ -358,7 +358,7 @@ void InstructorsAndTraineesWidget::on_btnAuthorizationInstructor_clicked()
|
|||||||
{
|
{
|
||||||
disconnect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
|
disconnect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerInstructors,&ViewerInstructors::slot_NeedUpdateUI);
|
||||||
disconnect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
|
disconnect(connectorToServer,&ConnectorToServer::signal_UpdateDB,viewerTrainees,&ViewerTrainees::slot_NeedUpdateUI);
|
||||||
disconnect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerController,&MessangerController::signal_InitMessanger);
|
disconnect(connectorToServer,&ConnectorToServer::signal_InitMessanger,messangerController,&MessangerController::slot_InitMessanger);
|
||||||
|
|
||||||
viewerTrainees->deactivate();
|
viewerTrainees->deactivate();
|
||||||
viewerInstructors->deactivate();
|
viewerInstructors->deactivate();
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ MessangerWidget *MessangerController::newWidget(QWidget *parent)
|
|||||||
connect(this, &MessangerController::signal_traineeSelected, msgWdgt, &MessangerWidget::slot_traineeSelected);
|
connect(this, &MessangerController::signal_traineeSelected, msgWdgt, &MessangerWidget::slot_traineeSelected);
|
||||||
connect(msgWdgt, &MessangerWidget::signal_tabMessengerChanged, this, &MessangerController::signal_tabMessengerChanged);
|
connect(msgWdgt, &MessangerWidget::signal_tabMessengerChanged, this, &MessangerController::signal_tabMessengerChanged);
|
||||||
|
|
||||||
connect(this, &MessangerController::signal_InitMessanger, msgWdgt,&MessangerWidget::slot_InitMessanger);
|
//connect(this, &MessangerController::slot_InitMessanger, msgWdgt,&MessangerWidget::slot_InitMessanger);
|
||||||
|
|
||||||
msgWdgt->initialize(currClientId);
|
msgWdgt->initialize(currClientId);
|
||||||
|
|
||||||
@@ -74,3 +74,11 @@ void MessangerController::slot_sendMessage(ClientMessage clientMessage)
|
|||||||
widget->addMsgWidgetLocal(clientMessage.Text);
|
widget->addMsgWidgetLocal(clientMessage.Text);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MessangerController::slot_InitMessanger(QList<Trainee> listTrainees)
|
||||||
|
{
|
||||||
|
for(MessangerWidget* widget : listWidgets)
|
||||||
|
{
|
||||||
|
widget->slot_InitMessanger(listTrainees);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -23,10 +23,11 @@ signals:
|
|||||||
void signal_tabMessengerChanged(QString login);
|
void signal_tabMessengerChanged(QString login);
|
||||||
void signal_traineeSelected(QString login);
|
void signal_traineeSelected(QString login);
|
||||||
|
|
||||||
void signal_InitMessanger(QList<Trainee> listTrainees);
|
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void slot_sendMessage(ClientMessage clientMessage);
|
void slot_sendMessage(ClientMessage clientMessage);
|
||||||
|
void slot_InitMessanger(QList<Trainee> listTrainees);
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ MessangerWidget::MessangerWidget(QWidget *parent) :
|
|||||||
QWidget(parent),
|
QWidget(parent),
|
||||||
ui(new Ui::MessangerWidget),
|
ui(new Ui::MessangerWidget),
|
||||||
selectedUserLogin(""),
|
selectedUserLogin(""),
|
||||||
selectedUserId("")
|
selectedUserId(""),
|
||||||
|
flOneTrainee(false)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
|
||||||
@@ -167,6 +168,16 @@ void MessangerWidget::addMsgWidgetLocal(QString text)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MessangerWidget::setOneTrainee(Trainee trainee)
|
||||||
|
{
|
||||||
|
flOneTrainee = true;
|
||||||
|
|
||||||
|
listTrainees.clear();
|
||||||
|
listTrainees.append(trainee);
|
||||||
|
|
||||||
|
slot_InitMessanger(listTrainees);
|
||||||
|
}
|
||||||
|
|
||||||
void MessangerWidget::on_btnSend_clicked()
|
void MessangerWidget::on_btnSend_clicked()
|
||||||
{
|
{
|
||||||
QString text = ui->editMsg->toPlainText();
|
QString text = ui->editMsg->toPlainText();
|
||||||
@@ -236,11 +247,26 @@ void MessangerWidget::slot_LanguageChanged(QString language)
|
|||||||
|
|
||||||
void MessangerWidget::slot_InitMessanger(QList<Trainee> listTrainees)
|
void MessangerWidget::slot_InitMessanger(QList<Trainee> listTrainees)
|
||||||
{
|
{
|
||||||
this->listTrainees = listTrainees;
|
if(flOneTrainee)
|
||||||
|
{
|
||||||
|
Trainee traineeOne = this->listTrainees.first();
|
||||||
|
for(Trainee trainee: listTrainees)
|
||||||
|
{
|
||||||
|
if(traineeOne.getID() == trainee.getID())
|
||||||
|
{
|
||||||
|
this->listTrainees.replace(0, trainee);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
this->listTrainees = listTrainees;
|
||||||
|
}
|
||||||
|
|
||||||
actualizationTabsDialogMessenger();
|
actualizationTabsDialogMessenger();
|
||||||
|
|
||||||
for(Trainee trainee: listTrainees)
|
for(Trainee trainee: this->listTrainees)
|
||||||
{
|
{
|
||||||
if(! trainee.getArchived())
|
if(! trainee.getArchived())
|
||||||
addTabDialogMessenger(trainee);
|
addTabDialogMessenger(trainee);
|
||||||
|
|||||||
@@ -42,6 +42,8 @@ public:
|
|||||||
|
|
||||||
void addMsgWidgetLocal(QString text);
|
void addMsgWidgetLocal(QString text);
|
||||||
|
|
||||||
|
void setOneTrainee(Trainee trainee);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void on_btnSend_clicked();
|
void on_btnSend_clicked();
|
||||||
void on_tabWidget_currentChanged(int index);
|
void on_tabWidget_currentChanged(int index);
|
||||||
@@ -73,6 +75,8 @@ private:
|
|||||||
QString selectedUserId; //id клиента текущего диалога
|
QString selectedUserId; //id клиента текущего диалога
|
||||||
QString currClientId; //id этого клиента
|
QString currClientId; //id этого клиента
|
||||||
QTranslator qtLanguageTranslator;
|
QTranslator qtLanguageTranslator;
|
||||||
|
|
||||||
|
bool flOneTrainee;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MESSANGERWIDGET_H
|
#endif // MESSANGERWIDGET_H
|
||||||
|
|||||||
@@ -37,10 +37,15 @@ PersonalCardTrainee::PersonalCardTrainee(ConnectorToServer* connectorToServer, M
|
|||||||
|
|
||||||
ui->verticalLayout_Messenger->addWidget(messangerWidget);
|
ui->verticalLayout_Messenger->addWidget(messangerWidget);
|
||||||
|
|
||||||
QList<Trainee> listTrainees;
|
|
||||||
|
//QList<Trainee> listTrainees;
|
||||||
Trainee trainee = connectorToServer->getTrainee(id_trainee);
|
Trainee trainee = connectorToServer->getTrainee(id_trainee);
|
||||||
|
/*
|
||||||
listTrainees.append(trainee);
|
listTrainees.append(trainee);
|
||||||
messangerWidget->slot_InitMessanger(listTrainees);
|
messangerWidget->slot_InitMessanger(listTrainees);
|
||||||
|
*/
|
||||||
|
|
||||||
|
messangerWidget->setOneTrainee(trainee);
|
||||||
|
|
||||||
ui->groupBox_Messenger->setMaximumWidth(600);
|
ui->groupBox_Messenger->setMaximumWidth(600);
|
||||||
ui->groupBox_Messenger->setMinimumWidth(600);
|
ui->groupBox_Messenger->setMinimumWidth(600);
|
||||||
|
|||||||
Reference in New Issue
Block a user