From a3f3690e525d23b7cb4bb8a3fb5e48a194ae0222 Mon Sep 17 00:00:00 2001 From: krivoshein Date: Fri, 23 May 2025 10:34:01 +0300 Subject: [PATCH] =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=20TYPE=5FQUERY?= =?UTF-8?q?=5FCHANGE=5FSTATUS=5FREPORT=5FTASK=5FFIM=5FTO=5FTRAINEE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DataBaseLMS/typeQueryToDB.h | 4 +- InstructorsAndTrainees/resources.qrc | 1 + .../resources/icons/circleRed.png | Bin 0 -> 16112 bytes .../tasks/dialogchecktask.cpp | 71 +++++++++--- .../tasks/dialogchecktask.h | 6 +- .../tasks/dialogchecktask.ui | 108 +++++++++++++++++- .../tasks/fimtaskswidget.cpp | 4 +- 7 files changed, 170 insertions(+), 24 deletions(-) create mode 100644 InstructorsAndTrainees/resources/icons/circleRed.png diff --git a/DataBaseLMS/typeQueryToDB.h b/DataBaseLMS/typeQueryToDB.h index 176071c..c025f71 100644 --- a/DataBaseLMS/typeQueryToDB.h +++ b/DataBaseLMS/typeQueryToDB.h @@ -23,7 +23,9 @@ enum TypeQueryToDB{ TYPE_QUERY_DEL_TASK_FIM_TO_TRAINEE, TYPE_QUERY_SET_REPORT_TASK_AMM_TO_TRAINEE, - TYPE_QUERY_SET_REPORT_TASK_FIM_TO_TRAINEE + TYPE_QUERY_SET_REPORT_TASK_FIM_TO_TRAINEE, + + TYPE_QUERY_CHANGE_STATUS_REPORT_TASK_FIM_TO_TRAINEE }; #endif // TYPEQUERYTODB_H diff --git a/InstructorsAndTrainees/resources.qrc b/InstructorsAndTrainees/resources.qrc index 2228176..30ce2a3 100644 --- a/InstructorsAndTrainees/resources.qrc +++ b/InstructorsAndTrainees/resources.qrc @@ -45,5 +45,6 @@ resources/icons/delete.png resources/icons/filter.png resources/icons/check.png + resources/icons/circleRed.png diff --git a/InstructorsAndTrainees/resources/icons/circleRed.png b/InstructorsAndTrainees/resources/icons/circleRed.png new file mode 100644 index 0000000000000000000000000000000000000000..9be2b42794ec1cf6ab5f4a5d40bce730958c5a1c GIT binary patch literal 16112 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 literal 0 HcmV?d00001 diff --git a/InstructorsAndTrainees/tasks/dialogchecktask.cpp b/InstructorsAndTrainees/tasks/dialogchecktask.cpp index 1ead0bc..5c26828 100644 --- a/InstructorsAndTrainees/tasks/dialogchecktask.cpp +++ b/InstructorsAndTrainees/tasks/dialogchecktask.cpp @@ -11,17 +11,10 @@ DialogCheckTask::DialogCheckTask(ConnectorToServer* connectorToServer, QWidget * fimTasksWidget = new FIMtasksWidget(nullptr, FIMtasksWidget::TypeList::listOneTask, this); - ui->horizontalLayout_3->addWidget(fimTasksWidget); + ui->verticalLayout_3->addWidget(fimTasksWidget); - /* - ui->plainText->appendHtml("1 Hello World"); - ui->plainText->appendHtml("

2 Hello World

"); - ui->plainText->appendHtml("3 Hello World"); - ui->plainText->appendHtml("4 Hello World"); - ui->plainText->appendHtml("5 Hello World"); - - ui->plainText->appendHtml("

6 Hello World

"); - */ + ui->plainText->setReadOnly(true); + ui->plainText->setObjectName("plainText"); } DialogCheckTask::~DialogCheckTask() @@ -48,15 +41,59 @@ TaskAmmFim DialogCheckTask::getTask() void DialogCheckTask::outReport(FIMReport report) { - //Запрашиваем отчет по этой задаче - - + QString str; + /* + str = QString("Report ID: %1").arg(QString::number(report.id)); + ui->plainText->appendHtml(str); + ui->plainText->appendHtml("
"); + */ for(FIMReportItem item : report.itemList) { - ui->plainText->appendHtml("Title: "); - ui->plainText->appendHtml("

DMcode:

