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

📄 handle.cpre

📁 商业银行前置系统
💻 CPRE
📖 第 1 页 / 共 5 页
字号:
        ASSERT_NORMAL(SetExpDate(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetAddAmt(pxmlstruResp, piso8583stru));        }    ASSERT_NORMAL(SetMac(piso8583stru, cTransMac, BIT_MAC128));    return NORMAL;}RESULT HandleAuthSettle(PISO8583STRU piso8583stru){    UINT nBit = BIT_MAC128;    XMLSTRU xmlstruReq, xmlstruResp;    BOOL bIsReverse;    memset(&xmlstruReq, 0, sizeof(xmlstruReq));    memset(&xmlstruResp, 0, sizeof(xmlstruResp));                bIsReverse = IsReverse(piso8583stru);    ASSURE_NORMAL(VerifyMac(piso8583stru, cTransMac, BIT_MAC128))        ASSURE_NORMAL(CreateXml(&xmlstruReq, FALSE, AP_PATH_ROOT, NULL))        ASSURE_NORMAL(GetAuthSettle(&xmlstruReq, piso8583stru, bIsReverse))    ASSURE_NORMAL(RecordJournal(&xmlstruReq, piso8583stru))    ASSURE_NORMAL(ApCaSubmit(&xmlstruReq, &xmlstruResp))    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_EXCEPTION))        RETURN_RESULT(EXCEPTION)    else    {        if (!VERIFY_NORMAL(SetAuthSettle(piso8583stru, &xmlstruResp,                                          bIsReverse)))    	    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_ACCEPT))                RETURN_RESULT(EXCEPTION)    }    RETURN_RESULT(NORMAL)}/* * 存款。 */RESULT GetDeposit(PXMLSTRU pxmlstruReq, PCISO8583STRU piso8583stru){    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_MSGTYPE, AP_MSGTYPE_SUBMITREQ));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRANSCODE, AP_TRANSCODE_CS_DEPOSIT));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_REQID, AP_REQID_ISI));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRACKVERIFY, "N"));    ASSERT_NORMAL(GetReqDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetReqTime(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetReqSeqNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetOrgReqType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAccNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetCurrType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAmt(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetFee(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetExpDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetMerchNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetMerchType(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetSettleDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAgent(piso8583stru, pxmlstruReq));        return NORMAL;}RESULT SetDeposit(PISO8583STRU piso8583stru, PCXMLSTRU pxmlstruResp){    SetBitInIso8583(piso8583stru, BIT_ENTRYMODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PINCAPTURECODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK2, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK3, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ACCEPTORNAME, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PIN, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ORGDATA, NULL, 0);        ASSERT_NORMAL(SetRespCode(pxmlstruResp, piso8583stru));    ASSERT_NORMAL(SetAddResp(pxmlstruResp, piso8583stru));    ASSERT_NORMAL(SetAddAmt(pxmlstruResp, piso8583stru));    ASSERT_NORMAL(SetMac(piso8583stru, cTransMac, BIT_MAC64));    return NORMAL;} RESULT HandleDeposit(PISO8583STRU piso8583stru){    UINT nBit = BIT_MAC64;    XMLSTRU xmlstruReq, xmlstruResp;    memset(&xmlstruReq, 0, sizeof(xmlstruReq));    memset(&xmlstruResp, 0, sizeof(xmlstruResp));                ASSURE_NORMAL(VerifyMac(piso8583stru, cTransMac, BIT_MAC64))        ASSURE_NORMAL(CreateXml(&xmlstruReq, FALSE, AP_PATH_ROOT, NULL))        ASSURE_NORMAL(GetDeposit(&xmlstruReq, piso8583stru))    ASSURE_NORMAL(RecordJournal(&xmlstruReq, piso8583stru))    ASSURE_NORMAL(ApCaSubmit(&xmlstruReq, &xmlstruResp))    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_EXCEPTION))        RETURN_RESULT(EXCEPTION)    else    {        if (!VERIFY_NORMAL(SetDeposit(piso8583stru, &xmlstruResp)))    	    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_ACCEPT))                RETURN_RESULT(EXCEPTION)    }    RETURN_RESULT(NORMAL)}/* * 取款。 */RESULT GetWithdraw(PXMLSTRU pxmlstruReq, PCISO8583STRU piso8583stru,                    BOOL bIsReverse){      ASSERT_NORMAL(INSERT_MSGTYPE(bIsReverse));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRANSCODE, AP_TRANSCODE_CS_WITHDRAW));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_REQID, AP_REQID_ISI));    ASSERT_NORMAL(GetReqDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetReqTime(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAccNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetCurrType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAmt(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetFee(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetMerchNo(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetMerchType(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetSettleDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetOrgReqType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAgent(piso8583stru, pxmlstruReq));    if (!bIsReverse)    {        ASSERT_NORMAL(GetReqSeqNo(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetAccPwd(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetTrack2(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetTrack3(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetExpDate(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRACKVERIFY, "Y"));    }    else    {        ASSERT_NORMAL(GetReqSeqNoInReverse(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRACKVERIFY, "N"));    }    return NORMAL;}RESULT SetWithdraw(PISO8583STRU piso8583stru, PCXMLSTRU pxmlstruResp,                    BOOL bIsReverse){        SetBitInIso8583(piso8583stru, BIT_ENTRYMODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PINCAPTURECODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK2, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK3, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ACCEPTORNAME, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PIN, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ORGDATA, NULL, 0);        ASSERT_NORMAL(SetRespCode(pxmlstruResp, piso8583stru));    ASSERT_NORMAL(SetAddResp(pxmlstruResp, piso8583stru));        if (!bIsReverse)    {         ASSERT_NORMAL(SetExpDate(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetAuthResp(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetIdNo(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetAddAmt(pxmlstruResp, piso8583stru));        }    ASSERT_NORMAL(SetMac(piso8583stru, cTransMac,                         bIsReverse ? BIT_MAC128 : BIT_MAC64));    return NORMAL;}RESULT HandleWithdraw(PISO8583STRU piso8583stru){    UINT nBit = 0;    XMLSTRU xmlstruReq, xmlstruResp;    BOOL bIsReverse;    memset(&xmlstruReq, 0, sizeof(xmlstruReq));    memset(&xmlstruResp, 0, sizeof(xmlstruResp));                bIsReverse = IsReverse(piso8583stru);    nBit = bIsReverse ? BIT_MAC128 : BIT_MAC64;        ASSURE_NORMAL(VerifyMac(piso8583stru, cTransMac, nBit))    ASSURE_NORMAL(CreateXml(&xmlstruReq, FALSE, AP_PATH_ROOT, NULL))    ASSURE_NORMAL(GetWithdraw(&xmlstruReq, piso8583stru, bIsReverse))    ASSURE_NORMAL(RecordJournal(&xmlstruReq, piso8583stru))    ASSURE_NORMAL(ApCaSubmit(&xmlstruReq, &xmlstruResp))    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_EXCEPTION))        RETURN_RESULT(EXCEPTION)    else    {        if (!VERIFY_NORMAL(SetWithdraw(piso8583stru, &xmlstruResp,                                        bIsReverse)))    	    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_ACCEPT))                RETURN_RESULT(EXCEPTION)    }    RETURN_RESULT(NORMAL)}/* * 转帐入。 */RESULT GetTransferIn(PXMLSTRU pxmlstruReq, PCISO8583STRU piso8583stru){    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_MSGTYPE, AP_MSGTYPE_SUBMITREQ));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRANSCODE, AP_TRANSCODE_CS_TRANSFERIN));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_REQID, AP_REQID_ISI));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRACKVERIFY, "N"));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_ADDACCTYPE, AP_ACCTYPE_CARD));    ASSERT_NORMAL(GetReqDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetReqTime(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetReqSeqNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetOrgReqType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAccNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAmt(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetFee(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetCurrType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetExpDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetMerchNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetMerchType(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetSettleDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAgent(piso8583stru, pxmlstruReq));     return NORMAL;}RESULT SetTransferIn(PISO8583STRU piso8583stru, PCXMLSTRU pxmlstruResp){    SetBitInIso8583(piso8583stru, BIT_ENTRYMODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PINCAPTURECODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK2, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK3, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ACCEPTORNAME, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PIN, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ORGDATA, NULL, 0);        ASSERT_NORMAL(SetRespCode(pxmlstruResp, piso8583stru));    ASSERT_NORMAL(SetAddResp(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetMac(piso8583stru, cTransMac, BIT_MAC64));    return NORMAL;}RESULT HandleTransferIn(PISO8583STRU piso8583stru){    UINT nBit = BIT_MAC64;    XMLSTRU xmlstruReq, xmlstruResp;    memset(&xmlstruReq, 0, sizeof(xmlstruReq));    memset(&xmlstruResp, 0, sizeof(xmlstruResp));                ASSURE_NORMAL(VerifyMac(piso8583stru, cTransMac, BIT_MAC64))    ASSURE_NORMAL(CreateXml(&xmlstruReq, FALSE, AP_PATH_ROOT, NULL))    ASSURE_NORMAL(GetTransferIn(&xmlstruReq, piso8583stru))    ASSURE_NORMAL(RecordJournal(&xmlstruReq, piso8583stru))    ASSURE_NORMAL(ApCaSubmit(&xmlstruReq, &xmlstruResp))    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_EXCEPTION))        RETURN_RESULT(EXCEPTION)    else    {        if (!VERIFY_NORMAL(SetTransferIn(piso8583stru, &xmlstruResp)))    	    if (ApIsRespCode(&xmlstruResp, AP_RESPCODE_ACCEPT))                RETURN_RESULT(EXCEPTION)    }    RETURN_RESULT(NORMAL)}/* * 转帐出。 */RESULT GetTransferOut(PXMLSTRU pxmlstruReq, PCISO8583STRU piso8583stru,                       BOOL bIsReverse){      ASSERT_NORMAL(INSERT_MSGTYPE(bIsReverse));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRANSCODE,AP_TRANSCODE_CS_TRANSFEROUT));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_REQID, AP_REQID_ISI));    ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_ADDACCTYPE, AP_ACCTYPE_CARD));        ASSERT_NORMAL(GetReqDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetReqTime(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAccNo(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetCurrType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAmt(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetFee(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetMerchNo(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetMerchType(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetSettleDate(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetOrgReqType(piso8583stru, pxmlstruReq));    ASSERT_NORMAL(GetAgent(piso8583stru, pxmlstruReq));    if (!bIsReverse)    {        ASSERT_NORMAL(GetReqSeqNo(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetAccPwd(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetTrack2(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetTrack3(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(GetExpDate(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRACKVERIFY, "Y"));    }    else    {        ASSERT_NORMAL(GetReqSeqNoInReverse(piso8583stru, pxmlstruReq));        ASSERT_NORMAL(AP_INSERT_EXT(AP_PATH_TRACKVERIFY, "N"));    }    return NORMAL;}RESULT SetTransferOut(PISO8583STRU piso8583stru, PCXMLSTRU pxmlstruResp,                       BOOL bIsReverse){        SetBitInIso8583(piso8583stru, BIT_ENTRYMODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PINCAPTURECODE, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK2, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_TRACK3, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_ACCEPTORNAME, NULL, 0);        SetBitInIso8583(piso8583stru, BIT_PIN, NULL, 0);     SetBitInIso8583(piso8583stru, BIT_ORGDATA, NULL, 0);     ASSERT_NORMAL(SetRespCode(pxmlstruResp, piso8583stru));    ASSERT_NORMAL(SetAddResp(pxmlstruResp, piso8583stru));        if (!bIsReverse)    {        ASSERT_NORMAL(SetExpDate(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetAuthResp(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetIdNo(pxmlstruResp, piso8583stru));        ASSERT_NORMAL(SetAddAmt(pxmlstruResp, piso8583stru));        }        ASSERT_NORMAL(SetMac(piso8583stru, cTransMac,                         bIsReverse ? BIT_MAC128 : BIT_MAC64));    return NORMAL;}

⌨️ 快捷键说明

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