From e2a2d8142c4d36ca1c6b8391238682162cc7a393 Mon Sep 17 00:00:00 2001 From: krivoshein Date: Fri, 17 Oct 2025 15:08:09 +0300 Subject: [PATCH] Refact common --- InstructorsAndTrainees/commonview.cpp | 1 - .../connectorToServer/connectortoserver.cpp | 22 ++- .../connectorToServer/connectortoserver.h | 2 +- .../dialogauthorizationinstructor.h | 2 - .../instructors/editorinstructors.ui | 14 +- .../instructors/viewerinstructors.h | 5 - .../instructorsandtraineeswidget.cpp | 2 - .../instructorsandtraineeswidget.h | 2 - .../resources/icons/personalCard.png | Bin 10351 -> 17879 bytes .../resources/icons/personalCard_2.png | Bin 0 -> 10351 bytes InstructorsAndTrainees/specialmessagebox.ui | 4 +- .../tasks/ammtaskswidget.ui | 2 +- .../tasks/fimtaskswidget.ui | 2 +- .../trainees/dialogeditgroup.ui | 4 +- .../trainees/editortrainees.cpp | 46 ----- .../trainees/personalcardtrainee.cpp | 2 + .../trainees/personalcardtrainee.ui | 162 ++++++++++-------- .../trainees/traineesview.cpp | 2 - .../trainees/viewertrainees.h | 5 - 19 files changed, 120 insertions(+), 159 deletions(-) create mode 100644 InstructorsAndTrainees/resources/icons/personalCard_2.png diff --git a/InstructorsAndTrainees/commonview.cpp b/InstructorsAndTrainees/commonview.cpp index 6b71455..ec62f6f 100644 --- a/InstructorsAndTrainees/commonview.cpp +++ b/InstructorsAndTrainees/commonview.cpp @@ -28,7 +28,6 @@ CommonView::CommonView(ConnectorToServer* connectorToServer, TypeView type, QWid waitAnimationWidget = new WaitAnimationWidget; QMovie *movie = new QMovie(":/resources/icons/762.gif"); - //waitAnimationWidget->setParent(this); waitAnimationWidget->initialize(movie,this); } diff --git a/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp b/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp index 231e35d..467f12b 100644 --- a/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp +++ b/InstructorsAndTrainees/connectorToServer/connectortoserver.cpp @@ -226,7 +226,8 @@ bool ConnectorToServer::isArchivedInstructor(int id) { if(instructor.getID() == id) { - if(instructor.getArchived()) return true; else return false; + if(instructor.getArchived()) return true; + else return false; } } return false; @@ -238,7 +239,8 @@ bool ConnectorToServer::isAdminInstructor(int id) { if(instructor.getID() == id) { - if(instructor.getIsAdmin()) return true; else return false; + if(instructor.getIsAdmin()) return true; + else return false; } } return false; @@ -250,7 +252,8 @@ bool ConnectorToServer::isLoggedInInstructor(int id) { if(instructor.getID() == id) { - if(instructor.getLoggedIn()) return true; else return false; + if(instructor.getLoggedIn()) return true; + else return false; } } return false; @@ -283,7 +286,8 @@ bool ConnectorToServer::isArchivedTrainee(int id) { if(trainee.getID() == id) { - if(trainee.getArchived()) return true; else return false; + if(trainee.getArchived()) return true; + else return false; } } return false; @@ -295,7 +299,8 @@ bool ConnectorToServer::isLoggedInTrainee(int id) { if(trainee.getID() == id) { - if(trainee.getLoggedIn()) return true; else return false; + if(trainee.getLoggedIn()) return true; + else return false; } } return false; @@ -437,15 +442,14 @@ void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage) sendMessage(clientMessage); } -void ConnectorToServer::showServerList(QList *serverList) +void ConnectorToServer::slot_showServerList(QList *serverList) { versionSelectWidget->fillView(serverList); } void ConnectorToServer::slot_HashReady() { - //sendQueryTasksXML("fim"); - //sendQueryTasksXML("amm"); + } void ConnectorToServer::slot_Auth(ServerAuthorization *serverAuth) @@ -476,7 +480,7 @@ void ConnectorToServer::bindConnection() connect(recognizeSystem,&RecognizeSystem::sigAuth,this,&ConnectorToServer::slot_Auth); connect(recognizeSystem,&RecognizeSystem::sigDeAuth,this,&ConnectorToServer::sigDeLoginResult); connect(recognizeSystem,&RecognizeSystem::signal_ReceiveMessage,this,&ConnectorToServer::signal_receiveMessage,Qt::AutoConnection); - connect(recognizeSystem,&RecognizeSystem::sigShowServerDataList,this,&ConnectorToServer::showServerList); + connect(recognizeSystem,&RecognizeSystem::sigShowServerDataList,this,&ConnectorToServer::slot_showServerList); connect (recognizeSystem,&RecognizeSystem::sigSetVersion,versionContainer,&VersionContainer::setServerVersionData); connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListInstructors,this,&ConnectorToServer::slot_AnswerQueryToDB_ListInstructors); diff --git a/InstructorsAndTrainees/connectorToServer/connectortoserver.h b/InstructorsAndTrainees/connectorToServer/connectortoserver.h index 38d9f42..4ef8def 100644 --- a/InstructorsAndTrainees/connectorToServer/connectortoserver.h +++ b/InstructorsAndTrainees/connectorToServer/connectortoserver.h @@ -88,7 +88,7 @@ public slots: void slot_AnswerQueryTasksXML_AMM(QByteArray array); void slot_sendMessage(ClientMessage clientMessage); - void showServerList(QList *serverList); + void slot_showServerList(QList *serverList); void slot_HashReady(); diff --git a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h index a746730..5d98e4e 100644 --- a/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h +++ b/InstructorsAndTrainees/instructors/dialogauthorizationinstructor.h @@ -29,9 +29,7 @@ public: private slots: void on_btnLogIn_clicked(); - void on_btnViewPassword_pressed(); - void on_btnViewPassword_released(); private: diff --git a/InstructorsAndTrainees/instructors/editorinstructors.ui b/InstructorsAndTrainees/instructors/editorinstructors.ui index 6244e07..1f1de14 100644 --- a/InstructorsAndTrainees/instructors/editorinstructors.ui +++ b/InstructorsAndTrainees/instructors/editorinstructors.ui @@ -30,7 +30,7 @@ - + 0 0 @@ -68,7 +68,7 @@ - + 0 0 @@ -105,6 +105,12 @@ + + + 0 + 0 + + 160 @@ -138,7 +144,7 @@ - + 0 0 @@ -189,7 +195,7 @@ - + 0 0 diff --git a/InstructorsAndTrainees/instructors/viewerinstructors.h b/InstructorsAndTrainees/instructors/viewerinstructors.h index f08be2d..6944a5d 100644 --- a/InstructorsAndTrainees/instructors/viewerinstructors.h +++ b/InstructorsAndTrainees/instructors/viewerinstructors.h @@ -26,14 +26,9 @@ public: protected: void changeEvent(QEvent * event) override; -Q_SIGNALS: - //сигнал о блокировке авторизации - //void signal_BlockAutorization(bool block); - public Q_SLOTS: void on_btnEditorInstructors_clicked(); -public slots: void on_treeWidgetItemClicked(QTreeWidgetItem *item, int column); Q_SIGNALS: diff --git a/InstructorsAndTrainees/instructorsandtraineeswidget.cpp b/InstructorsAndTrainees/instructorsandtraineeswidget.cpp index 05314c6..f08745a 100644 --- a/InstructorsAndTrainees/instructorsandtraineeswidget.cpp +++ b/InstructorsAndTrainees/instructorsandtraineeswidget.cpp @@ -49,8 +49,6 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) : viewerInstructors = new ViewerInstructors(connectorToServer, this); connect(this, &InstructorsAndTraineesWidget::signal_NeedUpdateUI, viewerTrainees, &ViewerTrainees::slot_NeedUpdateUI); connect(this, &InstructorsAndTraineesWidget::signal_NeedUpdateUI, viewerInstructors, &ViewerInstructors::slot_NeedUpdateUI); - //connect(viewerInstructors, &ViewerInstructors::signal_BlockAutorization, this, &InstructorsAndTraineesWidget::signal_BlockAutorization); - //connect(viewerTrainees, &ViewerTrainees::signal_BlockAutorization, this, &InstructorsAndTraineesWidget::signal_BlockAutorization); connect(connectorToServer, &ConnectorToServer::signal_ConnectedToServer, this, &InstructorsAndTraineesWidget::slot_ConnectedToServer); diff --git a/InstructorsAndTrainees/instructorsandtraineeswidget.h b/InstructorsAndTrainees/instructorsandtraineeswidget.h index 36c51a8..54ebcee 100644 --- a/InstructorsAndTrainees/instructorsandtraineeswidget.h +++ b/InstructorsAndTrainees/instructorsandtraineeswidget.h @@ -59,8 +59,6 @@ Q_SIGNALS: void signal_LanguageChanged(QString language); //сигнал о необходимости обновления интерфейса void signal_NeedUpdateUI(bool treeInstructor, bool treeTrainee); - //сигнал о блокировке авторизации - //void signal_BlockAutorization(bool block); private Q_SLOTS: void on_btnConnectionToServer_clicked(); diff --git a/InstructorsAndTrainees/resources/icons/personalCard.png b/InstructorsAndTrainees/resources/icons/personalCard.png index 9ee6a770bac8a744a8f14a2ba7feeed5953c0ce8..555709c9873845767c2e549d301e251c50fcd119 100644 GIT binary patch literal 17879 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 literal 10351 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 R3}i|G$Ujn%!96g3{$JUJ2Uh?9 diff --git a/InstructorsAndTrainees/resources/icons/personalCard_2.png b/InstructorsAndTrainees/resources/icons/personalCard_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9ee6a770bac8a744a8f14a2ba7feeed5953c0ce8 GIT binary patch literal 10351 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 R3}i|G$Ujn%!96g3{$JUJ2Uh?9 literal 0 HcmV?d00001 diff --git a/InstructorsAndTrainees/specialmessagebox.ui b/InstructorsAndTrainees/specialmessagebox.ui index 92de763..32c879a 100644 --- a/InstructorsAndTrainees/specialmessagebox.ui +++ b/InstructorsAndTrainees/specialmessagebox.ui @@ -17,7 +17,7 @@ - + @@ -76,7 +76,7 @@ - + diff --git a/InstructorsAndTrainees/tasks/ammtaskswidget.ui b/InstructorsAndTrainees/tasks/ammtaskswidget.ui index 3f4ca46..886be33 100644 --- a/InstructorsAndTrainees/tasks/ammtaskswidget.ui +++ b/InstructorsAndTrainees/tasks/ammtaskswidget.ui @@ -27,7 +27,7 @@ - + diff --git a/InstructorsAndTrainees/tasks/fimtaskswidget.ui b/InstructorsAndTrainees/tasks/fimtaskswidget.ui index adfc3ec..8a3fbed 100644 --- a/InstructorsAndTrainees/tasks/fimtaskswidget.ui +++ b/InstructorsAndTrainees/tasks/fimtaskswidget.ui @@ -21,7 +21,7 @@ - + diff --git a/InstructorsAndTrainees/trainees/dialogeditgroup.ui b/InstructorsAndTrainees/trainees/dialogeditgroup.ui index 77a4e92..3466384 100644 --- a/InstructorsAndTrainees/trainees/dialogeditgroup.ui +++ b/InstructorsAndTrainees/trainees/dialogeditgroup.ui @@ -23,7 +23,7 @@ - + @@ -61,7 +61,7 @@ - + diff --git a/InstructorsAndTrainees/trainees/editortrainees.cpp b/InstructorsAndTrainees/trainees/editortrainees.cpp index 5d21689..545a08f 100644 --- a/InstructorsAndTrainees/trainees/editortrainees.cpp +++ b/InstructorsAndTrainees/trainees/editortrainees.cpp @@ -58,52 +58,6 @@ void EditorTrainees::on_btnNewGroup_clicked() } return; - /* - if(int id_group = dbLMS->newGroup()) - { - loadTraineesFromDB(); - setCurrentGroup(id_group); - - DialogEditGroup dlg(this); - - Group group = dbLMS->getGroup(id_group); - if(group.getID() == 0) - return; - - dlg.setGroup(group); - - while (true) - { - switch( dlg.exec() ) - { - case QDialog::Accepted: - { - Group group_edit = dlg.getGroup(); - - if(int id_edit = dbLMS->editGroup(group_edit)) - {//Отредактировано - loadTraineesFromDB(); - setCurrentGroup(id_edit); - return; - } - else - { - dlg.setGroup(group_edit); - continue; - } - - } - case QDialog::Rejected: - dbLMS->delGroup(id_group); - loadTraineesFromDB(); - return; - default: - dbLMS->delGroup(id_group); - loadTraineesFromDB(); - return; - } - } - }*/ } void EditorTrainees::on_btnDeleteGroup_clicked() diff --git a/InstructorsAndTrainees/trainees/personalcardtrainee.cpp b/InstructorsAndTrainees/trainees/personalcardtrainee.cpp index 0007e96..c05d929 100644 --- a/InstructorsAndTrainees/trainees/personalcardtrainee.cpp +++ b/InstructorsAndTrainees/trainees/personalcardtrainee.cpp @@ -19,6 +19,8 @@ PersonalCardTrainee::PersonalCardTrainee(ConnectorToServer* connectorToServer, M ui->lblName->setObjectName("PersonalCard_lblName"); + ui->lblLoginIn->setVisible(false); + ammTasksWidget_personal = new AMMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listForTrainee, this); fimTasksWidget_personal = new FIMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listForTrainee, this); diff --git a/InstructorsAndTrainees/trainees/personalcardtrainee.ui b/InstructorsAndTrainees/trainees/personalcardtrainee.ui index 5ac5638..483ce3e 100644 --- a/InstructorsAndTrainees/trainees/personalcardtrainee.ui +++ b/InstructorsAndTrainees/trainees/personalcardtrainee.ui @@ -17,7 +17,7 @@ - + @@ -30,8 +30,29 @@ Trainee + + + + + + Assigned AMM + + + + + + + 0 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + - + @@ -60,71 +81,8 @@ - - - - - - Last login - - - - - - - 0 - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - - - - Assigned FIM - - - - - - - 0 - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - - - - - Assigned AMM - - - - - - - 0 - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - - - - - + + @@ -144,8 +102,8 @@ - - + + @@ -165,6 +123,62 @@ + + + + Qt::Horizontal + + + + + + + + + Assigned FIM + + + + + + + 0 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + + Last login + + + + + + + 0 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + Qt::Horizontal + + + @@ -183,7 +197,7 @@ - + 0 @@ -197,9 +211,9 @@ - 0 + 1 - + AMM @@ -211,7 +225,7 @@ - + List @@ -236,7 +250,7 @@ - + FIM diff --git a/InstructorsAndTrainees/trainees/traineesview.cpp b/InstructorsAndTrainees/trainees/traineesview.cpp index e4d3d2e..9cecf5f 100644 --- a/InstructorsAndTrainees/trainees/traineesview.cpp +++ b/InstructorsAndTrainees/trainees/traineesview.cpp @@ -44,8 +44,6 @@ void TraineesView::loadTraineesFromDB() ItemGroup->setIcon(ColumnsTreeUsers::clmn_Name, QIcon(QStringLiteral(":/resources/icons/group.png"))); setItemColor(ItemGroup, QColor(220, 220, 220)); - //ItemGroup->set Property("greenButton", QVariant(true)); - //((QAbstractItemView*)ItemGroup)->setIconSize(QSize(32, 32)); //Обучаемые for(Trainee trainee : listTrainees) diff --git a/InstructorsAndTrainees/trainees/viewertrainees.h b/InstructorsAndTrainees/trainees/viewertrainees.h index f2dcff1..c5e9609 100644 --- a/InstructorsAndTrainees/trainees/viewertrainees.h +++ b/InstructorsAndTrainees/trainees/viewertrainees.h @@ -30,12 +30,7 @@ public: protected: void changeEvent(QEvent * event) override; -Q_SIGNALS: - //сигнал о блокировке авторизации - //void signal_BlockAutorization(bool block); - public Q_SLOTS: - //void on_treeWidget_itemClicked(QTreeWidgetItem *item, int column); void on_btnEditorTrainees_clicked(); void on_btnPersonalCard_clicked(); private Q_SLOTS: