2024-02-22 16:25:09 +01:00
|
|
|
#ifndef TARIFF_PERMIT_TYPE_H_INCLUDED
|
|
|
|
#define TARIFF_PERMIT_TYPE_H_INCLUDED
|
|
|
|
|
|
|
|
#include <QString>
|
|
|
|
|
|
|
|
enum class PERMIT_TYPE : quint8 {
|
2024-04-30 13:51:31 +02:00
|
|
|
SHORT_TERM_PARKING=0,
|
|
|
|
DAY_TICKET=1,
|
|
|
|
SZEGED_START=2,
|
|
|
|
SZEGED_STOP=3,
|
|
|
|
DAY_TICKET_ADULT=4,
|
|
|
|
DAY_TICKET_TEEN=5,
|
|
|
|
DAY_TICKET_CHILD=6,
|
|
|
|
INVALID=7,
|
|
|
|
FOOD_STAMP=8,
|
|
|
|
TWENTY_FOUR_HOURS_TICKET=9
|
2024-02-22 16:25:09 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
struct PermitType {
|
|
|
|
PERMIT_TYPE m_permitType;
|
|
|
|
|
|
|
|
PermitType() { m_permitType = PERMIT_TYPE::INVALID; }
|
|
|
|
PermitType(int permitType) {
|
|
|
|
switch(permitType) {
|
|
|
|
case 0:
|
|
|
|
m_permitType = PERMIT_TYPE::SHORT_TERM_PARKING;
|
|
|
|
break;
|
|
|
|
case 1:
|
|
|
|
m_permitType = PERMIT_TYPE::DAY_TICKET;
|
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
m_permitType = PERMIT_TYPE::SZEGED_START;
|
|
|
|
break;
|
|
|
|
case 3:
|
|
|
|
m_permitType = PERMIT_TYPE::SZEGED_STOP;
|
|
|
|
break;
|
|
|
|
case 4:
|
|
|
|
m_permitType = PERMIT_TYPE::DAY_TICKET_ADULT;
|
|
|
|
break;
|
|
|
|
case 5:
|
|
|
|
m_permitType = PERMIT_TYPE::DAY_TICKET_TEEN;
|
|
|
|
break;
|
|
|
|
case 6:
|
|
|
|
m_permitType = PERMIT_TYPE::DAY_TICKET_CHILD;
|
|
|
|
break;
|
2024-02-28 12:03:13 +01:00
|
|
|
case 7:
|
|
|
|
m_permitType = PERMIT_TYPE::FOOD_STAMP;
|
|
|
|
break;
|
2024-04-30 13:51:31 +02:00
|
|
|
case 8:
|
|
|
|
m_permitType = PERMIT_TYPE::TWENTY_FOUR_HOURS_TICKET;
|
|
|
|
break;
|
2024-02-22 16:25:09 +01:00
|
|
|
default:
|
|
|
|
m_permitType = PERMIT_TYPE::INVALID;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
PermitType(PERMIT_TYPE permitType) : m_permitType(permitType) {}
|
|
|
|
|
|
|
|
void set(PERMIT_TYPE p) { m_permitType = p; }
|
|
|
|
PERMIT_TYPE get() const { return m_permitType; }
|
|
|
|
|
|
|
|
operator PERMIT_TYPE() const { return m_permitType; }
|
|
|
|
|
2024-02-28 12:03:13 +01:00
|
|
|
operator int () const {
|
2024-02-22 16:25:09 +01:00
|
|
|
switch(m_permitType) {
|
|
|
|
case PERMIT_TYPE::SHORT_TERM_PARKING:
|
|
|
|
return 0;
|
|
|
|
case PERMIT_TYPE::DAY_TICKET:
|
|
|
|
return 1;
|
|
|
|
case PERMIT_TYPE::SZEGED_START:
|
|
|
|
return 2;
|
|
|
|
case PERMIT_TYPE::SZEGED_STOP:
|
|
|
|
return 3;
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_ADULT:
|
|
|
|
return 4;
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_CHILD:
|
|
|
|
return 5;
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_TEEN:
|
|
|
|
return 6;
|
2024-02-28 12:03:13 +01:00
|
|
|
case PERMIT_TYPE::FOOD_STAMP:
|
|
|
|
return 7;
|
2024-04-30 13:51:31 +02:00
|
|
|
case PERMIT_TYPE::TWENTY_FOUR_HOURS_TICKET:
|
|
|
|
return 8;
|
2024-02-22 16:25:09 +01:00
|
|
|
default:
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
return 7;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2024-04-30 13:51:31 +02:00
|
|
|
QString toString() {
|
2024-02-28 12:03:13 +01:00
|
|
|
switch(m_permitType) {
|
|
|
|
case PERMIT_TYPE::DAY_TICKET:
|
|
|
|
return QString("DAY_TICKET");
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_ADULT:
|
|
|
|
return QString("DAY_TICKET_ADULT");
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_CHILD:
|
|
|
|
return QString("DAY_TICKET_CHILD");
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_TEEN:
|
|
|
|
return QString("DAY_TICKET_TEEN");
|
|
|
|
case PERMIT_TYPE::SHORT_TERM_PARKING:
|
|
|
|
return QString("SHORT_TERM_PARKING");
|
|
|
|
case PERMIT_TYPE::SZEGED_START:
|
|
|
|
return QString("SZEGED_START");
|
|
|
|
case PERMIT_TYPE::SZEGED_STOP:
|
|
|
|
return QString("SZEGED_STOP");
|
|
|
|
case PERMIT_TYPE::FOOD_STAMP:
|
|
|
|
return QString("FOOD_STAMP");
|
2024-04-30 13:51:31 +02:00
|
|
|
case PERMIT_TYPE::TWENTY_FOUR_HOURS_TICKET:
|
|
|
|
return QString("TWENTY_FOUR_HOURS_TICKET");
|
2024-02-28 12:03:13 +01:00
|
|
|
default:
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
return QString("INVALID");
|
|
|
|
}
|
|
|
|
|
2024-04-30 13:51:31 +02:00
|
|
|
QString toString() const {
|
2024-02-22 16:25:09 +01:00
|
|
|
switch(m_permitType) {
|
|
|
|
case PERMIT_TYPE::DAY_TICKET:
|
|
|
|
return QString("DAY_TICKET");
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_ADULT:
|
|
|
|
return QString("DAY_TICKET_ADULT");
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_CHILD:
|
|
|
|
return QString("DAY_TICKET_CHILD");
|
|
|
|
case PERMIT_TYPE::DAY_TICKET_TEEN:
|
|
|
|
return QString("DAY_TICKET_TEEN");
|
|
|
|
case PERMIT_TYPE::SHORT_TERM_PARKING:
|
|
|
|
return QString("SHORT_TERM_PARKING");
|
|
|
|
case PERMIT_TYPE::SZEGED_START:
|
|
|
|
return QString("SZEGED_START");
|
|
|
|
case PERMIT_TYPE::SZEGED_STOP:
|
|
|
|
return QString("SZEGED_STOP");
|
2024-02-28 12:03:13 +01:00
|
|
|
case PERMIT_TYPE::FOOD_STAMP:
|
|
|
|
return QString("FOOD_STAMP");
|
2024-04-30 13:51:31 +02:00
|
|
|
case PERMIT_TYPE::TWENTY_FOUR_HOURS_TICKET:
|
|
|
|
return QString("TWENTY_FOUR_HOURS_TICKET");
|
2024-02-22 16:25:09 +01:00
|
|
|
default:
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
return QString("INVALID");
|
|
|
|
}
|
2024-04-30 13:51:31 +02:00
|
|
|
|
|
|
|
operator QString () {
|
|
|
|
return toString();
|
|
|
|
}
|
|
|
|
|
|
|
|
operator QString () const {
|
|
|
|
return toString();
|
|
|
|
}
|
2024-02-22 16:25:09 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // TARIFF_PERMIT_TYPE_H_INCLUDED
|