Вынес подготовку дерева FIM в отдельный поток

This commit is contained in:
2025-07-01 10:37:59 +03:00
parent 53c133d459
commit 389a37a2e4
9 changed files with 161 additions and 318 deletions

View File

@@ -5,7 +5,7 @@
#include <QTreeWidget>
#include "tasksAmmFim.h"
#include "connectortoserver.h"
#include "taskTreePreparation.h"
#include "tasktreepreparation.h"
namespace Ui {
class FIMtasksWidget;
@@ -15,19 +15,11 @@ class FIMtasksWidget : public QWidget
{
Q_OBJECT
public:
enum TypeList
{
listCommon = 0,
listForTrainee,
listOneTask
};
private:
public:
explicit FIMtasksWidget(ConnectorToServer* connectorToServer, TypeList type, QWidget *parent = nullptr);
explicit FIMtasksWidget(ConnectorToServer* connectorToServer, TypeListTreeAMMFIM type, QWidget *parent = nullptr);
~FIMtasksWidget();
public:
@@ -41,7 +33,6 @@ protected:
private Q_SLOTS:
void on_treeWidget_currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous);
void on_btnUpdateTasks_clicked();
void on_btnDelete_clicked();
void on_btnCheck_clicked();
void on_btnAssignTask_clicked();
@@ -54,26 +45,16 @@ public Q_SLOTS:
void slot_UpdateTasksFIMforTrainee(int trainee_id);
private:
TaskAmmFim* getTaskByID(int id);
private:
void preparationTreeWidget();
void reSetHeadTreeWidget();
void loadTasksFIM();
void assignTaskFIMtoTrainee();
/*
void fillTree();
void prepareListTasksForTrainee(QList<TaskAmmFim> listTask);
*/
void updateTaskItem(QTreeWidgetItem *itemTask);
Q_SIGNALS:
void signal_prepareFIMListItems(QByteArray array, QList<TaskAmmFim*>* listTaskAmmFim);
void signal_prepareFIMListItemsForTrainee(QList<TaskAmmFim> listTask, QList<TaskAmmFim*>* listTaskAmmFim);
void signal_prepareFIMListItems(QByteArray array);
void signal_prepareFIMListItemsForTrainee(QList<TaskAmmFim> listTask);
public Q_SLOTS:
void slot_FIMlistItemsReady(QList<QTreeWidgetItem*> listItems);
@@ -81,15 +62,13 @@ private:
Ui::FIMtasksWidget *ui;
ConnectorToServer* connectorToServer;
QTreeWidget* treeWidget;
TypeList type;
TypeListTreeAMMFIM type;
private:
QList<TaskAmmFim*> listTaskAmmFim;
QString loginTraineeSelected;
int idTraineeSelected;
QThread* threadPreparation;
TaskTreePreparation* taskTreePreparation;
TaskAMMFIMTreePreparation* taskTreePreparation;
WaitAnimationWidget *waitAnimationWidget;
QString userName; //FIM