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 0000000..9be2b42 Binary files /dev/null and b/InstructorsAndTrainees/resources/icons/circleRed.png differ 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);