-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpayment2.h
65 lines (47 loc) · 1.29 KB
/
payment2.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#ifndef PAYMENT2_H_
#define PAYMENT2_H_
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 10
typedef struct ST_cardData
{
unsigned char cardHolderName[25];
unsigned char primaryAccountNumber[19];
unsigned char cardExpirationDate[6];
}ST_cardData;
typedef struct ST_terminalData
{
unsigned char transAmount[8];
unsigned char maxTransAmount[8];
unsigned char transactionDate[11];
}ST_terminalData;
typedef enum EN_transStat
{
DECLINED,
APPROVED
}EN_transStat;
typedef struct ST_serverData
{
EN_transStat transactionStatus;
unsigned int receiptReferenceNumber;
}ST_serverData;
typedef struct ST_transaction
{
ST_cardData cardHolderData;
ST_terminalData transData;
ST_serverData transResponse;
}ST_transaction;
typedef struct ST_accountBalance
{
unsigned char balance[8];
unsigned char primaryAccountNumber[19];
}ST_accountBalance;
void fillCardData(ST_transaction *transaction);
void checkAmount(ST_transaction *transaction);
void fillTerminalData(ST_transaction *transaction);
void checkExpiryDate(ST_transaction *transaction);
void saveTransactionIntoServer(ST_transaction *transaction);
void checkBalance(ST_transaction *transaction);
ST_transaction transactionAll;
#endif /* PAYMENT2_H_ */