VersionSelectWidget refact

This commit is contained in:
2025-11-26 17:28:22 +03:00
parent 44b6299e59
commit 1c151d4aff
14 changed files with 221 additions and 102 deletions

View File

@@ -158,6 +158,13 @@ void SendSystem::sendCopyVersion(QString versionName)
stream << versionName;
}
void SendSystem::sendGetVersion()
{
QDataStream stream(socket);
stream.setVersion(QDataStream::Qt_DefaultCompiledVersion);
stream << PacketType::GET_VERSION;
}
void SendSystem::sendPacketType(PacketType packetType)
{
QDataStream stream(socket);

View File

@@ -21,11 +21,14 @@ public:
void sendQTConnect();
void sendXMLAnswer(QByteArray array);
~SendSystem();
void sendFinish();
void sendFinish();
public slots:
void sendPacketType(PacketType packetType);
void sendChangeVersion(StreamingVersionData *streamingVersion);
void sendDeleteVersion(StreamingVersionData *streamingVersion);
void sendCopyVersion(QString versionName);
void sendPacketType(PacketType packetType);
void sendGetVersion();
signals:
void sigSend();
QByteArray sigGetXmlAnswer(QString);

View File

@@ -62,6 +62,7 @@ enum PacketType{
TYPE_XMLANSWER_QUERY_LIST_SUB_PROC_AMM = 133,
GET_VERSION = 149,
HASH_READY = 150,
CHANGE_DATA_VERSION = 151,
COPY_VERSION = 152,

View File

@@ -9,10 +9,9 @@ ConnectorToServer::ConnectorToServer(QWidget* parentWidget, QObject *parent) :
dataParser(nullptr),
sendSystem(nullptr),
recognizeSystem(nullptr),
versionSelectWidget(nullptr),
versionContainer(nullptr),
notifyController(nullptr),
fl_GetedOfflineMessages(false)
fl_GetedOfflineMessages(false),
nameInstructorLoggedInLocal("")
{
initialize();
}
@@ -20,9 +19,7 @@ ConnectorToServer::ConnectorToServer(QWidget* parentWidget, QObject *parent) :
ConnectorToServer::~ConnectorToServer()
{
delete client;
delete versionSelectWidget;
delete notifyController;
delete versionContainer;
delete recognizeSystem;
delete sendSystem;
delete dataParser;
@@ -57,7 +54,13 @@ void ConnectorToServer::StopConnectToServer()
void ConnectorToServer::setLoginName(QString name)
{
versionSelectWidget->setAuthor(name);
//versionSelectWidget->setAuthor(name);
nameInstructorLoggedInLocal = name;
}
QString ConnectorToServer::getLoginName()
{
return nameInstructorLoggedInLocal;
}
void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage)
@@ -67,7 +70,8 @@ void ConnectorToServer::slot_sendMessage(ClientMessage clientMessage)
void ConnectorToServer::slot_showServerList(QList<StreamingVersionData *> *serverList)
{
versionSelectWidget->fillView(serverList);
//versionSelectWidget->fillView(serverList);
emit signal_showServerList(serverList);
}
void ConnectorToServer::slot_HashReady()
@@ -81,6 +85,26 @@ void ConnectorToServer::slot_Auth(ServerAuthorization *serverAuth)
emit sigLoginResult(serverAuth);
}
void ConnectorToServer::slot_SendDeleteVersion(StreamingVersionData *streaming)
{
emit signal_SendDeleteVersion(streaming);
}
void ConnectorToServer::slot_SendSwitchVersion(StreamingVersionData *selectVersion)
{
emit signal_SendSwitchVersion(selectVersion);
}
void ConnectorToServer::slot_SendCopyVersion(QString versionPair)
{
emit signal_SendCopyVersion(versionPair);
}
void ConnectorToServer::slot_getVersion()
{
emit signal_SendGetVersion();
}
void ConnectorToServer::initialize()
{
createObjects();
@@ -104,7 +128,6 @@ void ConnectorToServer::bindConnection()
connect(recognizeSystem,&RecognizeSystem::sigDeAuth,this,&ConnectorToServer::sigDeLoginResult);
connect(recognizeSystem,&RecognizeSystem::signal_ReceiveMessage,this,&ConnectorToServer::signal_receiveMessage,Qt::AutoConnection);
connect(recognizeSystem,&RecognizeSystem::sigShowServerDataList,this,&ConnectorToServer::slot_showServerList);
connect (recognizeSystem,&RecognizeSystem::sigSetVersion,versionContainer,&VersionContainer::setServerVersionData);
connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListInstructors,this,&ConnectorToServer::slot_AnswerQueryToDB_ListInstructors);
connect(recognizeSystem,&RecognizeSystem::sigAnswerQueryToDB_ListGroups,this,&ConnectorToServer::slot_AnswerQueryToDB_ListGroups);
@@ -127,6 +150,15 @@ void ConnectorToServer::bindConnection()
connect(recognizeSystem,&RecognizeSystem::sigHashReady,this,&ConnectorToServer::slot_HashReady);
connect(recognizeSystem,&RecognizeSystem::signal_AnswerDocsChanged,this,&ConnectorToServer::slot_AnswerDocsChanged);
connect(recognizeSystem, &RecognizeSystem::sigSetVersion, this, &ConnectorToServer::signal_SetVersion);
connect(recognizeSystem, &RecognizeSystem::sigAnimationActivated, this, &ConnectorToServer::signal_AnimationActivated);
connect(this, &ConnectorToServer::signal_SendCopyVersion, sendSystem, &SendSystem::sendCopyVersion);
connect(this, &ConnectorToServer::signal_SendDeleteVersion, sendSystem, &SendSystem::sendDeleteVersion);
connect(this, &ConnectorToServer::signal_SendSwitchVersion, sendSystem, &SendSystem::sendChangeVersion);
connect(this, &ConnectorToServer::signal_SendGetVersion, sendSystem, &SendSystem::sendGetVersion);
}
void ConnectorToServer::createObjects()
@@ -145,9 +177,6 @@ void ConnectorToServer::createObjects()
recognizeSystem->moveToThread(connectionThread);
notifyController = new NotifyController(parentWidget);
versionContainer = new VersionContainer;
versionSelectWidget = new VersionSelectWidget(parentWidget);
versionSelectWidget->initialize(sendSystem,versionContainer,notifyController, recognizeSystem);
connectionThread->start();
connectionThread->setPriority(QThread::HighestPriority);

