AppCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
EOneWayTicketFacade.h
Go to the documentation of this file.
1 #ifndef EM_CARDFACADEEONEWAYTICKETFACADE_H
2 #define EM_CARDFACADEEONEWAYTICKETFACADE_H
3 
4 #include "appcore/cardfacade/ECardFacadeDefines.h"
5 #include <stdint.h>
6 #include <list>
7 #include <string>
8 
9 class EMoneyData;
10 
11 namespace EM
12 {
13  namespace PT
14  {
15  class EDataCollection;
16  class EAplRequest;
17  }
18 
19  namespace CardFacade
20  {
22  {
23  public:
24  typedef std::list<unsigned long> ZoneList;
25  typedef ZoneList::iterator ZoneListIter;
26  typedef ZoneList::const_iterator ZoneListConstIter;
27 
29  virtual ~EOneWayTicketFacade();
30 
31  virtual bool GetPrice( unsigned char ticketIndex, EMoneyData &price ) = 0;
32  virtual bool SetPrice( unsigned char ticketIndex, const EMoneyData &price ) = 0;
33 
34  virtual bool GetSummaryPrice( EMoneyData &price ) = 0;
35  virtual bool SetSummaryPrice( const EMoneyData &price ) = 0;
36 
37  virtual bool GetFlagWasPurchased( unsigned char ticketIndex, char &wasPurchased ) = 0;
38  virtual bool SetFlagWasPurchased( unsigned char ticketIndex, char wasPurchased ) = 0;
39 
40  virtual bool GetFlagWasInterchange( unsigned char ticketIndex, char &flagWasInterchange ) = 0;
41  virtual bool SetFlagWasInterchange( unsigned char ticketIndex, char wasInterchange ) = 0;
42 
43  virtual bool GetProtectNumber( unsigned char ticketIndex, long &protectNumber ) = 0;
44  virtual bool SetProtectNumber( unsigned char ticketIndex, long protectNumber ) = 0;
45 
46  virtual bool GetTicketCount( unsigned char ticketIndex, long &ticketCount ) = 0;
47  virtual bool SetTicketCount( unsigned char ticketIndex, long ticketCount ) = 0;
48 
49  virtual bool GetLineNumber( unsigned char ticketIndex, long &lineNumber ) = 0;
50  virtual bool SetLineNumber( unsigned char ticketIndex, long lineNumber ) = 0;
51 
52  virtual bool GetTripNumber( unsigned char ticketIndex, long &tripNumber ) = 0;
53  virtual bool SetTripNumber( unsigned char ticketIndex, long tripNumber ) = 0;
54 
55  virtual bool GetTimeTicketFlag( unsigned char ticketIndex, bool &timeTicketFlag ) = 0;
56  virtual bool SetTimeTicketFlag( unsigned char ticketIndex, bool isTimeTicketUsed ) = 0;
57 
58  virtual bool GetTariffTicketNumber( unsigned char ticketIndex, long &tariffTicketNumber ) = 0;
59  virtual bool SetTariffTicketNumber( unsigned char ticketIndex, unsigned short tariffTicketNumber ) = 0;
60 
61  virtual bool GetTicketTariffProfile( unsigned char ticketIndex, unsigned char &tariffProfile ) = 0;
62  virtual bool SetTicketTariffProfile( unsigned char ticketIndex, unsigned char tariffProfile ) = 0;
63 
64  virtual bool GetTicketCustomerProfile( unsigned char ticketIndex, unsigned char &customerProfile ) = 0;
65  virtual bool SetTicketCustomerProfile( unsigned char ticketIndex, unsigned char customerProfile ) = 0;
66 
67  virtual bool GetTimeTicketNumber( unsigned char ticketIndex, long &timeTicketNumber ) = 0;
68  virtual bool SetTimeTicketNumber( unsigned char ticketIndex, unsigned short timeTicketNumber ) = 0;
69 
70  virtual bool GetDiscountType( unsigned char ticketIndex, short &discountType ) = 0;
71  virtual bool SetDiscountType( unsigned char ticketIndex, unsigned short discountType ) = 0;
72 
73  virtual bool GetTimeValidityStart( unsigned char ticketIndex, unsigned long &validityStartTime ) = 0;
74  virtual bool GetTimeValidityEnd(unsigned char ticketIndex, unsigned long &validityEndTime ) = 0;
75  virtual bool SetTimeValidity( unsigned char ticketIndex, unsigned long validityStartTime, unsigned long validityEndTime ) = 0;
76 
77  virtual bool GetCheckOutBusStop( unsigned char ticketIndex, long &checkoutBusStop ) = 0;
78  virtual bool SetCheckOutBusStop( unsigned char ticketIndex, long checkOutBusStop ) = 0;
79 
80  virtual bool GetCheckInBusStop( unsigned char ticketIndex, long &checkinBusStop ) = 0;
81  virtual bool SetCheckInBusStop( unsigned char ticketIndex, long checkInBusStop ) = 0;
82 
83  virtual bool GetCheckOutBusStopID( unsigned char ticketIndex, long &checkoutBusStopID ) = 0;
84  virtual bool SetCheckOutBusStopID( unsigned char ticketIndex, long checkOutBusStopID ) = 0;
85 
86  virtual bool GetCheckInBusStopID( unsigned char ticketIndex, long &checkinBusStopID ) = 0;
87  virtual bool SetCheckInBusStopID( unsigned char ticketIndex, long checkInBusStopID ) = 0;
88 
89  virtual bool GetUrbanTransportIdentificationNumber( unsigned char ticketIndex, long &urbanTransportIdentificationNumber ) = 0;
90  virtual bool SetUrbanTransportIdentificationNumber( unsigned char ticketIndex, long urbanTransportIDNumber ) = 0;
91 
92  virtual bool GetWasCheckOut( unsigned char ticketIndex, bool &wasCheckout ) = 0;
93  virtual bool SetWasCheckout( unsigned char ticketIndex, bool wasCheckOut ) = 0;
94 
95  virtual bool GetCompanyNumber( unsigned char ticketIndex, long &companyNumber ) = 0;
96  virtual bool SetCompanyNumber( unsigned char ticketIndex, long companyNumber ) = 0;
97 
98  virtual bool SetCountryCode( unsigned char ticketIndex, unsigned short countryCodeInBCD ) = 0;
99  virtual bool GetCountryCode( unsigned char ticketIndex, unsigned short &countryCodeInBCD ) = 0;
100 
101  virtual bool SetNetworkCode( unsigned char ticketIndex, unsigned long networkCodeInBCD ) = 0;
102  virtual bool GetNetworkCode( unsigned char ticketIndex, unsigned long &networkCodeInBCD ) = 0;
103 
104  virtual bool SetProvider( unsigned char ticketIndex, unsigned short providerNumber ) = 0;
105  virtual bool GetProvider( unsigned char ticketIndex, unsigned short &providerNumber ) = 0;
106 
107  virtual bool SetPriceUnit( unsigned char ticketIndex, unsigned char priceUnit ) = 0;
108  virtual bool GetPriceUnit( unsigned char ticketIndex, unsigned char &priceUnit ) = 0;
109 
110  virtual bool SetPaymentMeans( unsigned char ticketIndex, unsigned char paymentMeans ) = 0;
111  virtual bool GetPaymentMeans( unsigned char ticketIndex, unsigned char &paymentMeans ) = 0;
112 
113  virtual bool SetPaymentMode( unsigned char ticketIndex, unsigned char paymentMode ) = 0;
114  virtual bool GetPaymentMode( unsigned char ticketIndex, unsigned char &paymentMode ) = 0;
115 
116  virtual bool SetVehicleClass( unsigned char ticketIndex, unsigned char vehicleClass ) = 0;
117  virtual bool GetVehicleClass( unsigned char ticketIndex, unsigned char &vehicleClass ) = 0;
118 
119  virtual bool SetSeatReservation( unsigned char ticketIndex, unsigned char seatReservation ) = 0;
120  virtual bool GetSeatReservation( unsigned char ticketIndex, unsigned char &seatReservation ) = 0;
121 
122  virtual bool SetZoneSize( unsigned char zoneSize ) = 0;
123 
124  virtual bool SetCheckInZone( unsigned char ticketIndex, unsigned short checkInZone ) = 0;
125  virtual bool GetCheckInZone( unsigned char ticketIndex, unsigned short &checkInZone ) = 0;
126 
127  virtual bool SetCheckOutZone( unsigned char ticketIndex, unsigned short checkOutZone ) = 0;
128  virtual bool GetCheckOutZone( unsigned char ticketIndex, unsigned short &checkOutZone ) = 0;
129 
130  virtual bool GetZoneList( unsigned char ticketIndex, ZoneList &zoneList ) = 0;
131  virtual bool SetZoneList( unsigned char ticketIndex, const ZoneList &zoneList ) = 0;
132 
133  virtual bool GetZoneAmount( unsigned char ticketIndex, unsigned char &zoneAmount ) = 0;
134  virtual bool SetZoneAmount( unsigned char ticketIndex, const unsigned char zoneAmount ) = 0;
135 
136  virtual bool GetEndOfJourney( unsigned char ticketIndex, unsigned long &endOfJourney ) = 0;
137  virtual bool SetEndOfJourney( unsigned char ticketIndex, const unsigned long endOfJourney ) = 0;
138 
139  virtual bool GetDeviceSNR( unsigned char ticketIndex, unsigned long &snr ) = 0;
140  virtual bool SetDeviceSNR( unsigned char ticketIndex, unsigned long snr ) = 0;
141 
142  virtual bool GetDriverNumber( unsigned char ticketIndex, unsigned long &driverNumber ) = 0;
143  virtual bool SetDriverNumber( unsigned char ticketIndex, unsigned long driverNumber ) = 0;
144 
145  virtual bool GetTicketNumber( unsigned char ticketIndex, unsigned long &ticketNumber ) = 0;
146  virtual bool SetTicketNumber( unsigned char ticketIndex, unsigned long ticketNumber ) = 0;
147 
148  virtual bool GetTicketCounter( unsigned char ticketIndex, unsigned short &ticketCounter ) = 0;
149  virtual bool SetTicketCounter( unsigned char ticketIndex, unsigned short ticketCounter ) = 0;
150 
151  virtual bool GetPriceListRowNumber( unsigned char ticketIndex, unsigned short &priceListRowNumber ) = 0;
152  virtual bool SetPriceListRowNumber( unsigned char ticketIndex, unsigned short priceListRowNumber ) = 0;
153 
154  virtual bool GetFlagExplicitlySelected( unsigned char ticketIndex, bool &explicitlySelected ) = 0;
155  virtual bool SetFlagExplicitlySelected( unsigned char ticketIndex, bool explicitlySelected ) = 0;
156 
157  virtual bool GetPositionCountOnOWTCollection( unsigned char &positionCountOnOWTCollection ) = 0;
158 
159  virtual bool GetTicketType( unsigned char ticketIndex, ECardFacadeDefines::OneWayTicketType &ticketType ) = 0;
160  virtual bool SetTicketType( const ECardFacadeDefines::OneWayTicketType newTicketType ) = 0;
161 
162  virtual bool IsTransportSectionValid( bool &transportSectionValidity );
163 
164  virtual bool GetOneWayTicketValidityStatus( const unsigned char ticketIndex, bool &valid ) const = 0;
165  virtual bool SetOneWayTicketValidityStatus( const unsigned char ticketIndex, const bool valid ) = 0;
166 
167  virtual bool GetJourneyCounter( const unsigned char ticketIndex, unsigned long &journeyCounter ) const = 0;
168  virtual bool SetJourneyCounter( const unsigned char ticketIndex, const unsigned long journeyCounter ) = 0;
169 
170  virtual void Clear();
171 
172  virtual bool IsModifiedData();
173 
174  virtual bool AddDataToWriteRequest( EM::PT::EDataCollection *writeRequest );
175  virtual bool AddDataTypeToReadRequest( PT::EAplRequest *readRequest ) = 0;
176 
177  virtual void Init();
178 
180 
181  virtual unsigned short GetRequiredDataReadOperation() const = 0;
182 
183  virtual bool CreateSnapshotData( const unsigned char ticketIndex, std::string &data );
184  virtual bool FillFromSnapshot( const unsigned char ticketIndex, const std::string &data );
185 
186  virtual unsigned long GetFellowTravellerTicketCountCardLimit() const = 0;
187 
188  protected:
189  //FIXME: JBR these methods are also in ETimeTicketFacade and EPurseFacade, so they should probably be in some ancestor class
190  virtual short GetCurrencyCoeficient(unsigned char priceUnit) const;
191  virtual long ConvertPriceToCardCoeficient(const EMoneyData &priceData, const unsigned char priceUnit) const;
192 
193  void SetCardFeature( uint64_t features );
194 
195  private:
197 
198  class DataClass;
199  DataClass *d;
200 
202  };
203  }
204 }
205 
206 #endif
OneWayTicketCardFeaturesEnum
Definition: ECardFacadeDefines.h:38
virtual bool GetFlagExplicitlySelected(unsigned char ticketIndex, bool &explicitlySelected)=0
virtual bool GetCountryCode(unsigned char ticketIndex, unsigned short &countryCodeInBCD)=0
virtual bool GetFlagWasInterchange(unsigned char ticketIndex, char &flagWasInterchange)=0
virtual bool SetTimeTicketNumber(unsigned char ticketIndex, unsigned short timeTicketNumber)=0
virtual bool GetTicketTariffProfile(unsigned char ticketIndex, unsigned char &tariffProfile)=0
virtual bool GetFlagWasPurchased(unsigned char ticketIndex, char &wasPurchased)=0
virtual bool SetCheckOutBusStop(unsigned char ticketIndex, long checkOutBusStop)=0
virtual bool GetTimeTicketNumber(unsigned char ticketIndex, long &timeTicketNumber)=0
virtual bool GetPriceUnit(unsigned char ticketIndex, unsigned char &priceUnit)=0
virtual bool GetTicketCounter(unsigned char ticketIndex, unsigned short &ticketCounter)=0
virtual bool FillFromSnapshot(const unsigned char ticketIndex, const std::string &data)
Definition: EOneWayTicketFacade.cpp:140
virtual bool GetTicketType(unsigned char ticketIndex, ECardFacadeDefines::OneWayTicketType &ticketType)=0
virtual bool GetDriverNumber(unsigned char ticketIndex, unsigned long &driverNumber)=0
virtual bool GetPaymentMode(unsigned char ticketIndex, unsigned char &paymentMode)=0
virtual unsigned long GetFellowTravellerTicketCountCardLimit() const =0
virtual bool SetEndOfJourney(unsigned char ticketIndex, const unsigned long endOfJourney)=0
virtual void Clear()
Definition: EOneWayTicketFacade.cpp:66
std::list< unsigned long > ZoneList
Definition: EOneWayTicketFacade.h:24
virtual bool SetTicketType(const ECardFacadeDefines::OneWayTicketType newTicketType)=0
virtual bool SetZoneAmount(unsigned char ticketIndex, const unsigned char zoneAmount)=0
virtual bool GetTicketCustomerProfile(unsigned char ticketIndex, unsigned char &customerProfile)=0
virtual bool SetCompanyNumber(unsigned char ticketIndex, long companyNumber)=0
virtual bool GetSeatReservation(unsigned char ticketIndex, unsigned char &seatReservation)=0
virtual unsigned short GetRequiredDataReadOperation() const =0
virtual bool SetNetworkCode(unsigned char ticketIndex, unsigned long networkCodeInBCD)=0
virtual bool SetLineNumber(unsigned char ticketIndex, long lineNumber)=0
virtual bool SetDriverNumber(unsigned char ticketIndex, unsigned long driverNumber)=0
virtual bool SetTripNumber(unsigned char ticketIndex, long tripNumber)=0
virtual bool SetDiscountType(unsigned char ticketIndex, unsigned short discountType)=0
EEventTripTicketPr __EDATAPTR d
Definition: EEventTripTicket.h:96
virtual bool GetPositionCountOnOWTCollection(unsigned char &positionCountOnOWTCollection)=0
virtual bool GetWasCheckOut(unsigned char ticketIndex, bool &wasCheckout)=0
virtual bool GetCheckOutZone(unsigned char ticketIndex, unsigned short &checkOutZone)=0
virtual bool SetCheckInZone(unsigned char ticketIndex, unsigned short checkInZone)=0
virtual bool AddDataTypeToReadRequest(PT::EAplRequest *readRequest)=0
virtual bool SetCheckOutBusStopID(unsigned char ticketIndex, long checkOutBusStopID)=0
virtual bool SetTicketCounter(unsigned char ticketIndex, unsigned short ticketCounter)=0
OneWayTicketType
Definition: ECardFacadeDefines.h:205
virtual bool GetVehicleClass(unsigned char ticketIndex, unsigned char &vehicleClass)=0
virtual bool SetTimeTicketFlag(unsigned char ticketIndex, bool isTimeTicketUsed)=0
virtual bool GetLineNumber(unsigned char ticketIndex, long &lineNumber)=0
virtual bool SetVehicleClass(unsigned char ticketIndex, unsigned char vehicleClass)=0
virtual bool SetSummaryPrice(const EMoneyData &price)=0
virtual bool SetProtectNumber(unsigned char ticketIndex, long protectNumber)=0
virtual bool GetOneWayTicketValidityStatus(const unsigned char ticketIndex, bool &valid) const =0
virtual bool GetUrbanTransportIdentificationNumber(unsigned char ticketIndex, long &urbanTransportIdentificationNumber)=0
virtual bool GetCheckInBusStopID(unsigned char ticketIndex, long &checkinBusStopID)=0
virtual bool GetTicketNumber(unsigned char ticketIndex, unsigned long &ticketNumber)=0
virtual bool GetEndOfJourney(unsigned char ticketIndex, unsigned long &endOfJourney)=0
virtual short GetCurrencyCoeficient(unsigned char priceUnit) const
Definition: EOneWayTicketFacade.cpp:89
virtual bool SetTimeValidity(unsigned char ticketIndex, unsigned long validityStartTime, unsigned long validityEndTime)=0
virtual bool SetTicketCount(unsigned char ticketIndex, long ticketCount)=0
virtual bool SetPrice(unsigned char ticketIndex, const EMoneyData &price)=0
bool IsCardFeatureEnabled(ECardFacadeDefines::OneWayTicketCardFeaturesEnum feature, bool &enabled)
Definition: EOneWayTicketFacade.cpp:56
virtual bool GetNetworkCode(unsigned char ticketIndex, unsigned long &networkCodeInBCD)=0
virtual bool SetTicketCustomerProfile(unsigned char ticketIndex, unsigned char customerProfile)=0
virtual bool GetTimeTicketFlag(unsigned char ticketIndex, bool &timeTicketFlag)=0
virtual bool GetCheckInBusStop(unsigned char ticketIndex, long &checkinBusStop)=0
virtual long ConvertPriceToCardCoeficient(const EMoneyData &priceData, const unsigned char priceUnit) const
Definition: EOneWayTicketFacade.cpp:112
ZoneList::const_iterator ZoneListConstIter
Definition: EOneWayTicketFacade.h:26
virtual bool SetPriceUnit(unsigned char ticketIndex, unsigned char priceUnit)=0
virtual bool SetCheckInBusStop(unsigned char ticketIndex, long checkInBusStop)=0
virtual bool GetPriceListRowNumber(unsigned char ticketIndex, unsigned short &priceListRowNumber)=0
virtual bool GetZoneAmount(unsigned char ticketIndex, unsigned char &zoneAmount)=0
virtual bool SetSeatReservation(unsigned char ticketIndex, unsigned char seatReservation)=0
virtual bool GetDiscountType(unsigned char ticketIndex, short &discountType)=0
virtual bool IsModifiedData()
Definition: EOneWayTicketFacade.cpp:71
virtual ~EOneWayTicketFacade()
Definition: EOneWayTicketFacade.cpp:47
virtual bool IsTransportSectionValid(bool &transportSectionValidity)
Definition: EOneWayTicketFacade.cpp:83
virtual bool SetCheckInBusStopID(unsigned char ticketIndex, long checkInBusStopID)=0
virtual bool SetPriceListRowNumber(unsigned char ticketIndex, unsigned short priceListRowNumber)=0
void SetCardFeature(uint64_t features)
Definition: EOneWayTicketFacade.cpp:129
Definition: EOneWayTicketFacade.h:21
virtual bool GetProtectNumber(unsigned char ticketIndex, long &protectNumber)=0
virtual bool GetJourneyCounter(const unsigned char ticketIndex, unsigned long &journeyCounter) const =0
virtual bool GetCheckInZone(unsigned char ticketIndex, unsigned short &checkInZone)=0
virtual bool SetDeviceSNR(unsigned char ticketIndex, unsigned long snr)=0
virtual bool SetZoneList(unsigned char ticketIndex, const ZoneList &zoneList)=0
virtual bool SetTicketNumber(unsigned char ticketIndex, unsigned long ticketNumber)=0
virtual bool GetCheckOutBusStopID(unsigned char ticketIndex, long &checkoutBusStopID)=0
virtual bool GetZoneList(unsigned char ticketIndex, ZoneList &zoneList)=0
virtual bool SetWasCheckout(unsigned char ticketIndex, bool wasCheckOut)=0
virtual bool CreateSnapshotData(const unsigned char ticketIndex, std::string &data)
Definition: EOneWayTicketFacade.cpp:134
virtual bool GetSummaryPrice(EMoneyData &price)=0
virtual bool SetFlagWasPurchased(unsigned char ticketIndex, char wasPurchased)=0
virtual bool GetPaymentMeans(unsigned char ticketIndex, unsigned char &paymentMeans)=0
__ECLASS DataClass
Definition: EEventUpdateCustomerData.h:35
virtual bool SetTariffTicketNumber(unsigned char ticketIndex, unsigned short tariffTicketNumber)=0
virtual bool GetCompanyNumber(unsigned char ticketIndex, long &companyNumber)=0
virtual bool GetTicketCount(unsigned char ticketIndex, long &ticketCount)=0
virtual bool GetTimeValidityEnd(unsigned char ticketIndex, unsigned long &validityEndTime)=0
virtual bool AddDataToWriteRequest(EM::PT::EDataCollection *writeRequest)
Definition: EOneWayTicketFacade.cpp:77
virtual bool GetPrice(unsigned char ticketIndex, EMoneyData &price)=0
virtual bool SetCountryCode(unsigned char ticketIndex, unsigned short countryCodeInBCD)=0
virtual bool SetPaymentMode(unsigned char ticketIndex, unsigned char paymentMode)=0
virtual bool SetFlagWasInterchange(unsigned char ticketIndex, char wasInterchange)=0
virtual bool SetProvider(unsigned char ticketIndex, unsigned short providerNumber)=0
SYSTEM INCLUDES.
Definition: CardFacadeManagerXML.h:6
virtual bool SetPaymentMeans(unsigned char ticketIndex, unsigned char paymentMeans)=0
virtual bool GetTripNumber(unsigned char ticketIndex, long &tripNumber)=0
virtual bool GetProvider(unsigned char ticketIndex, unsigned short &providerNumber)=0
virtual bool GetTimeValidityStart(unsigned char ticketIndex, unsigned long &validityStartTime)=0
virtual bool GetDeviceSNR(unsigned char ticketIndex, unsigned long &snr)=0
virtual bool SetCheckOutZone(unsigned char ticketIndex, unsigned short checkOutZone)=0
virtual bool SetUrbanTransportIdentificationNumber(unsigned char ticketIndex, long urbanTransportIDNumber)=0
virtual void Init()
Definition: EOneWayTicketFacade.cpp:52
virtual bool SetOneWayTicketValidityStatus(const unsigned char ticketIndex, const bool valid)=0
virtual bool SetTicketTariffProfile(unsigned char ticketIndex, unsigned char tariffProfile)=0
ZoneList::iterator ZoneListIter
Definition: EOneWayTicketFacade.h:25
EOneWayTicketFacade()
Definition: EOneWayTicketFacade.cpp:38
virtual bool SetJourneyCounter(const unsigned char ticketIndex, const unsigned long journeyCounter)=0
virtual bool GetTariffTicketNumber(unsigned char ticketIndex, long &tariffTicketNumber)=0
virtual bool SetFlagExplicitlySelected(unsigned char ticketIndex, bool explicitlySelected)=0
virtual bool GetCheckOutBusStop(unsigned char ticketIndex, long &checkoutBusStop)=0
virtual bool SetZoneSize(unsigned char zoneSize)=0