Files
RRJServer/DataBaseLMS/timingoftrainee.cpp
2025-07-30 17:06:57 +03:00

71 lines
1.7 KiB
C++

#include "timingoftrainee.h"
TimingOfTrainee::TimingOfTrainee(int trainee_id):
timing_id(0),
trainee_id(trainee_id)
{
QDateTime dataTimeCurr = QDateTime::currentDateTime();
setOperatingTime(0);
setEntryTime(dataTimeCurr);
setExitTime(dataTimeCurr);
}
void TimingOfTrainee::setEntryTimeS(QString entry_time)
{
str_entryTime = entry_time;
entryTime = QDateTime::fromString(entry_time);
}
void TimingOfTrainee::setEntryTime(QDateTime entry_time)
{
entryTime = entry_time;
str_entryTime = entry_time.toString("yyyy-MM-dd hh:mm:ss.zzz");
}
void TimingOfTrainee::setExitTimeS(QString exit_time)
{
str_exitTime = exit_time;
exitTime = QDateTime::fromString(exit_time);
}
void TimingOfTrainee::setExitTime(QDateTime exit_time)
{
exitTime = exit_time;
str_exitTime = exit_time.toString("yyyy-MM-dd hh:mm:ss.zzz");
}
void TimingOfTrainee::setOperatingTimeS(QString operating_time)
{
str_operatingTime = operating_time;
QTime timeLoc = QTime::fromString(operating_time);
operatingTime = timeLoc.hour() * 3600 + timeLoc.minute() * 60 + timeLoc.second();
}
void TimingOfTrainee::setOperatingTime(int operating_time)
{
operatingTime = operating_time;
str_operatingTime = QTime::fromString("00:00:00").addSecs(operating_time).toString();
}
void TimingOfTrainee::fixEntry()
{
QDateTime dataTimeCurr = QDateTime::currentDateTime();
setEntryTime(dataTimeCurr);
}
void TimingOfTrainee::fixExit()
{
QDateTime dataTimeCurr = QDateTime::currentDateTime();
setExitTime(dataTimeCurr);
calculateOperatingTime();
}
void TimingOfTrainee::calculateOperatingTime()
{
int cntSec = entryTime.secsTo(exitTime);
setOperatingTime(getOperatingTime() + cntSec);
}