📄 s11050.ec.c
字号:
}*/
return 0;
}
chk_lxszh()
{
if(lxs_bz){
/****改为分科目和存期计利息税****20010719
$select zh into $lxs_zdflzh from czdflb where
jgm=$rxhfh.jgm and hbh=$rxhfh.hbh and ywzl=19;
****************************************/
if((rxhfh.czh==2 || rxhfh.czh==21 || rxhfh.czh==4
|| rxhfh.czh==16 || rxhfh.czh==17|| rxhfh.czh==18
|| rxhfh.czh==19|| rxhfh.czh==20 || rxhfh.czh==22
|| rxhfh.czh==3 || rxhfh.czh==5 || rxhfh.czh==6
|| rxhfh.czh==60)
&& rxhfh.cq>80) {
if ( rxhfh.zh[12]=='3' || rxhfh.zh[12]=='4' ) {
sprintf(cq,"%2d",rxhfh.cq);
$select yflxzh,yqlxzh into $lxzczh,$lxs_zdflzh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh and kzz=$cq;
}else
$select yflxzh,yqlxzh into $lxzczh,$lxs_zdflzh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh;
}
else {
if ( rxhfh.zh[12]=='3' || rxhfh.zh[12]=='4' ) {
sprintf(cq,"%2d",rxhfh.cq);
$select lxzczh,yqlxzh into $lxzczh,$lxs_zdflzh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh and kzz=$cq;
}else
$select lxzczh,yqlxzh into $lxzczh,$lxs_zdflzh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh;
}
printf("\n****AA[%s]***\n",lxs_zdflzh);
if(sqlca.sqlcode){
errout ("帐户销户",ZHXHJYM,__FILE__,__LINE__,sqlca.sqlcode);
if(sqlca.sqlcode==100)
strcpy(s_snd.errmsg,"自动分录表中无本机构对应利息税帐户 !");
else
sprintf(s_snd.errmsg,"检索自动分录表错[%d] !",sqlca.sqlcode);
s_snd.flag=1;
$rollback work;
return 1;
}
$select * into $rlxsfh from ffhz3 where zh=$lxs_zdflzh;
if(sqlca.sqlcode){
s_snd.flag = 1;
sprintf(s_snd.errmsg,"取利息税自动分录分户信息失败[%d]!",sqlca.sqlcode);
$rollback work;
return 1;
}
jcz=zh_jyjc(rlxsfh,rlxdgs.lxs,2);
if(jcz){
switch(jcz){
case 1:
strcpy(s_snd.errmsg,"自动分录利息税帐号已销户 !");
break;
case 2:
strcpy(s_snd.errmsg,"自动分录利息税帐号已挂失 !");
break;
case 3:
strcpy(s_snd.errmsg,"自动分录利息税金帐号已不收不付 !");
break;
case 4:
strcpy(s_snd.errmsg,"自动分录利息税帐户DAC校验错, 不能销户 !");
break;
case 5:
strcpy(s_snd.errmsg,"利息税帐户余额不足 !");
break;
default:
sprintf(s_snd.errmsg,"利息税帐户检查错[%d] !",jcz);
}
s_snd.flag=1;
$rollback work;
return 1;
}
}
return 0;
}
prepare_lxdwj()
{
rflxdwj.hbh = rxhfh.hbh;
strcpy( rflxdwj.jgm, rxhfh.jgm );
rflxdwj.kmh = rxhfh.kmh;
strcpy( rflxdwj.zh, rxhfh.zh );
strcpy( rflxdwj.zh1, " " );
strcpy( rflxdwj.hm, " " );
rflxdwj.jxr = rcxtzt.yyrq;
rflxdwj.lx = lx;
/** 若有利息税收,将flxdwj.ll置为rlxdgs.lxs,否则处理不变 **/
if(lxs_bz) rflxdwj.ll = rlxdgs.lxs;
else rflxdwj.ll = rxhfh.ll;
rflxdwj.js = get_fhjs(rxhfh, rcxtzt.yyrq);
rflxdwj.rs = rcxtzt.yyrq - rxhfh.jyrq;
rflxdwj.qxr = rxhfh.qxr;
strcpy( rflxdwj.hzbz , "2" );
rflxdwj.dycs = 1;
strcpy( rflxdwj.rzbz, "1" );
strcpy( rflxdwj.jdbz, "2" );
}
cbqx_cl()/****存本取息处理*******/
{
if(rxhfh.czh==4){
if(rcxtzt.yyrq-rxhfh.dqrq<0)
lx=lx-rxhfh.tzed;
else{
if(rxhfh.zqzq==0){
s_snd.flag=1;
strcpy(s_snd.errmsg,"存本取息的支取周期错,不能销户 !");
$rollback work;
return 1;
}
if(rxhfh.fxcs!=(int)(get_period(rxhfh.cq)/rxhfh.zqzq)){
s_snd.flag=1;
strcpy(s_snd.errmsg,"存本取息的利息尚未取清,不能销户 !");
$rollback work;
return 1;
}
}
}
return 0;
}
chk_xjzh()/***现金帐号检查****/
{
$select zh into $xjzh from czdflb where
jgm=$s_rec.jgm and hbh=$rxhfh.hbh and ywzl=13;
if(sqlca.sqlcode){
errout ("帐户销户",ZHXHJYM,__FILE__,__LINE__,sqlca.sqlcode);
if(sqlca.sqlcode==100)
strcpy(s_snd.errmsg,"自动分录表中无本机构对应现金帐户 !");
else
sprintf(s_snd.errmsg,"检索自动分录表错[%d] !",sqlca.sqlcode);
s_snd.flag=1;
$rollback work;
return 1;
}
$select * into $rdffh from ffhz3 where zh=$xjzh;
if(sqlca.sqlcode){
errout ("帐户销户",ZHXHJYM,__FILE__,__LINE__,sqlca.sqlcode);
if(sqlca.sqlcode==100)
strcpy(s_snd.errmsg,"自动分录现金帐户无对应分户帐 !");
else
sprintf(s_snd.errmsg,"检索分户帐错[%d] !",sqlca.sqlcode);
s_snd.flag=1;
$rollback work;
return 1;
}
jcz=zh_jyjc(rdffh,lx+bj,1);
if(jcz){
switch(jcz){
case 1:
strcpy(s_snd.errmsg,"自动分录现金帐号已销户 !");
break;
case 2:
strcpy(s_snd.errmsg,"自动分录现金帐号已挂失 !");
break;
case 3:
strcpy(s_snd.errmsg,"自动分录现金帐号已不收不付 !");
break;
case 4:
strcpy(s_snd.errmsg,"自动分录现金帐户DAC校验错, 不能销户 !");
break;
case 5:
strcpy(s_snd.errmsg,"现金帐户余额不足 !");
break;
default:
sprintf(s_snd.errmsg,"现金帐户检查错[%d] !",jcz);
}
s_snd.flag=1;
$rollback work;
return 1;
}
/** 钱箱处理中加入对利息税的处理 **/
if( !lxs_bz ) rlxdgs.lxs=0.00;
if( (s_snd.flag=qx_cl(rxhfh.hbh,bj+lx-rlxdgs.lxs,g_cngy,'2')) ){
s_snd.flag = 1;
strcpy(s_snd.errmsg,g_errmsg);
$rollback work;
return 1;
}
return 0;
}
chk1_dffh()/***贷方分户检查***/
{
if(s_rec.dfzh[12]=='1')
$select * into $rdffh from ffhz1 where
zh=$s_rec.dfzh and hbh=$rxhfh.hbh;
else if(s_rec.dfzh[12]=='2')
$select * into $rdffh from ffhz2 where
zh=$s_rec.dfzh and hbh=$rxhfh.hbh;
else
$select * into $rdffh from ffhz3 where
zh=$s_rec.dfzh and hbh=$rxhfh.hbh;
if(sqlca.sqlcode){
errout ("帐户销户",ZHXHJYM,__FILE__,__LINE__,sqlca.sqlcode);
if(sqlca.sqlcode==100)
strcpy(s_snd.errmsg,"转帐贷方帐号不存在 !");
else
sprintf(s_snd.errmsg,"后台数据库操作错, 代码=[%d] !",sqlca.sqlcode);
s_snd.flag = 1;
$rollback work;
return 1;
}
return 0;
}
chk_tctd()
{
/* modify by 0813 */
if(tc_td(s_rec.jgm,rdffh.jgm,rdffh.czh,rdffh.hbh,rdffh.zhkz,'2')<0){
strcpy ( s_snd.errmsg , g_errmsg );
s_snd.flag = 1;
$rollback work;
return 1;
}
if( strcmp(rdffh.jgm,rxhfh.jgm) && strcmp(s_rec.jgm,rxhfh.jgm) && strcmp(rdffh.jgm,s_rec.jgm)){
s_snd.flag = 1;
strcpy(s_snd.errmsg,"销户不允许三方交易!");
$rollback work;
return 1;
}
if(rdffh.hbh!=rxhfh.hbh){
s_snd.flag = 1;
$rollback work;
strcpy(s_snd.errmsg,"销户不允许跨币钟交易");
return 1;
}
/***********************************
if(strncmp(rdffh.jgm,s_rec.jgm,10)){
if( strcmp(rdffh.jgm,rxhfh.jgm) && strcmp(s_rec.jgm,rxhfh.jgm){
s_snd.flag=1;
strcpy(s_snd.errmsg,"销户不允许三方交易!");
$rollback work;
return 1;
}
if(td_yn1(rdffh.jgm)){
s_snd.flag=1;
strcpy(s_snd.errmsg,"转帐贷方帐号所在机构不允许通存通兑!");
$rollback work;
return 1;
}
if(td_yn1(s_rec.jgm)){
s_snd.flag=1;
strcpy(s_snd.errmsg,"本机构不允许通存通兑!");
$rollback work;
return 1;
}
if(td_yn(rdffh.czh,rdffh.hbh)){
s_snd.flag=1;
strcpy(s_snd.errmsg,"转帐贷方帐号所属储种不允许通存通兑!");
$rollback work;
return 1;
}
}
if(td_yn(rxhfh.czh,rxhfh.hbh)){
s_snd.flag=1;
strcpy(s_snd.errmsg,"借方帐号所属储种不允许通存通兑!");
$rollback work;
return 1;
}
***********************************/
return 0;
}
chk_lxzczh()/***利息支出帐号检查*******/
{
if((rxhfh.czh==2 || rxhfh.czh==21 || rxhfh.czh==4
|| rxhfh.czh==16 || rxhfh.czh==17|| rxhfh.czh==18
|| rxhfh.czh==19|| rxhfh.czh==20 || rxhfh.czh==22
|| rxhfh.czh==3 || rxhfh.czh==5 || rxhfh.czh==6
|| rxhfh.czh==60)
&& rxhfh.cq>80) {
if ( rxhfh.zh[12]=='3' || rxhfh.zh[12]=='4' ) {
sprintf(cq,"%2d",rxhfh.cq);
$select yflxzh into $lxzczh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh and kzz=$cq;
}else
$select yflxzh into $lxzczh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh;
}
else {
if ( rxhfh.zh[12]=='3' || rxhfh.zh[12]=='4' ) {
sprintf(cq,"%2d",rxhfh.cq);
$select lxzczh into $lxzczh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh and kzz=$cq;
}else
$select lxzczh into $lxzczh
from clxflb
where jgm=$s_rec.jgm and hbh=$rxhfh.hbh
and kmh=$rxhfh.kmh;
}
if(sqlca.sqlcode&&rxhfh.zhkz[0]!='0'){
errout ("帐户销户",ZHXHJYM,__FILE__,__LINE__,sqlca.sqlcode);
if(sqlca.sqlcode==100)
strcpy(s_snd.errmsg,"自动分录表中无对应利息支出户 !");
else
sprintf(s_snd.errmsg,"检索利息支出帐号表失败[%d] !",sqlca.sqlcode);
s_snd.flag = 1;
$rollback work;
return 1;
}
$select * into $rlxfh from ffhz3 where zh=$lxzczh;
if(sqlca.sqlcode&&rxhfh.zhkz[0]!='0'){
errout ("帐户销户",ZHXHJYM,__FILE__,__LINE__,sqlca.sqlcode);
if(sqlca.sqlcode==100)
strcpy(s_snd.errmsg,"自动分录中利息支出户无对应分户帐 !");
else
sprintf(s_snd.errmsg,"检索分户帐失败[%d] !",sqlca.sqlcode);
s_snd.flag=1;
$rollback work;
return 1;
}
jcz=zh_jyjc(rlxfh,lx,1);
if(jcz&&rxhfh.zhkz[0]!='0'){
switch(jcz){
case 1:
strcpy(s_snd.errmsg,"利息支出帐号已销户, 不能销户 !");
break;
case 2:
strcpy(s_snd.errmsg,"利息支出帐号已挂失, 不能销户 !");
break;
case 3:
strcpy(s_snd.errmsg,"利息支出帐号已不收不付, 不能销户 !");
break;
case 4:
strcpy(s_snd.errmsg,"利息支出帐户DAC校验错, 不能销户 !");
break;
case 5:
strcpy(s_snd.errmsg,"利息支出帐户余额不足 !");
break;
default:
sprintf(s_snd.errmsg,"利息支出帐户检查错 [%d]!",s_snd.flag);
break;
}
s_snd.flag=1;
$rollback work;
return 1;
}
return 0;
}
chk2_dffh()/***贷方分户检查***/
{
jcz=zh_jyjc(rdffh,lx+bj,2);
if(jcz){
switch(jcz){
case 1:
strcpy(s_snd.errmsg,"转帐贷方帐号已销户, 不能销户 !");
break;
case 2:
strcpy(s_snd.errmsg,"转帐贷方帐号已挂失, 不能销户 !");
break;
case 3:
strcpy(s_snd.errmsg,"转帐贷方帐号已不收不付, 不能销户 !");
break;
case 4:
strcpy(s_snd.errmsg,"转帐贷方帐户DAC校验错, 不能销户 !");
break;
case 5:
strcpy(s_snd.errmsg,"转帐贷方帐户余额不足 !");
break;
default:
sprintf(s_snd.errmsg,"转帐贷方帐户检查错[%d] !",jcz);
break;
}
s_snd.flag = 1;
$rollback work;
return 1;
}
strcpy(s_snd.dfczcdh,rdffh.czcdh);
s_snd.dfczh = rdffh.czh;
if (strncmp(rxhfh.czcdh,s_rec.czcdh,8) && !is_ybt(rxhfh.dyzh)) {
s_snd.flag = 1;
strcpy(s_snd.errmsg,"存折存单号不符 !");
$rollback work;
return 1;
}
printf("zh[%s]zh12[%c]\n",rxhfh.zh,rxhfh.zh[12]);
return 0;
}
cl_lxdwj()/***生成利息单文件****/
{
/***************** 准备rflxdwj数据 ************/
strcpy( rflxdwj.dyzh, rlxfh.zh );
rflxdwj.dykm = rlxfh.kmh;
if(fabs(lx)>0.005){
strcpy(rflxdwj.dyzh1, " ");
$insert into flxdwj values ( $rflxdwj );
if ( sqlca.sqlcode ) {
s_snd.flag = 1;
sprintf ( s_snd.errmsg , "插入利息单文件表失败[%d]!" , sqlca.sqlcode );
errout( "现金部提",ZHXHJYM, __FILE__, __LINE__, sqlca.sqlcode );
$rollback work;
return 1;
}
}
/************************************************/
/* 打印未登折 */
getflag=get_dqhh(3,rxhfh.czcdlx,&rxhfh.dyhh,&rxhfh.dyyh,&rxhfh.wdzxs);
if(getflag < 0){
s_snd.flag = 1;
strcpy(s_snd.errmsg,g_errmsg);
$rollback work;
return 1;
}
s_snd.dyhh = getflag;
if (rxhfh.czh==10 || rxhfh.czh==2 || rxhfh.czh==21 || rxhfh.czh==3 || rxhfh.czh==4 || rxhfh.czh==5 || rxhfh.czh==6 || rxhfh.czh==DGCZH || rxhfh.czh==60)
{
getflag=get_dqhh(1,rxhfh.czcdlx,&rxhfh.dyhh,&rxhfh.dyyh,rxhfh.wdzxs);
if(getflag < 0){
s_snd.flag = 1;
strcpy(s_snd.errmsg,g_errmsg);
$rollback work;
return 1;
}
if(getflag) {
s_snd.flag=1;
strcpy(s_snd.errmsg,"请先更换存折!");
$rollback work;
return 1;
}
if (rxhfh.wdzxs!=0) {
if (get_wdz(fpw,rxhfh.zh,rxhfh.wdzxs,rxhfh.czcdlx)!=0) {
s_snd.flag=1;
strcpy(s_snd.errmsg,g_errmsg);
$rollback work;
return 1;
}
}
if (s_rec.xhlx==1) {
if(rxhfh.czcdlx==DQYBTCZ)
gen_ybtline(tmpnr,rxhfh,'1',rcxtzt.yyrq,109,rxhfh.ye,lx,g_jzgy);
else
gen_czline(tmpnr,'1',rcxtzt.yyrq,109,bj,0.00,g_jzgy,rxhfh.czcdlx);
}
else {
if(rxhfh.czcdlx==DQYBTCZ)
gen_ybtline(tmpnr,rxhfh,'1',rcxtzt.yyrq,110,rxhfh.ye,lx,g_jzgy);
else
gen_czline(tmpnr,'1',rcxtzt.yyrq,110,bj,0.00,g_jzgy,rxhfh.czcdlx);
}
fprintf(fpw,"%s\n",tmpnr);
}
return 0;
}
cl_lxzczh()/***处理利息支出帐号****/
{
/*组织利息支出帐号数据*/
rfdrmx.kmh=rlxfh.kmh;
rfdrmx.hbh=rlxfh.hbh;
strcpy(rfdrmx.zh,rlxfh.zh);
strcpy(rfdrmx.dljg,s_rec.jgm);
strcpy(rfdrmx.jgm,rlxfh.jgm);
rtoday(&rfdrmx.xtrq);
rfdrmx.jyrq=rcxtzt.yyrq;
if((rfdrmx.zxlsh=get_zxlsh())<0){
s_snd.flag=1;
strcpy(s_snd.errmsg,"取中心流水号错误 !");
$rollback work;
return 1;
}
if((rfdrmx.gylsh=get_gylsh(g_jzgy))<=0){
s_snd.flag=1;
strcpy(s_snd.errmsg,"取柜员流水号错误 !");
$rollback work;
return 1;
}
s_snd.lsh=rfdrmx.gylsh;
rfdrmx.jym=s_rec.jym;
rfdrmx.jyje=lx;
rfdrmx.ye=rlxfh.ye+lx;
if((rcxtzt.yyrq>rlxfh.jyrq)){
rlxfh.js=get_fhjs(rlxfh,rcxtzt.yyrq);
rlxfh.jyrq=rcxtzt.yyrq;
}
rlxfh.ye=rfdrmx.ye;
rfdrmx.js=rlxfh.js;
strcpy(rfdrmx.pzbz,"1");
if( !strcmp(s_rec.jgm,rxhfh.jgm) )
strcpy(rfdrmx.tdbz,"0");
else
strcpy(rfdrmx.tdbz,"1");
rfdrmx.zy=108;
rfdrmx.dycs=1;
strcpy(rfdrmx.sqm," ");
rfdrmx.pzzl=0;
strcpy(rfdrmx.pzhm," ");
strcpy(rfdrmx.jdbz,"1");
getflag=get_dqhh(2,rlxfh.czcdlx,&rlxfh.dyhh,&rlxfh.dyyh,0);
if(getflag < 0){
s_snd.flag=1;
strcpy(s_snd.errmsg,g_errmsg);
$rollback work;
return 1;
}
rfdrmx.dqyc=rlxfh.dyyh;
rfdrmx.dqybs=rlxfh.dyhh;
rfdrmx.pj=0;
rfdrmx.gy1=g_jzgy;
rfdrmx.cngy=g_cngy;
get_cur_time( rfdrmx.jysj );
strcpy( rfdrmx.dyzh,rdffh.zh);
rfdrmx.gy2=0;
strcpy(rfdrmx.zl,rlxfh.zl);
if(s_rec.xhlx==1){
strcpy(rfdrmx.dyzh,xjzh);
strcpy(rfdrmx.dac,"1");
}
else{
strcpy(rfdrmx.dyzh,s_rec.dfzh);
strcpy(rfdrmx.dac," ");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -