📄 cardinfo.sqc
字号:
/******************************************************* ** 源码文件名称 : cardinfo.SQC ** 所属子系统 : 卡管理 ** 功能描述 : 对cmscardinfo的处理 ** 当前文件版本 : 4.0.0.0 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/15 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/#include "sysdefine.h"#include "code.h"#include "attrdef.h"#include "pubcom.h"#include "cmscode.h"#include "cmscardinfo.h"exec sql include sqlca;/******************************************************* ** 函数名称:cmsApiGetCmsCardInfo ** 功能描述:按卡号查询卡信息 ** 输入参数: ** pcCardNo ---- 卡号 ** 输出参数: ** pstCmsCardInfo ---- 卡片信息表 ** 返回结果:int ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/15 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiGetCmsCardInfo( pcCardNo, pstCmsCardInfo )char *pcCardNo; /* 卡号 */struct cmscardinfo *pstCmsCardInfo; /* 卡片信息表 */{ sprintf( g_acTrcMsg, "cmsApiGetCmsCardInfo begin " ); TRCLOG2 strcpy(pstCmsCardInfo->cardno,pcCardNo); /*取卡片信息表*/ if(pubReadCmscardinfo(pstCmsCardInfo)) { if ( SQLCODE == SQLNOTFOUND ) { strcpy(g_acRspCode,"CMS302"); pubCrtRspInfo( pcCardNo ); } ERRLOG return FAILED; } sprintf( g_acTrcMsg, "cmsApiGetCmsCardInfo end " ); TRCLOG2 return SUCCESS;}/******************************************************* ** 函数名称:cmsApiGetMainAcctNo ** 功能描述:按卡号获取主账户和款项代码 ** 输入参数: ** pcCardNo ---- 卡号 ** 输出参数: ** pcAcctNo ---- 主账户 ** pcSubAcct ---- 款项代码 ** 返回结果:int 0 成功 -1 失败 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/15 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiGetMainAcctNo( pcCardNo, pcAcctNo, pcSubAcct)char *pcCardNo; /* 卡号 */char *pcAcctNo; /* 主账户 */char *pcSubAcct; /* 款项代码 */{ struct cmscardinfo stCmsCardInfo; /* 卡片信息表 */ sprintf( g_acTrcMsg, "cmsApiGetMainAcctNo begin cardno[%s] ",pcCardNo ); TRCLOG2 memset( &stCmsCardInfo, 0x00, sizeof( struct cmscardinfo ) ); strcpy(stCmsCardInfo.cardno,pcCardNo); /*取卡片信息表*/ if(pubReadCmscardinfo(&stCmsCardInfo)) { if ( SQLCODE == SQLNOTFOUND ) { strcpy(g_acRspCode,"CMS302"); pubCrtRspInfo( pcCardNo ); } ERRLOG return FAILED; } /*给出口参数付值*/ strcpy(pcAcctNo, stCmsCardInfo.acctno); strcpy(pcSubAcct, stCmsCardInfo.subacct); sprintf( g_acTrcMsg, "cmsApiGetMainAcctNo end " ); TRCLOG2 return SUCCESS;}/******************************************************* ** 函数名称:cmsApiChkIsSameCardKind ** 功能描述: 检查是否是相同卡种 ** ** ** 输入参数: ** pcCardKind1 ---- 卡片种类1 ** pcCardKind2 ---- 卡片种类2 ** 输出参数: ** ** 涉及库表: ** cmscardinfo ** 返回结果:int 0 相同 -1 失败 不同 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/18 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkIsSameCardKind( pcCardKind1, pcCardKind2 )char * pcCardKind1; /* 卡片种类1 */char * pcCardKind2; /* 卡片种类2 */{ sprintf( g_acTrcMsg, "cmsApiChkIsSameCardKind begin " ); TRCLOG2 /*比较两卡片的卡片种类*/ if( strcmp( pcCardKind1, pcCardKind2 ) ) { sprintf( g_acRspCode, "CMS208"); pubCrtRspInfo( pcCardKind1, pcCardKind2); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkIsSameCardKind end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiChkIsSamePerson ** 功能描述: 检查是否为同一客户 ** ** ** 输入参数: ** pstCmsCardInfo ---- 卡片信息表 ** pcCustNo ---- 客户号 ** 输出参数: ** ** 涉及库表: ** cmscardinfo ** 返回结果:int 0 相同 -1 失败 不同 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkIsSamePerson( pstCmsCardInfo, pcCustNo )struct cmscardinfo * pstCmsCardInfo; /* 卡片信息表 */char * pcCustNo ; /* 客户号 */{ sprintf( g_acTrcMsg, "cmsApiChkIsSamePerson begin " ); TRCLOG2 /*比较两两客户号是否是同一客户*/ if( strcmp( pstCmsCardInfo->custno, pcCustNo ) ) { sprintf( g_acRspCode, "CMS209"); pubCrtRspInfo( pcCustNo, pstCmsCardInfo->custno ); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkIsSamePerson end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiChkIsSameBranch ** 功能描述: 检查是否为相同机构 ** ** 输入参数: ** pcBranch1 ---- 当前机构 ** pcBranch2 ---- 原机构 ** 输出参数: ** ** 涉及库表: ** ** ** 返回结果:int 0 相同 -1 失败 不同 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkIsSameBranch( pcBranch1, pcBranch2 )char * pcBranch1; /* 交易机构 */char * pcBranch2; /* 原机构 */{ sprintf( g_acTrcMsg, "cmsApiChkIsSameBranch begin " ); TRCLOG2 /*比较两两机构码 */ if(strcmp( pcBranch1, pcBranch2 )) { sprintf( g_acRspCode, "CMS210"); pubCrtRspInfo( pcBranch1, pcBranch2); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkIsSameCardKind end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiChkCardStatIsKeepCardNo ** 功能描述: 检查卡状态是否为保号换卡状态 ** ** 输入参数: ** pstCardInfo ---- 卡片信息表 ** 输出参数: ** ** 涉及库表: ** cardinfo 卡片信息表 ** ** 返回结果:int 0 是 -1 否 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkCardStatIsKeepCardNo( pstCardInfo )struct cmscardinfo * pstCardInfo; /* 卡片信息表 */{ sprintf( g_acTrcMsg, "cmsApiChkCardStatIsKeepCardNo begin " ); TRCLOG2 /*判断是否为保号换卡*/ if( pstCardInfo->cardstat[BIT14_LEN]!=BIT14_CARDBHAPLY ) { sprintf( g_acRspCode, "CMS188"); pubCrtRspInfo( pstCardInfo->cardno ); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkCardStatIsKeepCardNo end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiChkCardStatIsLost ** 功能描述: 检查卡状态是否为卡片书面挂失状态 ** ** 输入参数: ** pstCardInfo ---- 卡片信息表 ** 输出参数: ** ** 涉及库表: ** cardinfo 卡片信息表 ** ** 返回结果:int 0 是 -1 否 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkCardStatIsLost( pstCardInfo )struct cmscardinfo * pstCardInfo; /* 卡片信息表 */{ sprintf( g_acTrcMsg, "cmsApiChkCardStatIsLost begin " ); TRCLOG2 /*判断是否为卡片书面挂失状态*/ if( pstCardInfo->cardstat[BIT2_LEN]!=BIT2_PAPERLOST ) { sprintf( g_acRspCode, "CMS155"); pubCrtRspInfo( pstCardInfo->cardno ); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkCardStatIsLost end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiChkCardStatIsTelLost ** 功能描述: 检查卡状态是否为卡片口头挂失状态 ** ** 输入参数: ** pstCardInfo ---- 卡片信息表 ** 输出参数: ** ** 涉及库表: ** cardinfo 卡片信息表 ** ** 返回结果:int 0 是 -1 否 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkCardStatIsTelLost( pstCardInfo )struct cmscardinfo * pstCardInfo; /* 卡片信息表 */{ sprintf( g_acTrcMsg, "cmsApiChkCardStatIsTelLost begin " ); TRCLOG2 /*判断是否为卡片口头挂失状态*/ if( pstCardInfo->cardstat[BIT2_LEN]!=BIT2_TELLLOST ) { sprintf( g_acRspCode, "CMS156"); pubCrtRspInfo( pstCardInfo->cardno ); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkCardStatIsTelLost end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiChkCardStatIsPwdLost ** 功能描述: 检查卡状态是否为卡片密码书面挂失 ** ** 输入参数: ** pstCardInfo ---- 卡片信息表 ** 输出参数: ** ** 涉及库表: ** cardinfo 卡片信息表 ** ** 返回结果:int 0 是 -1 否 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkCardStatIsPwdLost( pstCardInfo )struct cmscardinfo * pstCardInfo; /* 卡片信息表 */{ sprintf( g_acTrcMsg, "cmsApiChkCardStatIsPwdLost begin " ); TRCLOG2 /*判断是否为卡片密码书面挂失*/ if( pstCardInfo->cardstat[BIT3_LEN]!=BIT3_PWPAPERLOST ) { sprintf( g_acRspCode, "CMS149"); pubCrtRspInfo( pstCardInfo->cardno ); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkCardStatIsPwdLost end " ); TRCLOG2 return SUCCESS;} /******************************************************* ** 函数名称:cmsApiGetCustomId ** 功能描述:按卡号获取客户号 ** 输入参数: ** pcCardNo ---- 卡号 ** 输出参数: ** pcCustomId ---- 客户号 ** 返回结果:int 0 成功 -1 失败 ** 作 者 : Feng ** 版本创建日期 : 2004/09/15 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiGetCustomId( pcCardNo, pcCustomId)char *pcCardNo; /* 卡号 */char *pcCustomId; /* 客户号 */{ struct cmscardinfo stCmsCardInfo; /* 卡片信息表 */ sprintf( g_acTrcMsg, "cmsApiGetCustomId begin " ); TRCLOG2 memset( &stCmsCardInfo, 0x00, sizeof( struct cmscardinfo ) ); strcpy(stCmsCardInfo.cardno,pcCardNo); /*取卡片信息表*/ if(pubReadCmscardinfo(&stCmsCardInfo)) { if ( SQLCODE == SQLNOTFOUND ) { strcpy(g_acRspCode,"CMS302"); pubCrtRspInfo( pcCardNo ); } ERRLOG return FAILED; } /* 检查是否已发卡 */ switch ( stCmsCardInfo.crdsts[ BIT1_LEN ] ) { /* 正常 */ case CARDOKSTS: break; /* 已销卡 */ case CARDCCSTS: /* 卡已经销卡 */ strcpy( g_acRspCode, "CMS192" ); pubCrtRspInfo( pcCardNo ); ERRLOG return FAILED; /* 未制卡 */ case CARDKCSTS: /* 卡未制卡 */ strcpy( g_acRspCode, "CMS193" ); pubCrtRspInfo( pcCardNo ); ERRLOG return FAILED; /* 未发卡 */ case CARDNGSTS: /* 卡未发卡 */ strcpy( g_acRspCode, "CMS1C2" ); pubCrtRspInfo( pcCardNo ); ERRLOG return FAILED; } /*给出口参数付值*/ strcpy(pcCustomId, stCmsCardInfo.custno ); sprintf( g_acTrcMsg, "cmsApiGetCustomId end " ); TRCLOG2 return SUCCESS;}/******************************************************* ** 函数名称:cmsApiChkCardAgentState ** 功能描述: 检查卡是否存在中间业务委托关系 ** ** 输入参数: ** pstCardInfo ---- 卡片信息表 ** 输出参数: ** ** 涉及库表: ** cardinfo 卡片信息表 ** ** 返回结果:int 0 是 -1 否 ** 作 者 : UCCB ALex ** 版本创建日期 : 2004/09/20 ** 修改记录 : ** 修改人 修改日期 修改位置*******************************************************/int cmsApiChkCardAgentState( pstCardInfo )struct cmscardinfo * pstCardInfo; /* 卡片信息表 */{ sprintf( g_acTrcMsg, "cmsApiChkCardAgentState begin " ); TRCLOG2 /* 判断是否存在中间业务委托关系 */ if( pstCardInfo->madfeeflag[BIT1_LEN]== MADFEE ) { sprintf( g_acRspCode, "CMS1E8"); pubCrtRspInfo( pstCardInfo->cardno ); ERRLOG; return FAILED; } sprintf( g_acTrcMsg, "cmsApiChkCardAgentState end " ); TRCLOG2 return SUCCESS;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -