From fd5b41364a677b267fe3a7afd7e77a8a57c67f21 Mon Sep 17 00:00:00 2001 From: Gerhard Hoffmann Date: Tue, 7 Nov 2023 14:39:13 +0100 Subject: [PATCH] Added GetCostFromDuration()-functions: to be used for tariffs with only steps and no special days. Example: Schoenu, Koenigsee. --- library/include/mobilisis/calculator_functions.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/library/include/mobilisis/calculator_functions.h b/library/include/mobilisis/calculator_functions.h index dc5b2e1..5edb884 100644 --- a/library/include/mobilisis/calculator_functions.h +++ b/library/include/mobilisis/calculator_functions.h @@ -1,6 +1,8 @@ #pragma once #include #include "configuration.h" +#include "payment_method.h" + #include using namespace std; @@ -28,6 +30,11 @@ public: /// Returns cost (data type: double) double GetCostFromDuration(Configuration* cfg, uint8_t vehicle_type, const QDateTime start_datetime, QDateTime & end_datetime, double durationMin, bool nextDay = false, bool prepaid = false); + // Introduced for Schoenau, Koenigsee. + // For tariff of following structure: only steps, no special days, nonstop. + uint32_t GetCostFromDuration(Configuration const* cfg, QDateTime const &start, quint64 durationMinutes, uint8_t paymentMethod = PaymentMethod::Steps); + uint32_t GetCostFromDuration(Configuration const* cfg, QDateTime const &start, QDateTime const &end, uint8_t paymentMethod = PaymentMethod::Steps); + // Daily ticket QDateTime GetDailyTicketDuration(Configuration* cfg, const QDateTime start_datetime, uint8_t payment_option, bool carry_over); @@ -35,7 +42,7 @@ public: // // helper functions for Schoenau // - QList GetTimeSteps(Configuration const *cfg, int paymentOption); + QList GetTimeSteps(Configuration const *cfg, int paymentMethod); // - double GetPriceForTimeStep(Configuration const *cfg, int paymentOption, int timeStep); + uint32_t GetPriceForTimeStep(Configuration const *cfg, uint8_t paymentMethod, int timeStep); };