feat: link busy state with lock icon

This commit is contained in:
semenov
2025-11-21 10:16:06 +03:00
parent bbef1f73b4
commit 73fd93a834
6 changed files with 32 additions and 11 deletions

View File

@@ -12,21 +12,18 @@ kanban-plugin: board
- [ ] Перезаполнять имя на offline, если клиент отключился - [ ] Перезаполнять имя на offline, если клиент отключился
- [ ] QT клиент, если сервер занят повторно не появляется окно авторизации - [ ] QT клиент, если сервер занят повторно не появляется окно авторизации
- [ ] не отправлять updateDocs если не залогинен - [ ] поправить верстку в управлении серверами
- [ ] Отменить изменения работает некрасиво - [ ] Подчищать креды при переходе из QT в UNITY
- [ ] BUSY не меняет иконку блокировки
- [ ] не работают ссылки при выгрузке в QT Client
- [ ] починить поведение окон при включенном обновлении у 2х пользователей
## feature client Unity ## feature client Unity
- [ ] перетащить наименования хинтов в XML и забирать из оттуда при старте - [ ] добавить переход на сценарий из PDF по типу списка окон
- [ ] Читать сабпроцедуры из тасок
## feature client QT ## feature client QT
- [ ] убрать из XML все настройки для мат модели
## feature server ## feature server
@@ -39,6 +36,14 @@ kanban-plugin: board
## Complete ## Complete
- [ ] BUSY не меняет иконку блокировки
- [ ] не работают ссылки при выгрузке в QT Client
- [ ] убрать из XML все настройки для мат модели
- [ ] не отправлять updateDocs если не залогинен и запретить все операции
- [ ] Завести CLIENT с состояние залогигнен или нет
- [ ] перетащить наименования хинтов в XML и забирать из оттуда при старте
- [ ] починить поведение окон при включенном обновлении у 2х пользователей
- [ ] Отменить изменения работает некрасиво
- [ ] увеличить размер текста в окне обновлений - [ ] увеличить размер текста в окне обновлений
- [ ] Делить по группам траэйнисы и инструкторы - [ ] Делить по группам траэйнисы и инструкторы
- [ ] Проверить Максимальный объем пересылаемых позже сообщений 4 тысячи знаков - [ ] Проверить Максимальный объем пересылаемых позже сообщений 4 тысячи знаков

View File

@@ -116,6 +116,8 @@ void CommonClientHandler::slot_sendPacketToAllClients(PacketType packetType)
handler->sendPacketType(packetType); handler->sendPacketType(packetType);
Logger::instance().log("AllSending " + handler->getClient()->getLogin() + " " + enumToString(packetType)); Logger::instance().log("AllSending " + handler->getClient()->getLogin() + " " + enumToString(packetType));
} }
emit sigSetServerState(packetType);
} }
@@ -135,9 +137,6 @@ void CommonClientHandler::slot_sendTaskToClient(QString fullNameClient,QString t
QString peerAddress = handler->getSocket()->peerAddress().toString(); QString peerAddress = handler->getSocket()->peerAddress().toString();
QString peerPort = QString::number(handler->getSocket()->peerPort()); QString peerPort = QString::number(handler->getSocket()->peerPort());
QString str = "Task To Client [" + peerAddress + ":" + peerPort + "] : " + textTask;
emit sigSendToLogger(str);
} }
} }
} }

View File

@@ -28,7 +28,7 @@ public:
void slot_DocsChanged(); void slot_DocsChanged();
signals: signals:
void sigSendToLogger(QString text); void sigSetServerState(PacketType packetType);
private: private:
QMap<int, ClientHandler*> *clientsMap; QMap<int, ClientHandler*> *clientsMap;
ProcessingSystem *processingSystem; ProcessingSystem *processingSystem;

View File

@@ -228,6 +228,7 @@ void SendSystem::sendPacketType(PacketType packetType)
message.append(reinterpret_cast<char*>(&type), sizeof(int)); message.append(reinterpret_cast<char*>(&type), sizeof(int));
socket->write(message); socket->write(message);
} }
} }
void SendSystem::sendHello() void SendSystem::sendHello()

View File

@@ -234,6 +234,20 @@ void ServerLMSWidget::on_btnSettings_clicked()
} }
} }
void ServerLMSWidget::slot_trySetServerState(PacketType packetType)
{
if (packetType == PacketType::BUSY)
{
server->blockAutorization();
updateStateServer();
}
else if (packetType == PacketType::FREE)
{
server->unBlockAutorization();
updateStateServer();
}
}
void ServerLMSWidget::setLanguageInterfase() void ServerLMSWidget::setLanguageInterfase()
{ {
ServerDBSettings settings; ServerDBSettings settings;
@@ -311,6 +325,7 @@ void ServerLMSWidget::startInitialization()
commonClientHandler = new CommonClientHandler; commonClientHandler = new CommonClientHandler;
connect(this,&ServerLMSWidget::signal_DocsChanged,commonClientHandler, &CommonClientHandler::slot_DocsChanged); connect(this,&ServerLMSWidget::signal_DocsChanged,commonClientHandler, &CommonClientHandler::slot_DocsChanged);
connect(commonClientHandler,&CommonClientHandler::sigSetServerState,this,&ServerLMSWidget::slot_trySetServerState);
server = new MultiThreadServer(this,updateController,processingSystem,dataParser,6000); server = new MultiThreadServer(this,updateController,processingSystem,dataParser,6000);

View File

@@ -123,6 +123,7 @@ private slots:
void on_btnStartServer_clicked(); void on_btnStartServer_clicked();
void on_btnStopServer_clicked(); void on_btnStopServer_clicked();
void on_btnSettings_clicked(); void on_btnSettings_clicked();
void slot_trySetServerState(PacketType packetType);
private: private:
void setLanguageInterfase(); void setLanguageInterfase();