"); - ui->plainText->appendHtml("

Result:

"); - ui->plainText->appendHtml("

Text:

"); + /* + //Item ID + str = QString("

Item ID: %1

").arg(QString::number(item.id)); + ui->plainText->appendHtml(str); + */ + + //Title + str = QString("%1").arg(item.procedure.title); + ui->plainText->appendHtml(str); + + //DMcode + str = QString("

%1

").arg(item.procedure.dmCode); + ui->plainText->appendHtml(str); + + //Result + str = QString("

%1

").arg(item.procedure.result); + ui->plainText->appendHtml(str); + + //Text + str = QString("

%1

").arg(item.text); + ui->plainText->appendHtml(str); + + ui->plainText->appendHtml("
"); + } +} + +void DialogCheckTask::on_btnWrong_clicked() +{ + int id = task.getID(); + QString status = "failed"; + + if(QMessageBox::warning(this, tr("Attention!"), tr("Change task status?\nThe status will be set: 'failed'"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok) + { + connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_CHANGE_STATUS_REPORT_TASK_FIM_TO_TRAINEE, id, (void*)&status); + } +} + +void DialogCheckTask::on_btnRight_clicked() +{ + int id = task.getID(); + QString status = "completed"; + + if(QMessageBox::warning(this, tr("Attention!"), tr("Change task status?\nThe status will be set: 'completed'"), QMessageBox::Ok, QMessageBox::Cancel) == QMessageBox::Ok) + { + connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_CHANGE_STATUS_REPORT_TASK_FIM_TO_TRAINEE, id, (void*)&status); } } diff --git a/InstructorsAndTrainees/tasks/dialogchecktask.h b/InstructorsAndTrainees/tasks/dialogchecktask.h index c9aa187..0369e6b 100644 --- a/InstructorsAndTrainees/tasks/dialogchecktask.h +++ b/InstructorsAndTrainees/tasks/dialogchecktask.h @@ -21,7 +21,11 @@ public: void setTask(TaskAmmFim* task); TaskAmmFim getTask(); - private: +private slots: + void on_btnWrong_clicked(); + void on_btnRight_clicked(); + +private: void outReport(FIMReport report); private: diff --git a/InstructorsAndTrainees/tasks/dialogchecktask.ui b/InstructorsAndTrainees/tasks/dialogchecktask.ui index e576ebb..cc7f81f 100644 --- a/InstructorsAndTrainees/tasks/dialogchecktask.ui +++ b/InstructorsAndTrainees/tasks/dialogchecktask.ui @@ -7,7 +7,7 @@ 0 0 400 - 300 + 628 @@ -17,12 +17,110 @@ - + + + + + + + Task + + + + + + - + + + + + Completion Report + + + + + + + + 0 + 100 + + + + + + + + 0 + 500 + + + + + + + + + + + + + + + + + + 50 + 50 + + + + Wrong + + + + :/resources/icons/circleRed.png:/resources/icons/circleRed.png + + + + 32 + 32 + + + + Qt::ToolButtonTextUnderIcon + + + + + + + + 50 + 50 + + + + Right + + + + :/resources/icons/circleGreen.png:/resources/icons/circleGreen.png + + + + 32 + 32 + + + + Qt::ToolButtonTextUnderIcon + + @@ -43,6 +141,8 @@ - + + + diff --git a/InstructorsAndTrainees/tasks/fimtaskswidget.cpp b/InstructorsAndTrainees/tasks/fimtaskswidget.cpp index 8e9873c..da14e41 100644 --- a/InstructorsAndTrainees/tasks/fimtaskswidget.cpp +++ b/InstructorsAndTrainees/tasks/fimtaskswidget.cpp @@ -56,6 +56,8 @@ FIMtasksWidget::FIMtasksWidget(ConnectorToServer* connectorToServer, TypeList ty { ui->btnDelete->setVisible(false); ui->btnCheck->setVisible(false); + this->treeWidget->headerItem()->setHidden(true); + this->treeWidget->setSelectionMode(QAbstractItemView::SelectionMode::NoSelection); } } @@ -321,7 +323,7 @@ void FIMtasksWidget::preparationTreeWidget() reSetHeadTreeWidget(); - if(type == TypeList::listCommon) + if(type == TypeList::listCommon || type == TypeList::listOneTask) { treeWidget->setColumnHidden(ColumnsTree::clmn_ID, true); treeWidget->setColumnHidden(ColumnsTree::clmn_status, true);