📄 handle.cpre
字号:
atof(szTransAmt) / 100, szTransmissDateTime, szTraceNo, szSettleDate, szAcqId, szForwardId, szRetrievalRefNo, szCurrCode, szDestId, szProcessCode[0] == '0' ? "借" : "贷", szLocalTransDate, szMerchType, szEntryMode, szConditionCode, szAuthResp, szTermId, szAcceptorId, szAcceptorName, szNationReserve, szOrgData ))) { fclose(pfile); return EXCEPTION; } fclose(pfile); return NORMAL;} RESULT GetFundSettle(PISO8583STRU piso8583stru){ char szTransmissDateTime[SIZE_TRANSMISSDATETIME + 1]; char szTraceNo[SIZE_TRACENO + 1]; char szSettleDate[SIZE_SETTLEDATE + 1]; char szAddPriv[SIZE_ADDPRIV_MAX + 1]; char szCurrCode[SIZE_CURRCODE + 1]; char szSettleId[SIZE_SETTLEID_MAX + 1]; UINT nSize; FILE *pfile; TIMESTRU timestru; char szFileName[64 + 1]; bufclr(szTransmissDateTime); bufclr(szTraceNo); bufclr(szSettleDate); bufclr(szAddPriv); bufclr(szCurrCode); bufclr(szSettleId); bufclr(szFileName); nSize = SIZE_TRANSMISSDATETIME; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRANSMISSDATETIME, szTransmissDateTime, &nSize)); nSize = SIZE_TRACENO; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRACENO, szTraceNo, &nSize)); nSize = SIZE_SETTLEDATE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_SETTLEDATE, szSettleDate, &nSize)); nSize = SIZE_ADDPRIV_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_ADDPRIV, szAddPriv, &nSize)); nSize = SIZE_CURRCODE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_CURRCODE, szCurrCode, &nSize)); nSize = SIZE_SETTLEID_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_SETTLEID, szSettleId, &nSize)); DETECT(nSize == SIZE_ID); timestru = GetTime(); ASSERT_NORMAL(AP_DEMAND_CFG(AP_PATH_CFG_INSTALLPATH, szFileName)); sprintf(szFileName + strlen(szFileName), "/log/ca/dsi/fundsettle.%04d%02d%02d", timestru.nYear, timestru.nMon, timestru.nDay); ASSERT_NULL(pfile = fopen(szFileName, "a")); if (!VERIFY(fprintf(pfile, "传输时间: %s\n" "系统跟踪号: %s\n" "清算日期: %s\n" "清算货币代码: %s\n" "清算机构标识码: %s\n" "资金清算信息内容:\n" "ATM交易借记金额:%.14s.%.2s元\n" "ATM借记冲正交易金额:%.14s.%.2s元\n" "ATM交易贷记金额:%.14s.%.2s元\n" "ATM贷记冲正交易金额:%.14s.%.2s元\n" "POS交易借记金额:%.14s.%.2s元\n" "POS借记冲正交易金额:%.14s.%.2s元\n" "POS交易贷记金额:%.14s.%.2s元\n" "POS贷记冲正交易金额:%.14s.%.2s元\n" "差错处理交易借记金额:%.14s.%.2s元\n" "差错处理交易贷记金额:%.14s.%.2s元\n" "收付费交易借记金额:%.14s.%.2s元\n" "收付费交易贷记金额:%.14s.%.2s元\n" "服务费借记金额:%.14s.%.2s元\n" "服务费贷记金额:%.14s.%.2s元\n" "净清算额标志:%c\n" "净清算额:%.14s.%.2s元\n" "**************************************************\n", szTransmissDateTime, szTraceNo, szSettleDate, szCurrCode, szSettleId, &szAddPriv[2], &szAddPriv[16], &szAddPriv[18], &szAddPriv[32], &szAddPriv[34], &szAddPriv[48], &szAddPriv[50], &szAddPriv[64], &szAddPriv[66], &szAddPriv[80], &szAddPriv[82], &szAddPriv[96], &szAddPriv[98], &szAddPriv[112], &szAddPriv[114], &szAddPriv[128], &szAddPriv[130], &szAddPriv[144], &szAddPriv[146], &szAddPriv[160], &szAddPriv[162], &szAddPriv[176], &szAddPriv[178], &szAddPriv[192], &szAddPriv[194], &szAddPriv[208], &szAddPriv[210], &szAddPriv[224], &szAddPriv[226], &szAddPriv[227], &szAddPriv[241]) >= 0)) { fclose(pfile); return EXCEPTION; } fclose(pfile); return NORMAL;}RESULT GetText(PISO8583STRU piso8583stru){ char szTransmissDateTime[SIZE_TRANSMISSDATETIME + 1]; char szTraceNo[SIZE_TRACENO + 1]; char szForwardId[SIZE_FORWARDID_MAX + 1]; char szAddPriv[SIZE_ADDPRIV_MAX + 1]; char szDestId[SIZE_DESTID_MAX + 1]; UINT nSize; FILE *pfile; TIMESTRU timestru; char szFileName[64 + 1]; bufclr(szTransmissDateTime); bufclr(szTraceNo); bufclr(szForwardId); bufclr(szAddPriv); bufclr(szDestId); bufclr(szFileName); nSize = SIZE_TRANSMISSDATETIME; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRANSMISSDATETIME, szTransmissDateTime, &nSize)); nSize = SIZE_TRACENO; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRACENO, szTraceNo, &nSize)); nSize = SIZE_FORWARDID_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_FORWARDID, szForwardId, &nSize)); DETECT(nSize == SIZE_ID); nSize = SIZE_ADDPRIV_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_ADDPRIV, szAddPriv, &nSize)); DETECT(strncmp(szAddPriv, "01", 2) == 0); nSize = SIZE_DESTID_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_DESTID, szDestId, &nSize)); DETECT(nSize == SIZE_ID); timestru = GetTime(); ASSERT_NORMAL(AP_DEMAND_CFG(AP_PATH_CFG_INSTALLPATH, szFileName)); sprintf(szFileName + strlen(szFileName), "/log/ca/dsi/text.%04d%02d%02d", timestru.nYear, timestru.nMon, timestru.nDay); ASSERT_NULL(pfile = fopen(szFileName, "a")); if (!VERIFY(fprintf(pfile, "传输时间: %s\n" "系统跟踪号: %s\n" "发送机构标识码: %s\n" "接收机构标识码: %s\n" "文字信息内容:\n" "%.398s\n", szTransmissDateTime, szTraceNo, szForwardId, szDestId, &szAddPriv[2]) >= 0)) { fclose(pfile); return EXCEPTION; } fclose(pfile); return NORMAL;} RESULT GetAuthSettle(PISO8583STRU piso8583stru){ char szPan[SIZE_PAN_MAX + 1]; char szTransAmt[SIZE_TRANSAMT + 1]; char szTransmissDateTime[SIZE_TRANSMISSDATETIME + 1]; char szLocalTransTime[SIZE_LOCALTRANSTIME + 1]; char szLocalTransDate[SIZE_LOCALTRANSDATE + 1]; char szTraceNo[SIZE_TRACENO + 1]; char szSettleDate[SIZE_SETTLEDATE + 1]; char szMerchType[SIZE_MERCHTYPE + 1]; char szEntryMode[SIZE_ENTRYMODE + 1]; char szConditionCode[SIZE_CONDITIONCODE + 1]; char szAcqId[SIZE_ACQID_MAX + 1]; char szForwardId[SIZE_FORWARDID_MAX + 1]; char szRetrievalRefNo[SIZE_RETRIEVALREFNO + 1]; char szAuthResp[SIZE_AUTHRESP + 1]; char szTermId[SIZE_TERMID + 1]; char szAcceptorId[SIZE_ACCEPTORID + 1]; char szAcceptorName[SIZE_ACCEPTORNAME + 1]; char szCurrCode[SIZE_CURRCODE + 1]; char szReservePriv[SIZE_RESERVEPRIV_MAX + 1]; char szDestId[SIZE_DESTID_MAX + 1]; char szNationReserve[SIZE_NATIONRESERVE_MAX + 1]; UINT nSize; FILE *pfile; TIMESTRU timestru; char szFileName[64 + 1]; bufclr(szPan); bufclr(szTransAmt); bufclr(szTransmissDateTime); bufclr(szLocalTransTime); bufclr(szLocalTransDate); bufclr(szTraceNo); bufclr(szSettleDate); bufclr(szMerchType); bufclr(szEntryMode); bufclr(szConditionCode); bufclr(szAcqId); bufclr(szForwardId); bufclr(szRetrievalRefNo); bufclr(szAuthResp); bufclr(szTermId); bufclr(szAcceptorId); bufclr(szAcceptorName); bufclr(szCurrCode); bufclr(szReservePriv); bufclr(szDestId); bufclr(szNationReserve); bufclr(szFileName); nSize = SIZE_PAN_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_PAN, szPan, &nSize)); nSize = SIZE_TRANSAMT; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRANSAMT, szTransAmt, &nSize)); nSize = SIZE_TRANSMISSDATETIME; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRANSMISSDATETIME, szTransmissDateTime, &nSize)); nSize = SIZE_LOCALTRANSTIME; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_LOCALTRANSTIME, szLocalTransTime, &nSize)); nSize = SIZE_LOCALTRANSDATE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_LOCALTRANSDATE, szLocalTransDate, &nSize)); nSize = SIZE_TRACENO; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TRACENO, szTraceNo, &nSize)); nSize = SIZE_SETTLEDATE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_SETTLEDATE, szSettleDate, &nSize)); nSize = SIZE_MERCHTYPE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_MERCHTYPE, szMerchType, &nSize)); nSize = SIZE_ENTRYMODE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_ENTRYMODE, szEntryMode, &nSize)); nSize = SIZE_CONDITIONCODE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_CONDITIONCODE, szConditionCode, &nSize)); nSize = SIZE_ACQID_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_ACQID, szAcqId, &nSize)); DETECT(nSize == SIZE_ID); nSize = SIZE_FORWARDID_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_FORWARDID, szForwardId, &nSize)); DETECT(nSize == SIZE_ID); nSize = SIZE_RETRIEVALREFNO; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_RETRIEVALREFNO, szRetrievalRefNo, &nSize)); nSize = SIZE_AUTHRESP; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_AUTHRESP, szAuthResp, &nSize)); nSize = SIZE_TERMID; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_TERMID, szTermId, &nSize)); nSize = SIZE_ACCEPTORID; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_ACCEPTORID, szAcceptorId, &nSize)); nSize = SIZE_ACCEPTORNAME; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_ACCEPTORNAME, szAcceptorName, &nSize)); nSize = SIZE_CURRCODE; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_CURRCODE, szCurrCode, &nSize)); nSize = SIZE_RESERVEPRIV_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_RESERVEPRIV, szReservePriv, &nSize)); DETECT(nSize == SIZE_REASONCODE); DETECT(memcmp(szReservePriv, "004", 3) == 0); nSize = SIZE_DESTID_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_DESTID, szDestId, &nSize)); DETECT(nSize == SIZE_ID); nSize = SIZE_NATIONRESERVE_MAX; ASSERT_NORMAL(GetBitInIso8583(piso8583stru, BIT_NATIONRESERVE, szNationReserve, &nSize)); timestru = GetTime(); ASSERT_NORMAL(AP_DEMAND_CFG(AP_PATH_CFG_INSTALLPATH, szFileName)); sprintf(szFileName + strlen(szFileName), "/log/ca/dsi/authsettle.%04d%02d%02d", timestru.nYear, timestru.nMon, timestru.nDay);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -