bc9645f1fa
Minor: removed "pragma once" compiler flag
2024-09-27 13:38:39 +02:00
713b483918
Added/fixed several functions. final testing needed.
2024-09-27 13:37:54 +02:00
3c7af1cb32
Minor: Added tariff_service and tariff_out_of_service
2024-09-27 13:35:54 +02:00
356e451839
Add structures to encode service and out-of-service times
2024-09-27 13:35:03 +02:00
c4e1d412a5
Add some assinment operators to support assignment of tariff-time-ranges.
2024-09-27 13:31:01 +02:00
1b716c48d2
Fix: copy header files
2024-09-19 14:10:05 +02:00
77e1414c13
compute_duration_for_parking_ticket():
...
Recompute pop_max_price using netto-parking-time.
Search Duration for the time-step with time-step == netto-parking-time,
then search for the corresponding price in PaymentRate.
The result is the new pop_max_price.
2024-09-17 17:05:23 +02:00
d95275a72d
Compute real netto_parking_time.
...
This time will be used to find the real time-step, and from here the actual price to pay.
2024-09-17 17:04:27 +02:00
577a17dc6a
Set seconds of serveral date-times to 0.
...
Compute netto_parking_time (which includes carry-over duration).
2024-09-17 17:03:29 +02:00
d8d32820a3
compute_price_for_parking_ticket():
...
Reset pop_max_price to original value using pop_max_price_saved.
2024-09-17 17:01:32 +02:00
2ce0aeef1d
Minor: include atb_time.h
2024-09-17 16:59:07 +02:00
0cba85eafb
Set pop_max_price_saved
2024-09-17 16:58:20 +02:00
4030a4b165
Add pop_max_price_save in case pop_max_price has to be re-computed dynamically, so it can be reset
2024-09-17 16:57:34 +02:00
8c7afdfcb1
Add additional constructor.
2024-09-17 16:53:45 +02:00
932d4e8cb9
check it ticket-end-time hits carry-over-start. if configured, move to end of carry-over.
2024-09-16 16:56:48 +02:00
38abc65425
compute_price_for_parking_ticket():
...
Check if minutesUntilCarryOver is positive (usually must be).
2024-09-16 16:54:25 +02:00
205896903b
Handle SUCCESS_MAXPRICE (calc-state).
2024-09-16 16:53:44 +02:00
57b9d16abc
GetDurationFromCost():
...
Handle carry-over for direct coin insertion.
Carefully check if this might be a problem for other projects.
2024-09-16 16:50:16 +02:00
48afbc071c
Added new calc-state: SUCCESS_MAXPRICE.
...
Return whenever cost (=price) equals max-price.
2024-09-16 16:49:00 +02:00
7a7b10260a
Add untracked(!) files
2024-09-16 16:47:01 +02:00
1874b08210
Merge branch 'kleipeda-experimental-snapshot-2024-09-12' into kleipeda-experimental
2024-09-16 10:49:23 +02:00
88a0ebb688
Add atb-time.
2024-09-16 10:42:56 +02:00
a8ae9fc602
Add own Time class (similar QTime)
2024-09-16 10:42:08 +02:00
7c0514e241
save current state
2024-09-13 10:42:45 +02:00
dffc6e2a03
Minor: removed some debug output.
2024-09-11 11:56:06 +02:00
f9cc3af473
ParseJson():
...
Add parsing of "pop_apply_carry_over_to_ticket_endtime".
2024-09-11 11:55:03 +02:00
9dd0108731
ParseJson():
...
Add parsing for prepaid-options.
2024-09-11 11:54:16 +02:00
fa10ea4b89
compute_price_for_parking_ticket():
...
In case parking-time-limit is violated, return with an error.
Commented out: use another possiblity: cut max-parking-time
so that parking-time-limit is not violated.
2024-09-11 11:49:31 +02:00
05f03a623b
compute_price_for_parking_ticket():
...
If after crossing a carry-over-time range (taking several days)
check if we have to carry over again on the target day.
2024-09-11 11:47:50 +02:00
03e9076962
compute_price_for_parking_ticket():
...
Minor: add some debug output.
2024-09-11 11:46:36 +02:00
5dbd3645c6
compute_price_for_parking_ticket():
...
Fetch prepaid-option-id (possibly recalculating it depending
on year-period), and fetch associated prepaid-options.
2024-09-11 11:44:09 +02:00
d21f69cb9b
get_maximal_parkingprice():
...
Fetch maxPrice directly instead of using utility function.
2024-09-11 11:42:15 +02:00
e38a1bfe12
Add default constructor, update debug output.
2024-09-11 11:40:19 +02:00
f38a8d528c
Minor: add getters for parking-time-limit.
2024-09-11 11:39:16 +02:00
08a593eb12
Add 'pop_apply_carry_over_to_ticket_endtime':
...
If ticket-end-time exactly hits the start of a carry-over-time-range,
the move to the end of the carry-over-time-range, even if this
were not strictly necessary.
2024-09-11 11:36:57 +02:00
f322d30e36
Add default constructor, fix debug output.
2024-09-11 11:35:17 +02:00
7a53a68850
getPaymentOptionIndex(): add start-time parameter
2024-09-06 12:05:41 +02:00
275c3ec869
compute_price_for_parking_ticket():
...
Pass start-date-time to parking-time-checker.
2024-09-03 11:19:23 +02:00
6d2bde1fe9
getPaymentOptionIndex():
...
Fix: make sure only one payment option can be chosen.
2024-09-03 11:17:31 +02:00
f02521d3c2
parseWeekDay():
...
for the park-time-limit checking take into account that the
start-date-time and end-date-time are on different days.
2024-09-03 11:15:08 +02:00
75f1c1bb76
Checking parking-time-limit:
...
provide start-date-time as well, because the limit counts only
from one day to following day (e.g. Sunday to Monday or from
holiday to next day).
2024-09-03 11:10:24 +02:00
f47695de8b
Add pop_plus_steps_saved
2024-09-02 17:16:47 +02:00
cce3db301b
Minor: comment out some code to prevent compiler warnings (about some unused
...
variables).
2024-09-02 17:15:33 +02:00
5cab0de9fb
Use free function getPaymentOptionIndex() to compute index of valid
...
payment-option-section in tariff-file based on configured businessHours.
2024-09-02 17:14:20 +02:00
f92906f680
Minor: debug output.
2024-09-02 17:13:11 +02:00
8cdeef26fc
Check if computed ticket-end-time violates a carry-over-limit defined in
...
tariff-file.
2024-09-02 17:11:48 +02:00
52ebbf7bc9
Use free function getPaymentOptionIndex() in serveral places to compute valid
...
index of a payment-option-section within tariff file. If this is not possible,
then try the already available functionality.
2024-09-02 17:09:26 +02:00
349e9d8b06
Add free functions isHoliday() to check if the current day is a holiday
...
and previousDayHoliday() to check if previous day (relative to endtime) is a
holiday.
2024-09-02 17:05:32 +02:00
68a1c24861
Add free function getPaymentOptionIndex():
...
Compute payment option index base on current start-date-time and
businesshour-setiing in tariff-file.
Returns -1 to indicate error.
2024-09-02 17:03:37 +02:00
c946c106d1
Configuration::ParseJson():
...
Save the pop_plus_steps setting: sometimes it is necessary to adapt the
pop_plus_steps-variable in order to hit a time-limit-boundary exactly.
Otherwise the next computed time-step might overshoot the time-limit,
and when moving backwards (via Minus-Button) there is a better
resolution: going backwards, the user could hit the exact time-limit,
which he could not when going up.
2024-09-02 16:58:34 +02:00