mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-27 19:45:43 +03:00
Корректное удаление обучаемого с задачами 1
This commit is contained in:
11
.gitignore
vendored
11
.gitignore
vendored
@@ -1,5 +1,4 @@
|
|||||||
#
|
#
|
||||||
/TestServerLMS/Debug64/Application/
|
|
||||||
/BUILDS/
|
/BUILDS/
|
||||||
|
|
||||||
CMakeLists.txt.user
|
CMakeLists.txt.user
|
||||||
@@ -16,10 +15,8 @@ _deps
|
|||||||
CMakeUserPresets.json
|
CMakeUserPresets.json
|
||||||
TestServerLMS/TestServerLMS/CMakeLists.txt.user
|
TestServerLMS/TestServerLMS/CMakeLists.txt.user
|
||||||
ServerLMS/ServerLMS/CMakeLists.txt.user
|
ServerLMS/ServerLMS/CMakeLists.txt.user
|
||||||
DB_IaT/InstructorsAndTrainees/CMakeLists.txt.user
|
InstructorsAndTrainees/CMakeLists.txt.user
|
||||||
GUIdataBaseLMS/GUIdataBaseLMS/CMakeLists.txt.user
|
GUIdataBaseLMS/CMakeLists.txt.user
|
||||||
DB_LMS/DataBaseLMS/CMakeLists.txt.user
|
DataBaseLMS/CMakeLists.txt.user
|
||||||
DB_LMS/DataBaseLMS/CMakeLists.txt.user
|
|
||||||
GUIdataBaseLMS/GUIdataBaseLMS/CMakeLists.txt.user
|
|
||||||
DOCS/.obsidian
|
DOCS/.obsidian
|
||||||
GUIdataBaseLMS/GUIdataBaseLMS/StaticData
|
GUIdataBaseLMS/StaticData
|
||||||
|
|||||||
1
DataBaseLMS/DataBaseLMS.pgerd
Normal file
1
DataBaseLMS/DataBaseLMS.pgerd
Normal file
File diff suppressed because one or more lines are too long
@@ -918,6 +918,8 @@ int DataBaseLMS::deleteTrainee(int id_trainee)
|
|||||||
|
|
||||||
QSqlQuery query = QSqlQuery(*db);
|
QSqlQuery query = QSqlQuery(*db);
|
||||||
|
|
||||||
|
|
||||||
|
//Удаление задач AMM
|
||||||
queryStr = QString("DELETE FROM public.tasks_amm "
|
queryStr = QString("DELETE FROM public.tasks_amm "
|
||||||
"WHERE trainee_task = %1 ").arg(
|
"WHERE trainee_task = %1 ").arg(
|
||||||
QString::number(id_trainee));
|
QString::number(id_trainee));
|
||||||
@@ -928,6 +930,39 @@ int DataBaseLMS::deleteTrainee(int id_trainee)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//Удаление задач FIM
|
||||||
|
|
||||||
|
/*Выборка задач FIM для этого обучаемого*/
|
||||||
|
queryStr = QString("SELECT tasks_fim.task_id, tasks_fim.title, "
|
||||||
|
"trainees.trainee_id "
|
||||||
|
"FROM public.tasks_fim JOIN public.trainees ON trainees.trainee_id = tasks_fim.trainee_task "
|
||||||
|
"WHERE tasks_fim.trainee_task = %1 "
|
||||||
|
"ORDER BY tasks_fim.task_id ASC").arg(
|
||||||
|
id_trainee);
|
||||||
|
|
||||||
|
if(queryExec(queryStr, &query))
|
||||||
|
{
|
||||||
|
while (query.next())
|
||||||
|
{//Задача
|
||||||
|
/*Удаляем все malfunction для этой задачи*/
|
||||||
|
queryStr = QString("DELETE FROM public.malfunctions "
|
||||||
|
"WHERE malfunctions.task_fim_malf = %1 ").arg(
|
||||||
|
query.value(0).toInt());
|
||||||
|
if(!queryExec(queryStr, &query))
|
||||||
|
{
|
||||||
|
resBool = db->rollback();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
resBool = db->rollback();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*Удаление непосредственно задач FIM*/
|
||||||
queryStr = QString("DELETE FROM public.tasks_fim "
|
queryStr = QString("DELETE FROM public.tasks_fim "
|
||||||
"WHERE trainee_task = %1 ").arg(
|
"WHERE trainee_task = %1 ").arg(
|
||||||
QString::number(id_trainee));
|
QString::number(id_trainee));
|
||||||
@@ -938,6 +973,8 @@ int DataBaseLMS::deleteTrainee(int id_trainee)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//Удаление обучаемого
|
||||||
queryStr = QString("DELETE FROM public.trainees "
|
queryStr = QString("DELETE FROM public.trainees "
|
||||||
"WHERE trainee_id = %1 "
|
"WHERE trainee_id = %1 "
|
||||||
"RETURNING trainees.trainee_id").arg(
|
"RETURNING trainees.trainee_id").arg(
|
||||||
|
|||||||
Reference in New Issue
Block a user