#ifndef CONNECTORTOSERVER_H #define CONNECTORTOSERVER_H #include #include "Core\tcpclient.h" #include "Core\dataparser.h" #include "Core\sendsystem.h" #include "Core\recognizesystem.h" #include "instructor.h" #include "trainee.h" #include "group.h" #include "computer.h" #include "classroom.h" #include "task.h" class ConnectorToServer : public QObject { Q_OBJECT public: explicit ConnectorToServer(QObject *parent = nullptr); bool authorizationInstructorLocal(QString login, QString password); bool deAuthorizationInstructorLocal(QString login); bool sendQueryToDB(TypeQueryToDB typeQuery, int id = 0, void* data = nullptr); bool sendMessageForClient(int id, QString login, QString text); void SetConnectToServer(); public: //Запросы к БД (локальной) QList getListInstructors(); QList getListTrainees(); QList getListGroups(); QList getListComputers(); QList getListClassrooms(); QList getListTasks(); bool isArchivedInstructor(int id); bool isAdminInstructor(int id); bool isLoggedInInstructor(int id); Instructor getInstructor(int id); QList getListTraineesInGroup(int id); bool isArchivedTrainee(int id); bool isLoggedInTrainee(int id); Trainee getTrainee(int id); Group getGroup(int id); int getIdTraineeByLogin(QString login); public slots: /*void slot_AnswerQueryToDB(QList* listInstructors, QList* listTrainees, QList* listGroups);*/ void slot_AnswerQueryToDB_ListInstructors(QList listInstructors); void slot_AnswerQueryToDB_ListGroups(QList listGroups); void slot_AnswerQueryToDB_ListTrainees(QList listTrainees); void slot_AnswerQueryToDB_ListComputers(QList listComputers); void slot_AnswerQueryToDB_ListClassrooms(QList listClassrooms); void slot_AnswerQueryToDB_ListTasks(QList listTasks); void slot_msgToClientReady(QString login, QString text); signals: void sigSetConnect(ServerSettings* serverSettings,QThread *thread); void sigInitializeClient(RecognizeSystem *recognizeSystem, SendSystem *sendSystem, QThread *thread); void signal_sendXMLmsgGUItoServer(); void sigLoginResult(ServerAuthorization * serverAuth); void sigDeLoginResult(ServerDeAuthorization * serverDeAuth); void signal_UpdateDB(bool treeInstructor, bool treeTrainee); void signal_ConnectedToServer(bool state); void signal_InitMessanger(QList listTrainees); void signal_msgFromClientReady(QString login, QString text); private: void initialize(); void bindConnection(); void createObjects(); private: QThread *connectionThread; TCPClient *client; DataParser *dataParser; SendSystem *sendSystem; RecognizeSystem *recognizeSystem; //Списочная модель БД СУО QList listInstructors; QList listGroups; QList listTrainees; QList listComputers; QList listClassrooms; QList listTasks; }; #endif // CONNECTORTOSERVER_H