Commit Graph

295 Commits

Author SHA1 Message Date
GerhardHoffmann 02f0500eac Minor: Add some (commented-out) debug messages. 2024-06-04 11:18:00 +02:00
GerhardHoffmann 2d53224feb Minor: add some (commented out) debug output -> used for debugging. 2024-05-15 15:23:12 +02:00
GerhardHoffmann 38964ad9a8 get_minimal_parkingprice(): for PERMIT_TYPE::DAY_TICKET
call compute_product_price(cfg, permitType, start) to get
minimal price dependent on 'start' datetime.
2024-05-15 15:21:38 +02:00
GerhardHoffmann eb20410849 Use paymentOptionIndex in getPaymentOptions() 2024-05-08 16:34:07 +02:00
GerhardHoffmann 6a5272da7a Fix: Check if endTime is still on the same day. 2024-05-07 15:01:16 +02:00
GerhardHoffmann 4d5583df2d Handling for pop_carry_over_traget. 2024-05-07 14:59:00 +02:00
GerhardHoffmann b71c979a91 Fix: getPaymentOptionIndex() -> return 0 instead of -1
Removed exit(0)-call which was used for testing.
2024-05-06 11:36:12 +02:00
GerhardHoffmann 33f43fb83d Start parsing of pop_min_date_time and pop_max_date_time 2024-05-03 13:50:10 +02:00
GerhardHoffmann 1dd81d4a56 get_minimal_parkingtime(): const Configuration parameter.
Cast of const pointer necessary.

get_maximal_parkingtime(): const Configuration parameter.
2024-04-30 14:08:08 +02:00
GerhardHoffmann 4ec5589f30 Implement getTariffProductForProductId() in terms of
getTariffProductForProductTypeName().
2024-04-30 13:49:49 +02:00
GerhardHoffmann c1d5ffcf3c Implement getTariffProductForProductTypeName().
Use the type names of PERMIT_TYPE, not real indices as they can change.
2024-04-30 13:48:03 +02:00
GerhardHoffmann 7aded2b7fb Explicit cast due to compiler warning. 2024-04-30 13:46:59 +02:00
GerhardHoffmann c7623429d9 Compute end_parking_time using "netto_parking_time", which is the
current timestep.
2024-04-25 15:41:52 +02:00
GerhardHoffmann b596086245 Pass paymentOptionIndex to cfg->getPaymentOptions(), which has
a default parameter of paymentOptionIndex=0.
2024-04-24 13:20:02 +02:00
GerhardHoffmann 24ca857b6f Fix: init m_timeSteps-vector in case its size is 0: m_timeSteps.push_back(QList<int>()).
Detected during testing.
2024-04-24 13:18:23 +02:00
GerhardHoffmann ea0bcde413 Check iterator for it != cfg->TimeRange.cend(). 2024-04-24 13:16:22 +02:00
GerhardHoffmann d07fdd8540 GetPriceForTimeStep(): use parameter paymentOptionIndex. 2024-04-19 13:33:54 +02:00
GerhardHoffmann 1fab458de3 Implement isParkingAllowedForWeekDay(), isParkingAllowedForSpecialDay()
and isParkingAllowed() (4 parameters) using the 2 functions.
2024-04-19 13:32:24 +02:00
GerhardHoffmann 1ac2ca91c5 GetCostFromDuration(): use new parameter paymentOptionIndex. 2024-04-19 13:31:01 +02:00
GerhardHoffmann 1852f552a3 compute_price_for_parking_ticket(): compute paymentOptionIndex.
(a tariff-file can conatin more than one payment options).
2024-04-19 13:28:35 +02:00
GerhardHoffmann e2c02420f0 Add parsing for new values in helper-structures.
NOTE: unfortunately switched to Unix-File-Format.
2024-04-19 13:26:33 +02:00
GerhardHoffmann e20eb93abf Implement SpecialDaysWorkTimeFrom() and SpecialDaysWorkTimeUntil().
Extend getBusinessHours() to include new enum-values.
Implement isDayIncluded() as switch-case on dayOfWeek.
Implement dumpBusinessHours().
2024-04-19 13:21:38 +02:00
GerhardHoffmann b70094abb5 Extend compute_product_price() for use of PERMIT_TYPE::DAY_TICKET.
First time used for Neuhauder-Pernegg-an-der-Mur.
2024-04-16 12:10:34 +02:00
GerhardHoffmann cd159f2bbd Add case for BusinessHours::NoRestriction_24_7: used for Neuhauder-Christoph-Reisen 2024-04-16 12:05:55 +02:00
GerhardHoffmann b0c4ad0e2e getCurrentPaymentOptionIndex(): start implementation.
getPaymentOptions(): use new parameter paymentOptionIndex.
2024-04-12 14:31:02 +02:00
GerhardHoffmann 7e3347b043 GetTimeSteps(): use new parameter paymentOptionIndex 2024-04-12 14:30:04 +02:00
GerhardHoffmann 4e7fa83507 get_minimal_parkingtime()
get_maximal_parkingtime()
get_minimal_parkingprice()
get_maximal_parkingprice():
use new parameter paymentOptionIndex.
2024-04-12 14:27:08 +02:00
GerhardHoffmann 9b1cc49d34 Minor: remove some debug output 2024-04-12 14:16:18 +02:00
GerhardHoffmann aba38d2614 compute_price_for_parking_ticket(): add handling for PaymentMethod::Steps. 2024-04-08 13:58:24 +02:00
GerhardHoffmann 57d6b85f52 get_maximal_parking_price(): add handling for PaymentMethod::Steps. 2024-04-08 13:57:40 +02:00
GerhardHoffmann 627d14204d Use paymentRate.last() instead of aymentRate.at(0) so we can enter new entries
in tariff-files to provide the prices for an hour.
2024-03-07 08:17:32 +01:00
GerhardHoffmann a744a1ebb3 compute_product_price(): add handling for FOOD_STAMP 2024-02-28 12:06:02 +01:00
GerhardHoffmann df16bd7f9c GetDailyTicketPrice(): add case for FOOD_STAMP (not implemented) 2024-02-28 12:05:14 +01:00
GerhardHoffmann 8bbec596c9 Check for 08:00 <= currentTime <= 20:00 removed:
assumption is prepaid.
2024-02-28 09:58:00 +01:00
GerhardHoffmann 87b14ee3f8 Added check for NEUHAUSER_NORDISCHES_AUSBILDUNGSZENTRUM:
08:00 <= currentTime <= 20:00.
2024-02-28 09:26:51 +01:00
GerhardHoffmann 7831329b11 kirchdorf: getDurationFromCost(): to be tested 2024-02-27 17:11:00 +01:00
GerhardHoffmann abbbd06f93 GetCostFromDuration(): re-implement cpmputation for paymentMethod==progressive
(e.g. neuhauser/kirchdorf (743))
2024-02-27 12:25:13 +01:00
GerhardHoffmann b741d2e312 test 2024-02-26 16:57:37 +01:00
GerhardHoffmann bd1bdf8a8c Implement compute_procuct_price() 2024-02-22 16:38:41 +01:00
GerhardHoffmann 6d18ce4caa GetDailyTicketPrice(): improve for projects which have not defined a daily ticket in their tariff-files. 2024-02-22 16:37:11 +01:00
GerhardHoffmann e980d8c451 Implement
std::optional<QVector<ATBTariffProduct>> getTariffProductForAllKeys() const;
    std::optional<QVector<ATBTariffProduct>> getTariffProductForProductId(int id) const;
    std::optional<QVector<ATBTariffProduct>> getTariffProductForProductId(PermitType permitType) const;
