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:
@@ -177,7 +177,7 @@ void InstructorsAndTraineesWidget::slot_checkLoginResult(ServerAuthorization *se
|
|||||||
updateLabelLoggedInInstructor(serverAuth->Login, serverAuth->ClientName);
|
updateLabelLoggedInInstructor(serverAuth->Login, serverAuth->ClientName);
|
||||||
connectorToServer->setLoginName(nameInstructorLoggedInLocal);
|
connectorToServer->setLoginName(nameInstructorLoggedInLocal);
|
||||||
|
|
||||||
messangerController->setGUIclientId(serverAuth->Id);
|
messangerController->setUserLocalGUI_ID(serverAuth->Id.toInt());
|
||||||
|
|
||||||
connectorToServer->sendQueryTasksXML("fim");
|
connectorToServer->sendQueryTasksXML("fim");
|
||||||
connectorToServer->sendQueryTasksXML("amm");
|
connectorToServer->sendQueryTasksXML("amm");
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
MessangerController::MessangerController(ConnectorToServer* connectorToServer, QObject *parent) :
|
MessangerController::MessangerController(ConnectorToServer* connectorToServer, QObject *parent) :
|
||||||
QObject(parent),
|
QObject(parent),
|
||||||
connectorToServer(connectorToServer),
|
connectorToServer(connectorToServer),
|
||||||
GUIclientId("")
|
userLocalGUI_ID(0)
|
||||||
{
|
{
|
||||||
connect(connectorToServer, &ConnectorToServer::signal_receiveMessage, this, &MessangerController::slot_receiveMessage);
|
connect(connectorToServer, &ConnectorToServer::signal_receiveMessage, this, &MessangerController::slot_receiveMessage);
|
||||||
}
|
}
|
||||||
@@ -22,7 +22,7 @@ MessangerWidget *MessangerController::newWidget(QWidget *parent, User* user, QVB
|
|||||||
|
|
||||||
connect(msgWdgt, &MessangerWidget::signal_sendMessage, this, &MessangerController::slot_sendMessage);
|
connect(msgWdgt, &MessangerWidget::signal_sendMessage, this, &MessangerController::slot_sendMessage);
|
||||||
|
|
||||||
msgWdgt->initGUIclientId(GUIclientId);
|
msgWdgt->initUserLocalGUI(connectorToServer->getInstructor(userLocalGUI_ID));
|
||||||
|
|
||||||
if(user)
|
if(user)
|
||||||
{
|
{
|
||||||
@@ -38,9 +38,9 @@ MessangerWidget *MessangerController::newWidget(QWidget *parent, User* user, QVB
|
|||||||
for(MessageOfMessanger msg : *list)
|
for(MessageOfMessanger msg : *list)
|
||||||
{
|
{
|
||||||
if(msg.flLocal)
|
if(msg.flLocal)
|
||||||
msgWdgt->showSendedMessage(ClientMessage(GUIclientId, QString::number(id_user), msg.text, msg.time.toString("hh:mm")));
|
msgWdgt->showSendedMessage(ClientMessage(QString::number(userLocalGUI_ID), QString::number(id_user), msg.text, msg.time.toString("hh:mm")));
|
||||||
else
|
else
|
||||||
msgWdgt->showReceivedMessage(ClientMessage(QString::number(id_user), GUIclientId, msg.text, msg.time.toString("hh:mm")));
|
msgWdgt->showReceivedMessage(ClientMessage(QString::number(id_user), QString::number(userLocalGUI_ID), msg.text, msg.time.toString("hh:mm")));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -70,13 +70,13 @@ void MessangerController::deleteAllWidgets()
|
|||||||
listWidgets.clear();
|
listWidgets.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerController::setGUIclientId(QString id_GUIclient)
|
void MessangerController::setUserLocalGUI_ID(int id)
|
||||||
{
|
{
|
||||||
GUIclientId = id_GUIclient;
|
userLocalGUI_ID = id;
|
||||||
|
|
||||||
for(MessangerWidget* widget : listWidgets)
|
for(MessangerWidget* widget : listWidgets)
|
||||||
{
|
{
|
||||||
widget->initGUIclientId(GUIclientId);
|
widget->initUserLocalGUI(connectorToServer->getInstructor(userLocalGUI_ID));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,7 +112,7 @@ void MessangerController::showMessageInAllWidgets(ClientMessage clientMessage)
|
|||||||
int id_user = 0;
|
int id_user = 0;
|
||||||
MessageOfMessanger msg;
|
MessageOfMessanger msg;
|
||||||
|
|
||||||
if(clientMessage.fromId == GUIclientId)
|
if(clientMessage.fromId == QString::number(userLocalGUI_ID))
|
||||||
{//Send
|
{//Send
|
||||||
id_user = clientMessage.toId.toInt();
|
id_user = clientMessage.toId.toInt();
|
||||||
msg.flLocal = true;
|
msg.flLocal = true;
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ public:
|
|||||||
void deleteWidget(MessangerWidget* msgWdgt);
|
void deleteWidget(MessangerWidget* msgWdgt);
|
||||||
void deleteAllWidgets();
|
void deleteAllWidgets();
|
||||||
|
|
||||||
void setGUIclientId(QString id_GUIclient);
|
void setUserLocalGUI_ID(int id);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void slot_sendMessage(ClientMessage clientMessage);
|
void slot_sendMessage(ClientMessage clientMessage);
|
||||||
@@ -40,7 +40,7 @@ private:
|
|||||||
ConnectorToServer* connectorToServer;
|
ConnectorToServer* connectorToServer;
|
||||||
QList <MessangerWidget*> listWidgets;
|
QList <MessangerWidget*> listWidgets;
|
||||||
|
|
||||||
QString GUIclientId; //id этого GUI клиента
|
int userLocalGUI_ID;
|
||||||
|
|
||||||
QMap <int, QList<MessageOfMessanger>*> mapAlldialogsWithClients;
|
QMap <int, QList<MessageOfMessanger>*> mapAlldialogsWithClients;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -11,7 +11,6 @@
|
|||||||
MessangerWidget::MessangerWidget(QWidget *parent) :
|
MessangerWidget::MessangerWidget(QWidget *parent) :
|
||||||
QWidget(parent),
|
QWidget(parent),
|
||||||
oneDialogMessenger(nullptr),
|
oneDialogMessenger(nullptr),
|
||||||
currGUIclientId(""),
|
|
||||||
ui(new Ui::MessangerWidget)
|
ui(new Ui::MessangerWidget)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
@@ -46,9 +45,9 @@ void MessangerWidget::reinitMessangerWidget(User user)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerWidget::initGUIclientId(QString id_GUIclient)
|
void MessangerWidget::initUserLocalGUI(User user)
|
||||||
{
|
{
|
||||||
currGUIclientId = id_GUIclient;
|
userLocalGUI = user;
|
||||||
}
|
}
|
||||||
|
|
||||||
int MessangerWidget::getIDuserRemote()
|
int MessangerWidget::getIDuserRemote()
|
||||||
@@ -58,13 +57,13 @@ int MessangerWidget::getIDuserRemote()
|
|||||||
|
|
||||||
void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
|
void MessangerWidget::showSendedMessage(ClientMessage clientMessage)
|
||||||
{
|
{
|
||||||
if(currGUIclientId == clientMessage.fromId)
|
if(userLocalGUI.getID() == clientMessage.fromId.toInt())
|
||||||
oneDialogMessenger->addMsgWidgetLocal(clientMessage.Text, clientMessage.timeStr);
|
oneDialogMessenger->addMsgWidgetLocal(clientMessage.Text, clientMessage.timeStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessangerWidget::showReceivedMessage(ClientMessage clientMessage)
|
void MessangerWidget::showReceivedMessage(ClientMessage clientMessage)
|
||||||
{
|
{
|
||||||
if(QString::number(userRemote.getID()) == clientMessage.fromId)
|
if(userRemote.getID() == clientMessage.fromId.toInt())
|
||||||
oneDialogMessenger->addMsgWidgetRemote(clientMessage.Text, clientMessage.timeStr);
|
oneDialogMessenger->addMsgWidgetRemote(clientMessage.Text, clientMessage.timeStr);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -73,7 +72,7 @@ void MessangerWidget::addTabDialogMessenger(User user)
|
|||||||
if(!oneDialogMessenger)
|
if(!oneDialogMessenger)
|
||||||
{//Диалога еще не существует
|
{//Диалога еще не существует
|
||||||
|
|
||||||
oneDialogMessenger = new OneDialogMessenger(user, this);
|
oneDialogMessenger = new OneDialogMessenger(userLocalGUI, userRemote, this);
|
||||||
|
|
||||||
ui->verticalLayout_ListMsg->addWidget(oneDialogMessenger);
|
ui->verticalLayout_ListMsg->addWidget(oneDialogMessenger);
|
||||||
|
|
||||||
@@ -84,7 +83,7 @@ void MessangerWidget::addTabDialogMessenger(User user)
|
|||||||
{//Диалог уже существует
|
{//Диалог уже существует
|
||||||
|
|
||||||
//Проверяем наличие диалога именно с этим клиентом
|
//Проверяем наличие диалога именно с этим клиентом
|
||||||
if(oneDialogMessenger->getUserId() == user.getID())
|
if(oneDialogMessenger->getUserRemoteId() == user.getID())
|
||||||
{
|
{
|
||||||
//Обновляем заголовок
|
//Обновляем заголовок
|
||||||
updateHeader(user);
|
updateHeader(user);
|
||||||
@@ -126,7 +125,7 @@ void MessangerWidget::updateHeader(User user)
|
|||||||
void MessangerWidget::on_btnSend_clicked()
|
void MessangerWidget::on_btnSend_clicked()
|
||||||
{
|
{
|
||||||
QString text = ui->editMsg->toPlainText();
|
QString text = ui->editMsg->toPlainText();
|
||||||
QString from = currGUIclientId;
|
QString from = QString::number(userLocalGUI.getID());
|
||||||
QString to = QString::number(userRemote.getID());
|
QString to = QString::number(userRemote.getID());
|
||||||
|
|
||||||
ClientMessage message = ClientMessage(from, to, text);
|
ClientMessage message = ClientMessage(from, to, text);
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ public:
|
|||||||
public:
|
public:
|
||||||
void initUserRemote(User user);
|
void initUserRemote(User user);
|
||||||
void reinitMessangerWidget(User user);
|
void reinitMessangerWidget(User user);
|
||||||
void initGUIclientId(QString id_GUIclient);
|
void initUserLocalGUI(User user);
|
||||||
int getIDuserRemote();
|
int getIDuserRemote();
|
||||||
|
|
||||||
void showSendedMessage(ClientMessage clientMessage);
|
void showSendedMessage(ClientMessage clientMessage);
|
||||||
@@ -48,8 +48,8 @@ protected:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
OneDialogMessenger* oneDialogMessenger;
|
OneDialogMessenger* oneDialogMessenger;
|
||||||
|
User userLocalGUI;
|
||||||
User userRemote;
|
User userRemote;
|
||||||
QString currGUIclientId; //id этого клиента
|
|
||||||
|
|
||||||
QTranslator qtLanguageTranslator;
|
QTranslator qtLanguageTranslator;
|
||||||
|
|
||||||
|
|||||||
@@ -5,10 +5,11 @@
|
|||||||
#include "instructor.h"
|
#include "instructor.h"
|
||||||
|
|
||||||
|
|
||||||
OneDialogMessenger::OneDialogMessenger(User user, QWidget *parent):
|
OneDialogMessenger::OneDialogMessenger(User userLocalGUI, User userRemote, QWidget *parent):
|
||||||
QListWidget(parent)
|
QListWidget(parent)
|
||||||
{
|
{
|
||||||
this->user = user;
|
this->userLocalGUI = userLocalGUI;
|
||||||
|
this->userRemote = userRemote;
|
||||||
|
|
||||||
setWordWrap(true);
|
setWordWrap(true);
|
||||||
setVerticalScrollBarPolicy(Qt::ScrollBarPolicy::ScrollBarAlwaysOn);
|
setVerticalScrollBarPolicy(Qt::ScrollBarPolicy::ScrollBarAlwaysOn);
|
||||||
@@ -38,16 +39,20 @@ void OneDialogMessenger::addMsgWidget(QString text, QString timeStr, MsgWidget::
|
|||||||
|
|
||||||
if(direction == MsgWidget::DirectionMsg::Outgoing)
|
if(direction == MsgWidget::DirectionMsg::Outgoing)
|
||||||
{//Исходящее
|
{//Исходящее
|
||||||
avatar = ":/resources/icons/instructor.png";
|
if(static_cast<Instructor*>(&userLocalGUI)->getIsAdmin())
|
||||||
|
avatar = ":/resources/icons/admin.png";
|
||||||
|
else
|
||||||
|
avatar = ":/resources/icons/instructor.png";
|
||||||
|
|
||||||
aligneAvatar = MsgWidget::AligneAvatar::Left;
|
aligneAvatar = MsgWidget::AligneAvatar::Left;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{//Входящее
|
{//Входящее
|
||||||
if(user.getTypeUserDB() == User::TypeUserDBTrainee)
|
if(userRemote.getTypeUserDB() == User::TypeUserDBTrainee)
|
||||||
avatar = ":/resources/icons/trainee.png";
|
avatar = ":/resources/icons/trainee.png";
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if(static_cast<Instructor*>(&user)->getIsAdmin())
|
if(static_cast<Instructor*>(&userRemote)->getIsAdmin())
|
||||||
avatar = ":/resources/icons/admin.png";
|
avatar = ":/resources/icons/admin.png";
|
||||||
else
|
else
|
||||||
avatar = ":/resources/icons/instructor.png";
|
avatar = ":/resources/icons/instructor.png";
|
||||||
|
|||||||
@@ -10,10 +10,10 @@ class OneDialogMessenger : public QListWidget
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
OneDialogMessenger(User user, QWidget *parent = nullptr);
|
OneDialogMessenger(User userLocalGUI, User userRemote, QWidget *parent = nullptr);
|
||||||
~OneDialogMessenger();
|
~OneDialogMessenger();
|
||||||
|
|
||||||
int getUserId() {return user.getID();}
|
int getUserRemoteId() {return userRemote.getID();}
|
||||||
|
|
||||||
void addMsgWidgetLocal(QString text, QString timeStr = "");
|
void addMsgWidgetLocal(QString text, QString timeStr = "");
|
||||||
void addMsgWidgetRemote(QString text, QString timeStr = "");
|
void addMsgWidgetRemote(QString text, QString timeStr = "");
|
||||||
@@ -22,7 +22,8 @@ private:
|
|||||||
void addMsgWidget(QString text, QString timeStr, MsgWidget::DirectionMsg direction);
|
void addMsgWidget(QString text, QString timeStr, MsgWidget::DirectionMsg direction);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
User user;
|
User userLocalGUI;
|
||||||
|
User userRemote;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // TABDIALOGMESSENGER_H
|
#endif // TABDIALOGMESSENGER_H
|
||||||
|
|||||||
Reference in New Issue
Block a user