📄 cms559.sqc
字号:
/******************************************************************** ** 源码文件名称 : cms559.SQC ** 所属子系统 : CMS ** 当前文件版本 : 4.0.0.0 ** 作者 : guoyun ** 版本创建日期 : 2004/10/25 ** 功能描述 : 卡片基本信息修改子交易 ** 修改记录 : ** 修改人 修改日期 修改日期*********************************************************************/#include "code.h"#include "attrdef.h"#include "sysdef.h"#include "pubcom.h"#include "cmscode.h"#include "cmscardinfo.h"#include "cmsacctm.h"EXEC SQL INCLUDE SQLCA;int cmsUpdCardInfoPro( PUBCOM *pstPubcom ){ /*定义局部变量*/ int iRtn; /* 函数返回值 */ int iNumx; /* 数组计数器 */ int iNumy; /* 数组计数器 */ char acCardNo[ CARDNO_LEN + 1 ]; /* 卡号 */ char acBillWay[ FLAG_LEN + 1 ]; /* 对帐单处理方式 */ char acBillAddType[ FLAG_LEN + 1 ]; /* 对帐单邮寄地址类型 */ char acYfeeFlag[ FLAG_LEN + 1 ]; /* 是否要缴年费 */ double dYFee=0.00; /* 指定年费金额 */ char acYFeeRank[ BIT5_LEN + 1 ]; /* 年费级别 */ char acBuf[ CONDITION_LEN + 1 ]; /* 临时存储区 */ char acCardStat[ BIT21_LEN ][BIT11_LEN]; /* 卡状态检查标志 */ struct cmscardinfo stCmsCardInfo; /* 卡片信息表 */ struct cmsacctm stCmsAcctM; /* 卡账户对照表 */ strcpy( g_acTrcMsg, "子交易: 卡片基本信息修改子交易开始.." ); TRCLOG4 /* 初始化 */ memset( &stCmsCardInfo, 0x00, sizeof( struct cmscardinfo ) ); memset( &stCmsAcctM, 0x00, sizeof( struct cmsacctm ) ); memset( acCardNo, 0x00, sizeof( acCardNo ) ); memset( acBillWay, 0x00, sizeof( acBillWay ) ); memset( acBillAddType, 0x00, sizeof( acBillAddType ) ); memset( acYfeeFlag, 0x00, sizeof( acYfeeFlag ) ); memset( acCardStat, 0x00, sizeof( acCardStat ) ); memset( acYFeeRank, 0x00, sizeof( acYFeeRank ) ); /* 取数据字典值 */ getstring( "CardNo", acCardNo ); /* 卡号 */ getstring( "BillWay", acBillWay ); /* 对帐单寄送方式 */ getstring( "AddressType", acBillAddType ); /* 对帐单寄送地址 */ getstring( "YFeeFlag", acYfeeFlag ); /* 年费方式 */ getstring( "YFeeRank", acYFeeRank ); /* 年费级别 */ getdouble( "FeeAmt", &dYFee ); /* 指定年费金额 */ sprintf( g_acTrcMsg,"CardNo[%s]BillWay[%s]AddressType[%s]YFeeFlag[%s]FeeAmt[%lf]YFeeFlag[%s]",acCardNo,acBillWay,acBillAddType,acYfeeFlag,dYFee,acYFeeRank); TRCLOG3 /* 获取卡片信息 */ strcpy( stCmsCardInfo.cardno, acCardNo); iRtn = pubReadCmscardinfo( &stCmsCardInfo ); if ( SQLCODE != 0 && SQLCODE != SQLNOTFOUND ) { ERRLOG return FAILED; } else if (SQLCODE == SQLNOTFOUND ) { strcpy( g_acRspCode, "CMS113" ); sprintf( g_acRspMsg, "卡号[%s]不存在", stCmsCardInfo.cardno ); ERRLOG return FAILED; } /* 卡检查状态数组中第一维中的第一个字符全置为'1',则检查卡片状态是否正常 */ 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[BIT15_LEN][BIT2_LEN] = CHECK_YES; /* 检查卡状态是否正常 */ iRtn = cmsApiChkCardStatIsNormal( &stCmsCardInfo, acCardStat ); if ( iRtn ) { ERRLOG return FAILED; } strcpy( stCmsCardInfo.chgdate, pstPubcom->acTranDate ); strcpy( stCmsCardInfo.lastdate, pstPubcom->acTranDate ); strcpy( stCmsCardInfo.billway, acBillWay); strcpy( stCmsCardInfo.billaddtype, acBillAddType); strcpy( stCmsCardInfo.yfeeflag, acYfeeFlag); if ( stCmsCardInfo.yfeeflag[BIT1_LEN] == TAKEFEEBYCARDKIND ) /* 按年费级别收取年费 */ { strcpy( stCmsCardInfo.yearfeerank, acYFeeRank); stCmsCardInfo.yfee = 0.0; } else if ( stCmsCardInfo.yfeeflag[BIT1_LEN]== TAKEFEE ) /* 按指定年费金额收取年费 */ { stCmsCardInfo.yfee = dYFee; } else /* 不收年费 */ { stCmsCardInfo.yfee = 0.0; } iRtn = pubModiCmscardinfo( &stCmsCardInfo ); if ( iRtn ) { ERRLOG return FAILED; } iRtn = cmsApiInsTranLog( pstPubcom, &stCmsCardInfo, &stCmsAcctM, "信息", "卡片信息修改" ); 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 + -