⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atm.h

📁 商业银行前置系统
💻 H
📖 第 1 页 / 共 2 页
字号:
/*
 * This is a part of the Application Preconsole
 * - Channel Access - ATM.
 * Copyright (C) 2000-2000 ABC.SDC.
 * All rights reserved.
 *
 * This source code is only intended as a supplement to the
 * Application Preconsole Reference and related
 * electronic documentation provided with the library.
 * See these sources for detailed information regarding the
 * Application Preconsole product. 
 *
 * Update record:
 * 2001-08-05 TianLei       - create private declaration file
 */

#ifndef __ATM_H__
#define __ATM_H__

/*
 * Constant macros defined in this file
 */

#define TIMEOUT 30 

/*
 * Path constant macros
 */

#define PATH_PORT "<Ap>/<Atm>/<Port>"

/*
 * Length constant macros
 */

#define LEN_ATMNO 8

/*
 * Count constant macros
 */

#define CNT_FIT 20 

/*
 * Size constant macros
 */

#define SIZE_MSG_ATM          2048
#define SIZE_MSGID            4
#define SIZE_FIT              13 

#define SIZE_TRANSCODE        3
#define SIZE_ACCNO            19
#define SIZE_TRANSAMT         8
#define SIZE_PIN              8
#define SIZE_TRACK3           104
#define SIZE_TRACK2           37
#define SIZE_REQSEQNO         6
#define SIZE_ENCRYPTDATA      16
#define SIZE_BANKCODE         4
#define SIZE_CORRECTCODE      4
#define SIZE_EXCEPTIONCODE    4
#define SIZE_DENOMPRESENT     2
#define SIZE_DENOMREMAIN      6
#define SIZE_DEPNO            4
#define SIZE_REQNUM           2

#define SIZE_DATETIME         10
#define SIZE_DATEINDAYS       5
#define SIZE_DATETIMEDAYS     (SIZE_DATETIME + SIZE_DATEINDAYS)
#define SIZE_OFFSETINCREMENT  5
#define SIZE_AVAILFUND        6
#define SIZE_TRANSFERAVAILAMT 6
#define SIZE_NONBOOK          2
#define SIZE_RESPSEQNO        12
#define SIZE_BAL              11
#define SIZE_REJECTCODE       4
#define SIZE_USAGECNT         2
#define SIZE_FITCNT           8
#define SIZE_FITAREA          (SIZE_FIT * CNT_FIT)
#define SIZE_MAXFIT           2000

/*
 * Types and structures declared in this file
 */

typedef struct tagATMSTRU
{
    char szAtmNo[LEN_ATMNO + 1];
    char szAddr[LEN_ADDR + 1];
    char cEncryptKey[SIZE_KEY];
    char cWorkKey[SIZE_KEY];

} ATMSTRU;

typedef ATMSTRU *       PATMSTRU;
typedef const ATMSTRU   CATMSTRU;
typedef const ATMSTRU * PCATMSTRU;

typedef struct tagCOMMAREASTRU
{
    char szAddr[LEN_ADDR + 1];
    char szMsgLen[6 + 1];
    char cMsg[SIZE_MSG_ATM];

} COMMAREASTRU;

typedef COMMAREASTRU *         PCOMMAREASTRU;
typedef const COMMAREASTRU     CCOMMAREASTRU;
typedef const COMMAREASTRU *   PCCOMMAREASTRU;

typedef ATMSTRU *       PATMTIASTRU;
typedef const ATMSTRU   CATMTIASTRU;
typedef const ATMSTRU * PCATMTIASTRU;

typedef struct tagCWDSTRU
{
    char cTcc;         
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status; 
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                 
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;  

    char cTrack3[SIZE_TRACK3];
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];     
    char cAccType;
    char cTransAmt[SIZE_TRANSAMT]; 
    char cCurrCode;
    char cReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];
    
} CWDSTRU;

typedef CWDSTRU *       PCWDSTRU;
typedef const CWDSTRU   CCWDSTRU;
typedef const CWDSTRU * PCCWDSTRU;

typedef struct tagTFRSTRU
{
    char cTcc;    
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
               
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];

    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;

    char cTrack3[SIZE_TRACK3];
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];
    char cTransAmt[SIZE_TRANSAMT];
    char cCurrCode;
    char cAccNo2nd[SIZE_ACCNO];
    char cBankCode[SIZE_BANKCODE];
    char cReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];
  
} TFRSTRU;

