Files
RRJServer/InstructorsAndTrainees/trainees/personalcardtrainee.cpp

116 lines
5.3 KiB
C++

#include "personalcardtrainee.h"
#include "ui_personalcardtrainee.h"
//PersonalCardTrainee::PersonalCardTrainee(ConnectorToServer* connectorToServer, int id_trainee, QWidget *parent) :
PersonalCardTrainee::PersonalCardTrainee(ConnectorToServer* connectorToServer, int id_trainee, AMMtasksWidget* ammTasksWidgetIn, FIMtasksWidget* fimTasksWidgetIn, QWidget *parent) :
QWidget(parent),
connectorToServer(connectorToServer),
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(this, &ViewerTrainees::signal_traineeSelected, fimTasksWidget, &FIMtasksWidget::slot_traineeSelected);
//connect(this, &ViewerTrainees::signal_traineeSelected, ammTasksWidget, &AMMtasksWidget::slot_traineeSelected);
connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksAMMforTrainee, ammTasksWidget_personal, &AMMtasksWidget::slot_UpdateTasksAMMforTrainee);
connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksFIMforTrainee, fimTasksWidget_personal, &FIMtasksWidget::slot_UpdateTasksFIMforTrainee);
fimTasksWidget_personal->slot_traineeSelected(connectorToServer->getTrainee(id_trainee).getLogin());
ammTasksWidget_personal->slot_traineeSelected(connectorToServer->getTrainee(id_trainee).getLogin());
ui->verticalLayout_AMMpersonal->addWidget(ammTasksWidget_personal);
ui->verticalLayout_FIMpersonal->addWidget(fimTasksWidget_personal);
//ammTasksWidget = new AMMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listCommon, this);
//fimTasksWidget = new FIMtasksWidget(connectorToServer, TypeListTreeAMMFIM::listCommon, this);
// connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksFIM, fimTasksWidget, &FIMtasksWidget::slot_NeedUpdateUI);
// connect(connectorToServer, &ConnectorToServer::signal_UpdateTasksAMM, ammTasksWidget, &AMMtasksWidget::slot_NeedUpdateUI);
//connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, fimTasksWidget, &FIMtasksWidget::slot_traineeSelected);
//connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, ammTasksWidget, &AMMtasksWidget::slot_traineeSelected);
// fimTasksWidget->slot_traineeSelected(connectorToServer->getTrainee(id_trainee).getLogin());
// ammTasksWidget->slot_traineeSelected(connectorToServer->getTrainee(id_trainee).getLogin());
ui->verticalLayout_AMMcommon->addWidget(ammTasksWidget_common);
ui->verticalLayout_FIMcommon->addWidget(fimTasksWidget_common);
//connectorToServer->sendQueryTasksXML("fim");
//connectorToServer->sendQueryTasksXML("amm");
// fimTasksWidget->slot_NeedUpdateUI();
// ammTasksWidget->slot_NeedUpdateUI();
messangerWidget = new MessangerWidget(this);
//connect(viewerTrainees, &ViewerTrainees::signal_traineeSelected, messangerWidget, &MessangerWidget::slot_traineeSelected);
//connect(messangerWidget, &MessangerWidget::signal_tabMessengerChanged, viewerTrainees, &ViewerTrainees::slot_tabMessengerChanged);
connect(messangerWidget, &MessangerWidget::signal_sendMessage, connectorToServer, &ConnectorToServer::slot_sendMessage);
connect(connectorToServer,&ConnectorToServer::signal_receiveMessage,messangerWidget,&MessangerWidget::slot_showMessage);
ui->verticalLayout_Messenger->addWidget(messangerWidget);
messangerWidget->initialize(connectorToServer->getServerAuth().Id);
QList<Trainee> listTrainees;
Trainee trainee = connectorToServer->getTrainee(id_trainee);
listTrainees.append(trainee);
messangerWidget->slot_InitMessanger(listTrainees);
ui->groupBox_Messenger->setMaximumWidth(600);
ui->groupBox_Messenger->setMinimumWidth(600);
}
PersonalCardTrainee::~PersonalCardTrainee()
{
//delete ammTasksWidget;
//delete fimTasksWidget;
//ui->verticalLayout_AMMcommon->removeWidget(ammTasksWidget);
//ui->verticalLayout_AMMcommon->removeWidget(fimTasksWidget);
//ammTasksWidget = nullptr;
//fimTasksWidget = nullptr;
delete ammTasksWidget_personal;
delete fimTasksWidget_personal;
delete messangerWidget;
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")));
//QList<TaskAmmFim> listTasksAMM = connectorToServer->getListTasksAMMforTrainee(id_trainee);
//QList<TaskAmmFim> listTasksFIM = connectorToServer->getListTasksFIMforTrainee(id_trainee);
//ui->lblCntAMM->setText(QString::number(listTasksAMM.count()));
//ui->lblCntFIM->setText(QString::number(listTasksFIM.count()));
TimingOfTrainee timing = trainee.getTiming();
ui->lblTimeOperation->setText(timing.getOperatingTimeS());
ui->lblLoginTime->setText(timing.getEntryTimeS());
ui->lblTimeExit->setText(timing.getExitTimeS());
}