2024-02-22 16:34:57 +01:00
GerhardHoffmann afb0e20dd2 Implement parsing of "Product" and adding into TariffProduct. 2024-02-22 16:33:19 +01:00
GerhardHoffmann 56fc95e33c GetDurationFromCost(): reverted, as there is a new default parameter (prepaid)
in compute_price_for_parming_ticket().
2024-02-22 09:43:04 +01:00
GerhardHoffmann c0f81f174a compute_price_for_parking_ticket(): added parameter bool prepaid. Set to true as default. 2024-02-22 09:42:02 +01:00
GerhardHoffmann 1a350c0aeb GetDurationFromCost(): aded section if prepaid is not set.
E.g. for Linsinger Maschinenbau (Neuhauser, 741): here, the buying
of food stamps is obviously only possible at certain times.
2024-02-22 09:31:41 +01:00
GerhardHoffmann 7933c826e6 Synced GetDurationFromCost() with GetCostFromDuration() 2024-02-21 14:53:06 +01:00
GerhardHoffmann 9d5ddfc328 GetCostFromDuration(): fixed moving from time range 8:00-12:00 -> 14:00-18:00. 2024-02-21 14:20:51 +01:00
GerhardHoffmann 102607b71f GetTimeSteps(): adapt for progressive tariff (e.g. neuhauser/kirchdorf).
Compute timesteps according to tariff01.json file.
2024-02-21 11:16:44 +01:00
GerhardHoffmann 81d515eb7f GetCostFromDuration(): set endtime to start in case cost==0. 2024-02-21 11:13:53 +01:00
GerhardHoffmann ce61e5d3b2 compute_next_timestep(): use fpr PaymentMenthod::Progressive
same code as for PaymentMethod::Steps, as GetTimeSteps() inside
the Calculator class has been adapted accordingly.
2024-02-21 11:11:09 +01:00