mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-28 19:55:48 +03:00
102 lines
3.8 KiB
C++
102 lines
3.8 KiB
C++
#include "personalcardtrainee.h"
|
|
#include "ui_personalcardtrainee.h"
|
|
|
|
PersonalCardTrainee::PersonalCardTrainee(ConnectorToServer* connectorToServer, MessangerController* messangerController, int id_trainee, AMMtasksWidget* ammTasksWidgetIn, FIMtasksWidget* fimTasksWidgetIn, QWidget *parent) :
|
|
QWidget(parent),
|
|
connectorToServer(connectorToServer),
|
|
messangerController(messangerController),
|
|
id_trainee(id_trainee),
|
|
ammTasksWidget_personal(nullptr),
|
|
fimTasksWidget_personal(nullptr),
|
|
ammTasksWidget_common(ammTasksWidgetIn),
|
|
fimTasksWidget_common(fimTasksWidgetIn),
|
|
messangerWidget(nullptr),
|
|
ui(new Ui::PersonalCardTrainee)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
loadInfo();
|
|
|
|
ammTasksWidget_personal = new AMMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listForTrainee, this);
|
|
fimTasksWidget_personal = new FIMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listForTrainee, this);
|
|
|
|
connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksAMMforTrainee, ammTasksWidget_personal, &AMMtasksWidget::slot_UpdateTasksAMMforTrainee);
|
|
connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksFIMforTrainee, fimTasksWidget_personal, &FIMtasksWidget::slot_UpdateTasksFIMforTrainee);
|
|
|
|
connect(ammTasksWidget_personal, &AMMtasksWidget::signal_countTasksAMMforTraineeChanged, this, &PersonalCardTrainee::slot_countTasksAMMforTraineeChanged);
|
|
connect(fimTasksWidget_personal, &FIMtasksWidget::signal_countTasksFIMforTraineeChanged, this, &PersonalCardTrainee::slot_countTasksFIMforTraineeChanged);
|
|
|
|
connect(connectorToServer, &ConnectorToServer::signal_UpdateDB, this, &PersonalCardTrainee::slot_NeedUpdateUI);
|
|
|
|
fimTasksWidget_personal->slot_traineeSelected(id_trainee);
|
|
ammTasksWidget_personal->slot_traineeSelected(id_trainee);
|
|
|
|
ui->verticalLayout_AMMpersonal->addWidget(ammTasksWidget_personal);
|
|
ui->verticalLayout_FIMpersonal->addWidget(fimTasksWidget_personal);
|
|
|
|
ui->verticalLayout_AMMcommon->addWidget(ammTasksWidget_common);
|
|
ui->verticalLayout_FIMcommon->addWidget(fimTasksWidget_common);
|
|
|
|
ui->groupBox_Messenger->setMaximumWidth(500);
|
|
ui->groupBox_Messenger->setMinimumWidth(500);
|
|
|
|
/* Messanger*/
|
|
Trainee trainee = connectorToServer->getTrainee(id_trainee);
|
|
messangerWidget = messangerController->newWidget(this, &trainee, ui->verticalLayout_Messenger);
|
|
}
|
|
|
|
PersonalCardTrainee::~PersonalCardTrainee()
|
|
{
|
|
delete ammTasksWidget_personal;
|
|
delete fimTasksWidget_personal;
|
|
|
|
messangerController->deleteWidget(messangerWidget);
|
|
|
|
//ui->verticalLayout_AMMcommon->removeWidget(ammTasksWidget_common);
|
|
//ui->verticalLayout_FIMcommon->removeWidget(fimTasksWidget_common);
|
|
|
|
delete ui;
|
|
}
|
|
|
|
void PersonalCardTrainee::loadInfo()
|
|
{
|
|
Trainee trainee = connectorToServer->getTrainee(id_trainee);
|
|
|
|
ui->lblName->setText(trainee.getName());
|
|
|
|
if(trainee.getLoggedIn())
|
|
ui->lblLoginIn->setPixmap(QPixmap(QStringLiteral(":/resources/icons/circleGreen.png")));
|
|
else
|
|
ui->lblLoginIn->setPixmap(QPixmap(QStringLiteral(":/resources/icons/circleGray.png")));
|
|
|
|
TimingOfTrainee timing = trainee.getTiming();
|
|
|
|
ui->lblTimeOperation->setText(timing.getOperatingTimeS());
|
|
ui->lblLoginTime->setText(timing.getEntryTimeS());
|
|
ui->lblTimeExit->setText(timing.getExitTimeS());
|
|
}
|
|
|
|
void PersonalCardTrainee::slot_countTasksAMMforTraineeChanged(int trainee_id, int count)
|
|
{
|
|
if(id_trainee == trainee_id)
|
|
{
|
|
ui->lblCntAMM->setText(QString::number(count));
|
|
}
|
|
}
|
|
|
|
void PersonalCardTrainee::slot_countTasksFIMforTraineeChanged(int trainee_id, int count)
|
|
{
|
|
if(id_trainee == trainee_id)
|
|
{
|
|
ui->lblCntFIM->setText(QString::number(count));
|
|
}
|
|
}
|
|
|
|
void PersonalCardTrainee::slot_NeedUpdateUI(bool treeInstructor, bool treeTrainee)
|
|
{
|
|
if(treeTrainee)
|
|
{
|
|
loadInfo();
|
|
}
|
|
}
|