Merge branch 'release20211231' into dailyfix

This commit is contained in:
yjf 2022-09-26 08:31:53 +08:00
commit 60a3ed86bd
11 changed files with 1713 additions and 1433 deletions

View File

@ -1,6 +1,7 @@
<%@page import="com.amarsoft.awe.control.model.Parameter"%>
<%@ page contentType="text/html; charset=GBK"%>
<%@ page import="com.tenwa.reckon.product.ASObjectWindowCalc" %>
<%@ page import="com.tenwa.jbo.manager.DataUtil" %>
<%@ include file="/Frame/resources/include/include_begin_info.jspf"%>
<style>
#div_my0 > form {
@ -22,7 +23,7 @@
/*
Author: undefined 2017-06-29
Content: 示例详情页面
History Log:
History Log:
*/
String calType = CurPage.getParameter("calType");
String paymentNumber=CurPage.getParameter("payment_number");
@ -34,7 +35,7 @@
String taskno = CurPage.getParameter("TaskNo");
String flowNo = CurPage.getParameter("FlowNo");
String phaseNo = CurPage.getParameter("PhaseNo");
String settleMethod="";
String settleMethod="";
String rentOrRate="";
String zcContractNum="";
BizObject condition=JBOFactory.createBizObjectQuery("jbo.app.tenwa.calc.LC_CALC_CONDITION_TEMP","flowunid=:flowunid").setParameter("flowunid", flowunid).getSingleResult(false);
@ -53,9 +54,12 @@
doTemp.setDefaultValue("flowunid", flowunid);
doTemp.setDefaultValue("payment_number", paymentNumber);
doTemp.setHtmlEvent("START_LIST","onchange","startListChange");
doTemp.setHtmlEvent("DELAY_START_LIST", "onchange", "changeDelayStartList");
doTemp.setHtmlEvent("DELAY_END_LIST", "onchange", "changeDelayEndList");
doTemp.setHtmlEvent("CHANGE_TYPE", "onchange", "changeType");
doTemp.appendJboWhere(" and payment_number='"+paymentNumber+"'");
// if(null!=ishistory&&ishistory.equals("true")){
// doTemp.setDataQueryClass("com.tenwa.lease.flow.flowarchive.onhirechange.RentPlanChangeShow");//如果是历史则新显示历史数据
// }
@ -67,6 +71,11 @@
doTemp.setDefaultValue("DORMANT_YEAR_RATE",rents.get(rentLists-1).getAttribute("YEAR_RATE").getString());
doTemp.setDefaultValue("IRR_OLD",irr);
}
List<Map<String, String>> dataList = DataUtil.query("select 1 from lc_calc_subsection_info where payment_number = ?", Sqlca, paymentNumber);
String canChange = "yes";
if (dataList.size() > 1) {
canChange = "no";
}
ASObjectWindowCalc dwTemp = new ASObjectWindowCalc(CurPage, doTemp,request);
/*Parameter p=new Parameter("NodeNo",nodeNo+"_1");
Parameter p2=new Parameter("payment_number",paymentNumber);
@ -96,6 +105,7 @@
%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%>
<script type="text/javascript">
$(function(){
changeType();
var zcContractNum=getItemValue(0,0,"zc_contract_num");
if(zcContractNum == undefined || zcContractNum == '' ){
setItemValue(0,0,"zc_contract_num","<%=zcContractNum%>");
@ -111,11 +121,15 @@ $(function(){
if(Number(endList)<Number(startList)){
alert("结束期次不可以小于开始期次!");
setItemValue(0,0,"END_LIST","");
setItemValue(0, 0, 'DELAY_START_LIST', '');
setItemValue(0, 0, 'DELAY_END_LIST', '');
return;
}
if(Number(endList)==<%=rentLists%>){
alert("休眠结束期次不可以为最大期次");
setItemValue(0,0,"END_LIST","");
setItemValue(0, 0, 'DELAY_START_LIST', '');
setItemValue(0, 0, 'DELAY_END_LIST', '');
return;
}
}
@ -123,27 +137,38 @@ $(function(){
$("#END_LIST").change(function(){
var endList = $("#END_LIST").val();
var startList = $("#START_LIST").val();
if(endList.indexOf("-")!=-1){
alert("此处不能输入负数!");
$("#END_LIST").val(endList.replace("-",""));
}
if(typeof(startList)!=undefined && startList !="" ){
if(Number(endList)<Number(startList)){
alert("结束期次不可以小于开始期次!");
setItemValue(0,0,"END_LIST","");
setItemValue(0, 0, 'DELAY_START_LIST', '');
setItemValue(0, 0, 'DELAY_END_LIST', '');
return;
}
}
const changeType = getItemValue(0, 0, 'CHANGE_TYPE');
if (changeType === 'dormancy_delay') {
const delayStartList = getItemValue(0, 0, 'DELAY_START_LIST');
if (delayStartList !== '' && Number(delayStartList) <= Number(endList)) {
alert('延期开始期次必须大于休眠结束期次');
setItemValue(0, 0, 'DELAY_START_LIST', '');
setItemValue(0, 0, 'DELAY_END_LIST', '');
}
}
});
});
//保存数据
function saveRecord(sPostEvents)
{
/* if(!cheackFinalPayment()){
/* if(!cheackFinalPayment()){
AsDebug.alert("提示","只有尾款的的项十二条目并且大于还租次数才能展期变更!");
return;
} */
if ('<%=canChange%>' === 'no') {
alert('发现多条分段融数据,不允许进行变更');
return;
}
var zcContractNum=getItemValue(0,0,"zc_contract_num");
var contract_date=getItemValue(0,0,"contract_date");
if(zcContractNum == undefined || zcContractNum == '' ){
@ -154,14 +179,18 @@ function saveRecord(sPostEvents)
alert("合同签署时间不能为空!");
return;
}
const changeType = getItemValue(0, 0, 'CHANGE_TYPE');
if (changeType === 'delay') {
setItemValue(0, 0, 'START_LIST', '');
}
var result = AsControl.RunJavaMethodTrans("com.tenwa.channelportal.action.alpha.RentDormantAction","saveRentDormantAction","flowUnid=<%=flowunid%>,contractDate="+contract_date+",zcContractNum="+zcContractNum);
// alert("休眠还款协议编号为:" + result);
//检查是否进行过变更
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()");
as_save("myiframe0","run()");
}else{
alert('请先撤销变更,再进行变更操作!!!');
} --%>
@ -183,16 +212,19 @@ function cancelChange(){
var message = AsControl.RunJavaMethodTrans("com.tenwa.reckon.executor.CreateTransactionExecutor","cancelRentChange","flowunid=<%=flowunid%>,plannumber=<%=paymentNumber%>");
if(message == 'true'){
resetDWDialog("变更撤销成功!!!",true);
window.location.href=window.location.href;
window.location.href=window.location.href;
}else{
resetDWDialog("未进行过租金计划变更的操作!请先进行租金计划变更!!!",true);
}
}
}, 500);
}
function run()
{
var result = AsControl.RunJavaMethodTrans("com.tenwa.reckon.executor.CreateTransactionExecutor","runRentdormant","flowunid=<%=flowunid%>,plannumber=<%=paymentNumber%>,productId=<%=ProductId%>,calType=pay_process");
var result = AsControl.RunJavaMethodTrans("com.tenwa.reckon.executor.CreateTransactionExecutor","runRentdormant","flowunid=<%=flowunid%>,plannumber=<%=paymentNumber%>,productId=<%=ProductId%>,calType=pay_process");
if (result.result === 'false') {
alert('测算失败: ' + result.msg);
}
window.location.href=window.location.href;
}
@ -214,5 +246,120 @@ function startListChange(){
}
}
function changeType() {
const changeType = getItemValue(0, 0, 'CHANGE_TYPE');
if (changeType) {
const startList = getItemValue(0, 0, 'START_LIST');
const endList = getItemValue(0, 0, 'END_LIST');
const dormantYearRate = getItemValue(0, 0, 'DORMANT_YEAR_RATE');
const delayStartList = getItemValue(0, 0, 'DELAY_START_LIST');
const delayEndList = getItemValue(0, 0, 'DELAY_END_LIST');
switch (changeType) {
case 'dormancy':
hideItem(0, 'DELAY_START_LIST');
setItemRequired(0, 'DELAY_START_LIST', false);
if (delayStartList) {
setItemValue(0, 0, 'DELAY_START_LIST', '');
}
hideItem(0, 'DELAY_END_LIST');
setItemRequired(0, 'DELAY_END_LIST', false);
if (delayEndList) {
setItemValue(0, 0, 'DELAY_END_LIST', '');
}
showItem(0, 'START_LIST');
setItemRequired(0, 'START_LIST', true);
showItem(0, 'END_LIST');
setItemRequired(0, 'END_LIST', true);
showItem(0, 'DORMANT_YEAR_RATE');
setItemRequired(0, 'DORMANT_YEAR_RATE', true);
break;
case "delay":
hideItem(0, 'START_LIST');
setItemRequired(0, 'START_LIST', false);
if (startList) {
setItemValue(0, 0, 'START_LIST', '');
}
hideItem(0, 'END_LIST');
setItemRequired(0, 'END_LIST', false);
if (endList) {
setItemValue(0, 0, 'END_LIST', '');
}
hideItem(0, 'DORMANT_YEAR_RATE');
setItemRequired(0, 'DORMANT_YEAR_RATE', false);
if (dormantYearRate) {
setItemValue(0, 0, 'DORMANT_YEAR_RATE', '');
}
showItem(0, 'DELAY_START_LIST');
setItemRequired(0, 'DELAY_START_LIST', true);
showItem(0, 'DELAY_END_LIST');
setItemRequired(0, 'DELAY_END_LIST', true);
break;
case 'dormancy_delay':
showItem(0, 'START_LIST');
setItemRequired(0, 'START_LIST', true);
showItem(0, 'END_LIST');
setItemRequired(0, 'END_LIST', true);
showItem(0, 'DORMANT_YEAR_RATE');
setItemRequired(0, 'DORMANT_YEAR_RATE', true);
showItem(0, 'DELAY_START_LIST');
setItemRequired(0, 'DELAY_START_LIST', true);
showItem(0, 'DELAY_END_LIST');
setItemRequired(0, 'DELAY_END_LIST', true);
setItemRequired(0, 'END_LIST', false);
if (!endList) {
setItemValue(0, 0, 'DELAY_START_LIST', '');
setItemValue(0, 0, 'DELAY_END_LIST', '');
}
break;
}
}
}
function changeDelayStartList() {
const changeType = getItemValue(0, 0, 'CHANGE_TYPE');
const endList = getItemValue(0, 0, 'END_LIST');
const delayStartList = getItemValue(0, 0, 'DELAY_START_LIST');
if (changeType === 'dormancy_delay') {
if (!endList) {
alert('请先填写休眠结束期次');
setItemValue(0, 0, 'DELAY_START_LIST', '');
return;
}
if (Number(delayStartList) <= Number(endList)) {
alert('延期开始期次必须大于休眠结束期次');
setItemValue(0, 0, 'DELAY_START_LIST', '');
return;
}
}
if (delayStartList !== '') {
if (Number(delayStartList) <= 0) {
alert('延期开始期次必须大于0');
setItemValue(0, 0, 'DELAY_START_LIST', '');
} else {
const result = AsControl.RunJavaMethod("com.tenwa.reckon.executor.RentCalHelper", "findPlanDateByRentList", "paymentnumber=<%=paymentNumber%>,startList=" + delayStartList);
if(result.result !== 'true') {
alert(result.message);
setItemValue(0 ,0, 'DELAY_START_LIST', '');
}
}
}
}
function changeDelayEndList() {
const delayStartList = getItemValue(0, 0, 'DELAY_START_LIST');
if (delayStartList === '') {
alert('请先填写延期开始期次');
setItemValue(0, 0, 'DELAY_END_LIST', '');
return;
}
const delayEndList = getItemValue(0, 0, 'DELAY_END_LIST');
if (delayEndList !== '') {
if (Number(delayEndList) < Number(delayStartList)) {
alert('延期后总期数必须大于或等于延期开始期次');
setItemValue(0, 0, 'DELAY_END_LIST', '');
}
}
}
</script>
<%@ include file="/Frame/resources/include/include_end.jspf"%>

