GetDurationFromCost():

Check if computed duration is below minimal parking time.
This commit is contained in:
Gerhard Hoffmann 2024-07-31 10:26:47 +02:00
parent e5629ba4fd
commit 7bf7108668

View File

@ -201,23 +201,29 @@ std::string Calculator::GetDurationFromCost(Configuration* cfg,
//found = true;
//qCritical() << "(" << __func__ << ":" << __LINE__ << ") duration_previous" << duration_previous;
//qCritical() << "(" << __func__ << ":" << __LINE__ << ") duration in minutes" << durationInMinutes;
QString s = inputDate.toString(Qt::ISODate);
QDateTime d(QDateTime::fromString(s, Qt::ISODate));
d = d.addSecs(duration_previous * 60);
//qCritical() << DBG_HEADER << "XXXX" << d;
QDateTime d(inputDate.addSecs(duration_previous * 60));
qCritical() << DBG_HEADER << " provided price (cost):" << cost;
qCritical() << DBG_HEADER << " computed time for price (minutes):" << duration_previous;
qCritical() << DBG_HEADER << "configured minimal parking time (minutes):" << cfg->getPaymentOptions(paymentOptionIndex).pop_min_time;
if (duration_previous < cfg->getPaymentOptions(paymentOptionIndex).pop_min_time) {
return CalcState::BELOW_MIN_PARKING_TIME.toStdString(); // minimal parking time is set by GetTimeSteps()
}
return d.toString(Qt::ISODate).toStdString();
}
}
if ((double)price == cost) {
//qCritical() << DBG_HEADER << "price" << price << "cost" << cost;
//qCritical() << DBG_HEADER << "duration in minutes" << durationInMinutes;
QDateTime d(inputDate.addSecs(durationInMinutes * 60));
QString s = inputDate.toString(Qt::ISODate);
QDateTime d(QDateTime::fromString(s, Qt::ISODate));
d = d.addSecs(durationInMinutes * 60);
//qCritical() << DBG_HEADER << "YYYY" << d;
return d.toString(Qt::ISODate).toStdString();
QString const durationStr(d.toString(Qt::ISODate));
qCritical() << DBG_HEADER << " duration in minutes:" << durationInMinutes;
qCritical() << DBG_HEADER << " provided price (cost):" << cost;
qCritical() << DBG_HEADER << " duration for price:" << durationStr;
return durationStr.toStdString();
}
}
}