mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-28 19:55:48 +03:00
feat: change message and contac list attribute
This commit is contained in:
@@ -76,7 +76,7 @@ QByteArray DataParser::createAuthMessage(ClientAutorization *auth)
|
||||
return array;
|
||||
}
|
||||
|
||||
QByteArray DataParser::createMessage(ClientMessage *clientMessage)
|
||||
QByteArray DataParser::createMessage(ClientMessage clientMessage)
|
||||
{
|
||||
QByteArray array;
|
||||
QXmlStreamWriter xmlWriter(&array);
|
||||
@@ -85,9 +85,10 @@ QByteArray DataParser::createMessage(ClientMessage *clientMessage)
|
||||
xmlWriter.writeStartDocument();
|
||||
xmlWriter.writeStartElement("ClientMessage");
|
||||
|
||||
xmlWriter.writeAttribute("From",clientMessage->fromId);
|
||||
xmlWriter.writeAttribute("To", clientMessage->toId);
|
||||
xmlWriter.writeAttribute("Text", clientMessage->Text);
|
||||
xmlWriter.writeAttribute("From",clientMessage.fromId);
|
||||
xmlWriter.writeAttribute("To", clientMessage.toId);
|
||||
xmlWriter.writeAttribute("Text", clientMessage.Text);
|
||||
xmlWriter.writeAttribute("UserType",clientMessage.UserType);
|
||||
|
||||
xmlWriter.writeEndElement();
|
||||
xmlWriter.writeEndElement();
|
||||
|
||||
@@ -23,7 +23,7 @@ public:
|
||||
void createFileDataList(QList<FileData> fileDataList,QString filename);
|
||||
|
||||
QByteArray createAuthMessage(ClientAutorization *auth);
|
||||
QByteArray createMessage(ClientMessage *toClientMessage);
|
||||
QByteArray createMessage(ClientMessage toClientMessage);
|
||||
QByteArray createQueryToDBMessage(ClientQueryToDB *queryToDB, int id = 0, void* data = nullptr);
|
||||
QByteArray createQueryTasksXMLMessage(QString type);
|
||||
QByteArray createDeAuthMessage(ClientDeAutorization *deAuth);
|
||||
|
||||
@@ -526,9 +526,14 @@ void RecognizeSystem::xmlParser(QByteArray array)
|
||||
if (name == "Text"){
|
||||
clientMessage->Text = value;
|
||||
}
|
||||
|
||||
if (name == "UserType")
|
||||
{
|
||||
clientMessage->UserType = value;
|
||||
}
|
||||
}
|
||||
|
||||
emit signal_ReceiveMessage(clientMessage->fromId, clientMessage->toId,clientMessage->Text);
|
||||
emit signal_ReceiveMessage(*clientMessage);
|
||||
}
|
||||
|
||||
if(xmlReader.name() == "ServerDeAuthorization"){
|
||||
|
||||
@@ -41,7 +41,7 @@ signals:
|
||||
void sigSocketWaitForReadyRead(int waitTime);
|
||||
void sigStartCompare();
|
||||
|
||||
void signal_ReceiveMessage(QString fromId,QString toId, QString text);
|
||||
void signal_ReceiveMessage(ClientMessage clientMessage);
|
||||
|
||||
void sigAnswerQueryToDB_ListInstructors(QList<Instructor> listInstructors);
|
||||
void sigAnswerQueryToDB_ListGroups(QList<Group> listGroups);
|
||||
|
||||
@@ -77,6 +77,15 @@ public:
|
||||
QString fromId;
|
||||
QString toId;
|
||||
QString Text;
|
||||
QString UserType;
|
||||
ClientMessage(){}
|
||||
ClientMessage(QString fromId, QString toId, QString text, QString UserType)
|
||||
{
|
||||
this->fromId = fromId;
|
||||
this->toId = toId;
|
||||
this->Text = text;
|
||||
this->UserType = UserType;
|
||||
}
|
||||
};
|
||||
|
||||
class ServerTask
|
||||
|
||||
@@ -81,18 +81,12 @@ bool ConnectorToServer::sendQueryToDB(TypeQueryToDB typeQuery, int id, void* dat
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ConnectorToServer::sendMessage(QString fromId, QString toId, QString text)
|
||||
bool ConnectorToServer::sendMessage(ClientMessage clientMessage)
|
||||
{
|
||||
if (!client->getIsConnected())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
ClientMessage *clientMessage = new ClientMessage;
|
||||
clientMessage->fromId = fromId;
|
||||
clientMessage->toId = toId;
|
||||
clientMessage->Text = text;
|
||||
|
||||
QByteArray array = dataParser->createMessage(clientMessage);
|
||||
emit signal_sendXMLmsgGUItoServer(array);
|
||||
|
||||
@@ -372,9 +366,9 @@ void ConnectorToServer::slot_AnswerQueryTasksXML_AMM(QByteArray array)
|
||||
emit signal_UpdateTasksAMM();
|
||||
}
|
||||
|
||||
void ConnectorToServer::slot_sendMessage(QString fromId, QString toId, QString text)
|
||||
void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage)
|
||||
{
|
||||
sendMessage(fromId, toId, text);
|
||||
sendMessage(clientMessage);
|
||||
}
|
||||
|
||||
void ConnectorToServer::showServerList(QList<StreamingVersionData *> *serverList)
|
||||
|
||||
@@ -27,7 +27,7 @@ public:
|
||||
bool deAuthorizationInstructorLocal(QString login);
|
||||
|
||||
bool sendQueryToDB(TypeQueryToDB typeQuery, int id = 0, void* data = nullptr);
|
||||
bool sendMessage(QString fromId, QString toId, QString text);
|
||||
bool sendMessage(ClientMessage clientMessage);
|
||||
|
||||
bool sendQueryTasksXML(QString type);
|
||||
|
||||
@@ -81,7 +81,7 @@ public slots:
|
||||
void slot_AnswerQueryTasksXML_FIM(QByteArray array);
|
||||
void slot_AnswerQueryTasksXML_AMM(QByteArray array);
|
||||
|
||||
void slot_sendMessage(QString fromId, QString toId, QString text);
|
||||
void slot_sendMessage(ClientMessage clientMessage);
|
||||
void showServerList(QList<StreamingVersionData*> *serverList);
|
||||
|
||||
void slot_HashReady();
|
||||
@@ -110,7 +110,7 @@ signals:
|
||||
|
||||
void signal_InitMessanger(QList<Trainee> listTrainees);
|
||||
|
||||
void signal_receiveMessage(QString fromId, QString toId, QString text);
|
||||
void signal_receiveMessage(ClientMessage clientMessage);
|
||||
void sigSendAnswerToServer(QByteArray array);
|
||||
|
||||
private:
|
||||
|
||||
@@ -40,6 +40,7 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
|
||||
qRegisterMetaType<QList<Module*>>("QList<Module*>");
|
||||
qRegisterMetaType<QList<QTreeWidgetItem*>>("QList<QTreeWidgetItem*>");
|
||||
qRegisterMetaType<QList<TaskAmmFim>>("QList<TaskAmmFim>");
|
||||
qRegisterMetaType<ClientMessage>("ClientMessage");
|
||||
|
||||
qDebug() << "InstructorsAndTraineesWidget init thread ID " << QThread::currentThreadId();
|
||||
|
||||
@@ -218,6 +219,7 @@ void InstructorsAndTraineesWidget::checkLoginResult(ServerAuthorization *serverA
|
||||
|
||||
connectorToServer->sendQueryTasksXML("fim");
|
||||
connectorToServer->sendQueryTasksXML("amm");
|
||||
messangerWidget->initialize(serverAuth->Id);
|
||||
//QMessageBox::information(this, tr("Instructor authorization"), tr("Successfully!"));
|
||||
}
|
||||
else
|
||||
|
||||
@@ -153,8 +153,9 @@ void MessangerWidget::clear()
|
||||
void MessangerWidget::on_btnSend_clicked()
|
||||
{
|
||||
QString text = ui->editMsg->toPlainText();
|
||||
ClientMessage message = ClientMessage(currClientId,selectedUserId,text,"0");
|
||||
|
||||
emit signal_sendMessage(currClientId, selectedUserId, text);
|
||||
emit signal_sendMessage(message);
|
||||
|
||||
ui->editMsg->clear();
|
||||
|
||||
@@ -226,13 +227,13 @@ void MessangerWidget::slot_InitMessanger(QList<Trainee> listTrainees)
|
||||
}
|
||||
}
|
||||
|
||||
void MessangerWidget::slot_showMessage(QString fromId, QString toId, QString text)
|
||||
void MessangerWidget::slot_showMessage(ClientMessage clientMessage)
|
||||
{
|
||||
for(Trainee trainee: listTrainees)
|
||||
{
|
||||
if(QString::number(trainee.getID()) == fromId)
|
||||
if(QString::number(trainee.getID()) == clientMessage.fromId)
|
||||
{
|
||||
addMsgFromClient(trainee, text);
|
||||
addMsgFromClient(trainee, clientMessage.Text);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -46,7 +46,7 @@ private slots:
|
||||
|
||||
signals:
|
||||
//сигнал о готовности нового сообщения на отправку клиенту
|
||||
void signal_sendMessage(QString fromId, QString toId, QString text);
|
||||
void signal_sendMessage(ClientMessage clientMessage);
|
||||
//сигнал об изменении вкладки диалога с клиентом (TabDialogMessenger)
|
||||
void signal_tabMessengerChanged(QString login);
|
||||
|
||||
@@ -58,7 +58,7 @@ public slots:
|
||||
//слот обработки сигнала о выборе обучаемого
|
||||
void slot_traineeSelected(QString login);
|
||||
//слот о приходе нового сообщения от клиента
|
||||
void slot_showMessage(QString fromId, QString toId, QString text);
|
||||
void slot_showMessage(ClientMessage clientMessage);
|
||||
|
||||
private:
|
||||
virtual void keyPressEvent(QKeyEvent *event) override;
|
||||
|
||||
Reference in New Issue
Block a user