Передача назначенных задач из сервера в ГУИ

This commit is contained in:
krivoshein
2025-01-28 13:19:33 +03:00
parent eebe56dd6c
commit c7c665bebd
26 changed files with 236 additions and 11 deletions

View File

@@ -107,3 +107,27 @@ QByteArray DBAnswerParser::listTasks(bool result, QList<Task> *listTasks)
//TODO
return QByteArray();
}
QByteArray DBAnswerParser::listTasksAMMofTrainee(bool result, QList<TaskAmmFim> *listTasks, int trainee_id)
{
QDomDocument commonDOM;
if(! dataParser->loadBlankXML(":/resources/blankXML/ListTasksAMM.xml", &commonDOM))
return QByteArray();
QDomNode listNode = commonDOM.namedItem("ListTasksAMM");
listNode.toElement().setAttribute("trainee_id", QString::number(trainee_id));
for(TaskAmmFim task : *listTasks)
{
//Задача
QDomNode taskNode = commonDOM.createElement("taskAMM");
listNode.appendChild(taskNode);
taskNode.toElement().setAttribute("task_id", QString::number(task.getID()));
taskNode.toElement().setAttribute("title", task.ammProcedure.title);
taskNode.toElement().setAttribute("dmCode", task.ammProcedure.dmCode);
}
dataParser->saveDOMtoXML("ListTasksAMM.xml", &commonDOM);
return commonDOM.toByteArray();
}

View File

@@ -19,6 +19,8 @@ public:
QByteArray listComputers(bool result, QList<Computer> *listComputers);
QByteArray listClassrooms(bool result, QList<Classroom> *listClassrooms);
QByteArray listTasks(bool result, QList<Task> *listTasks);
QByteArray listTasksAMMofTrainee(bool result, QList<TaskAmmFim> *listTasks, int trainee_id);
signals:
private:

View File

@@ -238,6 +238,15 @@ void ProcessingSystem::processingClientQueryToDB(ClientHandler *client, ClientQu
providerDBLMS->editTaskAMM(*(TaskAmmFim*)data);
}
//emit sigTasksChanged();
//break;
}
case TypeQueryToDB::TYPE_QUERY_GET_TASKS_AMM_FOR_TRAINEE:
{
QList<TaskAmmFim> listTasks = providerDBLMS->GetListTasksAMMofTrainee(id);
arrayAnswer = dataParser->DbAnswer()->listTasksAMMofTrainee(true, &listTasks, id);
client->sendXmlAnswer(arrayAnswer, PacketType::TYPE_XMLANSWER_QUERY_TASKS_AMM_FOR_TRAINEE);
break;
}
@@ -251,6 +260,11 @@ void ProcessingSystem::processingClientQueryToDB(ClientHandler *client, ClientQu
providerDBLMS->editTaskFIM(*(TaskAmmFim*)data);
}
//emit sigTasksChanged();
//break;
}
case TypeQueryToDB::TYPE_QUERY_GET_TASKS_FIM_FOR_TRAINEE:
{
break;
}
}