ref: send system

This commit is contained in:
semenov
2025-06-23 09:48:32 +03:00
parent e40a22483a
commit 1fde2d4609
4 changed files with 13 additions and 22 deletions

View File

@@ -19,7 +19,7 @@ kanban-plugin: board
## TODO
- [ ] выдавать trainee_id при авторизации
- [ ] изменить путь до самостоятельного /RRJ-95NEW-100/tasksFIM.xml и AMM
- [ ] /RRJ-95NEW-100/tasksFIM.xml и AMM на /RUS/Scens/tasksFIM.xml и AMM
- [ ] Убрать ошибки QObject::moveToThread: Cannot move objects with a parent

View File

@@ -28,7 +28,7 @@ InstructorsAndTraineesWidget::InstructorsAndTraineesWidget(QWidget *parent) :
ui->groupBox_Trainees->setObjectName("groupBox_Trainees");
#ifndef PROJECT_TYPE_DEBUG
ui->btnUpdateStyleSheet->setVisible(false);
//ui->btnUpdateStyleSheet->setVisible(false);
#endif
qRegisterMetaType<PacketType>("PacketType");

View File

@@ -198,34 +198,25 @@ void SendSystem::sendXmlAnswer(QByteArray array, PacketType packetType)
}
else
{
QByteArray buffer(512,0);
//QByteArray buffer(512,0);
QByteArray message;
message.append("size=");
message.append(QByteArray::number(array.length()));
int size = array.length();
message.append(reinterpret_cast<char*>(&size), sizeof(int));
memcpy(buffer.data(),message,message.length());
qDebug() << buffer.length();
socket->write(buffer);
socket->waitForBytesWritten();
qDebug() << "Message size " << message.length();
qDebug() << array.length();
socket->write(message);
if(array.length() <= 512)
{
QByteArray buffer2(512,0);
memcpy(buffer2.data(),array.data(),array.length());
socket->write(buffer2);
// QByteArray buffer2(512,0);
// memcpy(buffer2.data(),array.data(),array.length());
socket->write(array);
}
else
{
buffer.clear();
QDataStream stream(array);
while(!stream.atEnd())
{
stream >> buffer;
socket->write(array);
socket->waitForBytesWritten();
}
}
}
}

View File

@@ -145,7 +145,7 @@ bool ServerLMSWidget::stopServer()
//Закрываем все открытые сокеты
foreach(int idSocket, clientsMap.keys())
{
clientsMap[idSocket]->sigSocketWrite(arrayAnswer);
clientsMap[idSocket]->sigSendXmlAnswer(arrayAnswer,PacketType::TYPE_XMLANSWER);
//while (!clientsMap[idSocket]->sigSocketFlush()) {}
QString str = QString(arrayAnswer);