View File

@ -4705,6 +4705,10 @@
<attribute name="UPDATEORGID" label="更新部门" type="STRING" length="32"/>
<attribute name="UPDATETIME" label="更新时间" type="STRING" length="32"/>
<attribute name="IRR_OLD" label="休眠变更前IRR" type="DOUBLE" length="22" scale="6"/>
<attribute name="CHANGE_TYPE" label="变更类型" type="STRING" length="32"/>
<attribute name="DELAY_START_LIST" label="延期开始期次" type="STRING" length="20"/>
<attribute name="DELAY_END_LIST" label="延期后总期数" type="STRING" length="20" />
</attributes>
<manager>
<managerProperties>
@ -4729,6 +4733,10 @@
<attribute name="UPDATEORGID" label="更新部门" type="STRING" length="32"/>
<attribute name="UPDATETIME" label="更新时间" type="STRING" length="32"/>
<attribute name="IRR_OLD" label="休眠变更前IRR" type="DOUBLE" length="22" scale="6"/>
<attribute name="CHANGE_TYPE" label="变更类型" type="STRING" length="32"/>
<attribute name="DELAY_START_LIST" label="延期开始期次" type="STRING" length="20"/>
<attribute name="DELAY_END_LIST" label="延期后总期数" type="STRING" length="20" />
</attributes>
<manager>
<managerProperties>

File diff suppressed because it is too large Load Diff

View File

@ -24,7 +24,7 @@ import java.util.Map;
*
*/
public class RentCalHelper {
private String contractId;
private String startList;
private String paydayAdjust;
@ -77,10 +77,15 @@ public class RentCalHelper {
try {
BizObject rentplan=JBOFactory.createBizObjectQuery(LC_RENT_PLAN.CLASS_NAME,"PAYMENT_NUMBER=:paymentnumber and plan_list=:planlist")
.setParameter("paymentnumber", paymentnumber).setParameter("planlist", startList).getSingleResult(false);
if (rentplan == null) {
jsonObject.appendElement("result", "false");
jsonObject.appendElement("message","填写的期次以超出租金计划期次,请重新填写");
return JSONEncoder.encode(jsonObject);
}
@SuppressWarnings("unchecked")
List<BizObject> rentincome=JBOFactory.createBizObjectQuery(LC_RENT_INCOME.CLASS_NAME,"plan_id=:planid and ROLL_BACK='0'").setParameter("planid", rentplan.getAttribute("ID").getString()).getResultList(false);
//先去判断当前期次是否已回笼
if(rentincome.size()>0){
jsonObject.appendElement("result", "false");
@ -89,14 +94,14 @@ public class RentCalHelper {
jsonObject.appendElement("result", "true");
jsonObject.appendElement("message",rentplan.getAttribute("plan_date").getString());
}
} catch (JBOException e) {
} catch (Exception e) {
jsonObject.appendElement("result", "false");
jsonObject.appendElement("message","服务器繁忙,请稍后再试!");
e.printStackTrace();
}
return JSONEncoder.encode(jsonObject);
}
public String findConditionInfo() {
JSONObject jsonObject = JSONObject.createObject();
try {
@ -165,7 +170,7 @@ 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);
@ -187,7 +192,7 @@ public class RentCalHelper {
BizObjectManager bm = JBOFactory.getBizObjectManager(LC_CALC_CONDITION.CLASS_NAME);
Conn conn = new Conn(tx);
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') and t.planlist >12 then t.remaincorpus else 0 end ) remaincorpusbreak," //一年以内的违约费用13期包括13的剩余本金计算 一年以外的用剩余本金计算
+" sum(case when DATE_FORMAT(t.plandate,'%Y/%m/%d') >= DATE_FORMAT('"+this.paydayAdjust+"','%Y/%m/%d') and t.planlist >12 then t.remaincorpus else 0 end ) remaincorpusbreak," //一年以内的违约费用13期包括13的剩余本金计算 一年以外的用剩余本金计算
+ " 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,"
@ -356,7 +361,7 @@ public class RentCalHelper {
}
return JSONEncoder.encode(jsonObject);
}
public String rentPlanDate(){
JBOTransaction tx = null;
try {
@ -384,7 +389,7 @@ public class RentCalHelper {
}
}
return "error";
}
//校验合同是否有保证金代偿
@ -477,5 +482,5 @@ public class RentCalHelper {
public void setPlanId(String planId) {
this.planId = planId;
}
}

View File

@ -117,7 +117,7 @@ public class CreateVoucherCustCautionMoneyIncome extends BaseBussiness {
param.put("BUSINESSTYPE", "0602");// Ö÷ÓªÀàÐÍ
}else if("PZ2018072100000031".equals(VOUCHERNO) || "PZ2019070100000019".equals(VOUCHERNO)) {
param.put("BUSINESSTYPE", "0605");// Ö÷ÓªÀàÐÍ
}else if("PZ2019121600000163".equals(VOUCHERNO)||"PZ2021032400000006".equals(VOUCHERNO)) {
}else if("PZ2019121600000163".equals(VOUCHERNO)) {
param.put("BUSINESSTYPE", "0604");// Ö÷ÓªÀàÐÍ
}
// param.put("FUNDTYPE", ""); // Ö÷ÓªÀàÐÍ

View File

@ -236,13 +236,17 @@ public class CreateVoucherLoanDistributor {
String isBalance5 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "DISCOUNT_INTEREST","isBalance");
if(isBalance5==null || "".equals(isBalance5)) {
Map<String, List<Map<String, String>>> isBalance5List = ProductParamUtil.getProductComponentDecisionTable(PRODUCT_ID, "PRD0301", "segmented_financing","IsBalanceLending");
if(isBalance5List.get("segmented_financing")!=null && isBalance5List.get("segmented_financing").get(0)!=null) {
isBalance5 = isBalance5List.get("segmented_financing").get(0).get("IsBalanceLending");
Map<String, List<Map<String, String>>> isBalance5List = null;
try {
isBalance5List = ProductParamUtil.getProductComponentDecisionTable(PRODUCT_ID, "PRD0301", "segmented_financing","IsBalanceLending");
if(isBalance5List != null && isBalance5List.get("segmented_financing")!=null && isBalance5List.get("segmented_financing").get(0)!=null) {
isBalance5 = isBalance5List.get("segmented_financing").get(0).get("IsBalanceLending");
}
}catch( Exception e) {
e.printStackTrace();
}
}
/**
* -----------------------------------------Đ޸ĽáĘř--------------------------------------------------------------------
*/

View File

@ -55,9 +55,9 @@ public class IncomeVoucher extends BaseBussiness {
cvci.CreateVoucher(Sqlca,FlowUnid, "PZ2019121600000163", "feetype1",userid); //回款-收到客户手续费(一次性)--回租
cvci.CreateVoucher(Sqlca,FlowUnid, "PZ2019121700000164", "feetype1",userid); //回款-收到客户手续费(按月) --回租
}else if("feetype32".equals(FEE_TYPE)) {
cvci.CreateVoucher(Sqlca,FlowUnid, "PZ2021032400000006", "feetype32",userid); //回款-收到个人意外险(网银来款)--回租
cvci.CreateVoucher(Sqlca,FlowUnid, "PZ2021032400000005", "feetype32",userid); //回款-收到个人意外险(网银来款)--回租
}else if("feetype27".equals(FEE_TYPE)||"feetype33".equals(FEE_TYPE)) {
cvci.CreateVoucher(Sqlca,FlowUnid, "PZ2021032400000005", FEE_TYPE,userid); //回款-收到客户贴息 --回租
cvci.CreateVoucher(Sqlca,FlowUnid, "PZ2021032400000006", FEE_TYPE,userid); //回款-收到客户贴息 --回租
}
}

View File

@ -16,6 +16,7 @@ import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
public class CreateVoucherRentIncome {
public void CreateVoucher(Transaction Sqlca, String flowunid,String VOUCHERNO,String userid) throws Exception{
Transaction Sqlca1 = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
Map<String,String> map=new HashMap<String, String>();
Map<String,String> param=new HashMap<String, String>();
String MONEY=null;
@ -49,16 +50,19 @@ public class CreateVoucherRentIncome {
map.clear();
map.put("FLOWUNID", flowunid);
if (("PZ2018072100000024".equals(VOUCHERNO)) || ("PZ2019070100000016".equals(VOUCHERNO))) {
sql = "SELECT ROUND((GETTAX(LCI.LEAS_FORM,'理쏜',LCCT.START_DATE)-1)*100,0) AS TAX_NUM, IFNULL(LRIT.INTEREST,0) AS MONEY, ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'理口',LCCT.START_DATE),2) AS MONEYNOTAX, (IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'理口',LCCT.START_DATE),2)) AS MONEYTAX, IFNULL(LRIT.RENT,0) AS RENTMONEY, IFNULL(LRIT.CORPUS,0) AS CORPUS, (IFNULL(LRIT.CORPUS,0)-ROUND(IFNULL(LRIT.CORPUS,0)/GETTAX(LCI.LEAS_FORM,'굶쏜',LCCT.START_DATE),2)) AS CORPUS_TAX, ((IFNULL(LRIT.CORPUS,0)-ROUND(IFNULL(LRIT.CORPUS,0)/GETTAX(LCI.LEAS_FORM,'굶쏜',LCCT.START_DATE),2)) +(IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'理口',LCCT.START_DATE), 2))) AS CORPUS_ADD_INTEREST_TAX, DATE_FORMAT(CASE WHEN (LRIT.ACCOUNTING_DATE IS NOT NULL OR LRIT.ACCOUNTING_DATE!='') THEN LRIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(CASE WHEN (LRIT.HIRE_DATE IS NOT NULL OR LRIT.HIRE_DATE!='') THEN LRIT.HIRE_DATE ELSE NOW() END, '%Y/%m/%d') AS FACT_DATE, LCCT.CONTRACT_ID, LCI.CONTRACT_NUMBER, LCI.PROJECT_NAME, LCI.LEAS_FORM, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, DI.F_I_TYPE, CIF.CUSTOMER_NUM AS CUSTOMERID, CIF.CUSTOMERNAME, CIF.CUSTOMERTYPE, LPI.BUSINESSTYPE, LRIT.PLAN_LIST, LRP.ID AS F58, CASE WHEN ( SELECT EBANK_NUMBER FROM LC_RENT_INCOME WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) GROUP BY EBANK_NUMBER ) IS NULL THEN 'YES' ELSE 'NO' END AS YES_OR_NO, CASE WHEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMER_NUM END AS CUSTOMERID2, CASE WHEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMERNAME END AS CUSTOMERNAME2 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.PLAN_LIST LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID=LUL.PROJECT_ID LEFT JOIN (SELECT DDI.RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO DDI WHERE DDI.MONEY_TYPE='bondRepay' GROUP BY DDI.RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LPI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(LRIT.RENT,0)>0 AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') AND DDI.RENT_PLAN_ID IS NULL AND LRIT.FLOWUNID=:FLOWUNID";
} else if (("PZ2018080400000081".equals(VOUCHERNO)) || ("PZ2019070100000017".equals(VOUCHERNO))) {
sql = "SELECT ROUND((GETTAX(LCI.LEAS_FORM,'理쏜',LCCT.START_DATE)-1)*100,0) AS TAX_NUM, IFNULL(LRIT.INTEREST,0) AS MONEY, ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'理口',LCCT.START_DATE),2) AS MONEYNOTAX, (IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'理口',LCCT.START_DATE),2)) AS MONEYTAX, IFNULL(LRIT.RENT,0) AS RENTMONEY, IFNULL(LRIT.CORPUS,0) AS CORPUS, DATE_FORMAT(CASE WHEN (LRIT.ACCOUNTING_DATE IS NOT NULL OR LRIT.ACCOUNTING_DATE!='') THEN LRIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(CASE WHEN (LRIT.HIRE_DATE IS NOT NULL OR LRIT.HIRE_DATE!='') THEN LRIT.HIRE_DATE ELSE NOW() END, '%Y/%m/%d') AS FACT_DATE, LCCT.CONTRACT_ID, LCI.CONTRACT_NUMBER, LCI.PROJECT_NAME, LCI.LEAS_FORM, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, DI.F_I_TYPE, CIF.CUSTOMER_NUM AS CUSTOMERID, CIF.CUSTOMERNAME, CIF.CUSTOMERTYPE, LPI.BUSINESSTYPE, LRIT.PLAN_LIST, LRP.ID AS F58, CASE WHEN ( SELECT EBANK_NUMBER FROM LC_RENT_INCOME WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) GROUP BY EBANK_NUMBER ) IS NULL THEN 'YES' ELSE 'NO' END AS YES_OR_NO, CASE WHEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMER_NUM END AS CUSTOMERID2, CASE WHEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMERNAME END AS CUSTOMERNAME2 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.PLAN_LIST LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID=LUL.PROJECT_ID LEFT JOIN (SELECT DDI.RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO DDI WHERE DDI.MONEY_TYPE='bondRepay' GROUP BY DDI.RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LPI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(LRIT.RENT,0)>0 AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') AND DDI.RENT_PLAN_ID IS NULL AND LRIT.FLOWUNID=:FLOWUNID";
} else if (("PZ2018072100000025".equals(VOUCHERNO)) || ("PZ2019070100000014".equals(VOUCHERNO))) {
sql = "SELECT ROUND((GETTAX(LCI.LEAS_FORM,'待퍅적口',LCCT.START_DATE)-1)*100,0) AS TAX_NUM, IFNULL(LRIT.PENALTY,0) AS MONEY, ROUND(IFNULL(LRIT.PENALTY,0)/GETTAX(LCI.LEAS_FORM,'待퍅적口',LCCT.START_DATE),2) AS MONEYNOTAX, (IFNULL(LRIT.PENALTY,0)-ROUND(IFNULL(LRIT.PENALTY,0)/GETTAX(LCI.LEAS_FORM,'待퍅적口',LCCT.START_DATE),2)) AS MONEYTAX, DATE_FORMAT(CASE WHEN (LRIT.ACCOUNTING_DATE IS NOT NULL OR LRIT.ACCOUNTING_DATE!='') THEN LRIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(CASE WHEN (LRIT.HIRE_DATE IS NOT NULL OR LRIT.HIRE_DATE!='') THEN LRIT.HIRE_DATE ELSE NOW() END, '%Y/%m/%d') AS FACT_DATE, LCCT.CONTRACT_ID, LCI.CONTRACT_NUMBER, LCI.PROJECT_NAME, LCI.LEAS_FORM, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, DI.F_I_TYPE, CIF.CUSTOMER_NUM AS CUSTOMERID, CIF.CUSTOMERNAME, CIF.CUSTOMERTYPE, LPI.BUSINESSTYPE, LRIT.PLAN_LIST, LRP.ID AS F58, CASE WHEN ( SELECT EBANK_NUMBER FROM LC_RENT_INCOME WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) GROUP BY EBANK_NUMBER ) IS NULL THEN 'YES' ELSE 'NO' END AS YES_OR_NO, CASE WHEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMER_NUM END AS CUSTOMERID2, CASE WHEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMERNAME END AS CUSTOMERNAME2 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.PLAN_LIST LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID=LUL.PROJECT_ID LEFT JOIN (SELECT DDI.RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO DDI WHERE DDI.MONEY_TYPE='bondRepay' GROUP BY DDI.RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LPI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(LRIT.PENALTY,0)>0 AND DDI.RENT_PLAN_ID IS NULL AND LRIT.FLOWUNID=:FLOWUNID";
}
// 回款-收到的租金(网银)--当月
if (("PZ2018072100000024".equals(VOUCHERNO)) || ("PZ2019070100000016".equals(VOUCHERNO))) {
sql = "SELECT ROUND((GETTAX(LCI.LEAS_FORM,'租金',LCCT.START_DATE)-1)*100,0) AS TAX_NUM, IFNULL(LRIT.INTEREST,0) AS MONEY, ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX, (IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS MONEYTAX, IFNULL(LRIT.RENT,0) AS RENTMONEY, IFNULL(LRIT.CORPUS,0) AS CORPUS, (IFNULL(LRIT.CORPUS,0)-ROUND(IFNULL(LRIT.CORPUS,0)/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX, ((IFNULL(LRIT.CORPUS,0)-ROUND(IFNULL(LRIT.CORPUS,0)/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) +(IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE), 2))) AS CORPUS_ADD_INTEREST_TAX, DATE_FORMAT(CASE WHEN (LRIT.ACCOUNTING_DATE IS NOT NULL OR LRIT.ACCOUNTING_DATE!='') THEN LRIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(CASE WHEN (LRIT.HIRE_DATE IS NOT NULL OR LRIT.HIRE_DATE!='') THEN LRIT.HIRE_DATE ELSE NOW() END, '%Y/%m/%d') AS FACT_DATE, LCCT.CONTRACT_ID, LCI.CONTRACT_NUMBER, LCI.PROJECT_NAME, LCI.LEAS_FORM, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, DI.F_I_TYPE, CIF.CUSTOMER_NUM AS CUSTOMERID, CIF.CUSTOMERNAME, CIF.CUSTOMERTYPE, LPI.BUSINESSTYPE, LRIT.PLAN_LIST, LRP.ID AS F58, CASE WHEN ( SELECT EBANK_NUMBER FROM LC_RENT_INCOME WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) GROUP BY EBANK_NUMBER ) IS NULL THEN 'YES' ELSE 'NO' END AS YES_OR_NO, CASE WHEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMER_NUM END AS CUSTOMERID2, CASE WHEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMERNAME END AS CUSTOMERNAME2 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.PLAN_LIST LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID=LUL.PROJECT_ID LEFT JOIN (SELECT DDI.RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO DDI WHERE DDI.MONEY_TYPE='bondRepay' GROUP BY DDI.RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LPI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(LRIT.RENT,0)>0 AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') AND DDI.RENT_PLAN_ID IS NULL AND LRIT.FLOWUNID=:FLOWUNID";
// 回款-收到的租金(网银)--跨月
} else if (("PZ2018080400000081".equals(VOUCHERNO)) || ("PZ2019070100000017".equals(VOUCHERNO))) {
sql = "SELECT ROUND((GETTAX(LCI.LEAS_FORM,'租金',LCCT.START_DATE)-1)*100,0) AS TAX_NUM, IFNULL(LRIT.INTEREST,0) AS MONEY, ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX, (IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS MONEYTAX, IFNULL(LRIT.RENT,0) AS RENTMONEY, IFNULL(LRIT.CORPUS,0) AS CORPUS, DATE_FORMAT(CASE WHEN (LRIT.ACCOUNTING_DATE IS NOT NULL OR LRIT.ACCOUNTING_DATE!='') THEN LRIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(CASE WHEN (LRIT.HIRE_DATE IS NOT NULL OR LRIT.HIRE_DATE!='') THEN LRIT.HIRE_DATE ELSE NOW() END, '%Y/%m/%d') AS FACT_DATE, LCCT.CONTRACT_ID, LCI.CONTRACT_NUMBER, LCI.PROJECT_NAME, LCI.LEAS_FORM, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, DI.F_I_TYPE, CIF.CUSTOMER_NUM AS CUSTOMERID, CIF.CUSTOMERNAME, CIF.CUSTOMERTYPE, LPI.BUSINESSTYPE, LRIT.PLAN_LIST, LRP.ID AS F58, CASE WHEN ( SELECT EBANK_NUMBER FROM LC_RENT_INCOME WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) GROUP BY EBANK_NUMBER ) IS NULL THEN 'YES' ELSE 'NO' END AS YES_OR_NO, CASE WHEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMER_NUM END AS CUSTOMERID2, CASE WHEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMERNAME END AS CUSTOMERNAME2 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.PLAN_LIST LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID=LUL.PROJECT_ID LEFT JOIN (SELECT DDI.RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO DDI WHERE DDI.MONEY_TYPE='bondRepay' GROUP BY DDI.RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LPI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(LRIT.RENT,0)>0 AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') AND DDI.RENT_PLAN_ID IS NULL AND LRIT.FLOWUNID=:FLOWUNID";
// 回款-收到的逾期利息(网银)
} else if (("PZ2018072100000025".equals(VOUCHERNO)) || ("PZ2019070100000014".equals(VOUCHERNO))) {
sql = "SELECT ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) AS TAX_NUM, IFNULL(LRIT.PENALTY,0) AS MONEY, ROUND(IFNULL(LRIT.PENALTY,0)/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) AS MONEYNOTAX, (IFNULL(LRIT.PENALTY,0)-ROUND(IFNULL(LRIT.PENALTY,0)/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) AS MONEYTAX, DATE_FORMAT(CASE WHEN (LRIT.ACCOUNTING_DATE IS NOT NULL OR LRIT.ACCOUNTING_DATE!='') THEN LRIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(CASE WHEN (LRIT.HIRE_DATE IS NOT NULL OR LRIT.HIRE_DATE!='') THEN LRIT.HIRE_DATE ELSE NOW() END, '%Y/%m/%d') AS FACT_DATE, LCCT.CONTRACT_ID, LCI.CONTRACT_NUMBER, LCI.PROJECT_NAME, LCI.LEAS_FORM, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, DI.F_I_TYPE, CIF.CUSTOMER_NUM AS CUSTOMERID, CIF.CUSTOMERNAME, CIF.CUSTOMERTYPE, LPI.BUSINESSTYPE, LRIT.PLAN_LIST, LRP.ID AS F58, CASE WHEN ( SELECT EBANK_NUMBER FROM LC_RENT_INCOME WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) GROUP BY EBANK_NUMBER ) IS NULL THEN 'YES' ELSE 'NO' END AS YES_OR_NO, CASE WHEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMER_NUM FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_CODING FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMER_NUM END AS CUSTOMERID2, CASE WHEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID=LE.CUSTOMER_ID ) WHEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) IS NOT NULL THEN ( SELECT DISTRIBUTOR_NAME FROM DISTRIBUTOR_INFO WHERE DISTRIBUTOR_NO=LE.CUSTOMER_ID ) ELSE CIF.CUSTOMERNAME END AS CUSTOMERNAME2 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.PLAN_LIST LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID=LUL.PROJECT_ID LEFT JOIN (SELECT DDI.RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO DDI WHERE DDI.MONEY_TYPE='bondRepay' GROUP BY DDI.RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LPI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(LRIT.PENALTY,0)>0 AND DDI.RENT_PLAN_ID IS NULL AND LRIT.FLOWUNID=:FLOWUNID";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca1, sql, map);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
CreateVoucherRedCompensatory cvrc = new CreateVoucherRedCompensatory();
String VOUCHER_TYPE="1";// ƾ֤·ÖÀà ½ðµû
@ -144,5 +148,8 @@ public class CreateVoucherRentIncome {
vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca);
}
}
if(Sqlca1!=null) {
Sqlca1.commit();
}
}
}

View File

@ -39,7 +39,7 @@ public class GenerateVoucherSumJob implements Job {
/**
* 将所有未插入中间表的凭证插入中间表
*/
String sql="INSERT INTO VOUCHER_LIST( F3, MODULE_NAME, CONTRACT_NUMBER, F5, F1, F15, MONEYS, NC_FLAG, NC_BATCH, NC_DATE, GENERATE_DATE, F48, F50, F51, F52) SELECT V8.F3, MAX(V8.MODULE_NAME) AS MODULE_NAME, MAX(V8.F47) AS CONTRACT_NUMBER, MAX(V8.F5) AS F5, MAX(V8.F1) AS F1, MAX(V8.F15) AS F15, SUM(IFNULL(V8.F7,0))+SUM(IFNULL(V8.F8,0)) AS MONEYS, (SELECT CASE IFNULL(MAX(FLAG),'2') WHEN '1' THEN '传输成功' WHEN '2' THEN '未传输' ELSE '传输失败' END FROM NCXML_DETAIL_RECORDS O WHERE O.XML_TYPE='voucher' AND O.TABLE_NUM=V8.F3) AS NC_FLAG, (SELECT MAX(BATCH) FROM NCXML_DETAIL_RECORDS O WHERE O.XML_TYPE='voucher' AND O.TABLE_NUM=V8.F3) AS NC_BATCH, (SELECT MAX(O.CREATE_TIME) FROM NCXML_DETAIL_RECORDS O WHERE O.XML_TYPE='voucher' AND O.TABLE_NUM=V8.F3) AS NC_DATE, MAX(LEFT(V8.GENERATE_DATE,19)) AS GENERATE_DATE, MAX(V8.F48) AS F48, MAX(V8.F50) AS F50, MAX(V8.F51) AS F51, MAX(V8.F52) AS F52 FROM VOUCHER_V8 V8 WHERE V8.F9 IS NULL GROUP BY V8.F3 ORDER BY MAX(LEFT(V8.GENERATE_DATE,19))";
String sql="INSERT INTO VOUCHER_LIST( F3, MODULE_NAME, CONTRACT_NUMBER, F5, F1, F15, MONEYS, NC_FLAG, NC_BATCH, NC_DATE, GENERATE_DATE, F48, F50, F51, F52) SELECT V8.F3, MAX(V8.MODULE_NAME) AS MODULE_NAME, MAX(V8.F47) AS CONTRACT_NUMBER, MAX(V8.F5) AS F5, MAX(V8.F1) AS F1, MAX(V8.F15) AS F15, SUM(IFNULL(V8.F7,0)) AS MONEYS, (SELECT CASE IFNULL(MAX(FLAG),'2') WHEN '1' THEN '传输成功' WHEN '2' THEN '未传输' ELSE '传输失败' END FROM NCXML_DETAIL_RECORDS O WHERE O.XML_TYPE='voucher' AND O.TABLE_NUM=V8.F3) AS NC_FLAG, (SELECT MAX(BATCH) FROM NCXML_DETAIL_RECORDS O WHERE O.XML_TYPE='voucher' AND O.TABLE_NUM=V8.F3) AS NC_BATCH, (SELECT MAX(O.CREATE_TIME) FROM NCXML_DETAIL_RECORDS O WHERE O.XML_TYPE='voucher' AND O.TABLE_NUM=V8.F3) AS NC_DATE, MAX(LEFT(V8.GENERATE_DATE,19)) AS GENERATE_DATE, MAX(V8.F48) AS F48, MAX(V8.F50) AS F50, MAX(V8.F51) AS F51, MAX(V8.F52) AS F52 FROM VOUCHER_V8 V8 WHERE V8.F9 IS NULL GROUP BY V8.F3 ORDER BY MAX(LEFT(V8.GENERATE_DATE,19))";
int con = tran.executeSQL(new SqlObject(sql));
System.out.println("插入凭证列表: "+con+"条!!!");
System.out.println("插入凭证列表: "+con+"条!!!");

View File

@ -2,12 +2,9 @@ package com.tenwa.lease.flow.contract.commbusiness;
import com.amarsoft.are.jbo.BizObjectManager;
import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.ASResultSet;
import com.amarsoft.awe.util.SqlObject;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.context.ASUser;
import com.tenwa.flow.baseBussion.BaseBussiness;
import jbo.com.tenwa.lease.comm.LB_CONTRACT_INFO;
public class LBInitContractStatusBusiness extends BaseBussiness {
@ -17,7 +14,7 @@ public class LBInitContractStatusBusiness extends BaseBussiness {
this.initBussinessParam(Sqlca);
String flowname=(String)this.getAttribute("FlowName");
String contractId=this.getAttribute("ContractId").toString();
String settletype=this.getAttribute("settletype").toString();
String settletype = this.getAttribute("settletype") == null ? null : this.getAttribute("settletype").toString();
String contractStatus=this.getAttribute("ContractStatus").toString();
String FlowUnid=this.getAttribute("FlowUnid").toString();
BizObjectManager bom=JBOFactory.getBizObjectManager(LB_CONTRACT_INFO.CLASS_NAME);

View File

@ -23,6 +23,7 @@ public class SaveBusinessStatus extends BaseBussiness {
this.initBussinessParam(Sqlca);//ContractStatus
String Status = this.getAttribute("ContractStatus").toString();
String userid = this.getAttribute("CurUserID").toString();
String flowname = (String) this.getAttribute("FlowName");
String ContractNumberOrProjectNo = "";
if(Integer.parseInt(Status)<11){
String pname = this.getAttribute("ProjectName").toString();
@ -47,7 +48,11 @@ public class SaveBusinessStatus extends BaseBussiness {
bsbo.setAttributeValue(BUSINESS_STATUS.inputtime,StringFunction.getTodayNow());
bsbo.setAttributeValue(BUSINESS_STATUS.inputorgid,user.getOrgID());
bsbom.saveObject(bsbo);
String sMessage="true";
if ("提前结清".equals(flowname)) {
// 2022/08/05 与客户张文竹确认提前结清更新合同状态新添加{报表档案归档报表新}中显示状态为实时状态
Sqlca.executeSQL("update lb_contract_info set ap_contract_status = '提前结清' where id = '" + this.getAttribute("ContractId").toString() + "'");
}
String sMessage="true";
return sMessage;
}
}