提前结清流程带值

This commit is contained in:
tangfutang 2018-08-23 21:20:40 +08:00
parent a82b0bc90a
commit d02f0684dc
3 changed files with 57 additions and 5 deletions

View File

@ -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="";

View File

@ -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;");
}
}
</script>
<%@ include file="/Frame/resources/include/include_end.jspf"%>

View File

@ -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 "