mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-28 19:55:48 +03:00
bugfix: send old messages to QTGUI
This commit is contained in:
@@ -10,6 +10,7 @@ void ChatSystem::initialize(CommonClientHandler *commonClientHandler, DataParser
|
||||
this->commonClientHandler = commonClientHandler;
|
||||
this->dataParser = dataParser;
|
||||
this->clientsMap = clientsMap;
|
||||
|
||||
clientNotSendedMessage = new QMap<QString,QQueue<ClientMessage>*>;
|
||||
}
|
||||
|
||||
@@ -17,15 +18,13 @@ bool ChatSystem::sendTo(ClientMessage message)
|
||||
{
|
||||
QByteArray byteArrayMsg = dataParser->ClientAnswer()->message(message.From,message.To,message.Text);
|
||||
|
||||
auto result = message.To.split("-");
|
||||
foreach(int idSocket, clientsMap->keys())
|
||||
{
|
||||
ClientHandler *handler = clientsMap->value(idSocket);
|
||||
QString userType = QString::number(static_cast<int>(handler->getClient()->getAccessType()));
|
||||
|
||||
if(handler->getClient()->getId() == result[0] &&
|
||||
userType == result[1] &&
|
||||
handler->getClient()->getTypeClient() != TypeClientAutorization::TYPE_QT_CLIENT)
|
||||
if(handler->getClient()->getId() == message.To &&
|
||||
handler->getClient()->getTypeClient() != TypeClientAutorization::TYPE_QT_CLIENT &&
|
||||
handler->getClient()->getIsLoggedIn())
|
||||
{
|
||||
handler->sendXmlAnswer(byteArrayMsg, PacketType::TYPE_XMLANSWER);
|
||||
QString str = "Msg From Client [" + message.From + " to " + message.To + "] : " + message.Text;
|
||||
@@ -67,6 +66,7 @@ void ChatSystem::sendOldMessages(QString id)
|
||||
if (clientNotSendedMessage->contains(id))
|
||||
{
|
||||
auto queue = clientNotSendedMessage->find(id).value();
|
||||
Logger::instance().log("Send old Messages " + QString::number(queue->length()));
|
||||
|
||||
while (!queue->isEmpty())
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user