Пофиксил 4Гб оперативки

This commit is contained in:
2025-09-05 13:20:48 +03:00
parent a69ec4feb7
commit 9d8e84b80f
135 changed files with 49 additions and 27 deletions

View File

@@ -203,7 +203,7 @@ void AMMtasksWidget::slot_UpdateTasksAMMforTrainee(int trainee_id)
}
}
void AMMtasksWidget::loadTasksAMM(bool flRequestFromDB)
void AMMtasksWidget::loadTasksAMM(bool flRequestFirst)
{
//Обновление дерева
treeWidget->clear();
@@ -212,10 +212,10 @@ void AMMtasksWidget::loadTasksAMM(bool flRequestFromDB)
QByteArray arrayAMM;
if(flRequestFromDB)
arrayAMM = connectorToServer->getListTaskAmmArray();
//if(flRequestFirst)
arrayAMM = connectorToServer->getListTaskAmmArray();
emit signal_prepareAMMListItems(arrayAMM, flOnlyActive);
emit signal_prepareAMMListItems(arrayAMM, flOnlyActive, flRequestFirst);
}
void AMMtasksWidget::slot_AMMlistItemsReady(QList<QTreeWidgetItem *> listItems)
@@ -349,5 +349,5 @@ void AMMtasksWidget::on_btnOnlyActive_clicked()
{
flOnlyActive = false;
}
loadTasksAMM(true);
loadTasksAMM(false);
}

View File

@@ -48,11 +48,11 @@ public Q_SLOTS:
private:
void preparationTreeWidget();
void reSetHeadTreeWidget();
void loadTasksAMM(bool flRequestFromDB = true);
void loadTasksAMM(bool flRequestFirst = true);
void assignTaskAMMtoTrainee();
Q_SIGNALS:
void signal_prepareAMMListItems(QByteArray array, bool flOnlyActive);
void signal_prepareAMMListItems(QByteArray array, bool flOnlyActive, bool flRequestFirst);
void signal_prepareAMMListItemsForTrainee(QList<TaskAmmFim> listTask);
void signal_AssignedTask();

View File

@@ -92,6 +92,7 @@ QTreeWidgetItem *TaskAMMFIMTreePreparation::addModuleToTreeWidgetAMM(Module *mod
QString code = "";
itemModule = new QTreeWidgetItem();
countItems++;
if(parentItem)
parentItem->addChild(itemModule);
@@ -386,28 +387,46 @@ void TaskAMMFIMTreePreparation::domElementParserAMM(QDomElement element, Module*
}while (! (childElement = childElement.nextSiblingElement()).isNull());
}
void TaskAMMFIMTreePreparation::slot_prepareAMMListItems(QByteArray array, bool flOnlyActive)
void TaskAMMFIMTreePreparation::slot_prepareAMMListItems(QByteArray array, bool flOnlyActive, bool flRequestFirst)
{
qDebug() << "TaskAMMFIMTreePreparation::slot_prepareAMMListItems thread ID " << QThread::currentThreadId();
loadAMMtasksFromXML(array);
listItems.clear();
for(Module* module : listAllModulesAMM)
if(flRequestFirst)
{
QTreeWidgetItem* item = addModuleToTreeWidgetAMM(module, flOnlyActive);
listItems.append(item);
loadAMMtasksFromXML(array);
}
Q_EMIT signal_listAMMItemsReady(listItems);
if(flOnlyActive)
{
listItemsOnlyActive.clear();
for(Module* module : listAllModulesAMM)
{
QTreeWidgetItem* item = addModuleToTreeWidgetAMM(module, true);
listItemsOnlyActive.append(item);
}
emit signal_listAMMItemsReady(listItemsOnlyActive);
}
else
{
listItemsAll.clear();
for(Module* module : listAllModulesAMM)
{
QTreeWidgetItem* item = addModuleToTreeWidgetAMM(module, false);
listItemsAll.append(item);
}
emit signal_listAMMItemsReady(listItemsAll);
}
}
void TaskAMMFIMTreePreparation::slot_prepareAMMListItemsForTrainee(QList<TaskAmmFim> listTasks)
{
qDebug() << "TaskAMMFIMTreePreparation::slot_prepareAMMListItemsForTrainee thread ID " << QThread::currentThreadId();
listItems.clear();
listItemsAll.clear();
mtxAccess.lock();
@@ -452,12 +471,12 @@ void TaskAMMFIMTreePreparation::slot_prepareAMMListItemsForTrainee(QList<TaskAmm
item->setToolTip(0, text);
listItems.append(item);
listItemsAll.append(item);
}
mtxAccess.unlock();
Q_EMIT signal_listAMMItemsReady(listItems);
Q_EMIT signal_listAMMItemsReady(listItemsAll);
}
void TaskAMMFIMTreePreparation::slot_prepareFIMListItems(QByteArray array)
@@ -466,7 +485,7 @@ void TaskAMMFIMTreePreparation::slot_prepareFIMListItems(QByteArray array)
loadFIMtasksFromXML(array);
listItems.clear();
listItemsAll.clear();
mtxAccess.lock();
@@ -540,19 +559,19 @@ void TaskAMMFIMTreePreparation::slot_prepareFIMListItems(QByteArray array)
itemMalfunction->addChild(itemSign);
}
}
listItems.append(itemTask);
listItemsAll.append(itemTask);
}
mtxAccess.unlock();
Q_EMIT signal_listFIMItemsReady(listItems);
Q_EMIT signal_listFIMItemsReady(listItemsAll);
}
void TaskAMMFIMTreePreparation::slot_prepareFIMListItemsForTrainee(QList<TaskAmmFim> listTasks)
{
qDebug() << "TaskAMMFIMTreePreparation::slot_prepareFIMListItemsForTrainee thread ID " << QThread::currentThreadId();
listItems.clear();
listItemsAll.clear();
mtxAccess.lock();
this->listTasksFIM = listTasks;
@@ -632,10 +651,10 @@ void TaskAMMFIMTreePreparation::slot_prepareFIMListItemsForTrainee(QList<TaskAmm
}
}
listItems.append(itemTask);
listItemsAll.append(itemTask);
}
mtxAccess.unlock();
Q_EMIT signal_listFIMItemsReady(listItems);
Q_EMIT signal_listFIMItemsReady(listItemsAll);
}

View File

@@ -54,7 +54,7 @@ private:
void loadFIMtasksFromXML(QByteArray array);
public Q_SLOTS:
void slot_prepareAMMListItems(QByteArray array, bool flOnlyActive);
void slot_prepareAMMListItems(QByteArray array, bool flOnlyActive, bool flRequestFirst);
void slot_prepareAMMListItemsForTrainee(QList<TaskAmmFim> listTasks);
void slot_prepareFIMListItems(QByteArray array);
@@ -67,7 +67,8 @@ Q_SIGNALS:
void signal_listFIMItemsReady(QList<QTreeWidgetItem*> listItemsFIM);
private:
QList<QTreeWidgetItem*> listItems;
QList<QTreeWidgetItem*> listItemsAll;
QList<QTreeWidgetItem*> listItemsOnlyActive;
QList<Module*> listAllModulesAMM;
@@ -78,6 +79,8 @@ private:
TypeListTreeAMMFIM type;
QMutex mtxAccess;
int countItems = 0;
};
#endif // TASKTREEPREPARATION_H