typedef TFRSTRU *       PTFRSTRU;
typedef const TFRSTRU   CTFRSTRU;
typedef const TFRSTRU * PCTFRSTRU;

typedef struct tagINQSTRU
{
    char cTcc;
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                 
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;    

    char cTrack3[SIZE_TRACK3];  
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];
    char cAccType;
    char cReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];
   
} INQSTRU;

typedef INQSTRU *       PINQSTRU;
typedef const INQSTRU   CINQSTRU;
typedef const INQSTRU * PCINQSTRU;

typedef struct tagCWCSTRU
{
    char cTcc;     
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                 
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;

    char cTrack3[SIZE_TRACK3];
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];
    char cTransAmt[SIZE_TRANSAMT];
    char cCurrCode;
    char cCorrectCode[SIZE_CORRECTCODE];
    char cReqSeqNo[SIZE_REQSEQNO];
    char cOrgReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];

} CWCSTRU;

typedef CWCSTRU *       PCWCSTRU;
typedef const CWCSTRU   CCWCSTRU;
typedef const CWCSTRU * PCCWCSTRU;

typedef struct tagPINSTRU
{
    char cTcc;  
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                  
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;

    char cTrack3[SIZE_TRACK3];
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];
    char cNewPin[SIZE_PIN];
    char cReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];
  
} PINSTRU;

typedef PINSTRU *       PPINSTRU;
typedef const PINSTRU   CPINSTRU;
typedef const PINSTRU * PCPINSTRU;

typedef struct tagDEPSTRU
{
    char cTcc;
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                          
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;

    char cTrack3[SIZE_TRACK3];
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];
    char cAccType;
    char cTransAmt[SIZE_TRANSAMT]; 
    char cCurrCode;
    char cDepNo[SIZE_DEPNO];
    char cReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];

} DEPSTRU;

typedef DEPSTRU *        PDEPSTRU;
typedef const DEPSTRU    CDEPSTRU;
typedef const DEPSTRU *  PCDEPSTRU;

typedef struct tagDPCSTRU
{
    char cTcc;
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                          
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;

    char cTrack3[SIZE_TRACK3];
    char cEncryptData[SIZE_ENCRYPTDATA];
    char cAccNo[SIZE_ACCNO];
    char cTransAmt[SIZE_TRANSAMT]; 
    char cCurrCode;
    char cDepNo[SIZE_DEPNO];
    char cCorrectCode[SIZE_CORRECTCODE];
    char cReqSeqNo[SIZE_REQSEQNO];
    char cOrgReqSeqNo[SIZE_REQSEQNO];
    char cTrack2[SIZE_TRACK2];
 
} DPCSTRU;

typedef DPCSTRU *        PDPCSTRU;
typedef const DPCSTRU    CDPCSTRU;
typedef const DPCSTRU *  PCDPCSTRU;

typedef struct tagMSRSTRU
{
    char cTcc;       
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Remain[SIZE_DENOMREMAIN];
    char cDenom2Remain[SIZE_DENOMREMAIN];
    char cDenom3Remain[SIZE_DENOMREMAIN];
    char cDenom4Remain[SIZE_DENOMREMAIN];
                 
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;
 
} MSRSTRU;

typedef MSRSTRU *       PMSRSTRU;
typedef const MSRSTRU   CMSRSTRU;
typedef const MSRSTRU * PCMSRSTRU;

typedef struct tagAEXSTRU
{
    char cTcc;       
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                  
    char cJournalStatus;
    char cReceiptStatus;
    char cDepositStatus;
    char cAtmStatus;

    char cTrack3[SIZE_TRACK3];
    char cAccNo[SIZE_ACCNO];
    char cExceptionCode[SIZE_EXCEPTIONCODE];
    char cReqSeqNo[SIZE_REQSEQNO];

} AEXSTRU;

typedef AEXSTRU *       PAEXSTRU;
typedef const AEXSTRU   CAEXSTRU;
typedef const AEXSTRU * PCAEXSTRU;

typedef struct tagOEXSTRU
{
    char cTcc;
    char cTransCode[SIZE_TRANSCODE];
    char cDenom1Status;
    char cDenom2Status;
    char cDenom3Status;
    char cDenom4Status;
                
    char cDenom1Present[SIZE_DENOMPRESENT];
    char cDenom2Present[SIZE_DENOMPRESENT];
    char cDenom3Present[SIZE_DENOMPRESENT];
    char cDenom4Present[SIZE_DENOMPRESENT];
                  
    char cJournalStatus;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -