|
ceef73195d
|
Add helper structure
enum BusinessHours
{
NoRestriction_24_7 = 0,
OnlyWorkingDays = 1, // [Monday-Friday]
OnlyWeekDays = 2, // [Monday-Saturday]
OnlyWeekEnd = 4, // [Saturday+Sunday]
OnlyOfficialHolidays = 8,
OnlySpecialDays = 16,
OnlySchoolHolidays = 32,
SpecialAndSchoolHolidays = 48,
OnlyOpenForBusinessDays = 64, // verkaufsoffen
NoBusinessHoursDefined = 255
};
to define inside of tariff-file what operating hours a PSA has.
|
2023-12-12 10:26:13 +01:00 |
|
|
282a412ef5
|
IsYearPeriodActive(): return true, even if no YearPeriod is given in tariff-json-file.
|
2023-12-12 10:23:45 +01:00 |
|
|
9dcf7a8f30
|
Implement added helpers.
|
2023-12-12 10:22:34 +01:00 |
|
|
4187598edf
|
Add helpers for collecting them in Utilities namespave.
BusinessHours getBusinessHours(Configuration const *cfg, PaymentMethod methodId);
uint32_t computeWeekDaysPrice(Configuration const *cfg, PaymentMethod id);
double computeWeekDaysDurationUnit(Configuration const *cfg, PaymentMethod id);
|
2023-12-12 10:20:02 +01:00 |
|
|
88e92dddb9
|
Fix: nextTimeStep must be between minParkingTime and maxParkingTime.
|
2023-12-11 09:00:24 +01:00 |
|
|
0f05a1a784
|
(1) Fix debug output.
(2) Use UpDown-Argument for calculation of next tiem step.
|
2023-12-08 10:16:52 +01:00 |
|
|
2d696941a5
|
Fix: use second.pun_duration instead of second.pun_id
Minor: add debug output.
|
2023-12-08 10:14:48 +01:00 |
|
|
5598b02816
|
Make distinction base on PaymentMethod, not on some
other data contained in json-tariff-file.
|
2023-12-07 17:00:28 +01:00 |
|
|
548447af1f
|
set -O option to calm down compiler because of FORTIFY_SOURCE=2 option
|
2023-12-07 17:00:03 +01:00 |
|
|
b9a7c04db9
|
Add compute_next_timestep() computing timesteps if PaymentMethod = Steps.
Add additional code for computing time steps dynamically if PaymentMethod = Linear.
|
2023-12-07 16:28:17 +01:00 |
|
|
5b8d9c62cc
|
Add and implement utilities:
int getMinimalParkingTime(Configuration const *cfg, PaymentMethod methodId);
int getMaximalParkingTime(Configuration const *cfg, PaymentMethod methodId);
uint32_t getMinimalParkingPrice(Configuration const *cfg, PaymentMethod methodId);
uint32_t getFirstDurationStep(Configuration const *cfg, PaymentMethod methodId);
|
2023-12-07 16:27:09 +01:00 |
|
|
56e2843ddb
|
Add compute_next_timestep().
|
2023-12-07 16:26:09 +01:00 |
|
|
54e9a0f86d
|
Minor: add debug ouput (and commnt it out)
|
2023-12-06 10:51:46 +01:00 |
|
|
d7beb3b41b
|
Fix: replace 'continue' with 'break' to return first fitting time-range
in findNextWorkTimeRange().
|
2023-12-06 10:49:33 +01:00 |
|
|
9d220df52e
|
Mainly removed debug output. Regression tests with szeged looking good.
|
2023-12-05 17:31:56 +01:00 |
|
|
e97ad17b09
|
removed typo
|
2023-12-01 14:24:51 +01:00 |
|
|
19428ce46c
|
implemented both cost and duration functions. to be tested
|
2023-12-01 14:24:15 +01:00 |
|
|
4c268e6693
|
Added draft implementation of private_GetDurationFromCost().
|
2023-11-28 16:43:03 +01:00 |
|
|
cc5c52c1a0
|
Added private_getDurationFromCost()
|
2023-11-28 16:42:29 +01:00 |
|
|
602ff5f94e
|
Added State for invalid price
|
2023-11-28 16:41:27 +01:00 |
|
|
64c005cd70
|
Implement private_GetCostFromDuration() using a loop and not using
recursive calls.
|
2023-11-28 15:25:37 +01:00 |
|
|
9abc165a7c
|
Implemented computeWeekDaysPrice() and computeWeekDaysDurationUnit()
|
2023-11-28 15:20:31 +01:00 |
|
|
57ec82a2fc
|
Added helpers computeWeekDaysPrice() and computeWeekDaysDurationUnit()
|
2023-11-28 15:18:05 +01:00 |
|
|
a49236c1de
|
Removed parameters in private_GetCostFromDuration() and checkDurationMinutes()
|
2023-11-28 15:17:27 +01:00 |
|
|
9a19320ee5
|
Minor: removed debug output.
|
2023-11-28 15:15:13 +01:00 |
|
|
7a5d797ae0
|
Start reimplementation of
private_GetCostFromDuration() in terms of ticket.
|
2023-11-27 16:21:28 +01:00 |
|
|
215667af61
|
Implement findWorkTimeRange() and indNextWorkTimeRange().
|
2023-11-27 16:19:39 +01:00 |
|
|
2b6d116200
|
Implement GetCostFromDuration() in terms of private_GetCostFromDuration()
using a ticket as return value.
|
2023-11-27 16:18:06 +01:00 |
|
|
9ca45e613f
|
Return a ticket from private_GetCostFromDuration().
Add helpers findWorkTimeRange() and findNextWorkTimeRange().
|
2023-11-27 16:15:18 +01:00 |
|
|
6a3d183129
|
Minor: overload constructor
|
2023-11-27 16:14:27 +01:00 |
|
|
684de4acd1
|
Reformat to Unix.
Add overload for IsYearPeriodActive().
Add several helpers.
|
2023-11-27 16:12:07 +01:00 |
|
|
e9047f995a
|
Minor: format to Unix.
|
2023-11-27 16:09:38 +01:00 |
|
|
20cdb8b07f
|
Add overload for IsYearPeriodActive().
Add helpers WeekDaysWorkTimeFrom(), WeekDaysWorkTimeUntil(), isCarryOverSet()
sCarryOverNotSet() and getPaymentMethodId().
|
2023-11-27 16:07:30 +01:00 |
|
|
b84970fd12
|
Add class Ticket for future use.
|
2023-11-26 19:56:38 +01:00 |
|
|
7ac033720e
|
Started re-implementation of GetCostFromDuration() using
private_GetCostFromDuration().
|
2023-11-26 19:55:21 +01:00 |
|
|
c749de2bf9
|
Add private_GetCostFromDuration() and helpers
getMinimalParkingTime(), getMaximalParkingTime(), checkDurationMinutes().
|
2023-11-26 19:53:29 +01:00 |
|
|
c4cec1c04b
|
Added overload for CheckSpecialDay().
Added helpers SpecialDaysWorkTimeFrom() and SpecialDaysWorkTimeUntil().
|
2023-11-26 19:51:37 +01:00 |
|
|
a53cb37291
|
Add explicit include guard.
|
2023-11-26 19:50:23 +01:00 |
|
|
b1a98a20c5
|
Add class ticket
|
2023-11-26 19:48:29 +01:00 |
|
|
d765997ca5
|
dos2unix. add TODO comment
|
2023-11-24 13:52:49 +01:00 |
|
|
36478e111e
|
start changes for neuhauser
|
2023-11-24 13:23:59 +01:00 |
|
|
8f2609c4ae
|
Fix: GetDurationFromCost for PaymentMethod::Steps
|
2023-11-23 11:14:21 +01:00 |
|
|
453ca266a5
|
Merge remote-tracking branch 'origin/schoenau_23112023'
|
2023-11-23 09:46:42 +01:00 |
|
|
0217bb8918
|
GetTimeStep() and GetPriceForTimeStep(): use getPaymentOptions().
|
2023-11-23 09:41:40 +01:00 |
|
|
4b35b1ffb7
|
Implement GetDurationForPrice().
|
2023-11-23 09:41:02 +01:00 |
|
|
80e228b498
|
GetCostFromDuration(): don't use condiftion PaymentMethod::Steps,
but the multimap YearPeriod, which must be empty.
|
2023-11-23 09:39:26 +01:00 |
|
|
574161ff76
|
Call getDurationForPrice() in GetDurationForCost().
|
2023-11-23 09:38:34 +01:00 |
|
|
b80cd5e6ef
|
Remove parameter paymentMethod.
Add GetDurationForPrice().
|
2023-11-23 09:36:50 +01:00 |
|
|
ccbf07a654
|
Use new getPaymentOptions interface
|
2023-11-23 08:42:35 +01:00 |
|
|
3a2e521345
|
Add interface to access 'PaymentOptions'
|
2023-11-22 16:27:41 +01:00 |
|
|
cd77e380ef
|
Read project/version-info from tariff-config ...
... if available
|
2023-11-22 11:27:09 +01:00 |
|
|
aaa4348a9a
|
Add ATBProject to configuration
|
2023-11-22 11:14:48 +01:00 |
|
|
17c4aac452
|
Add header file atb_project.h
|
2023-11-22 11:14:38 +01:00 |
|
|
68c438bfe0
|
Add header file for project-variables
|
2023-11-22 11:13:37 +01:00 |
|
|
509bc29d7e
|
Fix: read tariff configuration file
|
2023-11-22 10:17:40 +01:00 |
|
|
f7e462188f
|
Add methods for PaymentMethod::Steps
|
2023-11-22 09:53:07 +01:00 |
|
|
cb8cd5dead
|
Merge branch 'moransBranch'
|
2023-06-14 11:28:27 +02:00 |
|
|
eefdde4693
|
Removed section whith superfluous 'price_per_unit < 0' check.
Removed calc_price-caculation followed by shift of inputDate.
|
2023-06-13 12:12:23 +02:00 |
|
|
6157861d62
|
Monday starts with 1
|
2023-06-13 12:11:09 +02:00 |
|
|
23748966de
|
Merge branch 'moransBranch' of git.mimbach49.de:GerhardHoffmann/MOBILISIS-Calculator into moransBranch
|
2023-05-19 15:49:38 +02:00 |
|
|
7bd7f66666
|
Fixed pra_payment_unit_id
|
2023-05-17 10:08:02 +02:00 |
|
|
268d43cdea
|
GetDailyTicketDuration: use QDateTime for timestamps
|
2023-05-16 16:43:45 +02:00 |
|
|
eef94a3fb3
|
Change interface: use QDateTime
- use QDateTime instead of char*-string
- GetCostFromDuration: add end_datetime as a return value
|
2023-05-16 15:31:53 +02:00 |
|
|
3097819c01
|
Update interface for 'compute_duration_for_daily_ticket()
|
2023-05-16 11:07:21 +02:00 |
|
|
3bf71f84d5
|
Merge branch 'moransBranch'
|
2023-05-15 17:33:51 +02:00 |
|
|
29986e0451
|
Merge branch 'moransBranch' of git.mimbach49.de:GerhardHoffmann/MOBILISIS-Calculator into moransBranch
|
2023-05-15 16:58:48 +02:00 |
|
|
1146db743c
|
Add explaining comments
|
2023-05-15 16:58:28 +02:00 |
|
|
617eee39ed
|
Daily ticket
|
2023-05-15 14:05:55 +02:00 |
|
|
6b3c1cbf0c
|
Fix with min time in GetDurationFromCost
|
2023-05-14 17:19:24 +02:00 |
|
|
1142efaec2
|
Rounding minutes seems to be fixed ...
|
2023-05-14 16:15:37 +02:00 |
|
|
6d001f1501
|
Fix: QDateTime.addSecs() creates a new object
|
2023-05-12 14:28:30 +02:00 |
|
|
de32022b89
|
Merge branch 'moransBranch' of git.mimbach49.de:GerhardHoffmann/MOBILISIS-Calculator into moransBranch
|
2023-05-12 14:10:57 +02:00 |
|
|
1e2f1589ac
|
Fix: QDateTime::fromString()
|
2023-05-12 14:10:16 +02:00 |
|
|
2f8c8cab4c
|
Another small fix on GetDurationFromCost()
|
2023-05-12 13:02:10 +02:00 |
|
|
2599513ef9
|
Minor fixes with +/- 1 minute offset.
|
2023-05-12 12:40:25 +02:00 |
|
|
ef66c1f0c0
|
Fixed GetDurationFromCost()
|
2023-05-12 11:55:35 +02:00 |
|
|
219d820104
|
GetCostFromDuration fixed
|
2023-05-12 09:20:46 +02:00 |
|
|
ed9166c226
|
Windows: set timezone as -3600.
|
2023-05-11 13:58:33 +02:00 |
|
|
818c67ad63
|
Windows debug: for init-Tariff, do not read zone_ne, but use the path given directly.
|
2023-05-11 13:57:31 +02:00 |
|
|
4a076e1dad
|
Fix: string to QDateTime
|
2023-05-11 09:59:37 +02:00 |
|
|
62426e60d5
|
Fix: use toSecsSinceEpoch()
|
2023-05-11 09:58:54 +02:00 |
|
|
c28351b1bf
|
Add debug messages
|
2023-05-11 09:58:15 +02:00 |
|
|
69c469c918
|
Merge branch 'master' of git.mimbach49.de:GerhardHoffmann/MOBILISIS-Calculator
|
2023-05-10 16:27:34 +02:00 |
|
|
e7606b6568
|
Added overoaded versions for compute_price_for_parking_ticket() and
compute_duration_for_parking_ticket() using QDateTime parameters.
Added new error code WRONG_ISO_TIME_FORMAT.
|
2023-05-10 16:16:24 +02:00 |
|
|
fe0ebb409a
|
Merge branch 'master' of git.mimbach49.de:GerhardHoffmann/MOBILISIS-Calculator
|
2023-05-10 13:34:18 +02:00 |
|
|
3d88c8e67e
|
Fix: setting calcState description
|
2023-05-10 13:33:28 +02:00 |
|
|
eebb6d926e
|
Merge branch 'master' of https://git.mimbach49.de/GerhardHoffmann/MOBILISIS-Calculator
|
2023-05-10 13:11:47 +02:00 |
|
|
69c48e3acc
|
Correction for argument-value of localtime_r()-function
(expects UTC-time instead of local time.)
|
2023-05-10 13:08:28 +02:00 |
|
|
5c0bbf1502
|
Fix: init_tariff(): cleanup on error
|
2023-05-09 13:05:02 +02:00 |
|
|
889fceaae0
|
Use strftime to get ISO time format for valid ticket end time.
|
2023-05-09 13:03:51 +02:00 |
|
|
136e6687b8
|
remove wrong debug-out-put. Use ceil() instead on floor() to prevent rounding error.:w
|
2023-05-09 11:52:17 +02:00 |
|
|
b02115bf75
|
Prepare the use of ceil() instead of floor().
|
2023-05-09 11:41:41 +02:00 |
|
|
ceb545b432
|
Implemented compute_duration_for_parking_ticket().
|
2023-05-09 11:40:14 +02:00 |
|
|
01f2dc07ce
|
Added INVALID_START_DATE.
Added compute_duration_for_parking_ticket().
|
2023-05-09 11:38:39 +02:00 |
|
|
c5960a031e
|
init_tariff, compute_price_for_parking_ticket:
return instance of CalcState as info for errors or success status.
|
2023-05-08 12:34:01 +02:00 |
|
|
1c03745333
|
Add CalcState to be used as return type of tarif_init and compute_price_for_parking_ticket.
|
2023-05-08 12:32:44 +02:00 |
|
|
b422f82dea
|
Add debug messages on tariff config initialisation
|
2023-05-05 13:19:36 +02:00 |
|
|
30af400779
|
Fix: Read PTU zone info
|
2023-05-05 13:19:02 +02:00 |
|
|
568d7d8680
|
renamed mobility... to mobilisis
|
2023-05-04 11:20:39 +02:00 |
|
|
129c474691
|
Add
QMAKE_LFLAGS += -Wl,--out-implib,debug\libmobility_calc.a
QMAKE_LFLAGS += -Wl,--out-implib,release\libmobility_calc.a
|
2023-05-02 10:04:48 +02:00 |
|