From 069aa808260b3969eaed4a1b2d3a48c8094f3ba8 Mon Sep 17 00:00:00 2001 From: krivoshein Date: Wed, 19 Nov 2025 15:01:23 +0300 Subject: [PATCH] =?UTF-8?q?GUI.=20subProc=20=D0=BE=D1=82=D0=BE=D0=B1=D1=80?= =?UTF-8?q?.=20=D0=B2=D1=8B=D0=BF=D0=B0=D0=B4-=D0=BC=20=D1=81=D0=BF=D0=B8?= =?UTF-8?q?=D1=81=D0=BA=D0=BE=D0=BC=20=D0=B2=20=D1=80=D0=B0=D0=BD=D0=B5?= =?UTF-8?q?=D0=B5=20=D0=BD=D0=B0=D0=B7=D0=BD.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InstructorsAndTrainees.qrc | 1 + .../Core/recognizesystem.cpp | 14 +++++ .../resources/icons/link.png | Bin 0 -> 10725 bytes .../tasks/ammtaskswidget.cpp | 52 +++++++++++++----- .../tasks/fimtaskswidget.cpp | 5 +- .../tasks/tasktreepreparation.cpp | 20 +++++++ 6 files changed, 74 insertions(+), 18 deletions(-) create mode 100644 InstructorsAndTrainees/resources/icons/link.png diff --git a/InstructorsAndTrainees/InstructorsAndTrainees.qrc b/InstructorsAndTrainees/InstructorsAndTrainees.qrc index 198a0c1..a81d934 100644 --- a/InstructorsAndTrainees/InstructorsAndTrainees.qrc +++ b/InstructorsAndTrainees/InstructorsAndTrainees.qrc @@ -55,5 +55,6 @@ resources/icons/personalCard.png resources/icons/eye.png resources/icons/exchange.png + resources/icons/link.png diff --git a/InstructorsAndTrainees/connectorToServer/Core/recognizesystem.cpp b/InstructorsAndTrainees/connectorToServer/Core/recognizesystem.cpp index 1e64edd..3d4dab8 100644 --- a/InstructorsAndTrainees/connectorToServer/Core/recognizesystem.cpp +++ b/InstructorsAndTrainees/connectorToServer/Core/recognizesystem.cpp @@ -799,6 +799,20 @@ void RecognizeSystem::xmlParserQueryToDB(PacketType packetType, QByteArray array task.ammProcedure.dmCode = taskNode.toElement().attribute("dmCode"); task.status = taskNode.toElement().attribute("status"); + for(int j = 0; j < taskNode.childNodes().count(); j++) + { + QDomNode subProcNode = taskNode.childNodes().at(j); + if(subProcNode.nodeName() == "SubProc") + {//Подпроцедура + SubProc subProc; + subProc.setDmCode(subProcNode.toElement().attribute("dmCode")); + subProc.setTitle(subProcNode.toElement().attribute("title")); + subProc.setModeListStr(subProcNode.toElement().attribute("canplay")); + + task.listSubProc.append(subProc); + } + } + listTasks.append(task); } } diff --git a/InstructorsAndTrainees/resources/icons/link.png b/InstructorsAndTrainees/resources/icons/link.png new file mode 100644 index 0000000000000000000000000000000000000000..0dee870b615bc9caddeff44be4096b4b5f6fa92e GIT binary patch literal 10725 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 ui->btnCheck->setEnabled(false); + ui->btnAssignTask->setEnabled(false); return; } - else + + if(this->type == TypeListTreeAMMFIM::listCommon) { - ui->btnCheck->setEnabled(true); - ui->btnDelete->setEnabled(true); + int id = item->text(ColumnsTreeAMM::clmnAMM_ID).toInt(); + TaskAmmFim task = taskTreePreparation->getTaskAMMbyID(id); + + if(taskTreePreparation->getTypeModuleAMMbyID(id) == ModuleType::TYPE_PM) + ui->btnAssignTask->setEnabled(false); + else + { + ui->btnAssignTask->setEnabled(true); + } + + if(task.getID()) + lastCurrentID = id; + + ui->btnDelete->setEnabled(false); + ui->btnCheck->setEnabled(false); } + else if(this->type == TypeListTreeAMMFIM::listForTrainee) + { + QTreeWidgetItem *treeItemParent = item->parent(); + if(treeItemParent == nullptr) + {//Выбрана задача + ui->btnCheck->setEnabled(true); + ui->btnDelete->setEnabled(true); - int id = item->text(ColumnsTreeAMM::clmnAMM_ID).toInt(); + int id = item->text(ColumnsTreeAMM::clmnAMM_ID).toInt(); + TaskAmmFim task = taskTreePreparation->getTaskAMMbyID(id); - TaskAmmFim task = taskTreePreparation->getTaskAMMbyID(id); - - if(taskTreePreparation->getTypeModuleAMMbyID(id) == ModuleType::TYPE_PM) + if(task.getID()) + lastCurrentID = id; + } + else + { + ui->btnCheck->setEnabled(false); + ui->btnDelete->setEnabled(false); + } ui->btnAssignTask->setEnabled(false); - else - { - ui->btnAssignTask->setEnabled(true); } - - if(task.getID()) - lastCurrentID = id; + else + lastCurrentID = 0; } void AMMtasksWidget::slot_NeedUpdateUI() @@ -233,7 +257,7 @@ void AMMtasksWidget::slot_UpdateTasksAMMforTrainee(int trainee_id) if(idTraineeSelected == trainee_id) { QList listTask = connectorToServer->getListTasksAMMforTrainee(trainee_id); - signal_prepareAMMListItemsForTrainee(listTask); + emit signal_prepareAMMListItemsForTrainee(listTask); emit signal_countTasksAMMforTraineeChanged(trainee_id, listTask.count()); } diff --git a/InstructorsAndTrainees/tasks/fimtaskswidget.cpp b/InstructorsAndTrainees/tasks/fimtaskswidget.cpp index 8495057..2afa32d 100644 --- a/InstructorsAndTrainees/tasks/fimtaskswidget.cpp +++ b/InstructorsAndTrainees/tasks/fimtaskswidget.cpp @@ -161,11 +161,10 @@ void FIMtasksWidget::on_treeWidgetItemClicked(QTreeWidgetItem *item, int column) { ui->btnDelete->setEnabled(false); ui->btnCheck->setEnabled(false); + ui->btnAssignTask->setEnabled(false); return; } - QString code = ""; - QTreeWidgetItem *treeItemParent = item->parent(); if(treeItemParent == nullptr) {//Выбрана задача @@ -185,8 +184,6 @@ void FIMtasksWidget::on_treeWidgetItemClicked(QTreeWidgetItem *item, int column) lastCurrentID = task.getID(); } - code = task.title; - ui->btnAssignTask->setEnabled(true); ui->btnDelete->setEnabled(true); diff --git a/InstructorsAndTrainees/tasks/tasktreepreparation.cpp b/InstructorsAndTrainees/tasks/tasktreepreparation.cpp index cbeeb33..0cbe523 100644 --- a/InstructorsAndTrainees/tasks/tasktreepreparation.cpp +++ b/InstructorsAndTrainees/tasks/tasktreepreparation.cpp @@ -515,6 +515,26 @@ void TaskAMMFIMTreePreparation::slot_prepareAMMListItemsForTrainee(QListsetToolTip(0, text); + if(type == TypeListTreeAMMFIM::listForTrainee) + { + for (int j = 0; j < task.listSubProc.count(); j++) + {/*Подпроцедуры*/ + SubProc subProc = task.listSubProc.at(j); + + QTreeWidgetItem* itemSubProc = new QTreeWidgetItem(); + + itemSubProc->setText(ColumnsTreeAMM::clmnAMM_PMorDM, subProc.getTitle()); + + itemSubProc->setIcon(ColumnsTreeAMM::clmnAMM_PMorDM, QIcon(":/resources/icons/link.png")); + itemSubProc->setToolTip(ColumnsTreeAMM::clmnAMM_PMorDM, subProc.getTitle()); + + itemSubProc->setText(ColumnsTreeAMM::clmnAMM_code, subProc.getDmCode()); + + item->addChild(itemSubProc); + } + + } + listItemsAll.append(item); }