AppCore
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
EM::TicketIssueLogic::ERegionCardModule Class Reference

#include <ERegionCardModule.h>

Inheritance diagram for EM::TicketIssueLogic::ERegionCardModule:
Inheritance graph
[legend]
Collaboration diagram for EM::TicketIssueLogic::ERegionCardModule:
Collaboration graph
[legend]

Public Member Functions

 ERegionCardModule (ETicketIssueLogicDataStorage *dataStorage, std::string moduleName=E_REGION_CARD_MODULE_NAME)
 
virtual ~ERegionCardModule ()
 
virtual EIssueLogicDefines::ReturnValues Init ()
 init module input data ( for example other module )
 
virtual EIssueLogicDefines::ReturnValues TryProlongAndEvaluateRegionalDiscountValidity ()
 Function calculate prolong month count, calculate price and set flags in facade( Readed and Writing )
 
virtual EIssueLogicDefines::ReturnValues PrepareRegionCardDataForTimeTicketSell ()
 Read region card data from card, set region card flags according to card data.
 
virtual EIssueLogicDefines::ReturnValues SetRegionalCardProlongData ()
 Set prolong flag.
 
virtual EIssueLogicDefines::ReturnValues FillAdditionalDataCalculatePrice (const DataForPriceCalculation &dataForPriceCalculation, Strojcek::VstupneUdaje::_VSTUPNA_STRUKTURA &inputDataCalculatePrice)
 Function set to inputDataCalculatePrice application and prolong tariff number.
 
EIssueLogicDefines::ReturnValues FillIssuedTicketData (IssuedTicket *issuedTicket)
 Prepare issued ticket data( valid dicount coupon index )
 
EIssueLogicDefines::ReturnValues CalculateAndFillRegionalDiscountForTimeTicketSell (IssuedTicket *issuedTicket)
 Calculate and fill adjusted price for time ticket sell by regional discount( Region or city card ) to issued ticket IssuedTicket::SetAdjustedTimeTicketPriceAfterRegionalDiscount.
 
EIssueLogicDefines::ReturnValues GetRegionalDiscountCodeFromCardForPriceCalculation (unsigned long &regionalDiscountCodeForPriceCalculation)
 Gets regional discount code from card by TS setting 170.
 
EIssueLogicDefines::ReturnValues SetTimeTicketSellRegionalDiscountFlags (unsigned char timeTicketIndex, IssuedTicket *issuedTicket)
 
bool IsRegionalCard ()
 Checks region code flag on card( SCS strcuture EAppIssuer::Get/Set IssuerType, ECardDataFacadeCommon::GetAppIssuerType ). Currently is supported only code 0x80.
 
- Public Member Functions inherited from EM::TicketIssueLogic::ETicketIssueModule
 ETicketIssueModule (const std::string &name, EIssueLogicDefines::ModuleFamily moduleFamily)
 
virtual ~ETicketIssueModule ()
 
bool GetName (std::string &moduleName)
 unique module identificator
 
bool GetModuleFamily (EIssueLogicDefines::ModuleFamily &moduleFamily)
 return by reference module family
 

Protected Member Functions

virtual EIssueLogicDefines::ReturnValues FindValidProlongTariff ()
 Function pass all tariff on actual tariff group. Find on tariff template 23( CardUsingFee )
 
virtual EIssueLogicDefines::ReturnValues ReadAdditionalCardData ()
 Read additional discount coupon data from card.
 
virtual EIssueLogicDefines::ReturnValues PrepareRegionCardData ()
 Function prepare prolong tariff, check regional code and issuerType on card.
 

Constructor & Destructor Documentation

◆ ERegionCardModule()

INTERNAL ERegionCardModule::ERegionCardModule ( ETicketIssueLogicDataStorage dataStorage,
std::string  moduleName = E_REGION_CARD_MODULE_NAME 
)

CONSTRUCTOR

◆ ~ERegionCardModule()

ERegionCardModule::~ERegionCardModule ( )
virtual

DESTRUCTOR

Member Function Documentation

◆ CalculateAndFillRegionalDiscountForTimeTicketSell()

EIssueLogicDefines::ReturnValues ERegionCardModule::CalculateAndFillRegionalDiscountForTimeTicketSell ( IssuedTicket issuedTicket)

Calculate and fill adjusted price for time ticket sell by regional discount( Region or city card ) to issued ticket IssuedTicket::SetAdjustedTimeTicketPriceAfterRegionalDiscount.

CalculateAndFillRegionalDiscountForTimeTicketSell

