diff --git a/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp b/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp index f6e139156..d8f078076 100644 --- a/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp +++ b/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp @@ -14,6 +14,7 @@ BizObject condition=JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP","flowunid=:flowunid").setParameter("flowunid", flowunid).getSingleResult(false); String paymentnumber=condition.getAttribute("payment_number").getString(); + String yearrate=condition.getAttribute("YEAR_RATE").getString(); String contractId=condition.getAttribute("contract_id").getString(); String cautionmoney = Sqlca.getString("select caution_money from lc_calc_condition where CONTRACT_ID='"+contractId+"'"); String mayopemoney = Sqlca.getString("select sum(MAYOPE_MONEY) from LC_EBANK_TEMP where flowunid='"+flowunid+"'"); @@ -92,7 +93,12 @@ setItemValue(0,getRow(),"FIST_RENT",terminateInfo.fist_rent); setItemValue(0,getRow(),"FIST_CORPUS","0"); setItemValue(0,getRow(),"HANDLING_CHARGE",Number(remaincorpus*0.05).toFixed(2)); - setItemValue(0,getRow(),"REPAYMENT_INTEREST","0"); + var dateRate=Number("<%=yearrate%>")/100;//获取利率 + var sDate1 = getItemValue(0,getRow(),"PAYDAY_DATE");//获取提出日期 + var idays = datedifference(sDate1,paydayAdjust);//获取约定终止日和提出日期相差天数 + var REPAYMENT=((Number(remaincorpus)*dateRate)/360)*Number(idays);//计算还款日息差 + setItemValue(0,getRow(),"REPAYMENT_INTEREST",REPAYMENT); + setItemValue(0,getRow(),"AGREED_DATEPENALTY","0"); setItemValue(0,getRow(),"SDNOMINAL_PRICE","0"); setItemValue(0,getRow(),"SDHANDLING_CHARGE","0"); setItemValue(0,getRow(),"OTHER_OUT","<%=cautionmoney%>"); @@ -114,7 +120,7 @@ setItemValue(0,getRow(),"CONTRACT_TOTAL",parseFloat(getItemValue(0,getRow(),"DUN_RENT"))+parseFloat(getItemValue(0,getRow(),"COLLECT_FEES"))+parseFloat(remaincorpus)); }else{ setItemValue(0,getRow(),"OTHER_IN","0.00"); - setItemValue(0,getRow(),"CONTRACT_TOTAL",Number(overduerent)+Number(remainfpenalty)+Number(remaincorpus)+Number(terminateInfo.fist_rent)+Number(remaincorpus*0.05)+Number(getItemValue(0,getRow(),"OTHER_IN"))+Number(getItemValue(0,getRow(),"NOMINAL_PRICE"))-Number(getItemValue(0,getRow(),"OTHER_OUT")).toFixed(2)); + setItemValue(0,getRow(),"CONTRACT_TOTAL",Number(overduerent)+Number(remainfpenalty)+Number(remaincorpus)+Number(terminateInfo.fist_rent)+Number(remaincorpus*0.05)+Number(getItemValue(0,getRow(),"OTHER_IN"))+Number(getItemValue(0,getRow(),"NOMINAL_PRICE"))-Number(getItemValue(0,getRow(),"OTHER_OUT")).toFixed(2)+REPAYMENT); } } } @@ -144,9 +150,10 @@ var otherin = getItemValue(0,getRow(),"OTHER_IN"); var otherout = getItemValue(0,getRow(),"OTHER_OUT"); var sdnominalPrice=getItemValue(0,getRow(),"SDNOMINAL_PRICE"); + var agreeddatepenalty=getItemValue(0,getRow(),"AGREED_DATEPENALTY"); return (Number(dunrent ? dunrent : 0 ) + Number(agreedPenalty ? agreedPenalty : 0 ) + Number(corpusOverage ? corpusOverage : 0 ) + Number(fistCorpus ? fistCorpus : 0 ) + Number(sdhandlingCharge ? sdhandlingCharge : 0 ) + Number(otherin ? otherin : 0 ) - - Number(otherout ? otherout : 0 ) + Number(sdnominalPrice ? sdnominalPrice : 0 )).toFixed(2) ; + - Number(otherout ? otherout : 0 ) + Number(sdnominalPrice ? sdnominalPrice : 0 ) +Number(agreeddatepenalty ? agreeddatepenalty : 0 )).toFixed(2); } //计算债券总计 /* function getContractBondTotal(){ @@ -220,6 +227,7 @@ } } changeInfo(); + }); function changeInfo(){ @@ -260,5 +268,17 @@ function changeContract(){ setItemValue(0,0,"CONTRACT_TOTAL",(Number(getItemValue(0,getRow(),"CONTRACT_TOTAL"))+Number(getItemValue(0,getRow(),"OTHER_IN"))).toFixed(2)); } + + function datedifference(sDate1, sDate2) { + var dateSpan, + tempDate, + iDays; + sDate1 = Date.parse(sDate1); + sDate2 = Date.parse(sDate2); + dateSpan = sDate2 - sDate1; + dateSpan = Math.abs(dateSpan); + iDays = Math.floor(dateSpan / (24 * 3600 * 1000)); + return iDays + }; <%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/WebContent/WEB-INF/etc/jbo/jbo_calc.xml b/WebContent/WEB-INF/etc/jbo/jbo_calc.xml index c965c3a5a..1379bc71a 100644 --- a/WebContent/WEB-INF/etc/jbo/jbo_calc.xml +++ b/WebContent/WEB-INF/etc/jbo/jbo_calc.xml @@ -316,6 +316,7 @@ + @@ -367,6 +368,7 @@ +