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

📄 cms024.sqc

📁 一整套完整的银行卡系统源代码
💻 SQC
字号:
/******************************************************************** **   源码文件名称 : cms024.SQC **   所属子系统   : CMS  **   当前文件版本 : 4.0.0.0 **   作者         : Feng **   版本创建日期 : 2004/09/21 **   功能描述     : 获取卡和客户信息子交易 **   修改记录     : **   修改人       修改日期     修改日期*********************************************************************/#include "code.h"#include "attrdef.h"#include "sysdef.h"#include "pubcom.h"#include "cmscode.h"#include "cmscardinfo.h"#include "cmsacctm.h"#include "cmscardkind.h"#include "ciscustomerinfo.h"EXEC SQL INCLUDE SQLCA;int cmsGetCardCustInfPro( PUBCOM *pstPubcom ){	/*定义局部变量*/	struct	cmscardinfo			stCmsCardInfo;	/* 卡片信息表		*/	struct	cmscardkind			stCmsCardKind;	/* 卡片种类表		*/	struct	ciscustomerinfo		stCisCustInfo;	/* 客户基本信息表	*/	struct	cmsacctm			stCmsAcctM;		/* 卡帐户对照表		*/	int		iRtn;								/* 函数返回值		*/	char	acKey[5];    char   acDataSrcFlag[FLAG_LEN+1];  /*卡号或帐号数据来源,刷磁/人工输入*/	char   acChkMagFlag[FLAG_LEN+1];   /*卡号是否刷卡输入标志*/    char   acCardSrcFlag[FLAG_LEN+1] ; /*卡号来源标志*/	char   acChkAcctSrcFlag[FLAG_LEN+1];/*三磁道*/	strcpy( g_acTrcMsg, "子交易: 获取卡和客户信息处理开始.." );	TRCLOG4	/* 初始化 */	memset( &stCmsCardInfo,		0x00,	sizeof( struct cmscardinfo ) );	memset( &stCmsCardKind,		0x00,	sizeof( struct cmscardkind ) );	memset( &stCmsAcctM,		0x00,	sizeof( struct cmsacctm ) );	memset( &stCisCustInfo,		0x00,	sizeof( struct ciscustomerinfo ) );	memset( acChkAcctSrcFlag,	0x00 , sizeof( acChkAcctSrcFlag ) ) ;	memset( acChkMagFlag,		0x00 , sizeof( acChkMagFlag ) ) ;	memset( acCardSrcFlag,		0x00 , sizeof( acCardSrcFlag ) ) ;	memset( acDataSrcFlag,		0x00 , sizeof( acDataSrcFlag ) ) ;	/* 取数据字典值 */	getstring( "CardNo",	stCmsCardInfo.cardno	);    /*卡号或帐号数据来源,刷磁/人工输入*/    getstring("DataSrcFlag", acDataSrcFlag) ;    /*检查卡号是否刷卡输入标志*/    if( pubGetBaseInfo( "CHKCARDSRCFLAG" , acCardSrcFlag ) )    {		ERRLOG		return FAILED;	}    if( acCardSrcFlag[0] == NO )        acChkMagFlag[0] = NO ;    else    {        /*检查卡号是否刷卡输入标志*/        getstring("ChkMagFlag", acChkMagFlag) ;        /*如果前台未付值,付检查标志*/        if( !strlen( acChkMagFlag ) )            acChkMagFlag[0]= NO ;    }    if(!strlen( acChkMagFlag ) )      strcpy( acChkMagFlag,STR_NO );    if(!strlen( acDataSrcFlag ) )      strcpy( acDataSrcFlag , "0") ; /*手工输入*/		/*取是否检查帐号是否刷磁输入标志*/	if( pubGetBaseInfo( "CHKACCTSRCFLAG" , acChkAcctSrcFlag ) )	{		ERRLOG		return FAILED;	}	/*检查:应刷磁输入*/	if( strcmp( acChkAcctSrcFlag , "1" ) == 0 )	{		/*检查前台是否要求卡号必须刷磁输入*/		if( strcmp( acChkMagFlag , STR_YES ) == 0 )		{			if( strcmp( acDataSrcFlag ,"2" ) != 0 )			{				strcpy( g_acRspCode ,"PUB100");				sprintf( g_acRspMsg,"卡号[%s]必须刷卡输入",stCmsCardInfo.cardno );				ERRLOG				return FAILED;			}		}	}	sprintf( g_acTrcMsg, "cardno[%s]", stCmsCardInfo.cardno );	TRCLOG3	/* 获取卡片信息 */	iRtn = pubReadCmscardinfo( &stCmsCardInfo );	if ( iRtn )	{		if ( SQLCODE == SQLNOTFOUND )			sprintf( g_acRspMsg, "卡号[%s]不存在", stCmsCardInfo.cardno );		ERRLOG		return FAILED;	}	/* 获取卡片种类 */	strcpy( stCmsCardKind.cardkind, stCmsCardInfo.cardkind );	iRtn = pubReadCmscardkind( &stCmsCardKind );	if ( iRtn )	{		if ( SQLCODE == SQLNOTFOUND )			sprintf( g_acRspMsg, "卡片种类[%s]不存在", stCmsCardInfo.cardkind );		ERRLOG		return FAILED;	}	/* 按客户号获取客户信息 CIS API */	strcpy( stCisCustInfo.customid, stCmsCardInfo.custno );	strpack( stCisCustInfo.customid );	iRtn = pubReadCiscustomerinfo( &stCisCustInfo );	if ( iRtn )	{		if ( SQLCODE == SQLNOTFOUND )			sprintf( g_acRspMsg, "客户号[%s]不存在", stCmsCardInfo.custno );		ERRLOG		return FAILED;	}	/* 获取卡帐户对照表 */	strcpy( stCmsAcctM.cardno,		stCmsCardInfo.cardno );	strcpy( stCmsAcctM.acctseqno,	stCmsCardInfo.acctseqno );	iRtn = pubReadCmsacctm ( &stCmsAcctM );	if ( iRtn )	{		if ( SQLCODE == SQLNOTFOUND )			sprintf( g_acRspMsg, "卡号[%s]帐户序号[%s]不存在",						stCmsCardInfo.cardno, stCmsCardInfo.acctseqno );		ERRLOG		return FAILED;	}	/* 子交易出口 */ 	setstring( "CustomId",		stCmsCardInfo.custno );		/* 客户号		*/	setstring( "IdType1",		stCisCustInfo.idtype );		/* 证件类型		*/	setstring( "IdNo1",			stCisCustInfo.idno );		/* 证件号码		*/	setstring( "CustomName",	stCisCustInfo.customname );	/* 客户姓名		*/	setstring( "CustomType",	stCisCustInfo.customtype );	/* 客户类型		*/	setstring( "AcctNo",		stCmsCardInfo.acctno );		/* 客户账号		*/	setstring( "SubAcct",		stCmsCardInfo.subacct );	/* 款项代码		*/	setstring( "CardKindComm",	stCmsCardKind.cardkindcomm );/* 卡种说明	*/	setstring( "Ccy1",			stCmsAcctM.ccy );			/* 币种			*/	setstring( "PrdCode",		stCmsAcctM.prdcod );		/* 产品代码		*/		strcpy( g_acTrcMsg, "子交易: 获取卡和客户信息结束.." );	TRCLOG4	strcpy( g_acRspCode,  RSP_OK );	return SUCCESS;}

⌨️ 快捷键说明

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