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

📄 cms010.sqc

📁 一整套完整的银行卡系统源代码
💻 SQC
字号:
/******************************************************************** **   源码文件名称 : cms010.SQC **   所属子系统   : CMS  **   当前文件版本 : 4.0.0.0 **   作者         : Feng **   版本创建日期 : 2004/09/21 **   功能描述     : 存单折移入卡检查子交易 **   修改记录     : **   修改人       修改日期     修改说明 **   Feng         2006-01-23   取消移入帐户和卡发卡机构相同的检查*********************************************************************/#include "code.h"#include "attrdef.h"#include "sysdef.h"#include "pubcom.h"#include "cmscode.h"#include "cmscardinfo.h"EXEC SQL INCLUDE SQLCA;int cmsActInCardChkPro( PUBCOM *pstPubcom ){	/*定义局部变量*/	struct	cmscardinfo			stCmsCardInfo;	/* 卡片信息表		*/	char	acCardStat[ BIT21_LEN ][BIT11_LEN];	/* 卡状态检查标志	*/	char	acPasswd[ PASSWD_LEN + 1 ];			/* 密码				*/	char	acCustNo[ CUSTNO_LEN + 1 ];			/* 存单客户号		*/	char	acBrc[ BRC_LEN + 1 ];				/* 存单开户机构		*/	char	acCcy[ CCY_LEN + 1 ];				/* 存单币种			*/	char	acPrdCode[ PRDCODE_LEN + 1 ];		/* 存单产品代码		*/	int		iRtn;								/* 函数返回值		*/	int		iNumx;								/* 数组计数器		*/	int		iNumy;								/* 数组计数器		*/	strcpy( g_acTrcMsg, "子交易: 存单折移入卡检查处理开始.." );	TRCLOG4	/* 初始化 */	memset( &stCmsCardInfo,		0x00,	sizeof( struct cmscardinfo ) );	memset( acPasswd,			0x00,	sizeof( acPasswd ) );	memset( acCustNo,			0x00,	sizeof( acCustNo ) );	memset( acBrc,				0x00,	sizeof( acBrc ) );	memset( acCcy,				0x00,	sizeof( acCcy ) );	memset( acPrdCode,			0x00,	sizeof( acPrdCode ) );	/* 卡检查状态数组全置未不检查 */	for ( iNumx = 0; iNumx < BIT21_LEN; iNumx ++ )		for ( iNumy = 0; iNumy < BIT11_LEN; iNumy ++ )			acCardStat[iNumx][iNumy] = CHECK_NO;	/* 取数据字典值 */	getstring( "CardNo",	stCmsCardInfo.cardno	);		/* 获取卡片信息表 */	iRtn = pubReadCmscardinfo( &stCmsCardInfo );	if ( iRtn )	{		if ( SQLCODE == SQLNOTFOUND )			sprintf( g_acRspMsg, "卡号[%s]不存在", stCmsCardInfo.cardno );		ERRLOG		return FAILED;	}	/* 从字典获取其他数据 */	getstring( "Passwd",		acPasswd				);	getstring( "CustomId1",		acCustNo				);	getstring( "Brc1",			acBrc					);	getstring( "Ccy1",			acCcy					);	getstring( "PrdCode",		acPrdCode				);	/* 检查卡状态是否正常 */	acCardStat[ BIT1_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查销卡		*/	acCardStat[ BIT2_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查挂失		*/	acCardStat[ BIT3_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查密挂		*/	acCardStat[ BIT5_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查吞卡		*/	acCardStat[ BIT6_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查拣拾		*/	acCardStat[ BIT8_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查换卡		*/	acCardStat[ BIT9_LEN ][ BIT1_LEN ] = CHECK_YES;	/* 检查锁卡		*/	acCardStat[ BIT13_LEN ][ BIT1_LEN ] = CHECK_YES; /* 检查欠费	*/	acCardStat[ BIT14_LEN ][ BIT1_LEN ] = CHECK_YES; /* 换卡申请	*/	iRtn = cmsApiChkCardStatIsNormal( &stCmsCardInfo, acCardStat );	if ( iRtn )	{		ERRLOG		return FAILED;	}	/* 检查卡密码 */	iRtn = cmsApiChkCardPwd( &stCmsCardInfo, acPasswd, pstPubcom->acChannelId );	if ( iRtn )	{		ERRLOG		return FAILED;	}	/* 检查持卡人和存单/折所有人是否为同一客户 */	iRtn = cmsApiChkIsSamePerson( &stCmsCardInfo,	acCustNo );	if ( iRtn )	{		ERRLOG		return FAILED;	}	/* 检查存单/折开户机构与发卡机构是否一致 	iRtn = cmsApiChkIsSameBranch( stCmsCardInfo.issuebrc, acBrc );	if ( iRtn )	{		ERRLOG		return FAILED;	}	Feng modify in 2006-01-23 */	/* 检查卡是否为主卡 */	iRtn = cmsApiChkCardNoIsMain( &stCmsCardInfo );	if ( iRtn )	{		ERRLOG		return FAILED;	}	/* 检查卡同一产品代码帐户数量是否超限 */	iRtn = cmsApiChkCardAcctNumExceed(	stCmsCardInfo.cardno,	\										stCmsCardInfo.cardkind, \										acCcy, acPrdCode );	if ( iRtn )	{		ERRLOG		return FAILED;	}	/* 子交易出口 */ 		strcpy( g_acTrcMsg, "子交易: 存单折移入卡检查结束.." );	TRCLOG4	strcpy( g_acRspCode,  RSP_OK );	return SUCCESS;}

⌨️ 快捷键说明

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