|
cd159f2bbd
|
Add case for BusinessHours::NoRestriction_24_7: used for Neuhauder-Christoph-Reisen
|
2024-04-16 12:05:55 +02:00 |
|
|
475487c2ce
|
Minor: add utility getProductPrice()
|
2024-04-16 12:03:42 +02:00 |
|
|
b0c4ad0e2e
|
getCurrentPaymentOptionIndex(): start implementation.
getPaymentOptions(): use new parameter paymentOptionIndex.
|
2024-04-12 14:31:02 +02:00 |
|
|
7e3347b043
|
GetTimeSteps(): use new parameter paymentOptionIndex
|
2024-04-12 14:30:04 +02:00 |
|
|
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 |
|
|
ac76f194e1
|
Added new constants
|
2024-04-12 14:26:03 +02:00 |
|
|
fe485b7b39
|
pop_business_hours as uint64_t.
|
2024-04-12 14:24:32 +02:00 |
|
|
e210224340
|
getPaymentOptions(): added default-parameter 'paymentOptionsIndex'
Added getCurrentPaymentOptionIndex() and isHoliday().
|
2024-04-12 14:22:20 +02:00 |
|
|
afa62183fd
|
ResetTimeSteps(), GetTimeSteps(), GetSteps():
add parameter paymentOptionIndex (default=0)
|
2024-04-12 14:20:05 +02:00 |
|
|
f241a87dc1
|
get_minimal_parking_price()
get_maximal_parking_price()
get_maximal_parking_time()
get_minimal_parking_time():
adden perameter paymentOptionIndex
|
2024-04-12 14:17:43 +02:00 |
|
|
9b1cc49d34
|
Minor: remove some debug output
|
2024-04-12 14:16:18 +02:00 |
|
|
aba38d2614
|
compute_price_for_parking_ticket(): add handling for PaymentMethod::Steps.
|
2024-04-08 13:58:24 +02:00 |
|
|
57d6b85f52
|
get_maximal_parking_price(): add handling for PaymentMethod::Steps.
|
2024-04-08 13:57:40 +02:00 |
|
|
a5b95d71b8
|
CalcState: Add setStatus()/getStatus()
|
2024-04-08 13:52:53 +02:00 |
|
|
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 |
|
|
a744a1ebb3
|
compute_product_price(): add handling for FOOD_STAMP
|
2024-02-28 12:06:02 +01:00 |
|
|
df16bd7f9c
|
GetDailyTicketPrice(): add case for FOOD_STAMP (not implemented)
|
2024-02-28 12:05:14 +01:00 |
|
|
b751ba339e
|
Add permit type FOOD_STAMP
|
2024-02-28 12:03:13 +01:00 |
|
|
588a88455b
|
CalcState: add toString() method
|
2024-02-28 11:31:28 +01:00 |
|
|
8bbec596c9
|
Check for 08:00 <= currentTime <= 20:00 removed:
assumption is prepaid.
|
2024-02-28 09:58:00 +01:00 |
|
|
87b14ee3f8
|
Added check for NEUHAUSER_NORDISCHES_AUSBILDUNGSZENTRUM:
08:00 <= currentTime <= 20:00.
|
2024-02-28 09:26:51 +01:00 |
|
|
7831329b11
|
kirchdorf: getDurationFromCost(): to be tested
|
2024-02-27 17:11:00 +01:00 |
|
|
abbbd06f93
|
GetCostFromDuration(): re-implement cpmputation for paymentMethod==progressive
(e.g. neuhauser/kirchdorf (743))
|
2024-02-27 12:25:13 +01:00 |
|
|
b741d2e312
|
test
|
2024-02-26 16:57:37 +01:00 |
|
|
eb645273cc
|
Add declaration for get_maximal_parkingprice()
|
2024-02-23 13:17:03 +01:00 |
|
|
bd1bdf8a8c
|
Implement compute_procuct_price()
|
2024-02-22 16:38:41 +01:00 |
|
|
6d18ce4caa
|
GetDailyTicketPrice(): improve for projects which have not defined a daily ticket in their tariff-files.
|
2024-02-22 16:37:11 +01:00 |
|
|
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 |
|
|
afb0e20dd2
|
Implement parsing of "Product" and adding into TariffProduct.
|
2024-02-22 16:33:19 +01:00 |
|
|
39ab08a5b7
|
Add ProductType
|
2024-02-22 16:32:16 +01:00 |
|
|
c4c0e2fd77
|
Added TariffProduct including necessary functions to retrieve product infos from tariff-file
|
2024-02-22 16:31:51 +01:00 |
|
|
7a5487aa41
|
Add compute_product_price
|
2024-02-22 16:27:52 +01:00 |
|
|
a8c1caf611
|
Add tariff_product.h and tariff_permit_type.h
|
2024-02-22 16:26:09 +01:00 |
|
|
7b7dd6d103
|
Add representations for PERMIT_TYPE and Product
|
2024-02-22 16:25:09 +01:00 |
|
|
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 |
|
|
c0f81f174a
|
compute_price_for_parking_ticket(): added parameter bool prepaid. Set to true as default.
|
2024-02-22 09:42:02 +01:00 |
|
|
6ba3963f25
|
compute_price_for_parking_ticket(): added default parameter prepaid=true.
(Needed e.g. for Neuhauser/Linsinger Maschinenbau (741)
|
2024-02-22 09:40:27 +01:00 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
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 |
|
|
e1ab060dc3
|
Parsing of Customer in tariff-file.
|
2024-01-30 10:44:58 +01:00 |
|
|
8aa9aa497a
|
Persing of DailyTicket entry in tariff-file
|
2024-01-30 10:44:25 +01:00 |
|
|
4c1cd45866
|
Implemented compute_price_for_daily_ticket().
|
2024-01-30 10:41:29 +01:00 |
|
|
6bf3960349
|
Re-implemented get_minimal_parkingtime() using PERMIT_TYPE-parameter.
Implemented get_maximal_parkingtime(), get_minimal_parkingprice()
and get_maximal_parkingprice().
|
2024-01-30 10:39:24 +01:00 |
|
|
9899fe76fe
|
Add GetDailyTicketPrice() and GetPriceSteps().
|
2024-01-30 10:37:30 +01:00 |
|
|
7bb2cbf01e
|
Add m_priceSteps, ResetPriceSteps() and priceSteps().
|
2024-01-30 10:37:10 +01:00 |
|
|
689bf9b3ba
|
Added compute_price_for_daily_ticket().
|
2024-01-30 10:33:11 +01:00 |
|
|
4c07d9fdb9
|
get_minimal_parking_time() -> new PERMIT_TYPE parameter
Added:
get_maximal_parking_time()
get_minimal_parkingprice()
get_maximal_parkingprice().
|
2024-01-30 10:31:03 +01:00 |
|
|
1e866c74e2
|
Minot: fix alignment.
|
2024-01-30 10:30:11 +01:00 |
|
|
c39b3527e1
|
Add enum PERMIT_TYPE.
|
2024-01-30 10:29:25 +01:00 |
|
|
f8dc59532c
|
Implemented GetDailyTicketPrice().
To be tested.
|
2024-01-30 10:27:46 +01:00 |
|
|
1ea42f88ba
|
Added dummy member GetPriceSteps().
To implement in a later step.
|
2024-01-30 10:25:50 +01:00 |
|
|
0af858daea
|
Added multimap for Customer.
Using std::optional.
Added member functions:
QVector<ATBPaymentOption> &getAllPaymentOptions()
QVector<ATBPaymentOption> const &getAllPaymentOptions() const
std::optional<QVector<ATBPaymentRate>> getPaymentRateForAllKeys() const
std::optional<QVector<ATBPaymentRate>> getPaymentRateForKey(int key) const
std::optional<QVector<ATBDailyTicket>> getDailyTicketsForAllKeys() const
std::optional<QVector<ATBDailyTicket>> getDailyTicketsForKey(int key) const
std::optional<ATBCustomer> getCustomerForType(ATBCustomer::CustomerType customerType)
std::optional<ATBWeekDaysWorktime> getWeekDayWorkTime(QTime const &time, Qt::DayOfWeek dayOfWeek)
Removed: QVector<ATBDailyTicket> const &getDailyTickets() const;
|
2024-01-30 10:20:42 +01:00 |
|
|
3311537fee
|
Add reset(). Changed print-format.
|
2024-01-30 10:17:56 +01:00 |
|
|
5b8ac6cc59
|
Add AllDaysWithRestrictedHours.
|
2024-01-30 10:16:55 +01:00 |
|
|
809df53658
|
Add reset()
|
2024-01-30 10:16:16 +01:00 |
|
|
ea5ca54c4c
|
Add cust_id. Changed print-format.
|
2024-01-30 10:15:39 +01:00 |
|
|
b347b6e50e
|
Minor: add debug output
|
2024-01-30 10:14:21 +01:00 |
|
|
f40ae7200b
|
GetCostFromDuration public for testing
|
2024-01-24 16:35:58 +01:00 |
|
|
1173732172
|
removed typo
|
2024-01-23 11:03:42 +01:00 |
|
|
1b933c05a6
|
Remove static instance of calculator. Replaced with use of Calculator-singleton-calss.
|
2024-01-23 10:55:00 +01:00 |
|
|
ac45ebb926
|
GetTimeSteps(): compute time step only once, when calling get_minimal_parkingprice().
Otherwise use timeSteps-member in Calculator.
|
2024-01-23 10:53:26 +01:00 |
|
|
9af39fa83f
|
Turn Calculator into a singletome and move the list of timesteps inside calculator.
|
2024-01-23 10:51:25 +01:00 |
|
|
89b7589600
|
Minor: add debug output
|
2024-01-23 09:02:55 +01:00 |
|
|
179d3348b9
|
Minor: Fixed typo
|
2024-01-22 15:44:13 +01:00 |
|
|
b43fa274bd
|
Implement get_minimal_parkingtime() and get_time_steps().
|
2024-01-22 15:41:20 +01:00 |
|
|
0ce630dfa3
|
Add get_minimum_parkingtime()
|
2024-01-22 15:39:47 +01:00 |
|
|
0671a6dde6
|
Add get_time_steps().
|
2024-01-22 14:46:40 +01:00 |
|
|
d7757773bd
|
Implement get_calculator()
|
2024-01-22 14:29:02 +01:00 |
|
|
99a3c34d53
|
forward declare class Calculator
|
2024-01-22 14:28:22 +01:00 |
|
|
6ce8a86c5f
|
Added get_calculator(): access for Calculator instance
|
2024-01-22 14:26:57 +01:00 |
|
|
bcd5aaf932
|
Minor: add debug output
|
2024-01-22 13:41:50 +01:00 |
|
|
acb88efc5a
|
re-add 'private'
|
2024-01-22 13:37:44 +01:00 |
|
|
e9b10166d2
|
Minor: implement getPaymentOptions() for const. Add getPaymentOptions() for non-const
|
2024-01-22 13:33:23 +01:00 |
|
|
33731faba9
|
GetTimeSteps(): compute minimal parking time and set pop_min_time.
|
2024-01-22 13:31:00 +01:00 |
|
|
15700a363d
|
Remove m_start member.
Add defualt parameter start for GetTimeSteps().
|
2024-01-22 13:28:38 +01:00 |
|
|
506a665592
|
provide GetPaymentOptions() with two signatures.
|
2024-01-22 13:27:21 +01:00 |
|
|
7679eb9481
|
Remove 'VERSION' in project file ...
'VERSION' conflicts with 'EXTRA_QMAKEVARS_PRE' in yocto recipe.
|
2024-01-22 10:50:59 +01:00 |
|
|
a8de97a528
|
Initialize TimeBase multimap.
|
2024-01-22 10:24:32 +01:00 |
|
|
ed6592c273
|
Add:
multimap<int, ATBTimeBase> TimeBase
|
2024-01-22 10:23:41 +01:00 |
|
|
51a58bfa15
|
Minor: Add VERSION variable
|
2024-01-18 15:03:24 +01:00 |
|
|
ff314c810f
|
Add TimeBase to configuration object.
|
2024-01-18 15:00:42 +01:00 |
|
|
80fa2fe0e2
|
Extend computation of time steps in GetTimeSteps() for the case
of dynamic time steps (e.g. for Neuhauser, Galtuer (745)).
|
2024-01-18 14:57:04 +01:00 |
|
|
89e0f2137b
|
Add handling of pun_duration_min and pun_duration_max
|
2024-01-18 14:56:20 +01:00 |
|
|
f68d8816c0
|
Add handling of pop_carry_over_time_range_id and pop_time_step_config.
|
2024-01-18 14:55:16 +01:00 |
|
|
7ce93ddd7a
|
Extend handling of TimeRangeType.
|
2024-01-18 14:53:57 +01:00 |
|
|
7f8ed9165d
|
Add handling for TimeStepConfig.
|
2024-01-18 14:53:01 +01:00 |
|
|
0b901954aa
|
Add members m_start and m_timeStepCompensation (used for Neuhauser, Galtuer (745) at the moment).
Add several setters/getters.
|
2024-01-18 14:49:56 +01:00 |
|
|
9f4b10bb9a
|
Add and fill
multimap<int, ATBTimeRange> TimeRange;
multimap<int, ATBTimeStepConfig> TimeStepConfig;
when parsing json-file.
|
2024-01-18 14:43:08 +01:00 |
|
|
2f939d607d
|
Add
include/mobilisis/tariff_timebase.h
include/mobilisis/tariff_timestep_config.h
|
2024-01-18 14:41:54 +01:00 |
|
|
283e970be4
|
Add pun_duration_min and pun_duration_max
|
2024-01-18 14:41:12 +01:00 |
|
|
e14edea07f
|
Add TimeRangeType and TimeStepConfigType.
|
2024-01-18 14:39:57 +01:00 |
|
|
e520965c6b
|
Add pop_carry_over_time_range_id and pop_time_step_config
|
2024-01-18 14:38:13 +01:00 |
|
|
6a781f0d3b
|
Minor: add debug output
|
2024-01-18 14:37:13 +01:00 |
|
|
c357cbbbe0
|
Add descrption file for tariff time step config
|
2024-01-18 14:36:28 +01:00 |
|
|
44a94b7007
|
Minor: add comment
|
2024-01-16 11:56:54 +01:00 |
|
|
7c13d8b88c
|
Added pun_duration_min and pun_duration_max in case we dont have to pay for a full time range
|
2024-01-16 11:56:12 +01:00 |
|
|
f1f5ac8900
|
Add operator << for printing
|
2023-12-15 13:28:34 +01:00 |
|
|
ddded411aa
|
Add operator << for printing
|
2023-12-15 13:28:19 +01:00 |
|
|
96587229e2
|
Add operator << for printing
|
2023-12-15 13:28:04 +01:00 |
|
|
3d3794ea4e
|
Add multimap for dailly ticket.w
|
2023-12-15 13:27:02 +01:00 |
|
|
bb83ae3074
|
Fix: add a 'break' in swich/case.
|
2023-12-15 13:25:09 +01:00 |
|
|
c598014dd0
|
Add parsing of
ATBDailyTicket DailyTicket;
ATBTimeBase TimeBase;
ATBCustomer Customer;
ATBTimeRange TimeRange;
|
2023-12-15 13:24:29 +01:00 |
|
|
ad534eef09
|
Add 4 new data type for IdentifyJsonMember().
|
2023-12-15 13:22:49 +01:00 |
|
|
5ee73bf804
|
IdentifyJsonMember(): add 4 new data types:
DailyTicket, TimeBase, Customer and TimeRange.
|
2023-12-15 13:20:42 +01:00 |
|
|
ea2dfa144f
|
Add new menber types: dailly ticket, timebase, time range and customer.
|
2023-12-12 17:56:26 +01:00 |
|
|
f56979a61a
|
Minor: rename to ATBCustomer.
|
2023-12-12 17:55:44 +01:00 |
|
|
cc07b8f20e
|
Minor: rename to ATBTimeBase
|
2023-12-12 17:55:06 +01:00 |
|
|
81459f7ab4
|
Minor: remove 'pragma onc'
|
2023-12-12 17:50:23 +01:00 |
|
|
08e89df5a5
|
Include 3 new header files.
|
2023-12-12 12:14:34 +01:00 |
|
|
d6324f03a8
|
Add drafts for 3 new haeder files.
|
2023-12-12 12:14:14 +01:00 |
|