Commit Graph

303 Commits

Author SHA1 Message Date
7933c826e6 Synced GetDurationFromCost() with GetCostFromDuration() 2024-02-21 14:53:06 +01:00
9d5ddfc328 GetCostFromDuration(): fixed moving from time range 8:00-12:00 -> 14:00-18:00. 2024-02-21 14:20:51 +01:00
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
81d515eb7f GetCostFromDuration(): set endtime to start in case cost==0. 2024-02-21 11:13:53 +01:00
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
b6a0f5e8af tests for neuhauser/kirchdorf 2024-02-21 11:08:49 +01:00
e0223b50f9 Added helper getTimeRangeStep() (useful for progressive tariff as for neuhauser/kirchdorf (743) 2024-02-21 09:31:13 +01:00
690267c388 get_maximal_parkingprice(): in case of progressive tariff, read maximal parking time
directly form tariff-file as there is not price per hour.
2024-02-20 15:47:02 +01:00
9c19414e5a GetDurationFromCost(): add some sanity checks for cost. Check if cost < minParkingPrice.
Cut cost internally to maxParkingPrice if cost > maxParkingPrice.
2024-02-20 13:47:45 +01:00
3ff9883647 Neuhauser Krichdorf: new test cases. 2024-02-19 12:01:36 +01:00
696ce644ab GetCostFromDuration(): take into account that (for Kirchdorf and progressive tariff)
there is no carry over.
2024-02-19 12:00:45 +01:00
9ea2037eca GetDurationFromCost(): in case of progressive tariff
-> implement analogously to GetCostFromDuration().
2024-02-19 11:59:06 +01:00
c0f0648a74 checkin for the weekend. proper commit-messages later 2024-02-16 13:37:24 +01:00
1d7779f666 GetCostFromDuration(): implement progressive tariff for Kirchdorf. 2024-02-15 16:15:28 +01:00
8470bdd574 Minor: change type of parameter 'start-parking-time' to non-const. 2024-02-15 16:14:21 +01:00
707ab1716b Add addition parsing of ATBTimeRange. 2024-02-15 16:13:28 +01:00
2ec94121f7 Add testcase for Kirchdorf 2024-02-15 16:12:10 +01:00
92c3b7c97c Add helper WorkDayId() for future use. 2024-02-15 16:11:41 +01:00
5ee978f14a Added several members to ATBTimeRange to implement
progressive tariff for Kirchdorf.
2024-02-15 16:08:22 +01:00
db0a2c0d01 Minor: replaced 'pragma once' with include guards. 2024-02-15 16:07:04 +01:00
003644f04d Minor: changed type of parameter 'start_datetime' to non-const to return value. 2024-02-15 16:05:49 +01:00
d30061915e Minor: changed type of parameter 'start_parking_time' to non-const to be able to return value. 2024-02-15 16:02:48 +01:00
631378deeb Added test cases for Szeged. 2024-02-01 13:28:08 +01:00
9d713c894d Moved check if netto minutes exceed max. parking time down into loop.
If this is the case, then stop updating the end-time-date.
2024-02-01 13:19:08 +01:00
38eca50d83 Minor: more detailed debug output 2024-02-01 13:18:27 +01:00
f7af631de6 Use isParkingAllowed() to steamline source code. 2024-01-31 15:19:31 +01:00
15006e8e22 Implemement isParkingAllowed(). 2024-01-31 15:19:01 +01:00
87c0f4397b Remove meset for price. Rely on default-constructor. 2024-01-31 15:15:44 +01:00
24c6788427 Add utility isParkingAllowed() 2024-01-31 15:14:44 +01:00
f848baec83 Add defualt-constructor to struct price_t. 2024-01-31 15:13:24 +01:00
1467a69487 Add TariffTimeRange member to CalcState. Use in isParkingAllowed(). 2024-01-31 15:12:41 +01:00
0b779b7846 getBusinessHours(): return values with correct type. 2024-01-31 15:10:45 +01:00
25a39fdc61 Fix getPaymentMethodId(): check for valid iterator. 2024-01-31 15:09:42 +01:00
9438a535ea Only minor changes 2024-01-31 15:08:16 +01:00
f87399ed44 Fixed getWeekDayWorkTime(). Parameter 'time' must be inside [from, to[. 2024-01-31 11:42:33 +01:00
868df3dd32 Fixed GetDailyTicket(): use pop_id as key to find payment rate. 2024-01-31 11:40:41 +01:00
d2a85532ce Minor: changed debug output format. 2024-01-31 11:40:08 +01:00
e6399d477b CalcState: add OUTSIDE_ALLOED_PARKING_TIME status (future use). 2024-01-31 11:37:49 +01:00
f450d85bff test for naz 2024-01-31 11:37:11 +01:00
f46adac56d Fixed usage of std::optional value_or:
value = value.value_or(...)
2024-01-30 14:05:40 +01:00
c799c24658 Removed local variable PaymentOption. Replaced by usage of currentPaymentOption-vector. 2024-01-30 14:04:58 +01:00
dbcd27b377 Change testcase for Szeged 2024-01-30 14:00:55 +01:00
c2a8f0b00b Begin testcase for NAZ 2024-01-30 10:53:43 +01:00
088453c179 current tariff-file for naz 2024-01-30 10:52:49 +01:00
8077167498 Minor: remove unused protection_counter variable 2024-01-30 10:52:24 +01:00
5deaa48f8e Implement:
getDailyTicketsForAllKeys(), getDailyTicketsForKey(), getPaymentRateForAllKeys(),
getPaymentRateForKey(), getCustomerForType() and getWeekDayWorkTime().
2024-01-30 10:49:30 +01:00
3a6a47725f Re-implement accessors for payment-option(s). 2024-01-30 10:48:05 +01:00
17968082f1 Insert Customer in cfg->customer multimap 2024-01-30 10:47:04 +01:00
7dcd7a624b Minor: debug output 2024-01-30 10:46:44 +01:00
5464054f65 Parsing of PaymentOption(s): there can be several of them 2024-01-30 10:45:32 +01:00