AppCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
IssuedTicket.h
Go to the documentation of this file.
1 #ifndef _ISSUED_TICKET_H_
2 #define _ISSUED_TICKET_H_
3 
4 #include "core/common/eplatform.h"
5 #include "../ETicketIssueLogicDefines.h"
6 #include "IssuedTicketSegment.h"
7 
8 #include <set>
9 #include <list>
10 
11 class EHead;
12 
13 namespace EM
14 {
15  namespace Strojcek
16  {
17  namespace VstupneUdaje
18  {
19  class CappingInformationData;
20 
21  namespace TarifnySystem
22  {
23  class ETarifa;
24  class ETarifnaSkupina;
25  }
26  }
27  }
28 
29  namespace TicketIssueLogic
30  {
31  class ETicketIssueLogicDataStorage;
32 
34  {
36 
37  class DataClass;
38  DataClass *d;
39 
41  public:
43  {
44  TicketFlagWasInterchange = 0x001,
45  TicketFlagInterchangableTicket = 0x002,
46  TicketFlagWasCheckOut = 0x004,
47  TicketFlagNetworkWideTicket = 0x008,
48  TicketFlagCanBePrinted = 0x010,
49  TicketFlagTimeTicketSell = 0x020,
50  TicketFlagFellowTravellerWriteOnCard = 0x040,
51  TicketFlagFellowTravellerWithoutWriteOnCard = 0x080,
52  TicketFlagFellowTraveller = TicketFlagFellowTravellerWriteOnCard | TicketFlagFellowTravellerWithoutWriteOnCard,
53  TicketFlagFreeJourneyOnOneWayTicketWithTimeValidity = 0x100,
54  TicketFlagTimeTicketSellWithRegionalDiscount = 0x200,
55  TicketFlagIsCappedPrice = 0x400
56  };
57 
59  ~IssuedTicket();
60 
61  bool SetRepresentativeTariffData( Strojcek::VstupneUdaje::TarifnySystem::ETarifa *representastiveTariff, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *representastiveTariffGroup );
62  bool GetRepresentativeTariff( Strojcek::VstupneUdaje::TarifnySystem::ETarifa *&representativeTariff ) const;
63  bool GetRepresentativeTariffGroup( Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *&representativeTariffGroup ) const;
64 
65  bool SetRepresentativeIssuedTicketType( IssuedTicketSegment::IssuedTicketSegmentType issuedTicketType );
66  bool GetRepresentativeIssuedTicketType( IssuedTicketSegment::IssuedTicketSegmentType &issuedTicketType ) const;
67 
68  bool SetSummaryPrice( const long summaryPrice );
69  bool GetSummaryPrice( long &summaryPrice ) const;
70 
71  //bulk VAT = VAT for single ticket multiplied by ticket count
72  bool SetBulkVat( long bulkVat );
73  bool GetBulkVat( long &bulkVat ) const;
74 
75  bool SetVatRate( long vatRate );
76  bool GetVatRate( long &vatRate ) const;
77 
78  bool SetSummaryTravelledZones( const std::list< unsigned long > &travelledZones );
79  bool GetSummaryTravelledZones( const std::list<unsigned long> *&travelledZones ) const;
80 
81  bool SetRefundPrice( long refundPrice );
82  bool GetRefundPrice( long &refundPrice ) const;
83 
84  bool SetTicketCount( unsigned short ticketCount );
85  bool GetTicketCount( unsigned short &ticketCount ) const;
86 
87  bool SetPaymentType( const EIssueLogicDefines::PaymentType paymentType );
88  bool GetPaymentType( EIssueLogicDefines::PaymentType &paymentType ) const;
89 
90  bool SetIndexOfAppliedDiscountCoupon( const long discountCouponIndex );
91  bool GetIndexOfAppliedDiscountCoupon( long &discountCouponIndex ) const;
92 
93  bool SetTicketFlag( IssuedTicket::IssuedTicketFlags flag );
94  void IsSetTicketFlag( IssuedTicket::IssuedTicketFlags flag, bool &isSet ) const;
95 
96  bool SetOneWayTicketIndexOnCard( const long oneWayTicketIndexOnCard );
97  bool GetOneWayTicketIndexOnCard( long &oneWayTicketIndexOnCard ) const;
98 
99  bool SetUsedCustomerProfileIndex( const unsigned char usedCustomerProfileIndex );
100  bool GetUsedCustomerProfileIndex( unsigned char &usedCustomerProfileIndex ) const;
101 
102  bool SetStartBusStopLineOrder( const unsigned long startBusStopLineOrder );
103  bool GetStartBusStopLineOrder( unsigned long &startBusStopLineOrder ) const;
104 
105  bool SetEndBusStopLineOrder( const unsigned long endBusStopLineOrder );
106  bool GetEndBusStopLineOrder( unsigned long &endBusStopLineOrder ) const;
107 
108  bool SetTimeValidity( const unsigned long timeValidityStart, const unsigned long timeValidityEnd );
109  bool GetTimeValidity( unsigned long &timeValidityStart, unsigned long &timeValidityEnd ) const;
110 
111  bool SetPriceListRowNumber( const unsigned short priceListRow );
112  bool GetPriceListRowNumber( unsigned short &priceListRow ) const;
113 
114  bool SetTicketNumber( unsigned long ticketNumber );
115  bool GetTicketNumber( unsigned long &ticketNumber ) const;
116 
121  bool SetPrinterTemplateID( long printerTemplateID );
122 
127  bool GetPrinterTemplateID( long &printerTemplateID );
128 
136  bool SetAdjustedTimeTicketPriceAfterRegionalDiscount( long adjustedTimeTicketPriceAfterRegionalDiscount ) const;
137  bool GetAdjustedTimeTicketPriceAfterRegionalDiscount( long &adjustedTimeTicketPriceAfterRegionalDiscount );
138 
139  void AddIssuedTicketSegment( IssuedTicketSegment *issuedTicketSegment );
140  bool GetIssuedTicketSegments( std::list<IssuedTicketSegment *> *&issuedTicketSegments );
141 
142  bool SetCappingInformationData( Strojcek::VstupneUdaje::CappingInformationData cappingInformationData );
143  bool GetCappingInformationData( Strojcek::VstupneUdaje::CappingInformationData &cappingInformationData );
144 
145  bool SetCashPriceRounding( const long cashPriceRounding );
146  bool GetCashPriceRounding( long &cashPriceRounding ) const;
147 
148  void PrintToLog();
149  };
150  }
151 }
152 
153 #endif // _ISSUED_TICKET_H_
IssuedTicketSegmentType
Definition: IssuedTicketSegment.h:37
EEventTripTicketPr __EDATAPTR d
Definition: EEventTripTicket.h:96
Definition: IssuedTicketSegment.h:28
PaymentType
Definition: ETicketIssueLogicDefines.h:160
IssuedTicketFlags
Definition: IssuedTicket.h:42
__ECLASS DataClass
Definition: EEventUpdateCustomerData.h:35
Definition: IssuedTicket.h:33
#define DLL_API
Definition: ECardFacadeDefines.h:8
Definition: ETicketIssueLogicDataStorage.h:51
SYSTEM INCLUDES.
Definition: CardFacadeManagerXML.h:6