View File

@@ -4,7 +4,6 @@
#include <QObject>
#include <QMap>
#include <QMutex>
#include <widgets/versionselectwidget.h>
#include "Core\tcpclient.h"
#include "Core\dataparser.h"
#include "Core\sendsystem.h"
@@ -14,8 +13,9 @@
#include "group.h"
#include "computer.h"
#include "classroom.h"
#include "streamingversiondata.h"
#include "Datas.h"
#include "notifycontroller.h"
#include "streamingversiondata.h"
class ConnectorToServer : public QObject
{
@@ -36,6 +36,7 @@ public:
void StopConnectToServer();
void setLoginName(QString name);
QString getLoginName();
public:
//Send
@@ -107,6 +108,12 @@ public slots:
void slot_HashReady();
void slot_Auth(ServerAuthorization * serverAuth);
void slot_SendDeleteVersion(StreamingVersionData *streaming);
void slot_SendSwitchVersion(StreamingVersionData *selectVersion);
void slot_SendCopyVersion(QString versionPair);
void slot_getVersion();
signals:
void sigSetConnect(ServerSettings* serverSettings,QThread *thread);
void sigStopConnect();
@@ -136,6 +143,16 @@ signals:
void signal_AnswerDocsChanged();
void signal_SetVersion(StreamingVersionData* serverVersion);
void signal_AnimationActivated(bool flag);
void signal_SendDeleteVersion(StreamingVersionData *streaming);
void signal_SendSwitchVersion(StreamingVersionData *selectVersion);
void signal_SendCopyVersion(QString versionPair);
void signal_showServerList(QList<StreamingVersionData*> *serverList);
void signal_SendGetVersion();
private:
void initialize();
void bindConnection();
@@ -148,8 +165,6 @@ private:
DataParser *dataParser;
SendSystem *sendSystem;
RecognizeSystem *recognizeSystem;
VersionSelectWidget *versionSelectWidget;
VersionContainer *versionContainer;
NotifyController *notifyController;
//Списочная модель БД СУО
@@ -170,6 +185,8 @@ private:
ServerAuthorization serverAuth;
bool fl_GetedOfflineMessages;
QString nameInstructorLoggedInLocal;
};
#endif // CONNECTORTOSERVER_H