diff --git a/InstructorsAndTrainees/connectorToServer/Core/dataparser.cpp b/InstructorsAndTrainees/connectorToServer/Core/dataparser.cpp index f5a2428..9a6fe76 100644 --- a/InstructorsAndTrainees/connectorToServer/Core/dataparser.cpp +++ b/InstructorsAndTrainees/connectorToServer/Core/dataparser.cpp @@ -245,6 +245,24 @@ QByteArray DataParser::createQueryTasksXMLMessage(QString type) return array; } +QByteArray DataParser::createQueryListSubProcMessage(QString dmCode) +{ + QByteArray array; + QXmlStreamWriter xmlWriter(&array); + + xmlWriter.setAutoFormatting(true); + xmlWriter.writeStartDocument(); + xmlWriter.writeStartElement("QueryListSubProc"); + + xmlWriter.writeAttribute("dmCode", dmCode); + + xmlWriter.writeEndElement(); + xmlWriter.writeEndElement(); + xmlWriter.writeEndDocument(); + + return array; +} + QByteArray DataParser::createDeAuthMessage(ClientDeAutorization *deAuth) { QByteArray array; diff --git a/InstructorsAndTrainees/connectorToServer/Core/dataparser.h b/InstructorsAndTrainees/connectorToServer/Core/dataparser.h index aad94ca..5730424 100644 --- a/InstructorsAndTrainees/connectorToServer/Core/dataparser.h +++ b/InstructorsAndTrainees/connectorToServer/Core/dataparser.h @@ -26,6 +26,7 @@ public: QByteArray createMessage(ClientMessage toClientMessage); QByteArray createQueryToDBMessage(ClientQueryToDB *queryToDB, int id = 0, void* data = nullptr); QByteArray createQueryTasksXMLMessage(QString type); + QByteArray createQueryListSubProcMessage(QString dmCode); QByteArray createDeAuthMessage(ClientDeAutorization *deAuth); QByteArray createQueryBlockAuth(bool block); diff --git a/InstructorsAndTrainees/connectorToServer/connectortoserver.h b/InstructorsAndTrainees/connectorToServer/connectortoserver.h index 55aa48c..446e2bc 100644 --- a/InstructorsAndTrainees/connectorToServer/connectortoserver.h +++ b/InstructorsAndTrainees/connectorToServer/connectortoserver.h @@ -46,6 +46,7 @@ public: bool sendMessage(ClientMessage clientMessage); bool sendQueryTasksXML(QString type); + bool sendQueryListSubProc(QString dmCode); bool sendQueryBlockAuth(bool block); void sendShowVersionSelect(); diff --git a/InstructorsAndTrainees/connectorToServer/connectortoserver_Send.cpp b/InstructorsAndTrainees/connectorToServer/connectortoserver_Send.cpp index be0536c..be087ed 100644 --- a/InstructorsAndTrainees/connectorToServer/connectortoserver_Send.cpp +++ b/InstructorsAndTrainees/connectorToServer/connectortoserver_Send.cpp @@ -82,6 +82,19 @@ bool ConnectorToServer::sendQueryTasksXML(QString type) return true; } +bool ConnectorToServer::sendQueryListSubProc(QString dmCode) +{ + if (!client->getIsConnected()) + { + return false; + } + + QByteArray array = dataParser->createQueryListSubProcMessage(dmCode); + emit sigSendAnswerToServer(array); + + return true; +} + bool ConnectorToServer::sendQueryBlockAuth(bool block) { if (!client->getIsConnected()) diff --git a/InstructorsAndTrainees/tasks/ammtaskswidget.cpp b/InstructorsAndTrainees/tasks/ammtaskswidget.cpp index 5103a8c..59ee76b 100644 --- a/InstructorsAndTrainees/tasks/ammtaskswidget.cpp +++ b/InstructorsAndTrainees/tasks/ammtaskswidget.cpp @@ -149,6 +149,9 @@ void AMMtasksWidget::closeDlgCheckTask() { if(dlgCheckerTask) dlgCheckerTask->close(); + + if(dlgListSubProc) + dlgListSubProc->close(); } void AMMtasksWidget::closeDlgListSubProc() diff --git a/InstructorsAndTrainees/tasks/listsubproc.cpp b/InstructorsAndTrainees/tasks/listsubproc.cpp index aed8a34..b93cf36 100644 --- a/InstructorsAndTrainees/tasks/listsubproc.cpp +++ b/InstructorsAndTrainees/tasks/listsubproc.cpp @@ -4,6 +4,7 @@ ListSubProc::ListSubProc(ConnectorToServer* connectorToServer, QWidget *parent) : QWidget(parent), ui(new Ui::ListSubProc), + connectorToServer(connectorToServer), waitAnimationWidget(nullptr) { ui->setupUi(this); @@ -40,4 +41,7 @@ void ListSubProc::setTask(TaskAmmFim *task) ui->lbl_DMCode->setText(task->ammProcedure.dmCode); waitAnimationWidget->showWithPlay(); + + if(! connectorToServer->sendQueryListSubProc(this->task.ammProcedure.dmCode)) + waitAnimationWidget->hideWithStop(); } diff --git a/InstructorsAndTrainees/tasks/listsubproc.h b/InstructorsAndTrainees/tasks/listsubproc.h index 82fb785..98996a6 100644 --- a/InstructorsAndTrainees/tasks/listsubproc.h +++ b/InstructorsAndTrainees/tasks/listsubproc.h @@ -25,6 +25,8 @@ public: private: Ui::ListSubProc *ui; + ConnectorToServer* connectorToServer; + TaskAmmFim task; WaitAnimationWidget *waitAnimationWidget;