Here is the call graph for this function:

◆ FillAdditionalDataCalculatePrice()

EIssueLogicDefines::ReturnValues ERegionCardModule::FillAdditionalDataCalculatePrice ( const DataForPriceCalculation dataForPriceCalculation,
Strojcek::VstupneUdaje::_VSTUPNA_STRUKTURA &  inputDataCalculatePrice 
)
virtual

Function set to inputDataCalculatePrice application and prolong tariff number.

Parameters
inputDataCalculatePrice- input data to calculate price
Note
see ancestor doxygen documentation

FillAdditionalDataCalculatePrice

Implements EM::TicketIssueLogic::ECalculatePriceModuleInterface.

Here is the call graph for this function:

◆ FillIssuedTicketData()

EIssueLogicDefines::ReturnValues ERegionCardModule::FillIssuedTicketData ( IssuedTicket issuedTicket)

Prepare issued ticket data( valid dicount coupon index )

PrepareIssuedTicketData

Here is the call graph for this function:

◆ FindValidProlongTariff()

EIssueLogicDefines::ReturnValues ERegionCardModule::FindValidProlongTariff ( )
protectedvirtual

Function pass all tariff on actual tariff group. Find on tariff template 23( CardUsingFee )

FindValidProlongTariff

Here is the call graph for this function:

◆ GetRegionalDiscountCodeFromCardForPriceCalculation()

EIssueLogicDefines::ReturnValues ERegionCardModule::GetRegionalDiscountCodeFromCardForPriceCalculation ( unsigned long &  regionalDiscountCodeForPriceCalculation)

Gets regional discount code from card by TS setting 170.

GetRegionalDiscountCodeForPriceCalculation

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Init()

EIssueLogicDefines::ReturnValues ERegionCardModule::Init ( )
virtual

init module input data ( for example other module )

Init

Returns
enum result value

Reimplemented from EM::TicketIssueLogic::ETicketIssueModule.

Here is the call graph for this function:

◆ IsRegionalCard()

bool ERegionCardModule::IsRegionalCard ( )

Checks region code flag on card( SCS strcuture EAppIssuer::Get/Set IssuerType, ECardDataFacadeCommon::GetAppIssuerType ). Currently is supported only code 0x80.

Note
Mifare structures with discount coupon type v.1 always return false because this version of coupon not support appissuer type
Here is the caller graph for this function:

◆ PrepareRegionCardData()

EIssueLogicDefines::ReturnValues ERegionCardModule::PrepareRegionCardData ( )
protectedvirtual

Function prepare prolong tariff, check regional code and issuerType on card.

PrepareRegionCardData

Reimplemented in EM::TicketIssueLogic::ERegionCardModuleTestWrapper.

Here is the caller graph for this function:

◆ PrepareRegionCardDataForTimeTicketSell()

EIssueLogicDefines::ReturnValues ERegionCardModule::PrepareRegionCardDataForTimeTicketSell ( )
virtual

Read region card data from card, set region card flags according to card data.

Returns

◆ ReadAdditionalCardData()

EIssueLogicDefines::ReturnValues ERegionCardModule::ReadAdditionalCardData ( )
protectedvirtual

Read additional discount coupon data from card.

Returns
OK - all ok
ErrorAdditionalSynchronousRead - card read error

ReadAdditionalCardData

Reimplemented in EM::TicketIssueLogic::ERegionCardModuleTestWrapper.

Here is the call graph for this function:

◆ SetRegionalCardProlongData()

EIssueLogicDefines::ReturnValues ERegionCardModule::SetRegionalCardProlongData ( )
virtual

Set prolong flag.

SetRegionalCardProlongData

Here is the caller graph for this function:

◆ SetTimeTicketSellRegionalDiscountFlags()

EIssueLogicDefines::ReturnValues ERegionCardModule::SetTimeTicketSellRegionalDiscountFlags ( unsigned char  timeTicketIndex,
IssuedTicket issuedTicket 
)
See also
coupon restrict code for project BID - Redmine Task 1563

SetTimeTicketSellRegionalDiscountFlags

Here is the call graph for this function:

◆ TryProlongAndEvaluateRegionalDiscountValidity()

EIssueLogicDefines::ReturnValues ERegionCardModule::TryProlongAndEvaluateRegionalDiscountValidity ( )
virtual

Function calculate prolong month count, calculate price and set flags in facade( Readed and Writing )

Note
function create new IssuedTicket

TryProlongRegionalCard

Here is the call graph for this function:

The documentation for this class was generated from the following files: