From d02f0684dc1ba0c65126bf68477f0d3cc2d107e8 Mon Sep 17 00:00:00 2001 From: tangfutang Date: Thu, 23 Aug 2018 21:20:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E5=89=8D=E7=BB=93=E6=B8=85=E6=B5=81?= =?UTF-8?q?=E7=A8=8B=E5=B8=A6=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Comm/LBContractEnd/rightsFileList.jsp | 6 ++- .../LCContractTerminateInfo.jsp | 42 +++++++++++++++++-- .../tenwa/reckon/executor/RentCalHelper.java | 14 +++++++ 3 files changed, 57 insertions(+), 5 deletions(-) diff --git a/WebContent/Tenwa/Lease/Flow/Comm/LBContractEnd/rightsFileList.jsp b/WebContent/Tenwa/Lease/Flow/Comm/LBContractEnd/rightsFileList.jsp index 163063cbe..d3cfe9546 100644 --- a/WebContent/Tenwa/Lease/Flow/Comm/LBContractEnd/rightsFileList.jsp +++ b/WebContent/Tenwa/Lease/Flow/Comm/LBContractEnd/rightsFileList.jsp @@ -35,7 +35,11 @@ } function saveRecord(){ - debugger; + var projectid = getItemValue(0,0,"PROJECT_ID"); + if(projectid.length==0){ + alert("请先选择数据!"); + return; + } var param={}; var tempParam={}; var sparam=""; diff --git a/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp b/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp index 326a922c6..f6245f354 100644 --- a/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp +++ b/WebContent/Tenwa/Lease/Flow/Comm/LCContractTerminate/LCContractTerminateInfo.jsp @@ -23,6 +23,7 @@ ASObjectModel doTemp = new ASObjectModel(sTempletNo); doTemp.setDefaultValue("PAYMENT_NUMBER", paymentnumber); doTemp.setHtmlEvent("PAYDAY_ADJUST","onchange","getTerminateInfo"); + doTemp.setHtmlEvent("ADJUST_TYPE","onchange","changeInfo"); doTemp.setHtmlEvent("REPURCHASE_RATIO","onchange","getRepurchaseMoney"); ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); dwTemp.Style = "2";//freeform @@ -50,19 +51,27 @@ } function getTerminateInfo(){ + var adjusttype = getItemValue(0,0,"ADJUST_TYPE"); + if(adjusttype.length==0){ + alert("请先选择变更类型!!!"); + return; + } //检查约定终止日是否合法 var paydayAdjust = getItemValue(0,getRow(),"PAYDAY_ADJUST"); var result = AsControl.RunJavaMethod("com.tenwa.reckon.executor.RentCalHelper","checkPaydayAdjust","contractId=<%=contractId%>,paymentnumber=<%=paymentnumber%>,paydayAdjust="+paydayAdjust); if(result.result != "true"){ alert(result.msg); setItemValue(0,getRow(),"PAYDAY_ADJUST",""); - }else{ + }else{ var terminateInfo = AsControl.RunJavaMethod("com.tenwa.reckon.executor.RentCalHelper","getTerminateInfo","contractId=<%=contractId%>,paymentnumber=<%=paymentnumber%>,paydayAdjust="+paydayAdjust); var remaincorpus = terminateInfo.remaincorpus; var remaininterest = terminateInfo.remaininterest; var overduerent = terminateInfo.overduerent; + var remainfpenalty = terminateInfo.remainfpenalty; + var surplusinterest = terminateInfo.remaininterest; //逾期利息暂时赋值为0 - setItemValue(0,getRow(),"DUN_PENALTY","0"); +// setItemValue(0,getRow(),"DUN_PENALTY","0"); + setItemValue(0,getRow(),"DUN_PENALTY",remainfpenalty); setItemValue(0,getRow(),"AGREED_PENALTY","0"); //已到期租金 setItemValue(0,getRow(),"DUN_RENT",overduerent); @@ -84,8 +93,19 @@ setItemValue(0,getRow(),"SDHANDLING_CHARGE","0"); //计算合同债券总计 - setItemValue(0,getRow(),"CONTRACT_TOTAL",getContractBondTotal()); - +// setItemValue(0,getRow(),"CONTRACT_TOTAL",getContractBondTotal()); + if(adjusttype=="02"){ + var fessMoney = AsControl.RunJavaMethod("com.tenwa.reckon.executor.RentCalHelper","getLcCarDispose","contractId=<%=contractId%>"); + if(fessMoney.length>0){ + var fessMoneys = fessMoney.split("@"); + setItemValue(0,getRow(),"COLLECT_FEES",fessMoneys[0]); + setItemValue(0,getRow(),"DISPOSE_MONEY",fessMoneys[1]); + setItemValue(0,getRow(),"SURPLUSINTEREST",surplusinterest); + setItemValue(0,getRow(),"CONTRACT_TOTAL",parseFloat(getItemValue(0,getRow(),"DUN_RENT"))+parseFloat(fessMoneys[0])); + } + }else{ + setItemValue(0,getRow(),"CONTRACT_TOTAL",getItemValue(0,getRow(),"DUN_RENT")); + } } } //计算债券总计 @@ -179,6 +199,20 @@ setItemValue(0,getRow(),p,result[p]); } } + changeInfo(); }); + + function changeInfo(){ + var adjusttype = getItemValue(0,0,"ADJUST_TYPE"); + if(adjusttype=="02"){ + $("#A_div_1698").attr("style","display:block;"); + $("#A_div_1896").attr("style","display:block;"); + $("#A_div_2094").attr("style","display:block;"); + }else{ + $("#A_div_1698").attr("style","display:none;"); + $("#A_div_1896").attr("style","display:none;"); + $("#A_div_2094").attr("style","display:none;"); + } + } <%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/calc/com/tenwa/reckon/executor/RentCalHelper.java b/calc/com/tenwa/reckon/executor/RentCalHelper.java index 941abcb41..a6a0ba54d 100644 --- a/calc/com/tenwa/reckon/executor/RentCalHelper.java +++ b/calc/com/tenwa/reckon/executor/RentCalHelper.java @@ -9,6 +9,7 @@ import jbo.app.tenwa.calc.LC_CALC_CONDITION; import jbo.app.tenwa.calc.LC_RENT_INCOME; import jbo.app.tenwa.calc.LC_RENT_PLAN; import jbo.com.tenwa.entity.comm.flow.FLOW_BUSSINESS_OBJECT; +import jbo.com.tenwa.lease.comm.LC_CAR_DISPOSE; import com.amarsoft.app.awe.config.InitDBType; import com.amarsoft.are.jbo.BizObject; @@ -129,6 +130,15 @@ public class RentCalHelper { } return JSONEncoder.encode(jsonObject); } + + public String getLcCarDispose() throws Exception{ + BizObjectManager lcdManage = JBOFactory.getBizObjectManager(LC_CAR_DISPOSE.CLASS_NAME); + BizObject lcd = lcdManage.createQuery("select * from O left join jbo.com.tenwa.lease.comm.LB_CONTRACT_INFO lci on lci.contract_no=O.contract_no where lci.id=:id ").setParameter("id", contractId).getSingleResult(false); + if(lcd!=null){ + return lcd.getAttribute("collect_fees").getString()+"@"+lcd.getAttribute("dispose_money").getString(); + } + return ""; + } /** * 根据中止日期算金额 * @return @@ -144,6 +154,7 @@ public class RentCalHelper { String sql = "select sum(case when DATE_FORMAT(t.plandate,'%Y/%m/%d') > DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.remaincorpus else 0 end ) remaincorpus," + " sum(case when DATE_FORMAT(t.plandate,'%Y/%m/%d') > DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.remaininterest else 0 end ) remaininterest, " +" sum(case when DATE_FORMAT(t.plandate,'%Y/%m/%d') > DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.corpus else 0 end ) remainfincorpus," + + "sum(case when DATE_FORMAT(t.plandate,'%Y/%m/%d') > DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.penalty else 0 end ) remainfpenalty," +" sum(case when DATE_FORMAT( t.plandate,'%Y/%m/%d') > DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.interest else 0 end ) remainfininterest," +" sum(case when DATE_FORMAT( t.plandate,'%Y/%m/%d') < DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.overduerent else 0 end ) overduerent,sum(case when t.cou< t.planlist and t.planlist-t.cou<=12-t.cou then t.interest else 0 end) fist_rent," + " sum(case when t.cou< t.planlist and t.planlist-t.cou>12-t.cou then t.corpus else 0 end) fist_corpus," @@ -155,6 +166,7 @@ public class RentCalHelper { + " t1.rent - ifnull(t2.sumincomerent,0) overduerent, t1.rent," + " t1.corpus," + " t1.interest," + + " IFNULL(t1.penalty,0)-ifnull(t2.sumincomepenalty,0) penalty," + " t1.plandate," + " t1.planlist,IFNULL(t2.planlist,0) cou" + " from (" @@ -163,6 +175,7 @@ public class RentCalHelper { + " cfrp.rent," + " cfrp.interest," + " cfrp.corpus," + + " cfrp.penalty," + " cfrp.corpus_business corpusbusiness," + " cfrp.interest_business interestbusiness," + " cfrp.contract_id contractid" @@ -173,6 +186,7 @@ public class RentCalHelper { + " (select sum( cfri.corpus ) sumincomecorpus" + " ,sum(cfri.interest ) sumincomeinterest," + " sum( cfri.rent ) sumincomerent," + + " sum( cfri.penalty ) sumincomepenalty," + " min(cfri.contract_id) contractid," + " cfri.plan_list planlist " + " from LC_RENT_INCOME cfri "