Add operator << for printing
This commit is contained in:
parent
96587229e2
commit
ddded411aa
@ -3,29 +3,80 @@
|
|||||||
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QDateTime>
|
#include <QDateTime>
|
||||||
#include <QVector>
|
#include <QDebug>
|
||||||
|
#include <QDebugStateSaver>
|
||||||
|
|
||||||
struct DailyTicket {
|
|
||||||
DailyTicket() = default;
|
#include "tariff_customer.h"
|
||||||
|
#include "tariff_time_range.h"
|
||||||
|
#include "tariff_timebase.h"
|
||||||
|
|
||||||
|
struct ATBDailyTicket {
|
||||||
|
ATBDailyTicket() = default;
|
||||||
|
|
||||||
int daily_ticket_payment_option_id;
|
int daily_ticket_payment_option_id;
|
||||||
int daily_ticket_unit_id;
|
int daily_ticket_unit_id;
|
||||||
double daily_ticket_price;
|
double daily_ticket_price;
|
||||||
|
|
||||||
int daily_ticket_tbase_id; // time base setting for ticket:
|
ATBTimeBase::TimeBaseType daily_ticket_tbase_type;
|
||||||
// 1: absolute: using time stamps
|
// time base setting for ticket:
|
||||||
// 2: relative: use offsets from
|
// absolute: using time stamps
|
||||||
// some reference time point,
|
// relative: use offsets from
|
||||||
// typically "start time".
|
// some reference time point,
|
||||||
|
// typically "start time".
|
||||||
|
|
||||||
QVector<int> daily_ticket_clearance_type; // who is allowed to buy the ticket:
|
ATBCustomer::CustomerType daily_ticket_clearance_customer_type;
|
||||||
// list of customer types
|
// who is allowed to buy the ticket:
|
||||||
|
// list of customer types
|
||||||
|
|
||||||
QTime daily_ticket_from_min; // used in case time base == 1
|
int daily_ticket_weekday_range; // [mon-sun]
|
||||||
QTime daily_ticket_to_max;
|
int daily_ticket_special_day_range;
|
||||||
|
|
||||||
int daily_ticket_from_offset_min; // used in case time base == 2
|
|
||||||
int daily_ticket_to_offset_max;
|
friend QDebug operator<<(QDebug debug, ATBDailyTicket const &ticket) {
|
||||||
|
QDebugStateSaver saver(debug);
|
||||||
|
|
||||||
|
debug.nospace()
|
||||||
|
<< " daily_ticket_payment_option_id: " << ticket.daily_ticket_payment_option_id << "\n"
|
||||||
|
<< " daily_ticket_unit_id: " << ticket.daily_ticket_unit_id << "\n"
|
||||||
|
<< " daily_ticket_price: " << ticket.daily_ticket_price << "\n";
|
||||||
|
|
||||||
|
switch(ticket.daily_ticket_tbase_type) {
|
||||||
|
case ATBTimeBase::TimeBaseType::ABSOLUTE:
|
||||||
|
debug.nospace()
|
||||||
|
<< " daily_ticket_tbase_type: " << "TimeBaseType::ABSOLUTE" << "\n";
|
||||||
|
break;
|
||||||
|
case ATBTimeBase::TimeBaseType::RELATIVE:
|
||||||
|
debug.nospace()
|
||||||
|
<< " daily_ticket_tbase_type: " << "TimeBaseType::RELATIVE" << "\n";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(ticket.daily_ticket_clearance_customer_type) {
|
||||||
|
case ATBCustomer::CustomerType::ADULT:
|
||||||
|
debug.nospace()
|
||||||
|
<< "daily_ticket_clearance_customer_type: " << "CustomerType::ADULT" << "\n";
|
||||||
|
break;
|
||||||
|
case ATBCustomer::CustomerType::CHILD:
|
||||||
|
debug.nospace()
|
||||||
|
<< "daily_ticket_clearance_customer_type: " << "CustomerType::CHILD" << "\n";
|
||||||
|
break;
|
||||||
|
case ATBCustomer::CustomerType::TEEN:
|
||||||
|
debug.nospace()
|
||||||
|
<< "daily_ticket_clearance_customer_type: " << "CustomerType::TEEN" << "\n";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
debug.nospace()
|
||||||
|
<< "daily_ticket_clearance_customer_type: " << "CustomerType::???" << "\n";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
debug.nospace()
|
||||||
|
<< " daily_ticket_weekday_range: " << ticket.daily_ticket_weekday_range << "\n"
|
||||||
|
<< " daily_ticket_special_day_range: " << ticket.daily_ticket_special_day_range << "\n";
|
||||||
|
|
||||||
|
return debug;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // TARIFF_DAILY_TICKET_H_INCLUDED
|
#endif // TARIFF_DAILY_TICKET_H_INCLUDED
|
||||||
|
Loading…
Reference in New Issue
Block a user