经销商五级分类报表留痕 并增加创建时间

This commit is contained in:
tenwaPC 2019-08-15 11:03:22 +08:00
parent 1712ece1ad
commit 17e746bd11
2 changed files with 40 additions and 78 deletions

View File

@ -349,6 +349,7 @@
<attribute name="EXISTING_CUSTOMERS_NUM_LOSS" label="存续客户数量损失" type="STRING" length="32"/>
<attribute name="FINANCING_AMOUNT_LOSS" label="融资金额损失" type="STRING" length="32"/>
<attribute name="NOTBACK_PRINCIPAL_LOSS" label="未还本金损失" type="STRING" length="32"/>
<attribute name="INPUTTIME" label="创建时间" type="STRING" length="32"/>
</attributes>
<manager>
<managerProperties>

View File

@ -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();