diff --git a/WebContent/Accounting/LoanSimulation_change/LCRentChangeInfo.jsp b/WebContent/Accounting/LoanSimulation_change/LCRentChangeInfo.jsp
index d4cfe4c05..891fc54b4 100644
--- a/WebContent/Accounting/LoanSimulation_change/LCRentChangeInfo.jsp
+++ b/WebContent/Accounting/LoanSimulation_change/LCRentChangeInfo.jsp
@@ -17,13 +17,14 @@
String taskno = CurPage.getParameter("TaskNo");
String settleMethod="";
String rentOrRate="";
+ BizObject condition=null;
if(plannumber==null){
- BizObject condition=JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP","flowunid=:flowunid").setParameter("flowunid", flowunid).getSingleResult(false);
+ condition=JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP","flowunid=:flowunid").setParameter("flowunid", flowunid).getSingleResult(false);
plannumber=condition.getAttribute("payment_number").getString();
settleMethod=condition.getAttribute("SETTLE_METHOD").getString();
rentOrRate=condition.getAttribute("RENT_OR_RATE").getString();
}else{
- BizObject condition=JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP","flowunid=:flowunid and payment_number=:plannumber").setParameter("flowunid", flowunid).setParameter("plannumber", plannumber).getSingleResult(false);
+ condition=JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP","flowunid=:flowunid and payment_number=:plannumber").setParameter("flowunid", flowunid).setParameter("plannumber", plannumber).getSingleResult(false);
settleMethod=condition.getAttribute("SETTLE_METHOD").getString();
rentOrRate=condition.getAttribute("RENT_OR_RATE").getString();
}
@@ -120,12 +121,14 @@ $(function(){
function saveRecord(sPostEvents)
{
//检查是否进行过变更
- var result = AsControl.RunJavaMethod("com.tenwa.reckon.executor.CreateTransactionExecutor","checkIsRentChange","flowunid=<%=flowunid%>,plannumber=<%=plannumber%>");
+ as_save("myiframe0","run()");
+
+<%-- var result = AsControl.RunJavaMethod("com.tenwa.reckon.executor.CreateTransactionExecutor","checkIsRentChange","flowunid=<%=flowunid%>,plannumber=<%=plannumber%>");
if(result == 'true'){
as_save("myiframe0","run()");
}else{
alert('请先撤销变更,再进行变更操作!!!');
- }
+ } --%>
}
function cancelChange(){
diff --git a/WebContent/Accounting/LoanSimulation_change/LoanBasicInfo.jsp b/WebContent/Accounting/LoanSimulation_change/LoanBasicInfo.jsp
index f6aa04d43..70bbf8320 100644
--- a/WebContent/Accounting/LoanSimulation_change/LoanBasicInfo.jsp
+++ b/WebContent/Accounting/LoanSimulation_change/LoanBasicInfo.jsp
@@ -14,6 +14,7 @@
String plannumber=CurPage.getParameter("plannumber");
String ishistory=CurPage.getParameter("IsHistory");
String nodeNo=CurPage.getParameter("NodeNo");
+ String FlowNo=CurPage.getParameter("FlowNo");//流程名称
String taskno = CurPage.getParameter("TaskNo");
if(null!=ishistory&&ishistory.equals("true")){
doTemp.setDataQueryClass("com.tenwa.lease.flow.flowarchive.calcarchive.CalcCondtionInfoArachiveShow");//如果是历史则新显示历史数据
@@ -63,14 +64,18 @@
dwTemp.replaceColumn("knowing_config", "", CurPage.getObjectWindowOutput());
String sButtons[][] = {
- {"true","","Button","保存","保存所有修改","as_save(0)","","","",""},
+ {"ContractOnhireCarChangeFlow".equals(FlowNo)?"false":"true","","Button","保存","保存所有修改","as_save(0)","","","",""},
};
%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%>
<%@ include file="/Frame/resources/include/include_end.jspf"%>
\ No newline at end of file
diff --git a/WebContent/Tenwa/Lease/Flow/Contract/ContractEnd/ContractEndApplyList.jsp b/WebContent/Tenwa/Lease/Flow/Contract/ContractEnd/ContractEndApplyList.jsp
index 9ac3e9276..9e94cc142 100644
--- a/WebContent/Tenwa/Lease/Flow/Contract/ContractEnd/ContractEndApplyList.jsp
+++ b/WebContent/Tenwa/Lease/Flow/Contract/ContractEnd/ContractEndApplyList.jsp
@@ -16,8 +16,9 @@
var product_id=sReturn[2];
var contract_number = sReturn[3];
var project_name = sReturn[4];
+ var customertype = sReturn[5];
var sParams = "ApplyType=<%=sApplyType%>,CurUserID=<%=CurUser.getUserID()%>";
- sParams =sParams+",ProjectId="+project_id+",FlowKey="+contract_number+",ProductId="+product_id+",ContractId="+contract_id+",ProjectName="+project_name+",ApplyType=<%=sApplyType%>";
+ sParams =sParams+",customertype="+customertype+",ProjectId="+project_id+",FlowKey="+contract_number+",ProductId="+product_id+",ContractId="+contract_id+",ProjectName="+project_name+",ApplyType=<%=sApplyType%>";
var sReturnInfo = RunJavaMethodTrans("com.tenwa.flow.action.comm.BaseFlowStartAction","initFLow",sParams);
if(typeof(sReturnInfo)=="undefined" || sReturnInfo=="" || sReturnInfo=="_CANCEL_") return;
var sReturnInfos=sReturnInfo.split("@");
diff --git a/WebContent/WEB-INF/etc/app_config.properties b/WebContent/WEB-INF/etc/app_config.properties
index 6ca4bf7ac..81cc204f7 100644
--- a/WebContent/WEB-INF/etc/app_config.properties
+++ b/WebContent/WEB-INF/etc/app_config.properties
@@ -70,4 +70,5 @@ base.filter.user.role.id=none
base.business.type=1
base.company.doc.name=\u627F\u79DF\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09@\u627F\u79DF\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09
-base.person.doc.name=\u627F\u79DF\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09@\u627F\u79DF\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09
\ No newline at end of file
+base.person.doc.name=\u5171\u540C\u627F\u79DF\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09@\u5171\u540C\u627F\u79DF\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09,\u62C5\u4FDD\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09@\u62C5\u4FDD\u4EBA\u8EAB\u4EFD\u8BC1\uFF08\u6B63\u53CD\u9762\uFF09
+
diff --git a/calc/com/tenwa/reckon/bean/ConditionBean.java b/calc/com/tenwa/reckon/bean/ConditionBean.java
index 01dbe2f42..e134cda8b 100644
--- a/calc/com/tenwa/reckon/bean/ConditionBean.java
+++ b/calc/com/tenwa/reckon/bean/ConditionBean.java
@@ -31,6 +31,8 @@ public class ConditionBean implements Cloneable{
private String custId;//客户编号
private String plannumber;//方案编号
+ private int oldIncomeNumber;//原还款总期次
+ private Boolean deferStr=false;//是否展期
//*********************************************************************************【授信条件开始:】
private String equipAmt;//设备款
@@ -1716,4 +1718,17 @@ public class ConditionBean implements Cloneable{
public void setFinalPaymentMethod(String finalPaymentMethod) {
this.finalPaymentMethod = finalPaymentMethod;
}
+ public int getOldIncomeNumber() {
+ return oldIncomeNumber;
+ }
+ public void setOldIncomeNumber(int oldIncomeNumber) {
+ this.oldIncomeNumber = oldIncomeNumber;
+ }
+ public Boolean getDeferStr() {
+ return deferStr;
+ }
+ public void setDeferStr(Boolean deferStr) {
+ this.deferStr = deferStr;
+ }
+
}
diff --git a/calc/com/tenwa/reckon/executor/CreateTransactionExecutor.java b/calc/com/tenwa/reckon/executor/CreateTransactionExecutor.java
index f7e328ad6..7709ac373 100644
--- a/calc/com/tenwa/reckon/executor/CreateTransactionExecutor.java
+++ b/calc/com/tenwa/reckon/executor/CreateTransactionExecutor.java
@@ -532,6 +532,7 @@ public class CreateTransactionExecutor implements Transaction {
AdjustBean ab = ObjectConvertUtils.converBizObjectToBean(AdjustBean.class, bo);
RentChangeExe exe = new RentChangeExe(tx);
ConditionBean csOld=bean.getCb().clone();
+ csOld.setOldIncomeNumber(csOld.getIncomeNumber());
FundRentPlanBean rentPlan = exe.create(bean.getCb(), ab, bean);
//设置新的
csOld.setIncomeNumber(ab.getAdjustList());
diff --git a/calc/com/tenwa/reckon/executor/FundRentPlanExecutor.java b/calc/com/tenwa/reckon/executor/FundRentPlanExecutor.java
index 6132a9f68..e4a4ef784 100644
--- a/calc/com/tenwa/reckon/executor/FundRentPlanExecutor.java
+++ b/calc/com/tenwa/reckon/executor/FundRentPlanExecutor.java
@@ -159,7 +159,6 @@ public abstract class FundRentPlanExecutor {
bm.createQuery(sql).executeUpdate();
}
public abstract FundRentPlanBean create(TabCalBean tcb,Integer startList) throws Exception ;
-
public FundRentPlanBean createOnhire(TabCalBean tcb ) throws Exception {
ConditionBean cb = tcb.getCb();
// 查询他的租金计划
@@ -212,6 +211,6 @@ public abstract class FundRentPlanExecutor {
retainage = retainage.add(new BigDecimal(cb.getFactoryAccessories()));
}
cb.setShare(share);
- cb.setRetainage(retainage);
+ //cb.setRetainage(retainage);
}
}
diff --git a/calc/com/tenwa/reckon/executor/RentCalHelper.java b/calc/com/tenwa/reckon/executor/RentCalHelper.java
index 159868883..2f48203a9 100644
--- a/calc/com/tenwa/reckon/executor/RentCalHelper.java
+++ b/calc/com/tenwa/reckon/executor/RentCalHelper.java
@@ -145,7 +145,7 @@ public class RentCalHelper {
+ " 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.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.rent else 0 end) fist_rent,"
+ +" 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.rent 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,"
+ " max( case when DATE_FORMAT(t.plandate, '%Y/%m/%d') < DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') then t.plandate else '0' end) plandate"
+ " from ("
@@ -156,7 +156,7 @@ public class RentCalHelper {
+ " t1.corpus,"
+ " t1.interest,"
+ " t1.plandate,"
- + " t1.planlist,IFNULL(t2.cou,0) cou"
+ + " t1.planlist,IFNULL(t2.planlist,0) cou"
+ " from ("
+ " select cfrp.plan_date plandate,"
+ " cfrp.plan_list planlist,"
@@ -174,7 +174,7 @@ public class RentCalHelper {
+ " ,sum(cfri.interest ) sumincomeinterest,"
+ " sum( cfri.rent ) sumincomerent,"
+ " min(cfri.contract_id) contractid,"
- + " cfri.plan_list planlist,count(1) cou"
+ + " cfri.plan_list planlist "
+ " from LC_RENT_INCOME cfri "
+ " where cfri.contract_id = ? and payment_number=?"
+ " group by cfri.plan_list"
diff --git a/calc/com/tenwa/reckon/executor/rentChange/RentChangeExe.java b/calc/com/tenwa/reckon/executor/rentChange/RentChangeExe.java
index 65e347906..db643af8b 100644
--- a/calc/com/tenwa/reckon/executor/rentChange/RentChangeExe.java
+++ b/calc/com/tenwa/reckon/executor/rentChange/RentChangeExe.java
@@ -72,9 +72,12 @@ public class RentChangeExe {
FundRentPlanBean frpb = this.before(cb, ab, tcb);
FundRentPlanExecutor executor = this.getPmtExe(cb);
// 得到正常pmt租金测算后的租金计划
- frpb = executor.create(tcb,startList);
-
-
+ if(ab.getAdjustList()>cb.getOldIncomeNumber()){
+ cb.setDeferStr(true);
+ frpb = executor.create(tcb,startList);
+ }else{
+ frpb = executor.createOnhire(tcb);
+ }
//重置起租日
String start_date="";
if(ab.getPaydayAdjust()==null||ab.getPaydayAdjust().equals("")){
@@ -85,7 +88,7 @@ public class RentChangeExe {
if(ab.getStartList()==1){
start_date=cb.getStartDate();
}else{
- start_date=frpb.getPlanDateList().get(ab.getStartList()-2).toString();
+ start_date=ab.getPaydayAdjust();
}
}
cb.setStartDate(start_date);
diff --git a/calc/com/tenwa/reckon/help/RentalServiceImpl.java b/calc/com/tenwa/reckon/help/RentalServiceImpl.java
index 168abe415..4eb613d5a 100644
--- a/calc/com/tenwa/reckon/help/RentalServiceImpl.java
+++ b/calc/com/tenwa/reckon/help/RentalServiceImpl.java
@@ -73,7 +73,11 @@ public class RentalServiceImpl {
}else{
BigDecimal finalPayment = new BigDecimal(cb.getFinalPayment());
if(finalPayment.compareTo(BigDecimal.ZERO) != 0) {
- rent = new BigDecimal(RentTools.getPMT(preRate, cb.getIncomeNumber() + "", cleanLeaseMoney, finalPayment.toString(), cb.getPeriodType())).toString();
+ if(cb.getDeferStr()){
+ rent = new BigDecimal(RentTools.getPMT(preRate, cb.getIncomeNumber() + "", cleanLeaseMoney, "0", cb.getPeriodType())).toString();
+ }else{
+ rent = new BigDecimal(RentTools.getPMT(preRate, cb.getIncomeNumber() + "", cleanLeaseMoney, finalPayment.toString(), cb.getPeriodType())).toString();
+ }
} else {
rent = new BigDecimal(RentTools.getPMT(preRate, cb.getIncomeNumber() + "", cleanLeaseMoney, cb.getEquipEndValue(), cb.getPeriodType())).toString();
}
diff --git a/config/collect_config.properties b/config/collect_config.properties
index d5837ab5e..2dc335c20 100644
--- a/config/collect_config.properties
+++ b/config/collect_config.properties
@@ -5,11 +5,10 @@
#ce shi huan jing url dai shou collect si yao su bank feiyasuo
com.tenwa.yangdm.collect.serverUrl=http://59.41.103.98:333/gzdsf/ProcessServlet
com.tenwa.yangdm.bank.serverUrl=http://59.41.103.98:9110/gzdsf/ProcessServlet
-
#---------------------------------------------------------------------------------------------
#clearFile downUrl
-com.tenwa.yangdm.bank.clearRequestUrl=http://59.41.103.98:333/gzdsf/GetSettFile.do
+com.tenwa.yangdm.bank.clearRequestUrl=http://59.41.103.98:9110/gzdsf/GetSettFile.do
#com.tenwa.yangdm.merchantId=000191400207649
#test shang hu dai ma
com.tenwa.yangdm.merchantId=001053110000001
diff --git a/config/quartz.properties b/config/quartz.properties
index cf427d91d..3de8cf1d8 100644
--- a/config/quartz.properties
+++ b/config/quartz.properties
@@ -25,7 +25,7 @@ c3p0.preferredTestQuery=select 1
org.quartz.scheduler.skipUpdateCheck=true
#QuartzScheduler
-org.quartz.scheduler.instanceName=liuyifan
+org.quartz.scheduler.instanceName=QuartzScheduler
org.quartz.scheduler.instanceId=AUTO
org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount=50