📄 cms051.sqc
字号:
/********************************************************************** 源码文件名称 : cms051.SQC** 所属子系统 : CMS** 当前文件版本 : 4.0.0.0** 作者 : Feng** 版本创建日期 : 2006/01/20** 功能描述 : 欠费卡信息查询** 修改记录 :** 修改人 修改日期 修改日期*********************************************************************/#include "code.h"#include "attrdef.h"#include "sysdef.h"#include "pubcom.h"#include "cmscode.h"#include <stdio.h>#include <fcntl.h>#include "cmscardinfo.h"#include "cmscardkind.h"#include "pubinq.h"EXEC SQL INCLUDE SQLCA;int cmsCardYearFeeInq( PUBCOM *pstPubcom ){ /*定义局部变量*/ struct cmscardinfo stCmsCardInfo; /* 卡片信息表 */ BASESUBACCTINFO stDpsAccInfo; /* 静态表 */ char acCardStat[BIT21_LEN][BIT11_LEN]; /*卡状态检查标志*/ char acCardNo[CARDNO_LEN + 1]; /* 卡号 */ char acCardKind[CARDKIND_LEN + 1]; /* 卡号 */ char acDataSrcFlag[FLAG_LEN+1]; /*卡号或帐号数据来源,刷磁/人工输入*/ char acChkMagFlag[FLAG_LEN+1]; /*卡号是否刷卡输入标志*/ char acCardSrcFlag[FLAG_LEN+1] ; /*卡号来源标志*/ int iNumx=0; int iNumy = 0; int iRtn; strcpy( g_acTrcMsg, "子交易: 卡片信息表查询子交易开始.." ); TRCLOG4 /* 初始化 */ memset( &stCmsCardInfo, 0x00, sizeof( struct cmscardinfo ) ); memset( &stDpsAccInfo, 0x00, sizeof( BASESUBACCTINFO ) ); memset( acCardNo, 0x00, sizeof( acCardNo ) ); memset( acCardStat, 0x00, sizeof ( acCardStat ) ); memset( acChkMagFlag, 0x00 , sizeof( acChkMagFlag ) ) ; memset( acCardSrcFlag, 0x00 , sizeof( acCardSrcFlag ) ) ; memset( acDataSrcFlag, 0x00 , sizeof( acDataSrcFlag ) ) ; /* 取数据字典值 */ getstring( "CardNo", acCardNo ); sprintf( g_acTrcMsg,"CardNo[%s]",acCardNo ); TRCLOG3 /*卡号或帐号数据来源,刷磁/人工输入*/ 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( cmsApiGetCmsCardInfo( acCardNo, &stCmsCardInfo ) ) { strcpy( g_acTrcMsg, "子交易: 卡片信息表查询子交易失败.." ); TRCLOG4; ERRLOG return FAILED; } strcpy( g_acTrcMsg, "stCmsCardInfo" ); TRCLOG3; /* 卡检查状态数组除首位外全置为不检查 */ for ( iNumx = 0; iNumx < BIT21_LEN; iNumx ++ ) for ( iNumy = 0; iNumy < BIT11_LEN; iNumy ++ ) { if ( iNumy == 0 ) acCardStat[iNumx][iNumy] = CHECK_YES; else acCardStat[iNumx][iNumy] = CHECK_NO; } acCardStat[ BIT2_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT2_LEN ] [ BIT3_LEN ] = CHECK_YES; acCardStat[ BIT3_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT3_LEN ] [ BIT3_LEN ] = CHECK_YES; acCardStat[ BIT4_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT5_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT6_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT7_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT9_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT10_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT11_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT12_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT13_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT13_LEN ] [ BIT1_LEN ] = CHECK_NO; acCardStat[ BIT14_LEN ] [ BIT2_LEN ] = CHECK_YES; acCardStat[ BIT14_LEN ] [ BIT3_LEN ] = CHECK_YES; acCardStat[ BIT14_LEN ] [ BIT4_LEN ] = CHECK_YES; acCardStat[ BIT15_LEN ] [ BIT2_LEN ] = CHECK_YES; /* 检查卡状态是否正常 */ iRtn = cmsApiChkCardStatIsNormal( &stCmsCardInfo, acCardStat ); if ( iRtn ) { ERRLOG return FAILED; } strcpy( g_acTrcMsg, "检查卡状态是否正finish" ); TRCLOG1 /* 按客户账号和款项代码获取账户信息 DPS API */ sprintf( g_acTrcMsg,"stCmsCardInfo.acctno[%s]stCmsCardInfo.subacct[%s]", stCmsCardInfo.acctno,stCmsCardInfo.subacct); TRCLOG3 memset( &stDpsAccInfo, 0x00, sizeof( BASESUBACCTINFO ) ); iRtn = InqBaseSubAcct( pstPubcom, stCmsCardInfo.cardno, "", "", "1100000000000000", acChkMagFlag,acDataSrcFlag, &stDpsAccInfo); if (iRtn) { strcpy( g_acRspCode, RSP_OK ); } /* 子交易出口 */ setstring( "CardNo", stCmsCardInfo.cardno ); /*卡号*/ setstring( "CustomId", stCmsCardInfo.custno ); /*客户号*/ setstring( "YFeeFlag", stCmsCardInfo.yfeeflag); /*是否要缴年费*/ setstring( "FeeYear", stCmsCardInfo.yfeeyear); /*已收取年费的年份*/ setstring( "YFeeRank", stCmsCardInfo.yearfeerank); /*年费级别*/ setdouble( "Amt3", &stCmsCardInfo.yfee); /*指定年费金额*/ setdouble( "Amt4", &stCmsCardInfo.yfeebal); /*未交年费总计*/ setstring( "IdType", stDpsAccInfo.acIdType ); /*证件类型*/ setstring( "IdNo", stDpsAccInfo.acIdNo ); /*证件号码*/ setstring( "CustomName", stDpsAccInfo.acCustomName ); /*客户名称*/ strcpy( g_acTrcMsg, "子交易: 欠费卡信息查询结束.." ); TRCLOG4 strcpy( g_acRspCode, RSP_OK ); return SUCCESS;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -