📄 tx_cms.c
字号:
#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"int SetPsInfo( BIG_STRC *bs, PERSON_INFO *ps_info, PS_ACCINFO *ps_accinfo){ /* 客户档案信息*/ 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) ; 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_accinfo->zoneno, ps_info->zoneno) ; strcpy( ps_accinfo->cid, ps_info->cid) ; strcpy(ps_accinfo->ppasswd, bs->passwd1); AllTrim(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 ; 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) ; /* 证件号码*/ 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 ; 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) ;}int SetCoInfo( BIG_STRC *bs, CO_INFO *co_info){ /* 客户档案信息*/ sprintf( co_info->zoneno, "%05d", bs->zoneno) ; /* 地区号*/ strcpy( co_info->cid, bs->cid) ; /* 客户号*/ strcpy( co_info->regist_id, bs->pz_num) ; /* 注册号码*/ strcpy( co_info->unitname, bs->name) ; /* 单位名称 */ strcpy( co_info->country_tax, bs->debi_bank) ; /* 国税税号*/ strcpy( co_info->local_tax, bs->debi_acct) ; /* 地税税号*/ strcpy( co_info->basaccd, bs->cred_acct) ; /* 基本存款帐号*/ strcpy( co_info->reg_bank, bs->cred_bank) ;/* 开户行*/ strcpy( co_info->agent, bs->abstract) ; /* 法人代表*/ co_info->ic_type = bs->debi_acct_type ; /* 法人证件种类*/ strcpy( co_info->ic_no, bs->incall_num) ; /* 法人证件号码*/ strcpy( co_info->finacemas, bs->rate) ; /* 财务主管*/ co_info->mas_type = bs->cred_acct_type ; /* 主管证件种类*/ strcpy( co_info->mas_no, bs->call_id) ; /* 主管证件号码*/ strcpy( co_info->address, bs->address) ; /* 单位地址 */ strcpy( co_info->postcode, bs->postcode) ;/* 邮政编号 */ strcpy( co_info->phone1, bs->tele) ; /* 办公电话 */ strcpy( co_info->phone2, bs->passwd1) ; /* 财务电话 */ strcpy( co_info->fax, bs->passwd2) ; /* 传真 */ strcpy( co_info->email, bs->sonsign_no) ; /* Email*/ sprintf( co_info->type, "%1d", bs->source_typ) ;/* 性质*/ strcpy( co_info->remark, bs->notes1) ; /* 备注*/ sprintf( co_info->func_def, "%020d", 0) ; /* 默认功能*/ co_info->status = STATUS_ACTIVE ; strcpy( co_info->reg_teller, bs->teller) ; strcpy( co_info->reg_brch, bs->term_no) ; pub_get_year_second( co_info->reg_date) ; strcpy( co_info->modi_teller, bs->teller) ; strcpy( co_info->modi_brch, bs->term_no) ; pub_get_year_second( co_info->modi_date) ; return( SUCCESS) ;}/* ------------------------------------------------------------------------功 能: 对公客户档案信息查询 交易码: 8202--------------------------------------------------------------------------- */int c8202( TRADE_HEAD *tr_h, BIG_STRC *bs){ CO_INFO co_info ; int ret ; memset( (char *)&co_info, '\0', sizeof( co_info)) ; /* 查询客户是否存在,并取得客户号,注册号码和客户姓名*/ ret = DB_search_co_info( bs->cid, bs->pz_num, &co_info) ; if ( ret != SUCCESS ) { if ( ret != 100 ) { bms_trace("CASE[%d] c8202 search_co_info[%d]!", mypid, ret) ; bs->result = DATABASE_PROGRAM_ERROR ; } else bs->result = 8004 ; /* 客户档案信息不存在*/ return( FAILURE) ; } strcpy( bs->cid, co_info.cid) ; /* 客户号*/ strcpy( bs->pz_num, co_info.ic_no) ; /* 注册号码*/ WriteCoInfo( &co_info, bs) ; return( SUCCESS) ;}int WriteCoInfo( CO_INFO *co_info, BIG_STRC *bs){ /* 客户档案信息*/ strcpy( bs->cid, co_info->cid) ; /* 客户号*/ strcpy( bs->pz_num, co_info->regist_id) ; /* 注册号码*/ strcpy( bs->name, co_info->unitname) ; /* 注册号码*/ strcpy( bs->debi_bank, co_info->country_tax) ; /* 国税税号*/ strcpy( bs->debi_acct, co_info->local_tax) ; /* 地税税号*/ strcpy( bs->cred_acct, co_info->basaccd) ; /* 基本存款帐号*/ strcpy( bs->cred_bank, co_info->reg_bank) ; /* 开户行*/ strncpy( bs->abstract , co_info->agent,10) ; /* 法人代表*/ bs->debi_acct_type = co_info->ic_type ; /* 法人证件种类*/ strcpy( bs->incall_num, co_info->ic_no) ; /* 法人证件号码*/ strncpy( bs->rate, co_info->finacemas, 10) ; /* 财务主管*/ bs->cred_acct_type = co_info->mas_type ; /* 主管证件种类*/ strcpy( bs->call_id, co_info->mas_no) ; /* 主管证件号码*/ strcpy( bs->address, co_info->address) ; /* 单位地址 */ strcpy( bs->postcode, co_info->postcode) ; /* 邮政编号 */ strncpy( bs->tele, co_info->phone1, 20) ; /* 办公电话 */ strncpy( bs->passwd1, co_info->phone2, 16) ; /* 财务电话 */ strncpy( bs->passwd2, co_info->fax, 16) ; /* 传真 */ strncpy( bs->sonsign_no, co_info->email, 20) ; /* Email*/ bs->source_typ = atoi( co_info->type) ; /* 性质*/ strncpy( bs->notes1, co_info->remark, 30) ; /* 备注*/ bs->bill_flg = co_info->status ; /* 状态*/ strcpy( bs->notes2, co_info->reg_teller) ; /* 开户柜员*/ strcpy( bs->notes3, co_info->reg_date) ; /* 开户日期*/ strcpy( bs->notes4, co_info->modi_teller) ; /* 修改柜员*/ strcpy( bs->notes5, co_info->modi_date) ; /* 修改日期*/ return( SUCCESS) ;}/* ------------------------------------------------------------------------功 能: 对公客户档案信息修改 交易码: 8203--------------------------------------------------------------------------- */int c8203( TRADE_HEAD *tr_h, BIG_STRC *bs){ CO_INFO co_info ; int ret ; memset( (char *)&co_info, '\0', sizeof( co_info)) ; /* 查询客户是否存在,并取得客户号证件和客户姓名*/ ret = DB_search_co_info( bs->cid, bs->pz_num, &co_info) ; if ( ret != SUCCESS ) { if ( ret != 100 ) { bms_trace("CASE[%d] c8203 search_co_info[%d]!", mypid, ret) ; bs->result = DATABASE_PROGRAM_ERROR ; } else bs->result = 8004 ; /* 客户档案信息不存在*/ return( FAILURE) ; } strcpy( bs->cid, co_info.cid) ; /* 客户号*/ strcpy( bs->pz_num, co_info.regist_id) ;/* 证件号码*/ if ( co_info.status == STATUS_DISA ) { bs->result = 8006 ; /* 该客户已注销,不能修改*/ return( FAILURE) ; } memset( (char *)&co_info, '\0', sizeof( co_info)) ; SetCoInfo( bs, &co_info) ; if ( (ret=DB_modi_co_info( bs->cid, &co_info)) != SUCCESS ) { bms_trace("CASE[%d] c8203 modi_co_info[%d]!", mypid, ret) ; bs->result = DATABASE_PROGRAM_ERROR ; return( FAILURE) ; } return( SUCCESS) ;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -