AppCore
Loading...
Searching...
No Matches
ETicketIssueLogicDefines.h
Go to the documentation of this file.
1#ifndef EISSUELOGICDEFINES_H
2#define EISSUELOGICDEFINES_H
3
4#include <string>
5
6#include "core/common/eplatform.h"
7
8namespace EM
9{
10 namespace TicketIssueLogic
11 {
12 extern const char *E_CANCELATION_MODULE_NAME;
13 extern const char *E_CARD_ACTIVATION_MODULE_NAME;
14 extern const char *E_COMBINED_TICKET_MODULE_NAME;
15 extern const char *E_COMMON_FUNCTIONALITY_MODUL_NAME;
17 extern const char *E_REGION_CARD_MODULE_NAME;
18 extern const char *E_CREDIT_RECHARGE_MODULE_NAME;
19 extern const char *E_INTERCHANGE_MODULE_NAME;
20 extern const char *E_ONE_WAY_TICKET_MODULE_NAME;
21 extern const char *E_PRINT_MODULE_NAME;
22 extern const char *E_PRINT_MODULE_COMBINED_TICKET_NAME;
23 extern const char *E_STATISTIC_MODULE_NAME;
25 extern const char *E_TIME_TICKET_MODULE_NAME;
26 extern const char *E_CROSS_TRANSFER_MODULE_NAME;
27 extern const char *E_ZONE_MODULE_NAME;
28 extern const char *E_TIME_TICKET_ACTIVATION_MODULE;
29 extern const char *E_CHECKIN_CHECKOUT_MODULE;
30 extern const char *E_CALCULATE_PRICE_MODULE;
31 extern const char *E_TRIP_SECTION_MODULE_NAME;
32 extern const char *E_WALLET_MODULE_NAME;
33 extern const char *E_ALTERNATIVE_TRIP_MODULE_NAME;
34 extern const char *E_OUTPUT_DATA_TRIP_MODULE_NAME;
36 extern const char *VALID_TICKET_ACCEPTANCE_MODULE_NAME;
37 extern const char *CASH_PRICE_ROUNDING_MODULE_NAME;
39
40 extern const long E_NETWORK_CODE_MASK;
41 extern const long MIN_CARD_PROVIDER_NUMBER;
42 extern const long MAX_CARD_PROVIDER_NUMBER;
43
44 extern const long CAPPING_RESET_TIME_HOURS;
45
46 class DLL_API EIssueLogicDefines
47 {
48 public:
49
51 {
52 Ok = 0,
53 BadInputData = 1,
54 CalculatePriceError = 2,
55 NullTariff = 3,
56 NullTariffGroup = 4,
57 NullTariffData = 5,
58 PrinterTemplateNotFound = 6,
59 DontPrint = 7,
60 PrintError = 8,
61 WriteStatisticError = 9,
62 BadOutputStatisticData = 10,
63 WrongInputParameters = 11,
64 CardBlocked = 12,
65 CardNotSell = 13,
66 InvalidCard = 14,
67 NoEmployeeCard = 15,
68 NoEmployeeTariff = 16,
69 ModuleNotFound = 17,
70 BadPaymentType = 18,
71 NullWriteRequest = 19,
72 ErrorIssueTicket = 20,
73 ErrorIssueTicketRestricted = 21,
74 ErrorIssueTicketCaseLow = 22,
75 ValidTicket = 23,
76 OtherCard = 24,
77 ValueUnderLimit = 25,
78 ValueOverLimit = 26,
79 BadPurseCardData = 27,
80 MaxPurseBalanceExceeded = 28,
81 ErrorInitModules = 29,
82 ErrorActivateCardNoSpaceOnCard = 30,
83 ErrorInactiveCard = 31,
84 ErrorInvalidTransportSection = 32,
85 ErrorCancelationTicket = 33,
86 NotFoldOfValue = 34,
87 BadCommonCardData = 35,
88 NoSpaceOnCard = 36,
89 ErrorWhileFillingNewTimeTicket = 37,
90 ErrorCancelTimeTicket = 38,
91 StornoDisabled = 39,
92 TimeTicketNotFound = 40,
93 TimeTicketNotValid = 41,
94 BadServiceCardData = 42,
95 ErrorProcessServiceData = 43,
96 AuditorCheckIn = 44,
97 AuditorCheckOut = 45,
98 BadTimeTicketCardData = 46,
99 BadUserInputData = 47,
100 ErrorPrepareOutputStatisticData = 48,
101 ErrorPrepareOutputPreIssueData = 49,
102 ErrorPrepareOutputPostIssueData = 50,
103 ErrorPrepareTicketOutputData = 51,
104 RestrictedZones = 52,
105 PassNumberRequired = 53,
106 ErrorPreparePrintData = 54,
107 ErrorCreateRequest = 55,
108 ErrorInvalidCardDiscount = 56,
109 ErrorCardValidityExpired = 57,
110 BadOneWayTicketCardData = 58,
111 ErrorInvalidPurse = 59,
112 ErrorBuyTicketForOwnerFirst = 60,
113 ErrorInvalidTariffToCard = 61,
114 ErrorIssueOnPortableWallet = 62,
115 ErrorParsingFile = 63,
116 ErrorProcessingCheckOut = 64,
117 ValidCheckOut = 65,
118 FellowTravelersCanAlsoDoTransfer = 66,
119 ErrorActivateTimeTicket = 67,
120 ErrorInvalidUrbanTranportNumber = 68,
121 RestrictedCheckInOutSystem = 69,
122 ErrorPrepareCardTicketIndex = 70,
123 NullInternalPointer = 71, // error TicketIssueLogic initialization. Core member is NULL
124 ErrorOtherCompanyAuditor = 72,
125 CannotCancelOwnersTicketWithFellowTravelers = 73,
126 NoValidTimeTicket = 74, //OWT autoissue is forbidden in input data, and no valid TT was found on the card
127 ExceededMaximumInterchangeTime = 75,
128 ErrorDisallowedCardCompanyForJourney = 76,
129 TimeValidOneWayTicketToOverwrite = 77,
130 ErrorDisallowedCardCompanyForCreditRecharge = 78,
131 ErrorIssueTicketOnLastStop = 79,
132 BuySurchargeForSpatiallyInvalidTimeTicket = 80,
133 ErrorTooManyPassengers = 81,
134 ErrorAdditionalSynchronousRead = 82,
135 ErrorDiscountMismatch = 83,
136 ErrorDiscountExpiredOverAge = 84,
137 BadLogCardData = 85,
138 ErrorPostProcessBywayTripSection = 86,
139 NoAuditorCardOnAuditorOperation = 87,
140 UnsupportedOperation = 88,
141 ErrorCreateFile = 89,
142 InsufficientTicketTimeValidityForSelectedTrip = 90,
143 ErrorPostProcessRemoveSectionOnBorderOfZonation = 91,
144 ErrorDisallowedCardForJourney = 92,
145 RestrictedCashCreditRecharge = 93,
146 PrintErrorObstacleInPrinterTray = 94,
147 DisallowedCardPaymentOnBusStopInForeignCountry = 95,
148 ErrorTimeTicketExceedsCardValidity = 96,
149 DifferentAreaForFellowTravellerAndTicketOwner = 97,
150 BadCappingCardData = 98,
151 UnsupportedCardMediumForInterchangableTicket = 99,
152 DomesticIssueForbidden = 100,
153 ErrorCashPriceRounding = 101,
154 ExplicitlySelectedZonesPartiallyCoveredByTimeTickets = 102,
155 ExplicitlySelectedZonesCompletelyCoveredByTimeTickets = 103,
156 FellowTravellersAreNotAbleToDoTransfer = 104,
157
158 UnitTestErrorOffset = 1000
159 };
160
161 /*
162 toto je v datainpute ako enum, len to je v zlom hlavickovom subore
163 */
165 {
166 PaymentUndefined = -1,
167 PaymentCash = 0,
168 PaymentChipCard = 1,
169 PaymentBankCard = 2,
170 PaymentInvoice = 3,
171 PaymentMarker = 5,
172 PaymentCorrectionEvent = 9,
173 PaymentViaInternet = 10,
174 PaymentCoiner = 11,
175 PaymentCoupon = 12,
176 PaymentAggregationEMVCard = 13,
177 PaymentAggregationAccountTD = 14,
178 PaymentQrCode = 15,
179 PaymentOther
180 };
181
182 static std::string PaymentTypeToString( const PaymentType paymentType );
183
185 {
186 OperationUndefined = -1,
187 OperationSell = 0,
188 OperationCancel = 1,
189 OperationCreditRecharge = 2,
190 OperationCancelCreditRecharge = 3,
191 // UNUSED = 4,
192 OperationTimeTicketSell = 5,
193 OperationTimeTicketCancel = 6,
194 OperationAuditor = 7,
195 OperationSurchargeSell = 8,
196 OperationCoinerOverfall = 9,
197 OperationAdditionalTariffAreaSurcharge = 10,
198 OperationForbiddenCard = 11,
199 /*
200 * TerminalSell - selling ticket on stationary terminal (SelfServiceValidator, PreSale terminal, automatic vending machine)
201 * Very similar to OperationSell, but it has not specified line, trip or bus stops
202 */
203 OperationTerminalSell = 12,
204 OperationUnpaidExpense = 13,
205 OperationPriceCalculation = 14,
206 OperationTimeTicketPriceCalculation = 15,
207 /*
208 * TicketRegistration - Redmine task 1890 - selling registration ticket is very similar operation as OperationSell. Only one exception. This ticket will not be written on card.
209 *
210 * This operation is set from application based on tariff templateID 'RegistrationTicket'( ETarifa::RegistrationTicket )
211 */
212 OperationTicketRegistration = 16
213 };
214
215 static std::string OperationTypeToString( const OperationType operationType );
216
218 {
219 CardWriteNothing = 0x00,
220 CardWriteAuditor = 0x01,
221 CardWriteOneWayTickets = 0x02,
222 CardWriteWallet = 0x04,
223 CardWriteTimeTickets = 0x08
224 };
225
227 {
228 FamilyUndefinedModules = -1,
229 FamilyPrintModules = 0,
230 FamilyStatisticModules = 1,
231 FamilyCommonModules = 2,
232 FamilyOneWayTicketModules = 3,
233 FamilyTimeTicketModules = 4,
234 FamilyCreditRechargeModules = 5,
235 FamilyInterchangeModules = 6,
236 FamilyCancelationModules = 7,
237 FamilyCardActivationModules = 8,
238 FamilyCombinedTicketModules = 9,
239 FamilyTimeTicketSellModules = 10,
240 FamilyServiceModules = 11,
241 FamilyCrossTransferModules = 12,
242 FamilyZoneModules = 13,
243 FamilyTimeTicketActivationModules = 14,
244 FamilyCheckinCheckoutModules = 15,
245 // UNUSED VALUE (16)
246 FamilyCalculatePriceModules = 17,
247 FamilyRegionCardModules = 18,
248 FamilyTripSectionModules = 19,
249 FamilyWalletModules = 20,
250 // UNUSED VALUE (21)
251 FamilyAlternativeTripModules = 22,
252 FamilyOutputDataModules = 23,
253 FamilyTripSectionPostProcessModules = 24,
254 FamilyValidTicketAcceptanceModules = 25,
255 FamilyCashPriceRoundingModules = 26,
256 FamilyCount = 27 // had to be always last with biggest number
257 };
258
260 {
261 IssueUndefined = -1,
262 IssueAuto = 0,
263 IssueManual = 1
264 };
265
267 {
268 TripSectionUndefined = -1,
269 TripSectionOnTimeTicket = 0,
270 TripSectionOnCash = 2,
271 TripSectionAdditionalZonesCharged = 3, // special section created for additinal zones after trip (after checkout bus stop) that will be charged
272 TripSectionAdditionalZonesFree = 4, // special section created for additinal zones after trip (after checkout bus stop) that are covered by time ticket, thus will not be charged
273 TripSectionKilometersFree = 5 // special section created for free kilometers. For example 'one bus stop section' on border of zonation
274 };
275
277 {
278 ProcessLastTicket = 0,
279 ProcessAllTickets = 1
280 };
281
283 {
284 TransferForAllTicketsAsk = 0,
285 TransferForAllTicketsOn = 1,
286 TransferForAllTicketsOff = 2
287 };
288
290 {
291 ProlongTicketsTimeValidityOff = 0,
292 ProlongTicketsTimeValidityOwnerOnly = 1,
293 ProlongTicketsTimeValidityAllTickets = 2
294 };
295
297 {
298 OneWayTicketCardPositioningIncremental = 0,
299 OneWayTicketCardPositioningSeparated = 1
300 };
301
303 {
304 CICOStatusUndefined = 0,
305 CICOStatusPossibleCheckout = 1,
306 CICOStatusValidCheckinTicket = 2,
307 CICOStatusValidCheckoutTicket = 3
308 };
309
311 {
312 CardTypeWithoutDiscount = 1,
313 CardTypeHalfChild = 2,
314 CardTypeFreeOfCharge = 3,
315 CardTypeStudent = 4,
316 CardTypePensionerToSeventyYears = 5,
317 CardTypePensionerOverSeventyYears = 6,
318 CardTypePupil = 7,
319 CardTypePortable = 8,
320 CardTypeBulk = 9,
321 CardTypeTourist = 10,
322 CardTypeSpecial11 = 11,
323 CardTypeSpecial12 = 12,
324 CardTypeEmployee = 13,
325 CardTypeSpecial2 = 14,
326 CardTypeSpecial3 = 15,
327 CardTypeAdultOverFifteen = 16,
328 CardTypeAdult = 101,
329 CardTypeChild = 102,
330 CardTypeStudentToTwentySixYears = 103,
331 CardTypePensioner = 104,
332 CardTypeInvalidityPensioner = 105,
333 CardTypeStaff = 109,
334 CardTypeScholar = 119,
335 CardTypeJanskyGoldPlaqueHolder = 148,
336 CardTypeFamilyMemberOverFifteenYears = 149,
337 CardTypePersonOverSixtyFiveYears = 150,
338 CardTypePersonOverSeventyYears = 151,
339 CardTypePersonOverEightyYears = 152,
340 CardTypeZTPLicenseHolder = 153,
341 CardTypeZTPPLicenseHolder = 154,
342 CardTypeFamilyMemberFromSixToFifteen = 155,
343 CardTypeFamilyMemberFromFifteenToTwentySix = 156,
344 CardTypeFamilyMemberPensioner = 157,
345 CardTypeOrganization = 162,
346 CardTypeAnonym = 163
347 };
348
350 {
351 PeripheralsEventUndefined = 0,
352 PeripheralsEventAuditorCheckInBlock = 1,
353 PeripheralsEventAuditorCheckOutUnblock = 2,
354 PeripheralsEventDriverManualBlock = 3,
355 PeripheralsEventDriverManualUnblock = 4,
356 PeripheralsEventAutoUnblockOnBusStopArrival = 5
357 };
358
359 /*
360 * Detailf for ticket index saved in datastorage, @see ETicketIssueLogicDataStorage::GetCardTicketIndexToUse
361 */
363 {
364 TicketIndexDetailNoDetail = 0,
365 TicketIndexDetailNoSpaceOnCardForOWT = 1,
366 TicketIndexDetailOWTWithoutWriteOnCard = 2,
367 TicketIndexDetailFellowTravllerWithoutWriteOnCard = 3,
368 TicketIndexDetailOWTWithoutWriteOnCardOnOBC = 4,
369 TicketIndexDetailDifferentCardAndTariffNetwork = 5
370 };
371
373 {
374 PriceComputeUnitUndefined = 0,
375 PriceComputeUnitKilometers = 1,
376 PriceComputeUnitZones = 2,
377 PriceComputeUnitCount = 3
378 };
379
384 {
385 RegionCodeBratislavaCityCard = 0x01,
386 // 0x02 - see CityCode
387 RegionCodeMartin = 0x04, // multiCARD
388 RegionCodeKosiceCityCard = 0x08,
389 // 0x10 - see CityCode
390 RegionCodeBratislava = 0x20
391 };
392
397 {
398 // 0x01 - see RegionCode
399 CityCodeTrencin = 0x02,
400 // 0x04 - see RegionCode
401 // 0x08 - see RegionCode
402 CityCodeBratislava = 0x10,
403 // 0x20 - see RegionCode
404 CityCodeMartin = 0x80,
405 CityCodeMartinSuburban = 0x100
406 };
407
409 {
410 EMVTransactionDataCardNumber = 1,
411 EMVTransactionDataCardBranch = 2,
412 EMVTransactionDataApprovalCode = 3,
413 EMVTransactionDataSerialNumber = 4,
414 EMVTransactionDataTerminalId = 5,
415 EMVTransactionDataInvoiceNumber = 6
416 };
417 };
418 }
419}
420
421#endif // EISSUELOGICDEFINES_H
#define DLL_API
Definition ECardFacadeDefines.h:8
PeripheralsStatisticEventType
Definition ETicketIssueLogicDefines.h:350
TicketIndexDetail
Definition ETicketIssueLogicDefines.h:363
RegionCode
Definition ETicketIssueLogicDefines.h:384
TransferForAllTicketsOnCard
Definition ETicketIssueLogicDefines.h:283
CardWriteOperations
Definition ETicketIssueLogicDefines.h:218
static std::string OperationTypeToString(const OperationType operationType)
OneWayTicketCardPositioning
Definition ETicketIssueLogicDefines.h:297
IssueType
Definition ETicketIssueLogicDefines.h:260
PreparePrintType
Definition ETicketIssueLogicDefines.h:277
CityCode
Definition ETicketIssueLogicDefines.h:397
TripSectionType
Definition ETicketIssueLogicDefines.h:267
OperationType
Definition ETicketIssueLogicDefines.h:185
static std::string PaymentTypeToString(const PaymentType paymentType)
PaymentType
Definition ETicketIssueLogicDefines.h:165
ModuleFamily
Definition ETicketIssueLogicDefines.h:227
ReturnValues
Definition ETicketIssueLogicDefines.h:51
CardType
Definition ETicketIssueLogicDefines.h:311
EMVTransactionData
Definition ETicketIssueLogicDefines.h:409
PriceComputeUnit
Definition ETicketIssueLogicDefines.h:373
ProlongTicketsTimeValidity
Definition ETicketIssueLogicDefines.h:290
CICOStatus
Definition ETicketIssueLogicDefines.h:303
const char * E_CREDIT_RECHARGE_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:13
const char * E_CHECKIN_CHECKOUT_MODULE
Definition ETicketIssueLogicDefines.cpp:24
const char * E_OUTPUT_DATA_TRIP_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:29
const char * E_COMMON_FUNCTIONALITY_MODUL_COMBINED_TICKET_NAME
Definition ETicketIssueLogicDefines.cpp:11
const char * E_WALLET_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:27
const char * E_TIME_TICKET_ACTIVATION_MODULE
Definition ETicketIssueLogicDefines.cpp:23
const long E_NETWORK_CODE_MASK
Definition ETicketIssueLogicDefines.cpp:35
const char * E_ONE_WAY_TICKET_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:15
const char * E_CROSS_TRANSFER_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:21
const char * E_PRINT_MODULE_COMBINED_TICKET_NAME
Definition ETicketIssueLogicDefines.cpp:17
const char * E_STATISTIC_MODULE_COMBINED_TICKET_NAME
Definition ETicketIssueLogicDefines.cpp:19
const long CAPPING_RESET_TIME_HOURS
Definition ETicketIssueLogicDefines.cpp:63
const char * TRIP_SECTION_POST_PROCESS_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:30
const char * E_COMBINED_TICKET_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:9
const char * E_REGION_CARD_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:12
const char * VALID_TICKET_ACCEPTANCE_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:31
const char * E_CALCULATE_PRICE_MODULE
Definition ETicketIssueLogicDefines.cpp:25
const char * E_STATISTIC_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:18
const char * CASH_PRICE_ROUNDING_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:32
const char * E_INTERCHANGE_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:14
const long MIN_CARD_PROVIDER_NUMBER
Definition ETicketIssueLogicDefines.cpp:59
const char * E_TRIP_SECTION_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:26
const char * E_ZONE_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:22
const char * TIME_TICKET_MODULE_ONE_WAY_TICKET_PRESALE_NAME
Definition ETicketIssueLogicDefines.cpp:33
const char * E_TIME_TICKET_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:20
const char * E_ALTERNATIVE_TRIP_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:28
const long MAX_CARD_PROVIDER_NUMBER
Definition ETicketIssueLogicDefines.cpp:60
const char * E_CANCELATION_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:7
const char * E_COMMON_FUNCTIONALITY_MODUL_NAME
Definition ETicketIssueLogicDefines.cpp:10
const char * E_PRINT_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:16
const char * E_CARD_ACTIVATION_MODULE_NAME
Definition ETicketIssueLogicDefines.cpp:8
SYSTEM INCLUDES.
Definition CardFacadeManagerXML.h:7