diff --git a/DOCS/Андрей/Board.md b/DOCS/Андрей/Board.md index 4cd05b7..4db58e5 100644 --- a/DOCS/Андрей/Board.md +++ b/DOCS/Андрей/Board.md @@ -73,6 +73,7 @@ kanban-plugin: board - [ ] Текстовый поиск в задачах - [ ] Сделать кнопку перезапроса общих списков АММ и FIM +- [ ] Сделать несколько попыток подключения к серверу ## Сервер+GUI diff --git a/DataBaseLMS/tasksAmmFim.h b/DataBaseLMS/tasksAmmFim.h index 1dc2980..1663964 100644 --- a/DataBaseLMS/tasksAmmFim.h +++ b/DataBaseLMS/tasksAmmFim.h @@ -21,6 +21,12 @@ public: modeListStr = buildCanplay(modeList); }; ~SubProc(){}; +public: + bool operator==(const SubProc& other) const + { + // Сравнение членов класса + return (this->dmCode == other.dmCode && this->title == other.title && this->modeListStr == other.modeListStr); + } public: void setModeList(const ModeList &modeList); diff --git a/InstructorsAndTrainees/resources/icons/link.png b/InstructorsAndTrainees/resources/icons/link.png index 0dee870..a7eacfb 100644 Binary files a/InstructorsAndTrainees/resources/icons/link.png and b/InstructorsAndTrainees/resources/icons/link.png differ diff --git a/InstructorsAndTrainees/tasks/ammtaskswidget.cpp b/InstructorsAndTrainees/tasks/ammtaskswidget.cpp index e8c0a28..c35b669 100644 --- a/InstructorsAndTrainees/tasks/ammtaskswidget.cpp +++ b/InstructorsAndTrainees/tasks/ammtaskswidget.cpp @@ -319,7 +319,17 @@ void AMMtasksWidget::preparationTreeWidget() #else treeWidget->setColumnHidden(ColumnsTreeAMM::clmnAMM_ID, true); #endif + + treeWidget->setColumnHidden(ColumnsTreeAMM::clmnAMM_canplay, true); } + + /* +#ifdef PROJECT_TYPE_DEBUG + treeWidget->setColumnHidden(ColumnsTreeAMM::clmnAMM_canplay, false); +#else + treeWidget->setColumnHidden(ColumnsTreeAMM::clmnAMM_canplay, true); +#endif + */ } void AMMtasksWidget::reSetHeadTreeWidget() @@ -327,9 +337,9 @@ void AMMtasksWidget::reSetHeadTreeWidget() QStringList listHeaders; if(type == TypeListTreeAMMFIM::listForTrainee) - listHeaders = QStringList{tr("Procedure AMM"), tr("DM code"), tr("Status"), tr("ID")}; + listHeaders = QStringList{tr("Procedure AMM"), tr("DM code"), tr("Status"), tr("Canplay"), tr("ID")}; else - listHeaders = QStringList{tr("Procedure AMM"), tr("DM code"), tr("Status"), tr("ID")}; + listHeaders = QStringList{tr("Procedure AMM"), tr("DM code"), tr("Status"), tr("Canplay"), tr("ID")}; treeWidget->setHeaderLabels(listHeaders); @@ -342,9 +352,11 @@ void AMMtasksWidget::setWidthColumnsTree() treeWidget->setColumnWidth(ColumnsTreeAMM::clmnAMM_PMorDM, 100); listWidthColumn.append(100); treeWidget->setColumnWidth(ColumnsTreeAMM::clmnAMM_code, 250); - listWidthColumn.append(250); + listWidthColumn.append(250); treeWidget->setColumnWidth(ColumnsTreeAMM::clmnAMM_status, 150); listWidthColumn.append(130); + treeWidget->setColumnWidth(ColumnsTreeAMM::clmnAMM_canplay, 80); + listWidthColumn.append(80); treeWidget->setColumnWidth(ColumnsTreeAMM::clmnAMM_ID, 50); listWidthColumn.append(50); diff --git a/InstructorsAndTrainees/tasks/listsubproc.cpp b/InstructorsAndTrainees/tasks/listsubproc.cpp index 1628479..c87ad56 100644 --- a/InstructorsAndTrainees/tasks/listsubproc.cpp +++ b/InstructorsAndTrainees/tasks/listsubproc.cpp @@ -118,8 +118,8 @@ void ListSubProc::setWidthColumnsTree() listWidthColumn.append(100); treeWidget->setColumnWidth(ColumnsTreeSubProc::clmnSP_code, 250); listWidthColumn.append(250); - treeWidget->setColumnWidth(ColumnsTreeSubProc::clmnSP_canplay, 50); - listWidthColumn.append(50); + treeWidget->setColumnWidth(ColumnsTreeSubProc::clmnSP_canplay, 80); + listWidthColumn.append(80); treeWidget->setColumnWidth(ColumnsTreeSubProc::clmnSP_title, calculateWidth_0Column()); } diff --git a/InstructorsAndTrainees/tasks/tasktreepreparation.cpp b/InstructorsAndTrainees/tasks/tasktreepreparation.cpp index 0cbe523..e6cb82d 100644 --- a/InstructorsAndTrainees/tasks/tasktreepreparation.cpp +++ b/InstructorsAndTrainees/tasks/tasktreepreparation.cpp @@ -89,7 +89,10 @@ QTreeWidgetItem *TaskAMMFIMTreePreparation::addModuleToTreeWidgetAMM(Module *mod QString text = ""; QString ID = QString::number(module->getID()); - QString DMcode = "---"; + //QString DMcode = "---"; + //QString canplay = "*"; + QString DMcode = ""; + QString canplay = ""; itemModule = new QTreeWidgetItem(); countItems++; @@ -113,6 +116,7 @@ QTreeWidgetItem *TaskAMMFIMTreePreparation::addModuleToTreeWidgetAMM(Module *mod DM* DMmodul = static_cast(module); text = DMmodul->getLangStructRus().techName; DMcode = DMmodul->dmCode(); + canplay = SubProc::buildCanplay(DMmodul->getModeList()); //itemModule->setFlags(itemModule->flags() | Qt::ItemIsUserCheckable); //itemModule->setCheckState(0, Qt::Checked); @@ -121,6 +125,7 @@ QTreeWidgetItem *TaskAMMFIMTreePreparation::addModuleToTreeWidgetAMM(Module *mod itemModule->setText(ColumnsTreeAMM::clmnAMM_PMorDM, text); itemModule->setText(ColumnsTreeAMM::clmnAMM_code, DMcode); + itemModule->setText(ColumnsTreeAMM::clmnAMM_canplay, canplay); itemModule->setText(ColumnsTreeAMM::clmnAMM_ID, ID); itemModule->setToolTip(0, text); @@ -530,6 +535,8 @@ void TaskAMMFIMTreePreparation::slot_prepareAMMListItemsForTrainee(QListsetText(ColumnsTreeAMM::clmnAMM_code, subProc.getDmCode()); + itemSubProc->setText(ColumnsTreeAMM::clmnAMM_canplay, subProc.getModeListStr()); + item->addChild(itemSubProc); } diff --git a/InstructorsAndTrainees/tasks/tasktreepreparation.h b/InstructorsAndTrainees/tasks/tasktreepreparation.h index 13a7ef5..dd2ec0c 100644 --- a/InstructorsAndTrainees/tasks/tasktreepreparation.h +++ b/InstructorsAndTrainees/tasks/tasktreepreparation.h @@ -10,8 +10,9 @@ enum ColumnsTreeAMM{ clmnAMM_PMorDM = 0, - clmnAMM_code, + clmnAMM_code, clmnAMM_status, + clmnAMM_canplay, clmnAMM_ID, clmnAMM_count }; diff --git a/InstructorsAndTrainees/trainees/dialogcardtrainee.cpp b/InstructorsAndTrainees/trainees/dialogcardtrainee.cpp index 3d5d066..451d926 100644 --- a/InstructorsAndTrainees/trainees/dialogcardtrainee.cpp +++ b/InstructorsAndTrainees/trainees/dialogcardtrainee.cpp @@ -16,7 +16,7 @@ DialogCardTrainee::DialogCardTrainee(ConnectorToServer* connectorToServer, Messa QHBoxLayout *layout = new QHBoxLayout(this); layout->addWidget(cardTrainee); this->setWindowTitle(tr("Personal card trainee")); - this->setMinimumSize(1400, 700); + this->setMinimumSize(1600, 800); this->setWindowState(Qt::WindowMaximized); this->setModal(true); } diff --git a/ServerLMS/Systems/docsupdater.cpp b/ServerLMS/Systems/docsupdater.cpp index a6bd365..adf65a7 100644 --- a/ServerLMS/Systems/docsupdater.cpp +++ b/ServerLMS/Systems/docsupdater.cpp @@ -356,7 +356,8 @@ void DocsUpdater::selectSubProc(QDomElement &modeElement, QList &listSu subProc.setDmCode(subProcElement.toElement().attribute("dmCode")); subProc.setTitle(subProcElement.toElement().attribute("title")); - listSubProc.append(subProc); + if(! listSubProc.contains(subProc)) + listSubProc.append(subProc); } } }