From 17e746bd11e94ed039f2522504d06eb920068940 Mon Sep 17 00:00:00 2001 From: tenwaPC Date: Thu, 15 Aug 2019 11:03:22 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=8F=E9=94=80=E5=95=86=E4=BA=94=E7=BA=A7?= =?UTF-8?q?=E5=88=86=E7=B1=BB=E6=8A=A5=E8=A1=A8=E7=95=99=E7=97=95=20?= =?UTF-8?q?=E5=B9=B6=E5=A2=9E=E5=8A=A0=E5=88=9B=E5=BB=BA=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WebContent/WEB-INF/etc/jbo/jbo_comm.xml | 1 + .../CreateFiveGradeDataAction.java | 117 ++++++------------ 2 files changed, 40 insertions(+), 78 deletions(-) diff --git a/WebContent/WEB-INF/etc/jbo/jbo_comm.xml b/WebContent/WEB-INF/etc/jbo/jbo_comm.xml index 4de9bcfb2..6ead18f64 100644 --- a/WebContent/WEB-INF/etc/jbo/jbo_comm.xml +++ b/WebContent/WEB-INF/etc/jbo/jbo_comm.xml @@ -349,6 +349,7 @@ + diff --git a/src_tenwa/com/tenwa/lease/flow/project/commbusiness/CreateFiveGradeDataAction.java b/src_tenwa/com/tenwa/lease/flow/project/commbusiness/CreateFiveGradeDataAction.java index 7f34b4229..c14417c4f 100644 --- a/src_tenwa/com/tenwa/lease/flow/project/commbusiness/CreateFiveGradeDataAction.java +++ b/src_tenwa/com/tenwa/lease/flow/project/commbusiness/CreateFiveGradeDataAction.java @@ -95,84 +95,45 @@ public class CreateFiveGradeDataAction { BizObject BoCL=bmCL.createQuery("codeno = 'dischanneltype' and itemno = '"+BoDI.getAttribute("channeltype").getString()+"'").setParameter("DISTRIBUTOR_NO", distributorNo).getSingleResult(true); bm = JBOFactory.getBizObjectManager(LB_FIVEGRADEDETAILED_INFO.CLASS_NAME,tx); - BizObject oldBo=bm.createQuery("DISTRIBUTOR_NO=:DISTRIBUTOR_NO").setParameter("DISTRIBUTOR_NO", distributorNo).getSingleResult(true); - if(oldBo!=null){ - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORNAME,BoDI.getAttribute("distributor_name")); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORTYPE,BoCL==null?"":BoCL.getAttribute("itemname")); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORQUOTA,BoDI.getAttribute("TOTAL")); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DEPOSITRATIO,BoDI.getAttribute("MARGIN_SCALE_SET")); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.AGREEMENT,BoDI.getAttribute("LIMIT_END_DATE")); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_FINANCING_AMOUNT,new BigDecimal(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL)).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.THE_REMAINING_AMOUNT,new BigDecimal(Double.parseDouble(BoDI.getAttribute("TOTAL").getString())-(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL))).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - System.out.println("==============TOTAL_OVERDUE_PRINCIPAL:"+TOTAL_OVERDUE_PRINCIPAL); - System.out.println("==============TOTAL_OVERDUE_INTEREST:"+TOTAL_OVERDUE_INTEREST); - System.out.println("==============TOTAL_PENALTY:"+TOTAL_PENALTY); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_PRINCIPAL,new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP)); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_INTEREST,new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP)); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_PENALTY, new BigDecimal(TOTAL_PENALTY).setScale(2, BigDecimal.ROUND_HALF_UP)); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_ALL, new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).add(new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP)).add(new BigDecimal(TOTAL_PENALTY).setScale(2, BigDecimal.ROUND_HALF_UP)).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM, Integer.parseInt(EXISTING_CUSTOMERS_NUM_NORMAL)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_ATTENTION)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_SUSPICIOUS)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_LOSS)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_SECONDARY)); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OUTSTANDING_PRINCIPAL, new BigDecimal(TOTAL_OUTSTANDING_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.OVERDUERATE, new BigDecimal(ALL_TOTAL_OUTSTANDING_PRINCIPAL==0.0?0.0:TOTAL_OUTSTANDINGCUSTOMER_PRINCIPAL/ALL_TOTAL_OUTSTANDING_PRINCIPAL).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(yibai).toPlainString()+"%"); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.BADNESSRATE, new BigDecimal(ALL_TOTAL_OUTSTANDING_PRINCIPAL==0.0?0.0:(NOTBACK_PRINCIPAL_LOSS+NOTBACK_PRINCIPAL_SUSPICIOUS+NOTBACK_PRINCIPAL_SECONDARY)/ALL_TOTAL_OUTSTANDING_PRINCIPAL).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(yibai).toPlainString()+"%"); - - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_NORMAL, EXISTING_CUSTOMERS_NUM_NORMAL); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_ATTENTION, EXISTING_CUSTOMERS_NUM_ATTENTION); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_SECONDARY, EXISTING_CUSTOMERS_NUM_SECONDARY); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_SUSPICIOUS, EXISTING_CUSTOMERS_NUM_SUSPICIOUS); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_LOSS, EXISTING_CUSTOMERS_NUM_LOSS); - - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_NORMAL, new BigDecimal(NOTBACK_PRINCIPAL_NORMAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_ATTENTION, new BigDecimal(NOTBACK_PRINCIPAL_ATTENTION).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_SECONDARY, new BigDecimal(NOTBACK_PRINCIPAL_SECONDARY).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_SUSPICIOUS, new BigDecimal(NOTBACK_PRINCIPAL_SUSPICIOUS).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_LOSS, new BigDecimal(NOTBACK_PRINCIPAL_LOSS).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_NORMAL, FINANCING_AMOUNT_NORMAL); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_ATTENTION, FINANCING_AMOUNT_ATTENTION); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_SECONDARY, FINANCING_AMOUNT_SECONDARY); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_SUSPICIOUS, FINANCING_AMOUNT_SUSPICIOUS); - oldBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_LOSS, FINANCING_AMOUNT_LOSS); - bm.saveObject(oldBo); - }else{ - BizObject newBo = bm.newObject(); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTOR_NO, distributorNo); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORNAME,BoDI.getAttribute("distributor_name")); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORTYPE,BoDI.getAttribute("channeltype")); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORQUOTA,BoDI.getAttribute("TOTAL")); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DEPOSITRATIO,BoDI.getAttribute("MARGIN_SCALE_SET")); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.AGREEMENT,BoDI.getAttribute("LIMIT_END_DATE")); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_FINANCING_AMOUNT,new BigDecimal(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL)).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.THE_REMAINING_AMOUNT,new BigDecimal(Double.parseDouble(BoDI.getAttribute("TOTAL").getString())-(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL))).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_PRINCIPAL,new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP)); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_INTEREST,new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP)); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_PENALTY, new BigDecimal(TOTAL_PENALTY).setScale(2, BigDecimal.ROUND_HALF_UP)); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_ALL, new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).add(new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP)).add(new BigDecimal(TOTAL_PENALTY).setScale(2, BigDecimal.ROUND_HALF_UP)).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM, Integer.parseInt(EXISTING_CUSTOMERS_NUM_NORMAL)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_ATTENTION)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_SUSPICIOUS)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_LOSS)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_SECONDARY)); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OUTSTANDING_PRINCIPAL, new BigDecimal(TOTAL_OUTSTANDING_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.OVERDUERATE, new BigDecimal(ALL_TOTAL_OUTSTANDING_PRINCIPAL==0.0?0.0:TOTAL_OUTSTANDINGCUSTOMER_PRINCIPAL/ALL_TOTAL_OUTSTANDING_PRINCIPAL).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(yibai).toPlainString()+"%"); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.BADNESSRATE, new BigDecimal(ALL_TOTAL_OUTSTANDING_PRINCIPAL==0.0?0.0:(NOTBACK_PRINCIPAL_LOSS+NOTBACK_PRINCIPAL_SUSPICIOUS+NOTBACK_PRINCIPAL_SECONDARY)/ALL_TOTAL_OUTSTANDING_PRINCIPAL).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(yibai).toPlainString()+"%"); - - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_NORMAL, EXISTING_CUSTOMERS_NUM_NORMAL); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_ATTENTION, EXISTING_CUSTOMERS_NUM_ATTENTION); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_SECONDARY, EXISTING_CUSTOMERS_NUM_SECONDARY); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_SUSPICIOUS, EXISTING_CUSTOMERS_NUM_SUSPICIOUS); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_LOSS, EXISTING_CUSTOMERS_NUM_LOSS); - - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_NORMAL, new BigDecimal(NOTBACK_PRINCIPAL_NORMAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_ATTENTION, new BigDecimal(NOTBACK_PRINCIPAL_ATTENTION).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_SECONDARY, new BigDecimal(NOTBACK_PRINCIPAL_SECONDARY).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_SUSPICIOUS, new BigDecimal(NOTBACK_PRINCIPAL_SUSPICIOUS).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_LOSS, new BigDecimal(NOTBACK_PRINCIPAL_LOSS).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); - - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_NORMAL, FINANCING_AMOUNT_NORMAL); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_ATTENTION, FINANCING_AMOUNT_ATTENTION); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_SECONDARY, FINANCING_AMOUNT_SECONDARY); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_SUSPICIOUS, FINANCING_AMOUNT_SUSPICIOUS); - newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_LOSS, FINANCING_AMOUNT_LOSS); - bm.saveObject(newBo); - } + BizObject newBo = bm.newObject(); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTOR_NO, distributorNo); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORNAME,BoDI.getAttribute("distributor_name")); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORTYPE,BoCL==null?"":BoCL.getAttribute("itemname")); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DISTRIBUTORQUOTA,BoDI.getAttribute("TOTAL")); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DEPOSITRATIO,BoDI.getAttribute("MARGIN_SCALE_SET")); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.AGREEMENT,BoDI.getAttribute("LIMIT_END_DATE")); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_FINANCING_AMOUNT,new BigDecimal(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL)).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.THE_REMAINING_AMOUNT,new BigDecimal(Double.parseDouble(BoDI.getAttribute("TOTAL").getString())-(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL))).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_PRINCIPAL,new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP)); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_INTEREST,new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP)); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_PENALTY, new BigDecimal(TOTAL_PENALTY).setScale(2, BigDecimal.ROUND_HALF_UP)); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_ALL, new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).add(new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP)).add(new BigDecimal(TOTAL_PENALTY).setScale(2, BigDecimal.ROUND_HALF_UP)).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM, Integer.parseInt(EXISTING_CUSTOMERS_NUM_NORMAL)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_ATTENTION)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_SUSPICIOUS)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_LOSS)+Integer.parseInt(EXISTING_CUSTOMERS_NUM_SECONDARY)); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OUTSTANDING_PRINCIPAL, new BigDecimal(TOTAL_OUTSTANDING_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.OVERDUERATE, new BigDecimal(ALL_TOTAL_OUTSTANDING_PRINCIPAL==0.0?0.0:TOTAL_OUTSTANDINGCUSTOMER_PRINCIPAL/ALL_TOTAL_OUTSTANDING_PRINCIPAL).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(yibai).toPlainString()+"%"); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.BADNESSRATE, new BigDecimal(ALL_TOTAL_OUTSTANDING_PRINCIPAL==0.0?0.0:(NOTBACK_PRINCIPAL_LOSS+NOTBACK_PRINCIPAL_SUSPICIOUS+NOTBACK_PRINCIPAL_SECONDARY)/ALL_TOTAL_OUTSTANDING_PRINCIPAL).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(yibai).toPlainString()+"%"); + + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_NORMAL, EXISTING_CUSTOMERS_NUM_NORMAL); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_ATTENTION, EXISTING_CUSTOMERS_NUM_ATTENTION); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_SECONDARY, EXISTING_CUSTOMERS_NUM_SECONDARY); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_SUSPICIOUS, EXISTING_CUSTOMERS_NUM_SUSPICIOUS); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.EXISTING_CUSTOMERS_NUM_LOSS, EXISTING_CUSTOMERS_NUM_LOSS); + + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_NORMAL, new BigDecimal(NOTBACK_PRINCIPAL_NORMAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_ATTENTION, new BigDecimal(NOTBACK_PRINCIPAL_ATTENTION).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_SECONDARY, new BigDecimal(NOTBACK_PRINCIPAL_SECONDARY).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_SUSPICIOUS, new BigDecimal(NOTBACK_PRINCIPAL_SUSPICIOUS).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.NOTBACK_PRINCIPAL_LOSS, new BigDecimal(NOTBACK_PRINCIPAL_LOSS).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString()); + + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_NORMAL, FINANCING_AMOUNT_NORMAL); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_ATTENTION, FINANCING_AMOUNT_ATTENTION); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_SECONDARY, FINANCING_AMOUNT_SECONDARY); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_SUSPICIOUS, FINANCING_AMOUNT_SUSPICIOUS); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.FINANCING_AMOUNT_LOSS, FINANCING_AMOUNT_LOSS); + newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.INPUTTIME, StringFunction.getTodayNow()); + + bm.saveObject(newBo); return true; } catch (Exception e) { tx.rollback();