📄 tx_this.c
字号:
/* * 根据帐号后四位取全帐号 */int b1901( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret = -1; char tail[4]; memset(tail, 0, sizeof(tail)); if( strlen(bs->cred_acct) == 4 ) { strcpy(tail, bs->cred_acct); } else { memcpy(tail, bs->cred_acct + strlen(bs->cred_acct) - 4, 4); } tail[4] = 0; if( bs->cid[3] == '9' ) { ret = DB_search_co_acct_by_tail(bs->debi_acct, bs->cid, tail); fprintf(stdout, "DB_search_co_acct_by_tail[%d]\n", ret); if( ret == 100 ) { bs->result = 1500; return FAILURE; } else if( ret < 0 ) { bs->result = 1002; return FAILURE; } } else { ret = DB_search_ps_acct_by_tail(bs->debi_acct, bs->cid, tail); fprintf(stdout, "DB_search_ps_acct_by_tail[%d]\n", ret); if( ret == 100 ) { bs->result = 1500; return FAILURE; } else if( ret < 0 ) { bs->result = 1002; return FAILURE; } } return SUCCESS;}/*注册客户修改密码*/int b1902( TRADE_HEAD *tr_h, BIG_STRC *bs){ char pwd[16 + 1]; memset(pwd, 0, sizeof(pwd)); icbc_des(bs->passwd1, pwd); if( DB_reset_pin(bs->cid, 0, pwd) ) { bs->result = 1002; return FAILURE; } return SUCCESS;}int b9999( TRADE_HEAD *tr_h, BIG_STRC *bs){ FILE *fp ; char filename[ 80], str[ 256] ; char *p ; dp.sn = 0 ; /* 存放文件的记录数 */ sprintf( filename, "%s/dat/config.dat", getenv("HOME")) ; if ( (fp=fopen( filename, "rb+")) == NULL ) { bs->result = FILE_OPEN_ERROR ; return( FAILURE) ; } while ( !feof( fp) ) { memset( str, '\0', sizeof( str)) ; if ( fgets( str, 256, fp) == NULL ) break ; p = (char *)str ; dp.sb[ dp.sn].buf_len = 0 ; while ( *p != '\n' && *p != '\r') { if ( *p == '|' ) *p = '~' ; dp.sb[ dp.sn].buf[ dp.sb[ dp.sn].buf_len] = *p ; dp.sb[ dp.sn].buf_len ++ ; p ++ ; } dp.sb[ dp.sn].buf[ dp.sb[ dp.sn].buf_len] = *p ; dp.sb[ dp.sn].buf_len ++ ; dp.sn ++ ; } fclose( fp) ; if ( dp.sn == 0 ) { bs->result =1006 ; return( FAILURE) ; } return( SUCCESS) ;}int b9051( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret=0; sprintf(bs->address,"%04d.%d",bs->optcode,getpid()); bms_trace("cid[%s]", bs->cid ); switch( bs->bill_flg ) { case 1: ret = DB_ps_acct_list(bs->cid,"",bs->address); if ( ret != SUCCESS ) { if ( ret != FAILURE ) { bs->result = DATABASE_PROGRAM_ERROR ; return( FAILURE) ; } bs->result = CANNT_FIND_ANY_INFO; return(FAILURE); } break; case 2: ret=DB_co_acct_list( bs->cid,bs->bid,"", bs->address ); if ( ret != SUCCESS ) { if( ret==1 ) { bs->result = CANNT_FIND_ANY_INFO; } else if ( ret != FAILURE ) { bms_trace("BMS[%d] DB_co_acct_list [%d]!", mypid, ret) ; bs->result = DATABASE_PROGRAM_ERROR ; return( FAILURE) ; } bs->result = CANNT_FIND_ANY_INFO; return(FAILURE); } break; default: bs->result= 1405; return( FAILURE ); } return (SUCCESS);}int b1908( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret=0; if( DB_delete_account(bs->cid, bs->debi_acct) ) { bs->result = 1002; return FAILURE; } return (SUCCESS);}int b1903( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret=0; ret = DB_seek_ps_info(bs->name, bs->pz_type, bs->pz_num, bs->cid); if( ret == 100 ) { bs->result = 2058; return FAILURE; } else if( ret < 0 ) { bs->result = 1002; return FAILURE; } return (SUCCESS);}/*注册客户修改密码*/int b1904( TRADE_HEAD *tr_h, BIG_STRC *bs){ char pwd[16 + 1]; memset(pwd, 0, sizeof(pwd)); icbc_des(bs->passwd1, pwd); if( DB_reset_pin(bs->cid, bs->bid, pwd) ) { bs->result = 1002; return FAILURE; } return SUCCESS;}int b1905( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret; PS_ACC_LINK acc_link; memset((char *)&acc_link, 0, sizeof(PS_ACC_LINK)); strcpy(acc_link.cid, bs->cid); strcpy(acc_link.account, bs->debi_acct); strcpy(acc_link.link, bs->cred_acct); ret = DB_Query_Link_Acct(bs->cid, bs->debi_acct, bs->cred_acct); if( ret == SUCCESS ) { bs->result = 1508; return FAILURE; } else if( ret < 0 ) { bms_trace("Query"); bs->result = 1002; return FAILURE; } strcpy(acc_link.name, bs->name); strcpy( acc_link.reg_teller, bs->teller) ; acc_link.reg_teller[5] = 0; strcpy( acc_link.reg_brch, bs->term_no); acc_link.reg_brch[9] = 0; pub_get_year_second( acc_link.reg_date) ; acc_link.reg_date[19] = 0; strcpy( acc_link.mod_teller, bs->teller) ; acc_link.mod_teller[5] = 0; strcpy( acc_link.mod_brch, bs->term_no) ; acc_link.mod_brch[9] = 0; pub_get_year_second( acc_link.mod_date) ; acc_link.mod_date[19] = 0; if( DB_Add_Link_Acct(&acc_link) ) { bs->result = 1002; return FAILURE; } return SUCCESS;}int b1906( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret; int rowcount = 0; int pageno = 0; int FirstPage = 1; if( bs->source_ser == FirstPage ) { sprintf(bs->address,"%06ld.%d",bs->trade_serial, bs->optcode); ret = DB_seek_acc_link(&rowcount, bs->cid, bs->address); if( ret == FAILURE ) { bs->result = 1002; return FAILURE; } if( !rowcount ) { bs->result = 1006; return FAILURE; } if( rowcount <= 10 ) { bs->detail_num = 1; } else { pageno = rowcount/10; if( pageno % 10 ) pageno++; bs->detail_num = pageno; } SplitFile(bs->optcode, bs->address, FirstPage); } if( SplitFile(bs->optcode, bs->address, bs->source_ser) ) { bs->result = 1004; return FAILURE; } return SUCCESS;}int b1907( TRADE_HEAD *tr_h, BIG_STRC *bs){ int ret; char tail[4 + 1]; memset(tail, 0, sizeof(tail)); if( strlen(bs->cred_acct) == 4 ) { strcpy(tail, bs->cred_acct); } else { memcpy(tail, bs->cred_acct + strlen(bs->cred_acct) - 4, 4); } tail[4] =0; ret = DB_search_transfer_account(bs->name, bs->debi_acct, bs->cid, bs->notes1, tail); if( ret == 100 ) { ret = DB_search_ps_acct_by_tail(bs->debi_acct, bs->cid, tail); fprintf(stdout, "DB_search_ps_acct_by_tail[%d]\n", ret); if( ret == 100 ) { bs->result = 1509; return FAILURE; } else if( ret < 0 ) { bs->result = 1002; return FAILURE; } DB_seek_ps_info(bs->name, bs->pz_type, bs->pz_num, bs->cid); } else if( ret < 0 ) { bs->result = 1002; return FAILURE; } return SUCCESS;}static int SplitFile(int optcode, char *file, int pageno){ FILE *fp, *fp_ivr, *fp_fax; char org[128], ivr[128], fax[128]; char room[2048]; int icount = 0; char tmp1[128],tmp2[128],tmp3[128]; memset(org, 0, sizeof(org)); sprintf(org, "%s/tmp/%s", getenv("HOME"), file); if((fp = fopen(org, "rb")) == NULL) { bms_trace("Open original file failed[%s]", org); return FAILURE; } memset(ivr, 0, sizeof(ivr)); sprintf(ivr, "%s/tmp/%s.ivr", getenv("HOME"), file); sprintf(fax, "%s/tmp/%s.fax", getenv("HOME"), file); if ( (fp_ivr = fopen(ivr, "wb+")) == NULL || (fp_fax = fopen(fax, "wb+")) == NULL ) { fclose( fp) ; return FAILURE; } print_fax_head(fp_fax, ""); while(!feof(fp)) { memset(room, 0, sizeof(room)); if(fgets(room, 2048, fp) == NULL ) break ; ++icount; if( icount < pageno * 10 - 9 || icount > pageno * 10 ) continue; if( icount == 1) fprintf(fp_fax, "序号\t收款人姓名\t\t\t\t收款人帐号T\n"); memset(tmp1, 0, sizeof(tmp1)); GetField(room, '|', tmp1, 1); alltrim(tmp1); memset(tmp2, 0, sizeof(tmp2)); GetField(room, '|', tmp2, 2); memset(tmp3, 0, sizeof(tmp3)); GetField(room, '|', tmp3, 3); fprintf(fp_ivr, "序号%s\t%-s\t%-s\n", tmp1, tmp2, tmp3); fprintf(fp_fax, "序号%s\t%-s\t%-s\n", tmp1, tmp2, tmp3); } print_fax_tail(fp_fax); fclose( fp_ivr) ; fclose( fp_fax) ; fclose( fp) ; return SUCCESS;}int b9625( TRADE_HEAD *tr_h, BIG_STRC *bs){/* if( DB_search_blist(bs->notes1, &bs->bill_flg) ) { bs->result = 1002; return FAILURE; }*/ return SUCCESS;}/* **************** 转坐席数据交换 ***************** *//********add by zhongyueping 20051107*****************/int b9623( TRADE_HEAD *tr_h, BIG_STRC *bs){ char businessinfo[300]; long cur_min ; memset( businessinfo,'\0',sizeof( businessinfo )); /*客户身份校验密码不送*/ sprintf( businessinfo,"%s|%s|%d||%d|%d|%s|%s|%s|%s|%d|%s|||&", bs->cid, bs->debi_acct, bs->ctype, bs->bill_flg, bs->debi_acct_type, bs->incall_num, bs->cred_acct, bs->cred_aid, bs->passwd2, bs->bid, bs->address); fprintf(stdout, "businessinfo=[%s]\n", businessinfo); if(DB_put_businessinfo_tbc(bs->notes2,bs->cid,businessinfo)!=SUCCESS ) { bs->result = 1416 ; return( FAILURE ); } return( SUCCESS) ;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -