Added several members to ATBTimeRange to implement
progressive tariff for Kirchdorf.
This commit is contained in:
		| @@ -10,15 +10,58 @@ struct ATBTimeRange { | ||||
|     int time_range_id; | ||||
|     QTime time_range_from; | ||||
|     QTime time_range_to; | ||||
|     int time_range_from_in_minutes_from_start; | ||||
|     int time_range_to_in_minutes_from_start; | ||||
|     int time_range_tbase_id; | ||||
|     int time_range_payment_type_id; | ||||
|  | ||||
|     explicit ATBTimeRange() | ||||
|       : time_range_id(-1) | ||||
|       , time_range_from(QTime()) | ||||
|       , time_range_to(QTime()) | ||||
|       , time_range_from_in_minutes_from_start(-1) | ||||
|       , time_range_to_in_minutes_from_start(-1) | ||||
|       , time_range_tbase_id(-1) | ||||
|       , time_range_payment_type_id(-1) { | ||||
|     } | ||||
|  | ||||
|     QTime const &getTimeFrom() const { return time_range_from; } | ||||
|     QTime const &getTimeUntil() const { return time_range_to; } | ||||
|  | ||||
|     bool computeQTimeFrom(QTime const &t) { | ||||
|         if (time_range_from_in_minutes_from_start != -1) { | ||||
|             time_range_from = t.addSecs(time_range_from_in_minutes_from_start * 60); | ||||
|             return time_range_from.isValid(); | ||||
|         } | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     bool computeQTimeTo(QTime const &t) { | ||||
|         if (time_range_to_in_minutes_from_start != -1) { | ||||
|             time_range_to = t.addSecs(time_range_to_in_minutes_from_start * 60); | ||||
|             return time_range_to.isValid(); | ||||
|         } | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     bool computeQTimes(QTime const &t) { | ||||
|         if (!t.isNull() && t.isValid()) { | ||||
|             return computeQTimeFrom(t) && computeQTimeTo(t); | ||||
|         } | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     friend QDebug operator<<(QDebug debug, ATBTimeRange const &timeRange) { | ||||
|         QDebugStateSaver saver(debug); | ||||
|  | ||||
|         debug.nospace() | ||||
|             << "  time_range_id: " << timeRange.time_range_id << "\n" | ||||
|             << "time_range_from: " << timeRange.time_range_from.toString(Qt::ISODate) << "\n" | ||||
|             << "  time_range_to: " << timeRange.time_range_to.toString(Qt::ISODate) << "\n"; | ||||
|             << "                          time_range_id: " << timeRange.time_range_id << "\n" | ||||
|             << "                        time_range_from: " << timeRange.time_range_from.toString(Qt::ISODate) << "\n" | ||||
|             << "                          time_range_to: " << timeRange.time_range_to.toString(Qt::ISODate) << "\n" | ||||
|             << "  time_range_from_in_minutes_from_start: " << timeRange.time_range_from_in_minutes_from_start << "\n" | ||||
|             << "    time_range_to_in_minutes_from_start: " << timeRange.time_range_to_in_minutes_from_start << "\n" | ||||
|             << "                    time_range_tbase_id: " << timeRange.time_range_tbase_id << "\n" | ||||
|             << "             time_range_payment_type_id: " << timeRange.time_range_payment_type_id << "\n"; | ||||
|  | ||||
|         return debug; | ||||
|     } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user