AppCore
Loading...
Searching...
No Matches
ECommonFunctionalityModule.h
Go to the documentation of this file.
1#ifndef ECommonFunctionalityModule_H
2#define ECommonFunctionalityModule_H
3
4#include <vector>
5#include <list>
6#include "appcore/cardfacade/ECardFacadeDefines.h"
9
10namespace EM
11{
12 namespace Strojcek
13 {
14 namespace VstupneUdaje
15 {
16 struct _VSTUPNA_STRUKTURA;
17
18 namespace TarifnySystem
19 {
20 class ETarifa;
21 class ETarifnaSkupina;
22 }
23 }
24 }
25
26 namespace TicketIssueLogic
27 {
28 class ETicketIssueLogic;
29 class ETicketIssueLogicDataStorage;
30 class IssuedTicket;
31 class IssuedTicketSegment;
32 class DataForPriceCalculation;
33
38 {
40
44 class DataClass;
45 DataClass *d;
46
48
49 public:
57
62
70
80 virtual EIssueLogicDefines::ReturnValues CheckTicketValidity( bool &isTicketValid, bool &ticketOnTimeTicket, signed char ticketIndex = 0 );
81
88
89
97 virtual EIssueLogicDefines::ReturnValues IsStayOnLastBusStop( bool &stayOnLastBusStop );
98
99
119
120
126 virtual EIssueLogicDefines::ReturnValues PrepareIssueDataFromCard( unsigned char ticketIndex );
127
128
137 virtual EIssueLogicDefines::ReturnValues PrepareAutoIssueCommonData( Strojcek::VstupneUdaje::TarifnySystem::ETarifa *tariff, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *&tariffGroup );
138
139
147 virtual EIssueLogicDefines::ReturnValues ClearFlagsWasPurchased( unsigned char startingTicketIndex );
148
149
161 virtual EIssueLogicDefines::ReturnValues ClearOneWayTickets( unsigned char ticketIndex );
162
163
169
178 virtual EIssueLogicDefines::ReturnValues CheckTicketCount( long ticketIndex = -1 );
179
180
189 EIssueLogicDefines::ReturnValues GetBusStopID( unsigned long &checkInBusStopID, unsigned long &checkOutBusStopID );
190
191
197 virtual EIssueLogicDefines::ReturnValues OwnerHasFellowTravelers( bool &ownerHasFellowTravelers );
198
199
204
210 virtual EIssueLogicDefines::ReturnValues GetFellowTravelersCount( unsigned long &fellowTravelerCount );
211
219 virtual EIssueLogicDefines::ReturnValues IsPossibleSellTicket( bool &isTicketValid );
220
221
230
231
238 EIssueLogicDefines::ReturnValues IsProcessingJourneyOnTimeTicket( bool &journeyOnTimeTicket, IssuedTicketSegment *issuedTicketSegment = NULL );
239
240
253 virtual EIssueLogicDefines::ReturnValues IsCardTypeMatchingTariffDiscount( Strojcek::VstupneUdaje::TarifnySystem::ETarifa *tariff, bool &cardTypeMatching, bool checkTimeTicketDiscount , unsigned char customerProfileIndex );
254
255
264 virtual EIssueLogicDefines::ReturnValues FillAdditionalDataCalculatePrice( const DataForPriceCalculation &dataForPriceCalculation, Strojcek::VstupneUdaje::_VSTUPNA_STRUKTURA &inputDataCalculatePrice );
265
272 EIssueLogicDefines::ReturnValues IsCardCompanyNumberAccepted( std::vector<short> acceptedCompanyNumbers, bool &isAccepted ) const;
273
280 virtual bool CheckMaxAgeForDiscount( unsigned char customerProfileIndex, bool timeTicket, bool &isDiscountAllowed );
281
289
297 EIssueLogicDefines::ReturnValues CheckTicketLineTripValidity( unsigned char ticketIndex, bool &isTicketValid );
298
306 EIssueLogicDefines::ReturnValues CheckTicketLineTripBusStopValidity( unsigned char ticketIndex, bool &isTicketValid );
307
308 protected:
309
319
320
328 virtual EIssueLogicDefines::ReturnValues PrepareTimeTicketData( Strojcek::VstupneUdaje::TarifnySystem::ETarifa *&tariff, short validTimeTicketIndex );
329
330
338 virtual EIssueLogicDefines::ReturnValues PrepareCashTicketData( Strojcek::VstupneUdaje::TarifnySystem::ETarifa *&tariff, unsigned char customerProfileIndex );
339
340
349
350
360
374 virtual EIssueLogicDefines::ReturnValues GetFirstCustomerProfileValidByTariff( IssuedTicketSegment *issuedTicketSegment, unsigned char &usedCustomerProfile );
375
376
383 virtual EIssueLogicDefines::ReturnValues GetFirstCustomerProfileValidByTimeTicketTariff( IssuedTicketSegment *issuedTicketSegment, unsigned char &usedCustomerProfile );
384
385
392 virtual EIssueLogicDefines::ReturnValues GetFirstCustomerProfileValidByOneWayTicketTariff( IssuedTicketSegment *issuedTicketSegment, unsigned char &usedCustomerProfile );
393
394
411 virtual EIssueLogicDefines::ReturnValues EvaluateCardTypeMatch( bool cardTypeMatching );
412
413
423
424
435 virtual EIssueLogicDefines::ReturnValues PrepareSubstituteTariffGroup( IssuedTicketSegment *issuedTicketSegment, Strojcek::VstupneUdaje::TarifnySystem::ETarifa *tariff, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *tariffGroup );
436
437
449 virtual EIssueLogicDefines::ReturnValues PrepareTariffDataFromSubstituteTariffGroup( IssuedTicketSegment *issuedTicketSegment, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *tariffGroup , Strojcek::VstupneUdaje::TarifnySystem::ETarifa *manualSelectedtariff );
450
452
457
458
466
468 };
469 }
470}
471
472#endif // ECommonFunctionalityModule_H
Definition DataForPriceCalculation.h:28
Definition ECalculatePriceModuleInterface.h:20
class represent common functionality for all ticket issue logic
Definition ECommonFunctionalityModule.h:38
virtual EIssueLogicDefines::ReturnValues PrepareIssueDataFromCard(unsigned char ticketIndex)
PrepareIssueDataFromCard - Function create IssuedTicket, Prepare Tariff from one way ticket facade.
Definition ECommonFunctionalityModule.cpp:2143
virtual EIssueLogicDefines::ReturnValues ClearFlagsWasPurchased(unsigned char startingTicketIndex)
Function flaqs was purchased from starting ticket index on card @list cleared flags:
Definition ECommonFunctionalityModule.cpp:2638
virtual EIssueLogicDefines::ReturnValues IsPossibleSellTicket(bool &isTicketValid)
IsPossibleSellTicket - function check ticket validity and owner ticket validity.
Definition ECommonFunctionalityModule.cpp:3244
virtual EIssueLogicDefines::ReturnValues ClearOneWayTickets(unsigned char ticketIndex)
Function clears one way ticket flags on card @list cleared flags:
Definition ECommonFunctionalityModule.cpp:2581
virtual EIssueLogicDefines::ReturnValues PrepareCardTicketIndex()
PrepareCardTicketIndex - function calculate free card ticket index and set it to data storage.
Definition ECommonFunctionalityModule.cpp:3331
virtual EIssueLogicDefines::ReturnValues GetNumberOfUsedFellowTravellersIndexesOnCard(unsigned char &ticketCont)
Definition ECommonFunctionalityModule.cpp:4088
virtual EIssueLogicDefines::ReturnValues IsStayOnLastBusStop(bool &stayOnLastBusStop)
Function check if actual bus stop is last on trip.
Definition ECommonFunctionalityModule.cpp:1928
virtual EIssueLogicDefines::ReturnValues CheckCashIssueConditions()
Check conditions to issue a ticket.
Definition ECommonFunctionalityModule.cpp:3446
virtual EIssueLogicDefines::ReturnValues PrepareIssueData()
Function prepare common data to issue ticket.
Definition ECommonFunctionalityModule.cpp:1961
virtual EIssueLogicDefines::ReturnValues PrepareTimeTicketData(Strojcek::VstupneUdaje::TarifnySystem::ETarifa *&tariff, short validTimeTicketIndex)
Prepare time ticket common data by time ticket tariff ticket number. This function is called from Pre...
Definition ECommonFunctionalityModule.cpp:2301
EIssueLogicDefines::ReturnValues CheckTicketLineTripBusStopValidity(unsigned char ticketIndex, bool &isTicketValid)
CheckTicketLineTripBusStopValidity - checks if ticket on card has same line, trip,...
EIssueLogicDefines::ReturnValues EvaluateCardNetworkWithTariffNetwork(bool &matchingNetwork)
EIssueLogicDefines::ReturnValues FillIssuedTicketSegmentSpatialUnits(const EIssueLogicDefines::PriceComputeUnit priceComputeUnit, IssuedTicketSegment *issuedTicketSegment)
Definition ECommonFunctionalityModule.cpp:4276
virtual ~ECommonFunctionalityModule()
standard c++ destructor, destroy data class
Definition ECommonFunctionalityModule.cpp:1560
virtual EIssueLogicDefines::ReturnValues PrepareTicketIssueData(IssuedTicketSegment *issuedTicketSegment)
Function prepare common data ( tariff, tariffGroup, tariffGroupTariff ) by card type and set to data ...
Definition ECommonFunctionalityModule.cpp:2771
virtual EIssueLogicDefines::ReturnValues ClearOneWayTicketsTimeValidity()
Function clears one way ticket time validity (shared attribute for all one way tickets)
Definition ECommonFunctionalityModule.cpp:2627
virtual EIssueLogicDefines::ReturnValues PrepareTariffDataFromSubstituteTariffGroup(IssuedTicketSegment *issuedTicketSegment, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *tariffGroup, Strojcek::VstupneUdaje::TarifnySystem::ETarifa *manualSelectedtariff)
PrepareTariffFromSubstituteTariffGroup - Function finds substitute tariff group by domestic currency ...
Definition ECommonFunctionalityModule.cpp:3855
EIssueLogicDefines::ReturnValues CheckTicketLineTripValidity(unsigned char ticketIndex, bool &isTicketValid)
CheckTicketLineTripValidity - checks if ticket on card has same line, trip, protect number.
virtual EIssueLogicDefines::ReturnValues CheckTicketValidity(bool &isTicketValid, bool &ticketOnTimeTicket, signed char ticketIndex=0)
Check ticket validity on card on ticketIndex.
Definition ECommonFunctionalityModule.cpp:1777
virtual EIssueLogicDefines::ReturnValues IsCardTypeMatchingTariffDiscount(Strojcek::VstupneUdaje::TarifnySystem::ETarifa *tariff, bool &cardTypeMatching, bool checkTimeTicketDiscount, unsigned char customerProfileIndex)
Function compare discount type on tariff and discount type on card.
Definition ECommonFunctionalityModule.cpp:3015
EIssueLogicDefines::ReturnValues SetIssuedTicketFlags(IssuedTicket *issuedTicket)
SetIssuedTicketFlags Evaluate and set flags to issued ticket.
Definition ECommonFunctionalityModule.cpp:4217
virtual EIssueLogicDefines::ReturnValues PrepareSubstituteTariffGroup(IssuedTicketSegment *issuedTicketSegment, Strojcek::VstupneUdaje::TarifnySystem::ETarifa *tariff, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *tariffGroup)
PrepareSubstituteTariffGroupTariff - Function finds substitute tariff group by selected tariff ticket...
Definition ECommonFunctionalityModule.cpp:3819
virtual EIssueLogicDefines::ReturnValues GetFirstCustomerProfileValidByTariff(IssuedTicketSegment *issuedTicketSegment, unsigned char &usedCustomerProfile)
Function checks tariff discount type with issuing tariff discount. Calls IsAllowedTimeTicketTariffToC...
Definition ECommonFunctionalityModule.cpp:3508
virtual EIssueLogicDefines::ReturnValues Init()
Saves required modules into members.
Definition ECommonFunctionalityModule.cpp:1568
virtual EIssueLogicDefines::ReturnValues GetFellowTravelersCount(unsigned long &fellowTravelerCount)
GetFellowTravelersCount - Returns count of fellow travelers.
Definition ECommonFunctionalityModule.cpp:4118
EIssueLogicDefines::ReturnValues SetNetworkWideFlag(IssuedTicket *issuedTicket)
Sets network wide flag by price list type.
Definition ECommonFunctionalityModule.cpp:4162
virtual EIssueLogicDefines::ReturnValues PrepareTariffDataBySubstituteTariffGroups(IssuedTicketSegment *issuedTicketSegment)
PrepareSubstituteTariffGroup - Function prepare substitute tariff from actual tariffGroup.
Definition ECommonFunctionalityModule.cpp:3757
virtual EIssueLogicDefines::ReturnValues CheckTicketCount(long ticketIndex=-1)
Function check setting in tariff system "max ticket count" on every ticket position on card and than ...
Definition ECommonFunctionalityModule.cpp:2661
virtual bool CheckMaxAgeForDiscount(unsigned char customerProfileIndex, bool timeTicket, bool &isDiscountAllowed)
Function checks if age is within given discount.
Definition ECommonFunctionalityModule.cpp:3967
EIssueLogicDefines::ReturnValues IsCardCompanyNumberAccepted(std::vector< short > acceptedCompanyNumbers, bool &isAccepted) const
Retrieves card company number from read facade and chcecks whether it's contained in the accepted com...
Definition ECommonFunctionalityModule.cpp:3165
EIssueLogicDefines::ReturnValues GetBusStopID(unsigned long &checkInBusStopID, unsigned long &checkOutBusStopID)
Function prepare bus stop ID by priceList type.
Definition ECommonFunctionalityModule.cpp:3201
EIssueLogicDefines::ReturnValues IsProcessingJourneyOnTimeTicket(bool &journeyOnTimeTicket, IssuedTicketSegment *issuedTicketSegment=NULL)
IsProcessingJourneyOnTimeTicket. Function checks time ticket collection validity and flag in oneWayTi...
Definition ECommonFunctionalityModule.cpp:1650
EIssueLogicDefines::ReturnValues PrepareTariffDataForManualIssue(IssuedTicketSegment *issuedTicketSegment)
Definition ECommonFunctionalityModule.cpp:3913
virtual EIssueLogicDefines::ReturnValues FillAdditionalDataCalculatePrice(const DataForPriceCalculation &dataForPriceCalculation, Strojcek::VstupneUdaje::_VSTUPNA_STRUKTURA &inputDataCalculatePrice)
Function set to inputDataCalculatePrice nothing.
Definition ECommonFunctionalityModule.cpp:3151
virtual EIssueLogicDefines::ReturnValues PrepareCashTicketData(Strojcek::VstupneUdaje::TarifnySystem::ETarifa *&tariff, unsigned char customerProfileIndex)
Function prepare common data( tariff. tariffGroup, tariffGroupTariff ) by card type....
Definition ECommonFunctionalityModule.cpp:2389
virtual EIssueLogicDefines::ReturnValues PrepareAutoIssueCommonData(Strojcek::VstupneUdaje::TarifnySystem::ETarifa *tariff, Strojcek::VstupneUdaje::TarifnySystem::ETarifnaSkupina *&tariffGroup)
Function save common data( tariff, tariffGroup, tariffGroupTariff ) by tariffGroupNumber to data stor...
Definition ECommonFunctionalityModule.cpp:2533
virtual EIssueLogicDefines::ReturnValues PrepareTariffDataForAutoIssue(IssuedTicketSegment *issuedTicketSegment)
Function prepares data for auto issue.
Definition ECommonFunctionalityModule.cpp:2819
virtual EIssueLogicDefines::ReturnValues OwnerHasFellowTravelers(bool &ownerHasFellowTravelers)
Definition ECommonFunctionalityModule.cpp:4066
virtual EIssueLogicDefines::ReturnValues GetFirstCustomerProfileValidByTimeTicketTariff(IssuedTicketSegment *issuedTicketSegment, unsigned char &usedCustomerProfile)
Function checks tariff discount type with issuing tariff discount.
Definition ECommonFunctionalityModule.cpp:3548
virtual EIssueLogicDefines::ReturnValues PrepareMarkerIssueData(IssuedTicketSegment *IssuedTicketSegment)
Function sets tariff by tariff group from data storage for marker issue.
Definition ECommonFunctionalityModule.cpp:2723
virtual EIssueLogicDefines::ReturnValues GetFirstCustomerProfileValidByOneWayTicketTariff(IssuedTicketSegment *issuedTicketSegment, unsigned char &usedCustomerProfile)
Function checks tariff discount type with issuing tariff discount.
Definition ECommonFunctionalityModule.cpp:3613
virtual EIssueLogicDefines::ReturnValues EvaluateCardTypeMatch(bool cardTypeMatching)
Evaluates information about matching card type. Application behaves different to not-matching card ty...
Definition ECommonFunctionalityModule.cpp:3695
ReturnValues
Definition ETicketIssueLogicDefines.h:50
PriceComputeUnit
Definition ETicketIssueLogicDefines.h:369
Definition ETicketIssueLogicDataStorage.h:52
Definition ETicketIssueLogic.h:55
Definition ETicketIssueModule.h:12
Definition IssuedTicketSegment.h:29
Definition IssuedTicket.h:34
const char * E_COMMON_FUNCTIONALITY_MODUL_NAME
Definition ETicketIssueLogicDefines.cpp:10
SYSTEM INCLUDES.
Definition CardFacadeManagerXML.h:7