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

📄 cif_ps.c

📁 UNIX/LINUX平台下面SMS网管原代码
💻 C
📖 第 1 页 / 共 3 页
字号:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <time.h>#include <memory.h>#include "apgloble.h"#include "bms_strcdef.h"#include "bms_micro.h"extern double Max_Limit_Amt;/* ------------------------------------------------------------------------功  能: 个人客户档案信息登记  交易码: 8101--------------------------------------------------------------------------- */int c8101( TRADE_HEAD *tr_h, BIG_STRC *bs){	PERSON_INFO ps_info ;	PS_ACCINFO ps_accinfo ;		int ret = -1;	memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	AllTrim(bs->pz_num);	if( bs->pz_type == 1)	{		if( CheckID(bs->pz_num) ) 		{			/* 非法身份证号码 */			bs->result = 7013;			return  FAILURE;		}		ret= DB_check_dupID(bs->pz_num) ;		if( ret < 0 ) 		{			bs->result = 1002;			return  FAILURE;		}		if( ret == 0)		{			bs->result = 8001;			return  FAILURE;		}	}	/*  查询客户是否存在,并取得客户号证件和客户姓名*/	ret = DB_search_ps_info( bs->cid, bs->pz_type, bs->pz_num, &ps_info) ;	if ( ret != 100 ) 	{		if ( ret == SUCCESS ) 		{ 			if ( ps_info.status == STATUS_ACTIVE )			{				bs->result = 8001 ; 			}			else			{				bs->result = 8002 ; 			}			return( FAILURE) ;		}		bms_trace("c8101 search_ps_info failed");		bs->result = DATABASE_PROGRAM_ERROR ;		return( FAILURE) ;	}		memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	memset( (char *)&ps_accinfo, '\0', sizeof( ps_accinfo)) ;	SetPsInfo( bs, &ps_info, &ps_accinfo) ;	AllTrim(bs->cid);	if( !strlen(bs->cid) || !atol(bs->cid) )	{		if( DB_GenPCid(bs->cid) )		{			bms_trace("get cid error.");			bs->result = 1600;			return FAILURE;		}		strcpy( ps_info.cid, bs->cid) ;		strcpy( ps_accinfo.cid, bs->cid) ;	}	bms_trace("[%d][%s][%s]", ps_info.ic_type, ps_info.ic_no, ps_info.cid);	if ( (ret=DB_add_ps_info( &ps_info, &ps_accinfo) ) != SUCCESS ) 	{		bms_trace("c8101 add_ps_info[%d]!", ret) ;		bs->result = DATABASE_PROGRAM_ERROR ;		return( FAILURE) ;	}	strcpy( bs->cid, ps_info.cid) ;	return( SUCCESS) ;}int SetPsInfo( BIG_STRC *bs, PERSON_INFO *ps_info, PS_ACCINFO *ps_accinfo){	char ctrycode[3 + 1];	char pacetype[2];	/* 客户档案信息*/	sprintf( ps_info->zoneno, "%05d", bs->zoneno) ;		strcpy( ps_info->cid, bs->cid) ;		strcpy( ps_info->name, bs->auth_no) ;		ps_info->sex = bs->bid ;		ps_info->ic_type = bs->pz_type ;	strncpy( ps_info->ic_no, bs->pz_num, 18) ;	ps_info->ic_no[strlen(ps_info->ic_no)] = 0;/**/	strcpy(ps_info->ctrycode , bs->notes7 );	ps_info->pacetype = (int)atoi(bs->notes6) ;/**/	ps_info->utypeid = bs->bill_flg ;	strcpy(ps_info->birthday, bs->date1) ;		ps_info->marriage = bs->debi_curr ;	ps_info->study = bs->debi_acct_type ;	ps_info->techlvl = bs->cred_curr ;	strncpy( ps_info->consort, bs->cred_bank, 10) ;	strncpy( ps_info->address1, bs->address, 60) ;	strcpy( ps_info->zip, bs->postcode) ;		strncpy( ps_info->mobile, bs->incall_num, 22) ;	strcpy( ps_info->phone1, bs->tele) ;		strcpy( ps_info->email, bs->notes5) ;	strcpy( ps_info->empdate, bs->date2) ;		strcpy( ps_info->unitname, bs->notes1) ;	strncpy( ps_info->phone2, bs->notes2, 22) ;	strncpy( ps_info->postcode, bs->notes3, 6) ;	sprintf( ps_info->flagoemp, "%01d", bs->deduct_type) ;	strncpy( ps_info->widno, bs->notes4, 10) ;	sprintf( ps_info->level, "%01d", bs->source_typ) ;	strcpy( ps_info->remark, bs->name) ;			strcpy( ps_info->valid_date, bs->rate) ;	bms_trace(bs->cred_bank);	memset(ctrycode, 0, sizeof(ctrycode));	memset(pacetype, 0, sizeof(pacetype));	GetField(bs->cred_bank, ':', ctrycode, 1);	GetField(bs->cred_bank, ':', pacetype, 2);	bms_trace(ctrycode);	bms_trace(pacetype);	strcpy( ps_info->ctrycode, ctrycode) ;			ps_info->pacetype = atoi(pacetype);		strcpy( ps_info->reg_mode, "1") ;	sprintf( ps_info->func_def, "%020d", 0) ;	ps_info->fee_type = 0 ;	ps_info->crednc = 0 ;	ps_info->status = STATUS_ACTIVE ;	strcpy( ps_info->reg_teller, bs->teller) ;	strcpy( ps_info->reg_brch, bs->term_no);	pub_get_year_second( ps_info->reg_date) ;	strcpy( ps_info->modi_teller, bs->teller) ;	strcpy( ps_info->modi_brch, bs->term_no) ;	pub_get_year_second( ps_info->modi_date) ;	ps_info->job = atoi(bs->notes8) ;	strcpy(ps_info->engname, bs->debi_acct);	strcpy(ps_info->engcard, bs->debi_bank);	strcpy( ps_accinfo->zoneno, ps_info->zoneno) ;	strcpy( ps_accinfo->cid, ps_info->cid) ;        icbc_des(bs->passwd1, ps_accinfo->ppasswd);	strcpy(ps_accinfo->spasswd, ps_accinfo->ppasswd) ;	ps_accinfo->status = STATUS_ACTIVE ;	ps_accinfo->acct_num = 0 ;	ps_accinfo->detail_num = 0L ;	strcpy( ps_accinfo->reg_teller, ps_info->reg_teller) ;	strcpy( ps_accinfo->reg_brch, ps_info->reg_brch) ;	strcpy( ps_accinfo->reg_date, ps_info->reg_date) ;	strcpy( ps_accinfo->modi_teller, ps_info->modi_teller) ;	strcpy( ps_accinfo->modi_brch, ps_info->modi_brch) ;	strcpy( ps_accinfo->modi_date, ps_info->modi_date) ;	return( SUCCESS) ;}/* ------------------------------------------------------------------------功  能: 个人客户档案信息查询  交易码: 8102--------------------------------------------------------------------------- */int c8102( TRADE_HEAD *tr_h, BIG_STRC *bs){	PERSON_INFO ps_info ;	PS_ACCINFO ps_accinfo ;	int ret ;	AllTrim(bs->pz_num);	if( bs->pz_type == 1)	{		if( CheckID(bs->pz_num) ) 		{			/* 非法身份证号码 */			bs->result = 7014;			return  FAILURE;		}/**		ret= DB_check_dupID(bs->pz_num) ;		if( ret < 0 ) 		{			bs->result = 1002;			return  FAILURE;		}		if( ret == 0)		{			bs->result = 8001;			return  FAILURE;		}**/	}	memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	memset( (char *)&ps_accinfo, '\0', sizeof( ps_accinfo)) ;	ret = DB_search_ps_info( bs->cid, bs->pz_type, bs->pz_num, &ps_info) ;	if ( ret != SUCCESS ) 	{		if ( ret != 100 ) 		{			bms_trace("CMS[%d] c8102 search_ps_info[%d]!", mypid, ret) ;			bs->result = DATABASE_PROGRAM_ERROR ;		} else bs->result = 8004 ;		return( FAILURE) ;	}	strcpy( bs->cid, ps_info.cid) ;		/* 客户号*/	bs->pz_type = ps_info.ic_type ;		/* 证件种类*/	strcpy( bs->pz_num, ps_info.ic_no) ;	/* 证件号码*/	bms_trace(ps_info.engname);	bms_trace(ps_info.engcard);	bms_trace("%s", ps_info.ctrycode);	bms_trace("%d", ps_info.pacetype);	WritePsInfo( &ps_info, &ps_accinfo, bs) ;		return( SUCCESS) ;}int WritePsInfo( PERSON_INFO *ps_info, PS_ACCINFO *ps_accinfo, BIG_STRC *bs){	/* 客户档案信息*/	strcpy( bs->cid, ps_info->cid) ;		/* 客户号*/	bs->pz_type = ps_info->ic_type ;		/* 证件种类*/	strcpy( bs->pz_num, ps_info->ic_no) ;		/* 证件号码*/	strncpy( bs->auth_no, ps_info->name, 20) ;	/* 客户姓名*/	bs->bid = ps_info->sex ;			/* 性别*/	strcpy( bs->debi_bank, ps_info->ratepayno) ;	/* 纲税号*/	strcpy( bs->debi_acct, ps_info->insrncno) ;	/* 社会保险号*/	strcpy( bs->date1, ps_info->birthday) ;		/* 出生日期*/	bs->debi_curr = ps_info->marriage ;		/* 婚姻状况*/	bs->debi_acct_type = ps_info->study ;		/* 学历*/	bs->cred_curr = ps_info->techlvl ;		/* 技术职称*/	strcpy( bs->cred_bank, ps_info->consort) ;	/* 配合姓名*/	strcpy( bs->address, ps_info->address1) ;	/* 联系地址*/	strcpy( bs->postcode, ps_info->zip) ;		/* 邮政编码*/	strcpy( bs->incall_num, ps_info->mobile) ;	/* 手机号码*/	strncpy( bs->tele, ps_info->phone1, 20) ;	/* 家庭电话*/	strncpy( bs->notes5, ps_info->email, 30) ;	/* Email地址*/	strncpy( bs->date2, ps_info->empdate, 10) ;	/* 参加工作时间*/	strncpy( bs->notes1, ps_info->unitname, 30) ;	/* 工作单位*/	bs->bill_flg = ps_info->utypeid ;		/* 单位类别*/	strcpy( bs->notes2, ps_info->phone2) ;		/* 单位电话*/	strcpy( bs->notes3, ps_info->postcode) ;	/* 单位邮编*/	bs->deduct_type = atoi( ps_info->flagoemp) ;	/* 银行员工标志*/	strcpy( bs->notes4, ps_info->widno) ;		/* 工作证号*/	bs->source_typ = atoi( ps_info->level) ;	/* 客户等级*/	strncpy( bs->name, ps_info->remark, 80) ;	/* 备注*/	strcpy( bs->rate, ps_info->valid_date) ;	/* 有效日期*/	bs->cred_acct_type = ps_info->status ;		/* 客户状态*/	strcpy( bs->cred_acct, ps_info->func_def) ;	/* 业务功能*/	strcpy( bs->abstract, ps_info->reg_teller) ;	/* 开户柜员*/	strcpy( bs->sonsign_no, ps_info->reg_date) ;	/* 开户日期*/	strcpy( bs->passwd1, ps_info->modi_teller) ;	/* 修改柜员*/	strcpy( bs->trade_brch, ps_info->modi_date) ;	/* 修改日期*/	bs->source_ser = ps_accinfo->acct_num ;		/* 基本帐号数*/	sprintf(bs->notes6,"%d",ps_info->pacetype);/*民族*/	sprintf(bs->notes7,"%s",ps_info->ctrycode);/*国籍*/	sprintf(bs->notes8,"%d",ps_info->job) ;/*职业*/	return( SUCCESS) ;}/* ------------------------------------------------------------------------功  能: 个人客户档案信息修改  交易码: 8103--------------------------------------------------------------------------- */int c8103( TRADE_HEAD *tr_h, BIG_STRC *bs){	PERSON_INFO ps_info ;	PS_ACCINFO ps_accinfo ;	int ret ;	AllTrim(bs->pz_num);	if( bs->pz_type == 1)	{		if( CheckID(bs->pz_num) ) 		{			/* 非法身份证号码 */			bs->result = 7014;			return  FAILURE;		}/*		ret= DB_check_dupID(bs->pz_num) ;		if( ret < 0 ) 		{			bs->result = 1002;			return  FAILURE;		}		if( ret == 0)		{			bs->result = 8001;			return  FAILURE;		}*/	}	memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	/*  查询客户是否存在,并取得客户号证件和客户姓名*/	ret = DB_search_ps_info( bs->cid, bs->pz_type, bs->pz_num, &ps_info) ;	if ( ret != SUCCESS ) {		if ( ret != 100 ) {			bms_trace("CMS[%d] c8103 search_ps_info[%d]!", mypid, ret) ;			bs->result = DATABASE_PROGRAM_ERROR ;		} else bs->result = 8004 ; /* 客户档案信息不存在*/		return( FAILURE) ;	}	strcpy( bs->cid, ps_info.cid) ;		/* 客户号*/	bs->pz_type = ps_info.ic_type ;		/* 证件种类*/	strcpy( bs->pz_num, ps_info.ic_no) ;	/* 证件号码*/	if ( ps_info.status == STATUS_DISA ) {		bs->result = 8006 ;		/* 该客户已注销,不能修改*/		return( FAILURE) ;	}	memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	memset( (char *)&ps_accinfo, '\0', sizeof( ps_accinfo)) ;	SetPsInfo( bs, &ps_info, &ps_accinfo) ;	if ( (ret=DB_modi_ps_info( bs->cid, &ps_info)) != SUCCESS ) {		bms_trace("CMS[%d] c8103 modi_ps_info[%d]!", mypid, ret) ;		bs->result = DATABASE_PROGRAM_ERROR ;		return( FAILURE) ;	}	return( SUCCESS) ;}/* ------------------------------------------------------------------------功  能: 个人客户档案信息注销  交易码: 8104--------------------------------------------------------------------------- */int c8104( TRADE_HEAD *tr_h, BIG_STRC *bs){	PERSON_INFO ps_info ;	int ret ;	AllTrim(bs->pz_num);	if( bs->pz_type == 1)	{		if( CheckID(bs->pz_num) ) 		{			/* 非法身份证号码 */			bs->result = 7014;			return  FAILURE;		}/*		ret= DB_check_dupID(bs->pz_num) ;		if( ret < 0 ) 		{			bs->result = 1002;			return  FAILURE;		}		if( ret == 0)		{			bs->result = 8001;			return  FAILURE;		}*/	}	memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	/*  查询客户是否存在,并取得客户号证件和客户姓名*/	ret = DB_search_ps_info( bs->cid, bs->pz_type, bs->pz_num, &ps_info) ;	if ( ret != SUCCESS ) {		if ( ret != 100 ) {			bms_trace("CMS[%d] c8104 search_ps_info[%d]!", mypid, ret) ;			bs->result = DATABASE_PROGRAM_ERROR ;		} else bs->result = 8004 ; /* 客户档案信息不存在*/		return( FAILURE) ;	}	strcpy( bs->cid, ps_info.cid) ;		/* 客户号*/	bs->pz_type = ps_info.ic_type ;		/* 证件种类*/	strcpy( bs->pz_num, ps_info.ic_no) ;	/* 证件号码*/	if ( ps_info.status == STATUS_DISA ) {		bs->result = 8007 ;		/* 该客户已注销,不能再注销*/		return( FAILURE) ;	}	strcpy( ps_info.modi_teller, bs->teller) ;	strcpy( ps_info.modi_brch, bs->term_no) ;	pub_get_year_second( ps_info.modi_date) ;	if ( (ret=DB_del_ps_info( bs->cid, &ps_info)) != SUCCESS ) {		bms_trace("CMS[%d] c8104 del_ps_info[%d]!", mypid, ret) ;		bs->result = DATABASE_PROGRAM_ERROR ;		return( FAILURE) ;	}	return( SUCCESS) ;}/* ------------------------------------------------------------------------功  能: 个人客户密码挂失  交易码: 8105--------------------------------------------------------------------------- */int c8105( TRADE_HEAD *tr_h, BIG_STRC *bs){	PERSON_INFO ps_info ;	PS_ACCINFO ps_accinfo ;	int ret ;	AllTrim(bs->pz_num);	if( bs->pz_type == 1)	{		if( CheckID(bs->pz_num) ) 		{			/* 非法身份证号码 */			bs->result = 7014;			return  FAILURE;		}/*		ret= DB_check_dupID(bs->pz_num) ;		if( ret < 0 ) 		{			bs->result = 1002;			return  FAILURE;		}		if( ret == 0)		{			bs->result = 8001;			return  FAILURE;		}*/	}	memset( (char *)&ps_info, '\0', sizeof( ps_info)) ;	memset( (char *)&ps_accinfo, '\0', sizeof( ps_accinfo)) ;	/*  查询客户是否存在,并取得客户号证件和客户姓名*/	ret = DB_search_ps_info( bs->cid, bs->pz_type, bs->pz_num, &ps_info) ;	if ( ret != SUCCESS ) {		if ( ret != 100 ) {			bms_trace("CMS[%d] c8105 search_ps_info[%d]!", mypid, ret) ;			bs->result = DATABASE_PROGRAM_ERROR ;		} else bs->result = 8004 ; /* 客户档案信息不存在*/		return( FAILURE) ;	}	strcpy( bs->cid, ps_info.cid) ;		/* 客户号*/	bs->pz_type = ps_info.ic_type ;		/* 证件种类*/	strcpy( bs->pz_num, ps_info.ic_no) ;	/* 证件号码*/	if ( ps_info.status == STATUS_DISA ) {		bs->result = 8008 ;		/* 该客户已注销,不能改密*/		return( FAILURE) ;	}	strcpy( ps_accinfo.cid, bs->cid) ;	icbc_des( bs->passwd1, ps_accinfo.ppasswd) ;	AllTrim(ps_accinfo.ppasswd);	strcpy( ps_accinfo.spasswd, ps_accinfo.ppasswd) ;	strcpy( ps_accinfo.modi_teller, bs->teller) ;	strcpy( ps_accinfo.modi_brch, bs->term_no) ;	pub_get_year_second( ps_accinfo.modi_date) ;	if ( (ret=DB_set_ps_passwd( bs->cid, &ps_accinfo)) != SUCCESS ) {		bms_trace("CMS[%d] c8105 set_ps_passwd[%d]!", mypid, ret) ;

⌨️ 快捷键说明

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