2024-04-12 14:24:32 +02:00
|
|
|
#ifndef PAYMENT_OPT_H_INCLUDED
|
|
|
|
#define PAYMENT_OPT_H_INCLUDED
|
|
|
|
|
|
|
|
|
2023-04-24 15:31:46 +02:00
|
|
|
#include <string>
|
2024-04-12 14:24:32 +02:00
|
|
|
#include <cinttypes>
|
2023-04-24 15:31:46 +02:00
|
|
|
|
2024-05-03 13:48:27 +02:00
|
|
|
#include <QDateTime>
|
|
|
|
|
2023-04-24 15:31:46 +02:00
|
|
|
class ATBPaymentOption
|
|
|
|
{
|
|
|
|
public:
|
2023-12-12 10:30:55 +01:00
|
|
|
ATBPaymentOption() = default;
|
|
|
|
|
2024-01-30 10:16:16 +01:00
|
|
|
void reset() {
|
|
|
|
pop_id = 0;
|
|
|
|
pop_label = "";
|
2024-07-24 17:33:53 +02:00
|
|
|
pop_product_id = -1;
|
|
|
|
pop_product_name = "";
|
2024-01-30 10:16:16 +01:00
|
|
|
pop_payment_method_id = 0;
|
|
|
|
pop_day_end_time = "";
|
|
|
|
pop_day_night_end_time = "";
|
|
|
|
pop_price_night = 0;
|
|
|
|
pop_min_time = 0;
|
|
|
|
pop_max_time = 0;
|
|
|
|
pop_min_price = 0;
|
2024-02-16 13:37:24 +01:00
|
|
|
pop_max_price = 0;
|
2024-01-30 10:16:16 +01:00
|
|
|
pop_carry_over = -1;
|
2024-07-19 14:03:46 +02:00
|
|
|
pop_carry_over_option_id = -1;
|
|
|
|
pop_prepaid_option_id = -1;
|
2024-07-21 20:58:12 +02:00
|
|
|
pop_truncate_last_interpolation_step = false;
|
2024-07-22 15:46:45 +02:00
|
|
|
pop_accumulate_prices = false;
|
|
|
|
pop_accumulate_durations = false;
|
2024-05-07 14:59:00 +02:00
|
|
|
pop_carry_over_target = false;
|
2024-01-30 10:16:16 +01:00
|
|
|
pop_carry_over_time_range_id = -1;
|
2024-04-19 13:12:46 +02:00
|
|
|
pop_carry_over_start_time_range = -1;
|
|
|
|
pop_carry_over_end_time_range = -1;
|
2024-01-30 10:16:16 +01:00
|
|
|
pop_daily_card_price = -1;
|
|
|
|
pop_business_hours = -1;
|
|
|
|
pop_time_step_config = -1;
|
2024-08-01 15:44:06 +02:00
|
|
|
pop_use_only_upto_datetime = ""; // deprecated
|
|
|
|
pop_use_only_for_duration = 0; // deprecated
|
|
|
|
pop_plus_steps = 1; // +: jump <x=1> steps forward
|
|
|
|
pop_minus_steps = 1; // -: jump <x=1> steps backward
|
2024-01-30 10:16:16 +01:00
|
|
|
}
|
|
|
|
|
2023-12-12 10:30:55 +01:00
|
|
|
int pop_id;
|
|
|
|
std::string pop_label;
|
2024-07-24 17:33:53 +02:00
|
|
|
int pop_product_id;
|
|
|
|
QString pop_product_name;
|
2023-12-12 10:30:55 +01:00
|
|
|
int pop_payment_method_id;
|
2024-07-26 10:59:45 +02:00
|
|
|
QString pop_use_only_upto_datetime;
|
|
|
|
int pop_use_only_for_duration;
|
2023-12-12 10:30:55 +01:00
|
|
|
std::string pop_day_end_time;
|
|
|
|
std::string pop_day_night_end_time;
|
|
|
|
double pop_price_night;
|
|
|
|
double pop_min_time;
|
|
|
|
double pop_max_time;
|
|
|
|
double pop_min_price;
|
2024-02-16 13:37:24 +01:00
|
|
|
double pop_max_price;
|
2023-12-12 10:30:55 +01:00
|
|
|
int pop_carry_over;
|
2024-07-19 14:03:46 +02:00
|
|
|
int pop_carry_over_option_id;
|
2024-07-21 20:58:12 +02:00
|
|
|
bool pop_truncate_last_interpolation_step;
|
2024-07-19 14:03:46 +02:00
|
|
|
int pop_prepaid_option_id;
|
2024-05-07 14:59:00 +02:00
|
|
|
bool pop_carry_over_target;
|
2024-01-18 14:38:13 +01:00
|
|
|
int pop_carry_over_time_range_id;
|
2024-04-19 13:12:46 +02:00
|
|
|
int pop_carry_over_start_time_range;
|
|
|
|
int pop_carry_over_end_time_range;
|
2023-05-15 14:05:55 +02:00
|
|
|
int pop_daily_card_price;
|
2024-04-12 14:24:32 +02:00
|
|
|
uint64_t pop_business_hours;
|
2024-01-18 14:38:13 +01:00
|
|
|
int pop_time_step_config;
|
2024-07-22 15:46:45 +02:00
|
|
|
bool pop_accumulate_prices;
|
|
|
|
bool pop_accumulate_durations;
|
2024-08-01 15:44:06 +02:00
|
|
|
int pop_plus_steps;
|
|
|
|
int pop_minus_steps;
|
2024-05-03 13:48:27 +02:00
|
|
|
|
|
|
|
struct ATBMaxDateTime {
|
|
|
|
int direction;
|
|
|
|
uint8_t week;
|
|
|
|
uint8_t day;
|
|
|
|
QTime time;
|
|
|
|
} pop_min_date_time,
|
|
|
|
pop_max_date_time;
|
2023-05-15 14:05:55 +02:00
|
|
|
};
|
2024-04-12 14:24:32 +02:00
|
|
|
|
|
|
|
#endif // PAYMENT_OPT_H_INCLUDED
|