Подготовка мессенджера под юзеров

This commit is contained in:
2025-09-09 16:58:18 +03:00
parent e2f7ca88c1
commit 15325eb43a
8 changed files with 66 additions and 45 deletions

View File

@@ -27,32 +27,32 @@ MessangerWidget::~MessangerWidget()
delete ui;
}
void MessangerWidget::setOneTrainee(Trainee trainee)
void MessangerWidget::initUserRemote(User user)
{
this->trainee = trainee;
userRemote = user;
addTabDialogMessenger(trainee);
addTabDialogMessenger(userRemote);
}
void MessangerWidget::reinitMessangerWidget(QList<Trainee> listTrainees)
void MessangerWidget::reinitMessangerWidget(User user)
{
for(Trainee traineeUpdate: listTrainees)
if(userRemote.getID() == user.getID())
{
if(trainee.getID() == traineeUpdate.getID())
{
trainee = traineeUpdate;
userRemote = user;
//Обновляем статус залогинивания
updateLoggedIn(trainee.getLoggedIn());
break;
}
//Обновляем статус залогинивания
updateLoggedIn(userRemote.getLoggedIn());
}
}
void MessangerWidget::initGUIclientId(QString id_client)
void MessangerWidget::initGUIclientId(QString id_GUIclient)
{
currGUIclientId = id_client;
currGUIclientId = id_GUIclient;
}
int MessangerWidget::getIDuserRemote()
{
return userRemote.getID();
}
void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
@@ -63,31 +63,31 @@ void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
void MessangerWidget::showReceivedMessage(ClientMessage clientMessage)
{
if(QString::number(trainee.getID()) == clientMessage.fromId)
if(QString::number(userRemote.getID()) == clientMessage.fromId)
tabDialogMessenger->addMsgWidgetRemote(clientMessage.Text);
}
void MessangerWidget::addTabDialogMessenger(Trainee trainee)
void MessangerWidget::addTabDialogMessenger(User user)
{
if(!tabDialogMessenger)
{//Диалога еще не существует
tabDialogMessenger = new TabDialogMessenger(trainee.getLogin(),QString::number(trainee.getID()), this);
tabDialogMessenger = new TabDialogMessenger(user.getLogin(), QString::number(user.getID()), this);
//Добавляем новую вкладку диалога
int index = ui->tabWidget->addTab(tabDialogMessenger, tr("Trainee") + ": " + trainee.getName() + " (" + trainee.getLogin() + ")");
int index = ui->tabWidget->addTab(tabDialogMessenger, tr("User") + ": " + user.getName() + " (" + user.getLogin() + ")");
//Обновляем статус залогинивания
updateLoggedIn(trainee.getLoggedIn());
updateLoggedIn(user.getLoggedIn());
}
else
{//Диалог уже существует
//Проверяем наличие диалога с этим клиентом
if(tabDialogMessenger->getUserLogin() == trainee.getLogin())
if(tabDialogMessenger->getUserLogin() == user.getLogin())
{
//Обновляем статус залогинивания
updateLoggedIn(trainee.getLoggedIn());
updateLoggedIn(user.getLoggedIn());
}
}
}
@@ -105,7 +105,7 @@ void MessangerWidget::on_btnSend_clicked()
{
QString text = ui->editMsg->toPlainText();
QString from = currGUIclientId;
QString to = QString::number(trainee.getID());
QString to = QString::number(userRemote.getID());
ClientMessage message = ClientMessage(from, to, text);
emit signal_sendMessage(message);