授信占用

declare
contractCode_ varchar2(30):= '2016年南财固贷字002号';
creditCode_ varchar2(30) := 'SXGL20190718030';
begin
insert into credit_usage (ID, creditinfoid, CLIENTID, TRANSACTIONCURRENCYID, TRANSACTIONAMOUNT, CREDITCURRENCYID, 
CODE, CRECATCODE, USAGETYPE, OCCUPYDATE, CREDITAMOUNT, ASSUREAMOUNT, IMPAWNAMOUNT, PLEDGEAMOUNT, OCCUPYCLIENTID, 
FORWARDCREDITINFOID, VOUCHERCODE, USEDCREDITAMOUNT, USEDASSUREAMOUNT, USEDIMPAWNAMOUNT, USEDPLEDGEAMOUNT, EXRATE, 
CANCELID, INPUTUSERID, INPUTTIME, MODIFYUSERID, MODIFYTIME, STATUSID, COLUUID, BUSINESSTYPENAME, REALCLIENTID)
values (seq_credit_usage.nextval,                                                           /*序列号*/
(select s.id from credit_info s where s.creditcode = creditCode_ and s.statusid in(16,19)), /*授信id*/
(select s.borrowClientIdNew from v_loancontract s where s.contractcode = contractCode_),    /*客户id*/
1, 
(select examineamount from loan_contractform where contractcode = contractCode_),           /*合同金额*/
1, 
contractCode_,                                                                              /*合同编号*/                                                      
'001',                                                                                      /*授信品种*/
1, 
(select c.startdate from loan_contractform c where c.contractcode = contractCode_),         /*合同开始日*/
(select examineamount from loan_contractform where contractcode = contractCode_),           /*合同金额*/
0.000000, 0.000000, 0.000000, 
(select s.borrowClientIdNew from v_loancontract s where s.contractcode = contractCode_),    /*客户id*/
-1, null, 
(select examineamount from loan_contractform where contractcode = contractCode_),           /*合同金额*/
0.000000, 0.000000, 0.000000, 1.000000, -1, -100, 
(select startdate from loan_contractform where contractcode = contractCode_),               /*合同开始日*/
-100, 
(select startdate from loan_contractform where contractcode = contractCode_),               /*合同开始日*/
1, 
'hrewertjhgfgh123lkjhgfd', 
(select ss.loansubtypename
  from loan_contractform s2, loan_loantypesetting ss
 where ss.id = s2.loansubtypeid
   and s2.contractcode = contractCode_),                                                    /*业务类型*/
(select s.borrowClientIdNew from v_loancontract s where s.contractcode = contractCode_)     /*客户id*/

);
/*更新可用余额*/
update credit_info_detail s1
   set s1.creditbalance = s1.CREDITAMOUNT -
                           (select sum(s2.transactionamount)
                             from credit_usage s2
                            where s2.creditinfoid =
                                  (select s.id
                                     from credit_info s
                                    where s.creditcode = creditCode_  and s.statusid in(16,19)))
                            where s1.creditid =
                                  (select s3.id
                                     from credit_info s3
                                    where s3.creditcode = creditCode_ and s3.statusid in(16,19));
end;

发布了66 篇原创文章 · 获赞 19 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/hwq293/article/details/103021776