refact struct projects

This commit is contained in:
2025-11-06 23:56:52 +03:00
parent c021421118
commit fd8fcd5c1d
22 changed files with 31 additions and 22 deletions

View File

@@ -0,0 +1,100 @@
#ifndef PROVIDERDBLMS_H
#define PROVIDERDBLMS_H
#include <QObject>
#include <QDebug>
#include "interfacedatabaselms.h"
#include "tasksAmmFim.h"
class ProviderDBLMS : public QObject
{
Q_OBJECT
public:
explicit ProviderDBLMS(QWidget *parentWidget, QObject *parent = nullptr);
~ProviderDBLMS();
public:
QString getMainInstructorName();
//Авторизация обучаемого на клиенте
bool authorizationTrainee(QString login, QString password, QString classroom_name = QStringLiteral(""), QString computer_name = QStringLiteral(""));
bool deAuthorizationTrainee(QString login);
QString getNameTraineeByLogin(QString login);
//Авторизация инструктора на клиенте
bool authorizationInstructor(QString login, QString password);
bool deAuthorizationInstructor(QString login);
QString getNameInstructorByLogin(QString login);
//Общая деавторизация
bool deAuthorizationAll();
//Регистрация тайминга Обучаемого
bool entryTraineeOnSimulator(int id_trainee);
bool exitTraineeFromSimulator(int id_trainee);
//
int getIdTraineeByLogin(QString login);
int getIdInstructorByLogin(QString login);
QString getLoginTraineeById(int id_trainee);
QList<Instructor> GetListAllInstructors();
QList<Trainee> GetListAllTrainees();
QList<Group> GetListAllGroups();
int newInstructor();
int delInstructor(int id);
int editInstructor(Instructor instructor);
int newTrainee(int id_group);
int delTrainee(int id);
int editTrainee(Trainee trainee);
int newGroup();
int delGroup(int id);
int editGroup(Group group);
int newTaskAMM(TaskAmmFim task, int id_trainee);
int delTaskAMM(int id);
int editTaskAMM(TaskAmmFim task);
int newTaskFIM(TaskAmmFim task, int id_trainee);
int delTaskFIM(int id);
int editTaskFIM(TaskAmmFim task);
int replaceReportFIM(TaskAmmFim task);
int changeStatusTaskFIM(int id_task, QString status);
int changeStatusTaskAMM(int id_task, QString status);
QList<TaskAmmFim> GetListTasksAMMofTrainee(int id_trainee);
QList<TaskAmmFim> GetListTasksFIMofTrainee(int id_trainee);
TaskAmmFim getTaskAMMbyID(int id_task);
TaskAmmFim getTaskFIMbyID(int id_task);
Q_SIGNALS:
//сигнал о блокировке авторизации
void signal_BlockAutorization(bool block);
signals:
void signal_ErrorPostgreSQL(QString text);
public:
bool ConnectionToDB();
void DisConnectionFromDB();
bool DBisConnected();
DataBaseSettings getDBSettings();
//PostgreSQL
bool setUserPasswordPostgres(QString userName, QString password);
bool checkDriverQPSQLavailable();
bool checkUserLMSexist();
bool checkDataBaseLMSexist();
bool createUser();
bool createDB();
private:
InterfaceDataBaseLMS* dbLMS;
QMutex mtxAccess;
QWidget *parentWidget;
};
#endif // PROVIDERDBLMS_H