179 lines
7.9 KiB
Plaintext
179 lines
7.9 KiB
Plaintext
<%@ page contentType="text/html; charset=GBK"%>
|
|
<%@ page import="com.amarsoft.app.lc.workflow.action.GetFlowAction" %>
|
|
<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><%
|
|
/*
|
|
Author: undefined 2017-06-26
|
|
Content: 示例详情页面
|
|
History Log:
|
|
*/
|
|
|
|
String flowunid = CurPage.getParameter("FlowUnid");
|
|
String contractid = CurPage.getParameter("ContractId");
|
|
String RightType = CurPage.getParameter("RightType");//选择模式
|
|
String ishistory=CurPage.getParameter("IsHistory");
|
|
String nodeNo=CurPage.getParameter("NodeNo");
|
|
|
|
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 contractId=condition.getAttribute("contract_id").getString();
|
|
//获取项目违约金(只有传统的有)
|
|
String total_all = JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION","CONTRACT_ID=:contractid").setParameter("contractid", contractid).getSingleResult(false).getAttribute("TOTAL_ALL").getString();
|
|
|
|
BizObject flow=GetFlowAction.getFlowBussinessObject(flowunid);
|
|
String productId=flow.getAttribute("productId").getString();
|
|
|
|
String sTempletNo = "TriditionLCContractTerminate";//--模板号--
|
|
ASObjectModel doTemp = new ASObjectModel(sTempletNo);
|
|
doTemp.setDefaultValue("PAYMENT_NUMBER", paymentnumber);
|
|
doTemp.setHtmlEvent("PAYDAY_ADJUST","onchange","getTerminateInfo");
|
|
doTemp.setHtmlEvent("REPURCHASE_RATIO","onchange","getRepurchaseMoney");
|
|
|
|
doTemp.setHtmlEvent("HANDLING_CHARGE","onchange","changeContract");
|
|
doTemp.setHtmlEvent("AGREED_PENALTY","onchange","changeContract");
|
|
doTemp.setHtmlEvent("AGREED_INTEREST","onchange","changeContract");
|
|
doTemp.setHtmlEvent("COLLECT_FEES","onchange","changeContract");
|
|
|
|
ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request);
|
|
dwTemp.Style = "2";//freeform
|
|
if((null!=RightType&&RightType.equals("ReadOnly"))||(null!=ishistory&&ishistory.equals("true"))){
|
|
dwTemp.ReadOnly = "-2";//只读模式
|
|
isShowButton=false;
|
|
}else{
|
|
isShowButton=true;
|
|
}
|
|
dwTemp.genHTMLObjectWindow(flowunid);
|
|
|
|
String sButtons[][] = {
|
|
{"true","","Button","提前结清","提前结清","saveRecord()","","","","btn_icon_settle"},
|
|
{"true","","Button","撤销结清","撤销结清","cancelChange()","","","","btn_icon_delete"}
|
|
};
|
|
sButtonPosition = "south";
|
|
%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%>
|
|
<script type="text/javascript">
|
|
function getRepurchaseMoney(){
|
|
var ratio=getItemValue(0,0,"REPURCHASE_RATIO");
|
|
var corpus=getItemValue(0,0,"CORPUS_OVERAGE");
|
|
if(ratio&&corpus){
|
|
setItemValue(0,0,"REPURCHASE_MONEY",Number(ratio*corpus/100).toFixed(6));
|
|
}
|
|
}
|
|
|
|
function getTerminateInfo(){
|
|
//检查约定终止日是否合法
|
|
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{
|
|
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 sumpenalty = terminateInfo.sumpenalty;
|
|
//逾期利息暂时赋值为0
|
|
setItemValue(0,getRow(),"DUN_PENALTY",sumpenalty);
|
|
setItemValue(0,getRow(),"AGREED_PENALTY",sumpenalty);
|
|
//已到期租金
|
|
setItemValue(0,getRow(),"DUN_RENT",overduerent);
|
|
//未到期本金
|
|
setItemValue(0,getRow(),"CORPUS_OVERAGE",remaincorpus);
|
|
//未到期利息
|
|
setItemValue(0,getRow(),"INTEREST_HANDLING_CHARGE",remaininterest);
|
|
setItemValue(0,getRow(),"AGREED_INTEREST",remaininterest);
|
|
//商定利息默认等于未到期利息
|
|
setItemValue(0,getRow(),"AGREED_INTEREST",remaininterest);
|
|
//回购比例 默认100
|
|
setItemValue(0,getRow(),"REPURCHASE_RATIO","100");
|
|
//回购本金
|
|
setItemValue(0,getRow(),"REPURCHASE_MONEY",remaincorpus);
|
|
setItemValue(0,getRow(),"HANDLING_CHARGE","0.00");
|
|
//项目违约金
|
|
var total_all = Number("<%=total_all%>")*0.2;
|
|
setItemValue(0,getRow(),"COLLECT_FEES",total_all);
|
|
//计算合同债券总计
|
|
setItemValue(0,getRow(),"CONTRACT_TOTAL",getContractBondTotal());
|
|
|
|
var s=Number(remaincorpus)*Number("0.05");
|
|
setItemValue(0,getRow(),"HANDLING_CHARGE",s); //违约手续费
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//计算债券总计
|
|
function getContractBondTotal(){
|
|
var dunrent = getItemValue(0,getRow(),"DUN_RENT");
|
|
var handlingcharge = getItemValue(0,getRow(),"HANDLING_CHARGE");
|
|
var corpusoverage = getItemValue(0,getRow(),"CORPUS_OVERAGE");
|
|
var corpusinterest = 0;
|
|
var agreedinterest = getItemValue(0,getRow(),"AGREED_INTEREST");
|
|
var agreepenalty = getItemValue(0,getRow(),"AGREED_PENALTY");
|
|
//var dunpenalty = getItemValue(0,getRow(),"DUN_PENALTY");AGREED_PENALTY
|
|
var otherin = getItemValue(0,getRow(),"OTHER_IN");
|
|
var otherout = getItemValue(0,getRow(),"OTHER_OUT");
|
|
var collectfees = getItemValue(0,getRow(),"COLLECT_FEES");
|
|
return Number(otherin ? otherin : 0 ) - Number(otherout ? otherout : 0 ) + Number(dunrent ? dunrent : 0 )
|
|
+ Number(corpusoverage ? corpusoverage : 0 ) + Number(corpusinterest ? corpusinterest : 0 ) + Number(agreedinterest ? agreedinterest : 0 )
|
|
+ Number(agreepenalty ? agreepenalty : 0 ) + Number(collectfees ? collectfees : 0 ) + Number(handlingcharge ? handlingcharge : 0 );
|
|
}
|
|
|
|
function cancelChange(){
|
|
openDWDialog();
|
|
setTimeout(function(){
|
|
var message = AsControl.RunJavaMethodTrans("com.tenwa.reckon.executor.CreateTransactionExecutor","cancelRentChange","flowunid=<%=flowunid%>,plannumber=<%=paymentnumber%>,contractId=<%=contractId%>");
|
|
if(message == 'true'){
|
|
resetDWDialog("中途终止撤销成功!!!",true);
|
|
window.location.href=window.location.href;
|
|
}else{
|
|
resetDWDialog("未进行过中途终止的操作!请先进行合同中途终止!!!",true);
|
|
}
|
|
}, 500);
|
|
}
|
|
//保存数据
|
|
function saveRecord(sPostEvents)
|
|
{
|
|
//检查是否进行过变更
|
|
var result = AsControl.RunJavaMethod("com.tenwa.reckon.executor.CreateTransactionExecutor","checkIsRentChange","flowunid=<%=flowunid%>,plannumber=<%=paymentnumber%>");
|
|
if(result == 'true'){
|
|
|
|
var SDHANDLING_CHARGE=getItemValue(0,getRow(0),"SDHANDLING_CHARGE");
|
|
var PAYDAY_DATE=getItemValue(0,getRow(0),"PAYDAY_DATE");
|
|
if (SDHANDLING_CHARGE!=null&&SDHANDLING_CHARGE!="") {
|
|
setItemValue(0,0,"HANDLING_CHARGE",SDHANDLING_CHARGE);
|
|
}
|
|
if (PAYDAY_DATE!=null&&PAYDAY_DATE!="") {
|
|
setItemValue(0,0,"COLLECT_FEES",PAYDAY_DATE);
|
|
}
|
|
setItemValue(0,0,"CONTRACT_ID","<%=contractid%>");
|
|
as_save("myiframe0","run()");
|
|
}else{
|
|
alert('请先撤销变更,再进行变更操作!!!');
|
|
}
|
|
}
|
|
|
|
function run()
|
|
{
|
|
AsControl.RunJavaMethod("com.tenwa.reckon.executor.CreateTransactionExecutor","runTerminate","flowunid=<%=flowunid%>,plannumber=<%=paymentnumber%>,productId=<%=productId%>,calType=pay_process");
|
|
}
|
|
|
|
|
|
jQuery(function(){
|
|
setItemValue(0,0,"flowunid","<%=flowunid%>");
|
|
//判断其他应收和其他应退是否为空
|
|
var otherIn = getItemValue(0,getRow(),"OTHER_IN");
|
|
var otherOut = getItemValue(0,getRow(),"OTHER_OUT");
|
|
if(!otherIn && !otherOut){
|
|
//其他应收和其他应退
|
|
var result = AsControl.RunJavaMethod("com.tenwa.reckon.executor.RentCalHelper","getTerminateOtherInfo","contractId=<%=contractId%>,paymentnumber=<%=paymentnumber%>");
|
|
for(var p in result){
|
|
setItemValue(0,getRow(),p,result[p]);
|
|
}
|
|
}
|
|
|
|
});
|
|
function changeContract(){
|
|
setItemValue(0,getRow(),"CONTRACT_TOTAL",getContractBondTotal());
|
|
}
|
|
</script>
|
|
<%@ include file="/Frame/resources/include/include_end.jspf"%> |