📄 charge_erase.cpp
字号:
"WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,Code,bill_serial_nbr); //userlog(lsSql); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"按合同号提取销帐历史记录出错");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==0) { if(li_reprint_flag==1) { li_reprint_flag=2; } else { li_reprint_flag=4; } sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL_HIS a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,Code,bill_serial_nbr); } else StrReturn(0,cDatabase->GetData()); } //userlog(lsSql); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"按合同号提取销帐历史记录出错");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==0) StrReturn(100,"未找到合同号销帐记录"); StrReturn(0,cDatabase->GetData()); case 2: //按电话号提取 sprintf(lsSql,"SELECT serv_id,acct_id FROM B_SERV WHERE acc_nbr = '%s' and state in ('F0A','F0O','F0J','F0K','F0L')",Code); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"提取用户serv_id信息失败");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); if(lrow==0) { sprintf(lsSql,"SELECT a.serv_id,a.acct_id FROM B_SERV a,B_NBR_GROUP b WHERE b.begin_nbr <= '%s' AND b.end_nbr >= '%s' AND b.serv_id = a.serv_id AND b.state = 'B0A' AND a.state in ('F0A','F0O','F0J','F0K','F0L')",Code,Code); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"提取用户nbr_group信息失败");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); if(lrow==0) { sprintf(lsSql,"SELECT serv_id,acct_id FROM B_ACCT_ITEM_O WHERE -serv_id = %s and serv_id < 0 and state in ('20P','20R','20X','20U','20W','20V')",Code); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"提取用户nbr_group信息失败");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); if(lrow==0) { cDatabase->Commit(); StrReturn(100,"未找到用户信息"); } else { rtrim(ltrim(strcpy(serv_id,cDatabase->data->GetColData(1,1)))); rtrim(ltrim(strcpy(acct_id,cDatabase->data->GetColData(1,2)))); } } else { rtrim(ltrim(strcpy(serv_id,cDatabase->data->GetColData(1,1)))); rtrim(ltrim(strcpy(acct_id,cDatabase->data->GetColData(1,2)))); } } else { rtrim(ltrim(strcpy(serv_id,cDatabase->data->GetColData(1,1)))); rtrim(ltrim(strcpy(acct_id,cDatabase->data->GetColData(1,2)))); } if(strcmp(OtherArea,"0")==0) { if(atol(acct_id)<atol(min_acct_id)||atol(acct_id)>=atol(max_acct_id)) StrReturn(-1,"不允许进行异地返销"); } if(acct_flag==0) { //提取指定帐期销帐流水号 sprintf(lsSql," select distinct bill_serial_nbr from b_acct_item_o where acct_id=%s and billing_cycle_id=%s ",acct_id,billing_cycle); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); //userlog(lsSql); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"提取指定帐期销帐流水号出错3");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==1) { sprintf(bill_serial_nbr,"%s",cDatabase->GetData()); } else { StrReturn(100,"未找到合同号销帐记录2"); } if(bill_exists==0) { li_reprint_flag=1; sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,acct_id,bill_serial_nbr); //userlog(lsSql); } else { li_reprint_flag=1; sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,acct_id,bill_serial_nbr); //userlog(lsSql); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"按电话号提取销帐历史记录出错1");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==0) { li_reprint_flag=2; sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL_HIS a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,acct_id,bill_serial_nbr); } else StrReturn(0,cDatabase->GetData()); } //userlog(lsSql); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"按电话号提取销帐历史记录出错2");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==0) StrReturn(100,"未找到电话号销帐记录2"); StrReturn(0,cDatabase->GetData()); } else { //提取指定帐期销帐流水号 sprintf(lsSql," select distinct bill_serial_nbr from b_acct_item_o_%s where acct_id=%s ",billing_cycle,acct_id); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); //userlog(lsSql); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"提取指定帐期销帐流水号出错4");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==1) { sprintf(bill_serial_nbr,"%s",cDatabase->GetData()); li_reprint_flag=2; } else { sprintf(lsSql," select distinct bill_serial_nbr from b_acct_item_o where acct_id=%s ",billing_cycle,Code); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); //userlog(lsSql); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"提取指定帐期销帐流水号出错3");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==1) { sprintf(bill_serial_nbr,"%s",cDatabase->GetData()); li_reprint_flag=1; } else { StrReturn(100,"未找到合同号销帐记录3"); } } } sprintf(lsTemp,"%ld",bill_exists); if(bill_exists==0) { if(li_reprint_flag!=1) { li_reprint_flag=3; } sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,acct_id,bill_serial_nbr); //userlog(lsSql); } else { if(li_reprint_flag!=1) { li_reprint_flag=3; } sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,acct_id,bill_serial_nbr); //userlog(lsSql); cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"按电话号提取销帐历史记录出错3");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==0) { if(li_reprint_flag!=1) { li_reprint_flag=4; } sprintf(lsSql,"SELECT to_char(a.bill_serial_nbr),'%s'," "to_char(a.pay_serial_nbr),to_char(a.created_date,'yyyy-mm-dd'),a.print_count, " "a.staff_id,a.acct_id,a.amount,a.change,0 flag,%d reprint ,(b.balance-b.amount) " "FROM BILL_HIS a,BALANCE_HIST_ADMIN b " "WHERE a.acct_id=b.acct_id(+) " " and a.acct_id=%s " " and a.bill_serial_nbr=b.bill_serial_nbr(+) " " and a.bill_serial_nbr=%s and a.state = '40C' " ,cycle_end_date,li_reprint_flag,acct_id,bill_serial_nbr); } else StrReturn(0,cDatabase->GetData()); } cDatabase->DoSql(lsSql); isqlcode=cDatabase->GetSqlCode(); if(isqlcode<0) { strcpy(lsRetstr,cDatabase->GetSqlErrText()); strcpy(lsTemp,"按电话号提取销帐历史记录出错4");strcat(lsTemp,"\n"); if(WriteLog(cDatabase,StaffID,"w_p_charge_erase",strcat(lsTemp,lsRetstr),lsErr)!=1) strcat(lsTemp,lsErr); cDatabase->Commit(); StrReturn(-1,lsTemp); } lrow=cDatabase->GetRowCount(); cDatabase->Commit(); if(lrow==0) StrReturn(100,"未找到电话号销帐记录4"); StrReturn(0,cDatabase->GetData()); default: StrReturn(-1,"未知的销帐类型"); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -