📄 cms006.sqc
字号:
/******************************************************************** ** 源码文件名称 : cms006.SQC ** 所属子系统 : CMS ** 当前文件版本 : 1.0.0.0 ** 作者 : UCCB ALEX ** 版本创建日期 : 2004/10/10 ** 功能描述 : 附卡销卡检查子交易 ** 修改记录 : ** 修改人 修改日期 修改说明 ** Feng 2006-01-16 凭证信息的输出*********************************************************************/#include "code.h"#include "attrdef.h"#include "sysdef.h"#include "pubcom.h"#include "cmscode.h"#include "cmscardinfo.h"#include "cmscardkind.h"EXEC SQL INCLUDE SQLCA;int cmsCloseAcceCardChkPro( PUBCOM *pstPubcom ){ /*定义局部变量*/ char acPassWd[PASSWD_LEN+1] ; /*密码*/ char acHappen[PASSWD_LEN+1] ; /*业务发生地*/ char acCheckFlag[BIT21_LEN][BIT11_LEN]; /*卡状态检查标志*/ char acOprType[ FLAG_LEN + 1 ]; /* 销卡方式 */ /* 0 正常销卡 */ /* 1 挂失销卡 */ int iNum; struct cmscardinfo stFCardInfo; struct cmscardkind stFCardKind; strcpy( g_acRspCode, RSP_OK ); strcpy( g_acTrcMsg, "子交易: 附卡销卡检查子交易..." ); TRCLOG4 memset( &stFCardInfo, 0x00, sizeof ( struct cmscardinfo ) ); memset( &stFCardKind, 0x00, sizeof ( struct cmscardkind ) ); memset( acCheckFlag, 0x00, sizeof ( acCheckFlag ) ); /* 取数据字典值 */ getstring("CardNo",stFCardInfo.cardno); /*卡号 */ getstring("PassWd",acPassWd ); /*卡密码*/ getstring("OprType",acOprType ); strcpy ( acHappen , pstPubcom->acChannelId ); /*业务发生地*/ /* 获取附卡片信息表 */ if( pubReadCmscardinfo( &stFCardInfo ) ) { if ( SQLCODE == SQLNOTFOUND ) sprintf( g_acRspMsg, "附卡号[%s]不存在", stFCardInfo.cardno ); ERRLOG goto Exit; } /* 获取附卡卡片种类表*/ strcpy( stFCardKind.cardkind, stFCardInfo.cardkind ); if( pubReadCmscardkind( &stFCardKind ) ) { if ( SQLCODE == SQLNOTFOUND ) sprintf( g_acRspMsg, "卡片种类[%s]不存在", stFCardInfo.cardkind ); ERRLOG goto Exit; } /*检查是否为附卡*/ if( cmsApiChkCardNoIsAcce( &stFCardInfo ) ) { ERRLOG; goto Exit; } /* 检查是否存在中间业务委托 */ if ( cmsApiChkCardAgentState( &stFCardInfo ) ) { ERRLOG goto Exit; } /*置附卡卡状态检查标志*/ acCheckFlag[BIT1_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT2_LEN][BIT1_LEN]=CHECK_YES; if ( acOprType[ BIT1_LEN ] == LOSTCLOSE ) /* 挂失销卡 */ acCheckFlag[ BIT2_LEN ][ BIT3_LEN ] = CHECK_YES; acCheckFlag[BIT3_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT4_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT5_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT6_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT7_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT8_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT9_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT11_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT13_LEN][BIT1_LEN]=CHECK_YES; acCheckFlag[BIT14_LEN][BIT1_LEN]=CHECK_YES; /*检查附卡状态是否正常*/ if( cmsApiChkCardStatIsNormal( &stFCardInfo, acCheckFlag ) ) { ERRLOG; goto Exit; } /*判断附卡密码是否正确*/ if( cmsApiChkCardPwd( &stFCardInfo,acPassWd,acHappen ) ) { ERRLOG goto Exit; } /*检查客户持附卡数是否超限 修改客户持附卡数*/ if(cmsApiChkCustCardNumLimit( stFCardInfo.custno, &stFCardKind,\ SUBMAIN_CARD, FLAG_REVERSE) ) { ERRLOG goto Exit; } /* 子交易出口 */ iNum=1; setstring( "VouKind" , stFCardInfo.voukind ); /* Feng Modify in 2006-01-16 Begin */ setstring( "VouNo" , stFCardInfo.vouno ); setstring( "PreCharCode", stFCardInfo.precharcode ); /* 冠字号码 */ setstring( "VouType1" , stFCardKind.blankvoukind ); /* 废卡凭证种类 */ setstring( "VouNo1" , stFCardInfo.vouno ); /* 废卡凭证号码 */ /* Feng Modify in 2006-01-16 End */ setstring( "AcctNo" , stFCardInfo.acctno ); setint ( "Num" , &iNum ); Exit: strcpy( g_acTrcMsg, "子交易: 附卡销卡检查结束.." ); TRCLOG4 if( !strcmp( g_acRspCode, RSP_OK ) ) return SUCCESS; else return FAILED ;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -