卡扣代偿定时任务相关优化

This commit is contained in:
xiezhiwen 2022-04-02 10:23:07 +08:00
parent 8580facb96
commit 948e180268
3 changed files with 779 additions and 462 deletions

View File

@ -1,5 +1,6 @@
package com.tenwa.voucher.CreateVoucherProcess;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -7,6 +8,7 @@ import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.JBOException;
import com.amarsoft.awe.util.ASResultSet;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
@ -17,94 +19,115 @@ import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
*/
public class CreateVoucherRedCompensatory {
public void CreateVoucher(String VOUCHERNO,String userid,String LRI_ID) throws Exception{
public void CreateVoucher(String VOUCHERNO,String userid,String LRI_ID){
Transaction Sqlca =null;
Map<String,String> map=new HashMap<String, String>();
Map<String,String> param=new HashMap<String, String>();
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
String MONEY=null;
String MONEYNOTAX=null;
String MONEYTAX=null;
String ACCOUNT_DATE=null;
String FACT_DATE=null;
String CONTRACT_ID=null;
String leas_form=null;
String DISTRIBUTOR_ID=null;
String DISTRIBUTOR_NAME=null;
String CONTRACT_NUMBER=null;
String BUSINESSTYPE=null;
String PLAN_LIST=null;
String CHARGE_WAY=null;
String F58=null;
String F56=null;
String sql="";
param.clear();
map.clear();
// 代偿反冲-收到的租金
if("PZ2019071500000030".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.RENT,0) AS MONEY, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, V8.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID )DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND (F58 IS NOT NULL AND F58<>'') AND F59='1' GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-收到代偿的租金' AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRI.CONTRACT_ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND IFNULL(LRI.RENT,0)>0 AND V9.F56 IS NULL";
// 代偿反冲-收到的逾期利息
}else if("PZ2019071500000031".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.PENALTY,0) AS MONEY, IFNULL(V8.MONEY,0) AS MONEYNOTAX, ROUND((IFNULL(LRI.PENALTY,0)-IFNULL(V8.MONEY,0)),2) AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN (SELECT RENT_PLAN_ID,MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID)DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN ( SELECT F58, SUM(F7) AS MONEY FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND (F58 IS NOT NULL AND F58<>'') GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-代偿逾期利息' AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND V9.F56 IS NULL AND IFNULL(LRI.PENALTY,0)>0";
// 代偿反冲-收到的租金微信
}else if("PZ2020070600000001".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.RENT,0) AS MONEY, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, V8.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN (SELECT RENT_PLAN_ID,MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID)DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND (F58 IS NOT NULL AND F58<>'') AND F59='1' GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-收到代偿的租金-微信' AND (F56 IS NOT NULL AND F56<>'' AND F58 IS NOT NULL AND F58<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRI.CONTRACT_ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND IFNULL(LRI.RENT,0)>0 AND V9.F56 IS NULL";
// 代偿反冲-收到的逾期利息微信
}else if("PZ2020070600000002".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.PENALTY,0) AS MONEY, IFNULL(V8.MONEY,0) AS MONEYNOTAX, ROUND((IFNULL(LRI.PENALTY,0)-IFNULL(V8.MONEY,0)),2) AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN (SELECT RENT_PLAN_ID,MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID)DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN ( SELECT F58, SUM(F7) AS MONEY FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND (F58 IS NOT NULL AND F58<>'') GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-代偿逾期利息-微信' AND (F58 IS NOT NULL AND F58<>'' AND F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND V9.F56 IS NULL AND IFNULL(LRI.PENALTY,0)>0";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, null);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
for (int i=0;i<dataList.size();i++){
MONEY=dataList.get(i).get("MONEY");
MONEYNOTAX=dataList.get(i).get("MONEYNOTAX");
MONEYTAX=dataList.get(i).get("MONEYTAX");
ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE");
FACT_DATE =dataList.get(i).get("FACT_DATE");
CONTRACT_ID=dataList.get(i).get("CONTRACT_ID");
leas_form="01";
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
PLAN_LIST=dataList.get(i).get("PLAN_LIST");
F58=dataList.get(i).get("F58");
F56=dataList.get(i).get("F56");
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER");
CHARGE_WAY=dataList.get(i).get("CHARGE_WAY");
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
param.put("TAX",MONEYTAX);
param.put("ACCOUNT_DATE",ACCOUNT_DATE);
param.put("FACT_DATE",FACT_DATE);
param.put("CONTRACT_ID",CONTRACT_ID);
param.put("LEAS_FORM",leas_form);
param.put("CUSTID",DISTRIBUTOR_ID);
param.put("CUSTNAME",DISTRIBUTOR_NAME);
param.put("PLAN_LIST",PLAN_LIST);
param.put("F58",F58);
param.put("F56",F56);
param.put("CONTRACT_NUMBER",CONTRACT_NUMBER);
param.put("CHARGE_WAY",CHARGE_WAY);
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("VOUCHERNO",VOUCHERNO);
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca);
}
}
if(Sqlca!=null){
try {
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
Map<String,String> map=new HashMap<String, String>();
Map<String,String> param=new HashMap<String, String>();
String MONEY=null;
String MONEYNOTAX=null;
String MONEYTAX=null;
String ACCOUNT_DATE=null;
String FACT_DATE=null;
String CONTRACT_ID=null;
String leas_form=null;
String DISTRIBUTOR_ID=null;
String DISTRIBUTOR_NAME=null;
String CONTRACT_NUMBER=null;
String BUSINESSTYPE=null;
String PLAN_LIST=null;
String CHARGE_WAY=null;
String F58=null;
String F56=null;
String sql="";
param.clear();
map.clear();
// 代偿反冲-收到的租金
if("PZ2019071500000030".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.RENT,0) AS MONEY, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, V8.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-收到代偿的租金' AND (F58 IS NOT NULL AND F58<>'') AND F59='1' GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE (MODULE_NAME='代偿反冲-收到代偿的租金' OR MODULE_NAME='代偿反冲-收到代偿的租金-微信银联') AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRI.CONTRACT_ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND IFNULL(LRI.RENT,0)>0 AND V9.F56 IS NULL";
// 代偿反冲-收到的逾期利息
}else if("PZ2019071500000031".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.PENALTY,0) AS MONEY, IFNULL(V8.MONEY,0) AS MONEYNOTAX, ROUND((IFNULL(LRI.PENALTY,0)-IFNULL(V8.MONEY,0)),2) AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN ( SELECT F58, SUM(F7) AS MONEY FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-代偿逾期利息' AND (F58 IS NOT NULL AND F58<>'') GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE (MODULE_NAME='代偿反冲-代偿逾期利息' OR MODULE_NAME='代偿反冲-代偿逾期利息-微信银联') AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND V9.F56 IS NULL AND IFNULL(LRI.PENALTY,0)>0";
// 代偿反冲-收到的租金微信
}else if("PZ2020070600000001".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.RENT,0) AS MONEY, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, V8.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN (SELECT RENT_PLAN_ID,MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID)DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND (F58 IS NOT NULL AND F58<>'') AND F59='1' GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-收到代偿的租金-微信' AND (F56 IS NOT NULL AND F56<>'' AND F58 IS NOT NULL AND F58<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRI.CONTRACT_ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND IFNULL(LRI.RENT,0)>0 AND V9.F56 IS NULL";
// 代偿反冲-收到的逾期利息微信
}else if("PZ2020070600000002".equals(VOUCHERNO)){
sql="SELECT LRI.CHARGE_WAY, IFNULL(LRI.PENALTY,0) AS MONEY, IFNULL(V8.MONEY,0) AS MONEYNOTAX, ROUND((IFNULL(LRI.PENALTY,0)-IFNULL(V8.MONEY,0)),2) AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRI.PLAN_ID AS F58, LRI.ID AS F56, LCI.CONTRACT_NUMBER FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN (SELECT RENT_PLAN_ID,MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID)DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN ( SELECT F58, SUM(F7) AS MONEY FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND (F58 IS NOT NULL AND F58<>'') GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-代偿逾期利息-微信' AND (F58 IS NOT NULL AND F58<>'' AND F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V9 ON V9.F56=LRI.ID WHERE LRI.ID='"+LRI_ID+"' AND LCI.BUSINESSTYPE='1' AND V9.F56 IS NULL AND IFNULL(LRI.PENALTY,0)>0";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, null);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
for (int i=0;i<dataList.size();i++){
MONEY=dataList.get(i).get("MONEY");
MONEYNOTAX=dataList.get(i).get("MONEYNOTAX");
MONEYTAX=dataList.get(i).get("MONEYTAX");
ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE");
FACT_DATE =dataList.get(i).get("FACT_DATE");
CONTRACT_ID=dataList.get(i).get("CONTRACT_ID");
leas_form="01";
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
PLAN_LIST=dataList.get(i).get("PLAN_LIST");
F58=dataList.get(i).get("F58");
F56=dataList.get(i).get("F56");
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER");
CHARGE_WAY=dataList.get(i).get("CHARGE_WAY");
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
param.put("TAX",MONEYTAX);
param.put("ACCOUNT_DATE",ACCOUNT_DATE);
param.put("FACT_DATE",FACT_DATE);
param.put("CONTRACT_ID",CONTRACT_ID);
param.put("LEAS_FORM",leas_form);
param.put("CUSTID",DISTRIBUTOR_ID);
param.put("CUSTNAME",DISTRIBUTOR_NAME);
param.put("PLAN_LIST",PLAN_LIST);
param.put("F58",F58);
param.put("F56",F56);
param.put("CONTRACT_NUMBER",CONTRACT_NUMBER);
param.put("CHARGE_WAY",CHARGE_WAY);
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("VOUCHERNO",VOUCHERNO);
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca);
}
}
Sqlca.commit();
} catch (Exception e) {
try {
Sqlca.rollback();
} catch (JBOException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}finally {
if(Sqlca!=null){
try {
Sqlca.commit();
} catch (JBOException e) {
e.printStackTrace();
}
try {
Sqlca.disConnect();
} catch (JBOException e) {
e.printStackTrace();
}
}
}
}
@ -116,96 +139,110 @@ public class CreateVoucherRedCompensatory {
* @param Sqlca
* @throws Exception
*/
public void CreateVoucher(String FLOWUNID,String VOUCHERNO,String userid,Transaction Sqlca) throws Exception{
Transaction Sqlca1 = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
public void CreateVoucher(String FLOWUNID,String VOUCHERNO,String userid,Transaction Sqlca){
Transaction Sqlca1=null;
ASResultSet rs=null;
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
Map<String,String> map=new HashMap<String, String>();
Map<String,String> param=new HashMap<String, String>();
String MONEY=null;
String MONEYNOTAX=null;
String MONEYTAX=null;
String ACCOUNT_DATE=null;
String FACT_DATE=null;
String CONTRACT_ID=null;
String leas_form=null;
String DISTRIBUTOR_ID=null;
String DISTRIBUTOR_NAME=null;
String DISTRIBUTOR_ID2=null;
String DISTRIBUTOR_NAME2=null;
String CONTRACT_NUMBER=null;
String BUSINESSTYPE=null;
String PLAN_LIST=null;
String F58=null;
String YES_OR_NO=null;
String sql="";
param.clear();
map.clear();
// 代偿反冲-收到的租金
if("PZ2019071500000030".equals(VOUCHERNO)){
//sql="SELECT IFNULL(V8.MONEY, 0) AS MONEY,0.00 AS MONEYNOTAX,0.00 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER,LCI.BUSINESSTYPE 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 (SELECT SUM(F7) AS MONEY,F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-收到代偿的租金%' AND F59 = '1' GROUP BY F58) V8 ON V8.F58=LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = V8.F58 AND F59 = 1 AND MODULE_NAME LIKE '%代偿反冲-收到代偿的租金%') AND LRIT.FLOWUNID='"+FLOWUNID+"' ";
//sql="SELECT IFNULL(V8.MONEY, 0) AS MONEY,0.00 AS MONEYNOTAX,0.00 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER,LCI.BUSINESSTYPE,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) ELSE V8.DISTRIBUTOR_CODING END AS DISTRIBUTOR_ID2,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) ELSE V8.DISTRIBUTOR_NAME END AS DISTRIBUTOR_NAME2 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 (SELECT SUM(F7) AS MONEY,F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-收到代偿的租金%' AND F59 = '1' GROUP BY F58) V8 ON V8.F58 = LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = V8.F58 AND F59 = 1 AND MODULE_NAME LIKE '%代偿反冲-收到代偿的租金%') AND LRIT.FLOWUNID = '"+FLOWUNID+"'";
sql="SELECT IFNULL(LRIT.RENT,0) AS MONEY, 0.00 AS MONEYNOTAX, 0.00 AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, V8.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRP.ID AS F58, LCI.CONTRACT_NUMBER, LCI.BUSINESSTYPE, CASE WHEN ( SELECT LRI.EBANK_NUMBER FROM LC_RENT_INCOME LRI WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) AND NOT EXISTS(SELECT 1 FROM LC_RENT_INCOME_TEMP LRIT2 WHERE LRIT2.FLOWUNID='"+FLOWUNID+"' AND LRIT2.CONTRACT_ID=LRI.CONTRACT_ID AND LRIT2.PLAN_LIST=LRI.PLAN_LIST) GROUP BY LRI.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 ) ELSE CIF.CUSTOMER_NUM END AS DISTRIBUTOR_ID2, 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 ) ELSE CIF.CUSTOMERNAME END AS DISTRIBUTOR_NAME2 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 ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN ( SELECT SUM(F7) AS MONEY, F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-收到代偿的租金%' AND F59='1' AND (F58 IS NOT NULL AND F58<>'') GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID WHERE LCI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(V8.MONEY,0)>0 AND IFNULL(LRIT.RENT,0)>0 AND LRIT.FLOWUNID='"+FLOWUNID+"'";
// 代偿反冲-收到的逾期利息
}else if("PZ2019071500000031".equals(VOUCHERNO)){
//sql="SELECT IFNULL(LRI.PENALTY, 0) AS MONEY,IFNULL(V8.MONEY, 0) AS MONEYNOTAX,ROUND((IFNULL(LRI.PENALTY, 0) - IFNULL(V8.MONEY, 0)),2) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER,LCI.BUSINESSTYPE 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 (SELECT CONTRACT_ID,PLAN_LIST,SUM(IFNULL(PENALTY,0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,PLAN_LIST)LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID AND LRI.PLAN_LIST=LRP.PLAN_LIST LEFT JOIN (SELECT SUM(F7) AS MONEY,F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-代偿逾期利息%' AND F59 = 1 GROUP BY F58) V8 ON V8.F58=LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = V8.F58 AND F59 = 1 AND MODULE_NAME LIKE '%代偿反冲-代偿逾期利息%') AND LRIT.FLOWUNID='"+FLOWUNID+"' ";
//sql="SELECT IFNULL(LRI.PENALTY, 0) AS MONEY,IFNULL(V8.MONEY, 0) AS MONEYNOTAX,ROUND((IFNULL(LRI.PENALTY, 0) - IFNULL(V8.MONEY, 0)),2) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER,LCI.BUSINESSTYPE,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) ELSE V8.DISTRIBUTOR_CODING END AS DISTRIBUTOR_ID2,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) ELSE V8.DISTRIBUTOR_NAME END AS DISTRIBUTOR_NAME2 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 (SELECT CONTRACT_ID,PLAN_LIST,SUM(IFNULL(PENALTY, 0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,PLAN_LIST) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN (SELECT SUM(F7) AS MONEY,F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-代偿逾期利息%' AND F59 = 1 GROUP BY F58) V8 ON V8.F58 = LRP.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = V8.F58 AND F59 = 1 AND MODULE_NAME LIKE '%代偿反冲-代偿逾期利息%') AND LRIT.FLOWUNID = '"+FLOWUNID+"' ";
sql="SELECT IFNULL(LRIT.PENALTY,0) AS MONEY, IFNULL(V8.MONEY,0) AS MONEYNOTAX, ROUND((IFNULL(LRIT.PENALTY,0)-IFNULL(V8.MONEY,0)),2) AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRP.ID AS F58, LCI.CONTRACT_NUMBER, LCI.BUSINESSTYPE, CASE WHEN ( SELECT LRI.EBANK_NUMBER FROM LC_RENT_INCOME LRI WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) AND NOT EXISTS(SELECT 1 FROM LC_RENT_INCOME_TEMP LRIT2 WHERE LRIT2.FLOWUNID='"+FLOWUNID+"' AND LRIT2.CONTRACT_ID=LRI.CONTRACT_ID AND LRIT2.PLAN_LIST=LRI.PLAN_LIST) GROUP BY LRI.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 ) ELSE CIF.CUSTOMER_NUM END AS DISTRIBUTOR_ID2, 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 ) ELSE CIF.CUSTOMERNAME END AS DISTRIBUTOR_NAME2 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 ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI2 ON DDI2.RENT_PLAN_ID=LRP.ID LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN ( SELECT CONTRACT_ID, PLAN_LIST, SUM(IFNULL(PENALTY,0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID, PLAN_LIST ) LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID AND LRI.PLAN_LIST=LRP.PLAN_LIST LEFT JOIN ( SELECT SUM(F7) AS MONEY, F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-代偿逾期利息%' AND F59=1 GROUP BY F58 ) V8 ON V8.F58=DDI2.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_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 WHERE LCI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND DDI.ID IS NOT NULL AND IFNULL(LRIT.PENALTY,0)>0 AND LRIT.FLOWUNID='"+FLOWUNID+"'";
}
rs=Sqlca.getASResultSet(sql);
while(rs.next()){
MONEY = rs.getString("MONEY");
MONEYNOTAX = rs.getString("MONEYNOTAX");
MONEYTAX = rs.getString("MONEYTAX");
ACCOUNT_DATE = rs.getString("ACCOUNT_DATE");
FACT_DATE = rs.getString("FACT_DATE");
CONTRACT_ID = rs.getString("CONTRACT_ID");
leas_form="01";
DISTRIBUTOR_ID = rs.getString("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME = rs.getString("DISTRIBUTOR_NAME");
DISTRIBUTOR_ID2 = rs.getString("DISTRIBUTOR_ID2");
DISTRIBUTOR_NAME2 = rs.getString("DISTRIBUTOR_NAME2");
BUSINESSTYPE = rs.getString("BUSINESSTYPE");
PLAN_LIST = rs.getString("PLAN_LIST");
F58 = rs.getString("F58");
CONTRACT_NUMBER = rs.getString("CONTRACT_NUMBER");
YES_OR_NO = rs.getString("YES_OR_NO");
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
param.put("TAX",MONEYTAX);
param.put("ACCOUNT_DATE",ACCOUNT_DATE);
param.put("FACT_DATE",FACT_DATE);
param.put("CONTRACT_ID",CONTRACT_ID);
param.put("LEAS_FORM",leas_form);
param.put("CUSTID",DISTRIBUTOR_ID);
param.put("CUSTNAME",DISTRIBUTOR_NAME);
param.put("CUSTID2",DISTRIBUTOR_ID2);
param.put("CUSTNAME2",DISTRIBUTOR_NAME2);
param.put("PLAN_LIST",PLAN_LIST);
param.put("F58",F58);
param.put("CONTRACT_NUMBER",CONTRACT_NUMBER);
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("YES_OR_NO",YES_OR_NO);
param.put("VOUCHERNO",VOUCHERNO);
try {
Sqlca1 = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
Map<String,String> map=new HashMap<String, String>();
Map<String,String> param=new HashMap<String, String>();
String MONEY=null;
String MONEYNOTAX=null;
String MONEYTAX=null;
String ACCOUNT_DATE=null;
String FACT_DATE=null;
String CONTRACT_ID=null;
String leas_form=null;
String DISTRIBUTOR_ID=null;
String DISTRIBUTOR_NAME=null;
String DISTRIBUTOR_ID2=null;
String DISTRIBUTOR_NAME2=null;
String CONTRACT_NUMBER=null;
String BUSINESSTYPE=null;
String PLAN_LIST=null;
String F58=null;
String YES_OR_NO=null;
String sql="";
param.clear();
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca1);
// 代偿反冲-收到的租金
if("PZ2019071500000030".equals(VOUCHERNO)){
sql="SELECT IFNULL(LRIT.RENT,0) AS MONEY, 0.00 AS MONEYNOTAX, 0.00 AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, V8.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRP.ID AS F58, LCI.CONTRACT_NUMBER, LCI.BUSINESSTYPE, CASE WHEN ( SELECT LRI.EBANK_NUMBER FROM LC_RENT_INCOME LRI WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) AND NOT EXISTS(SELECT 1 FROM LC_RENT_INCOME_TEMP LRIT2 WHERE LRIT2.FLOWUNID='"+FLOWUNID+"' AND LRIT2.CONTRACT_ID=LRI.CONTRACT_ID AND LRIT2.PLAN_LIST=LRI.PLAN_LIST) GROUP BY LRI.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 ) ELSE CIF.CUSTOMER_NUM END AS DISTRIBUTOR_ID2, 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 ) ELSE CIF.CUSTOMERNAME END AS DISTRIBUTOR_NAME2 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 ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN ( SELECT SUM(F7) AS MONEY, F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-收到代偿的租金%' AND F59='1' AND (F58 IS NOT NULL AND F58<>'') GROUP BY F58 ) V8 ON V8.F58=DDI.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID WHERE LCI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND IFNULL(V8.MONEY,0)>0 AND IFNULL(LRIT.RENT,0)>0 AND LRIT.FLOWUNID='"+FLOWUNID+"'";
// 代偿反冲-收到的逾期利息
}else if("PZ2019071500000031".equals(VOUCHERNO)){
sql="SELECT IFNULL(LRIT.PENALTY,0) AS MONEY, IFNULL(V8.MONEY,0) AS MONEYNOTAX, ROUND((IFNULL(LRIT.PENALTY,0)-IFNULL(V8.MONEY,0)),2) AS MONEYTAX, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(SYSDATE(),'%Y/%m/%d') AS FACT_DATE, LRP.CONTRACT_ID, DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID, DI.DISTRIBUTOR_NAME, LRP.PLAN_LIST, LRP.ID AS F58, LCI.CONTRACT_NUMBER, LCI.BUSINESSTYPE, CASE WHEN ( SELECT LRI.EBANK_NUMBER FROM LC_RENT_INCOME LRI WHERE EBANK_NUMBER=IFNULL(LRIT.EBANK_NUMBER,0) AND NOT EXISTS(SELECT 1 FROM LC_RENT_INCOME_TEMP LRIT2 WHERE LRIT2.FLOWUNID='"+FLOWUNID+"' AND LRIT2.CONTRACT_ID=LRI.CONTRACT_ID AND LRIT2.PLAN_LIST=LRI.PLAN_LIST) GROUP BY LRI.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 ) ELSE CIF.CUSTOMER_NUM END AS DISTRIBUTOR_ID2, 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 ) ELSE CIF.CUSTOMERNAME END AS DISTRIBUTOR_NAME2 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 ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT RENT_PLAN_ID, MAX(ID) AS ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI2 ON DDI2.RENT_PLAN_ID=LRP.ID LEFT JOIN LC_EBANK LE ON LE.ID=LRIT.EBANK_NUMBER LEFT JOIN ( SELECT CONTRACT_ID, PLAN_LIST, SUM(IFNULL(PENALTY,0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID, PLAN_LIST ) LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID AND LRI.PLAN_LIST=LRP.PLAN_LIST LEFT JOIN ( SELECT SUM(F7) AS MONEY, F58, MAX(F65) AS DISTRIBUTOR_CODING, MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-代偿逾期利息%' AND F59=1 GROUP BY F58 ) V8 ON V8.F58=DDI2.ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_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 WHERE LCI.BUSINESSTYPE='1' AND LUL.IS_MAIN='Y' AND DDI.ID IS NOT NULL AND IFNULL(LRIT.PENALTY,0)>0 AND LRIT.FLOWUNID='"+FLOWUNID+"'";
}
rs=Sqlca.getASResultSet(sql);
while(rs.next()){
MONEY = rs.getString("MONEY");
MONEYNOTAX = rs.getString("MONEYNOTAX");
MONEYTAX = rs.getString("MONEYTAX");
ACCOUNT_DATE = rs.getString("ACCOUNT_DATE");
FACT_DATE = rs.getString("FACT_DATE");
CONTRACT_ID = rs.getString("CONTRACT_ID");
leas_form="01";
DISTRIBUTOR_ID = rs.getString("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME = rs.getString("DISTRIBUTOR_NAME");
DISTRIBUTOR_ID2 = rs.getString("DISTRIBUTOR_ID2");
DISTRIBUTOR_NAME2 = rs.getString("DISTRIBUTOR_NAME2");
BUSINESSTYPE = rs.getString("BUSINESSTYPE");
PLAN_LIST = rs.getString("PLAN_LIST");
F58 = rs.getString("F58");
CONTRACT_NUMBER = rs.getString("CONTRACT_NUMBER");
YES_OR_NO = rs.getString("YES_OR_NO");
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
param.put("TAX",MONEYTAX);
param.put("ACCOUNT_DATE",ACCOUNT_DATE);
param.put("FACT_DATE",FACT_DATE);
param.put("CONTRACT_ID",CONTRACT_ID);
param.put("LEAS_FORM",leas_form);
param.put("CUSTID",DISTRIBUTOR_ID);
param.put("CUSTNAME",DISTRIBUTOR_NAME);
param.put("CUSTID2",DISTRIBUTOR_ID2);
param.put("CUSTNAME2",DISTRIBUTOR_NAME2);
param.put("PLAN_LIST",PLAN_LIST);
param.put("F58",F58);
param.put("CONTRACT_NUMBER",CONTRACT_NUMBER);
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("YES_OR_NO",YES_OR_NO);
param.put("VOUCHERNO",VOUCHERNO);
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca1);
}
}
} catch (Exception e) {
e.printStackTrace();
}finally {
if(Sqlca1!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
Sqlca1.commit();
} catch (JBOException e) {
e.printStackTrace();
}
try {
Sqlca1.disConnect();
} catch (JBOException e) {
e.printStackTrace();
}
}
}
if(Sqlca1!=null){
rs.close();
Sqlca1.commit();
Sqlca1.disConnect();
}
}
}

View File

@ -2,15 +2,17 @@ package com.tenwa.voucher.CreateVoucherProcess;
import java.util.List;
import java.util.Map;
import com.amarsoft.are.jbo.JBOException;
import com.amarsoft.are.jbo.JBOTransaction;
import com.amarsoft.awe.util.SqlObject;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.flow.util.FlowUtil;
/**
* 自动及定时任务自动生成代偿凭证
* @author xiezhiwen
*/
public class InsertVoucherRentCompensatory {
/**
@ -35,50 +37,120 @@ public class InsertVoucherRentCompensatory {
* 查询租金实收表, 将需要生成凭证的数据存入中间表
* @throws Exception
*/
public void initLVRentIncome() throws Exception{
public void initLVRentIncome(){
Transaction Sqlca =null;
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
/**
* 查询数据, 判断是否需要执行插入中间表
*/
// 查询是否有当月的, 未生成凭证的数据(经销商代偿)
String sqls11 = "SELECT O.ID FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN (SELECT INCOME_ID FROM LV_RENT_PLAN GROUP BY INCOME_ID) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND DATE_FORMAT(O.INPUTTIME, '%Y-%m') = DATE_FORMAT(LRP.PLAN_DATE, '%Y-%m') AND LV.INCOME_ID IS NULL AND IFNULL(O.CORPUS, 0) + IFNULL(O.INTEREST, 0) > 0";
// 查询跨月的, 未生成凭证的数据(经销商代偿)
String sqls22 = "SELECT O.ID FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN (SELECT INCOME_ID FROM LV_RENT_PLAN2 GROUP BY INCOME_ID) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND DATE_FORMAT(O.INPUTTIME, '%Y-%m') <> DATE_FORMAT(LRP.PLAN_DATE, '%Y-%m') AND LV.INCOME_ID IS NULL AND IFNULL(O.CORPUS, 0) + IFNULL(O.INTEREST, 0) > 0";
// 查询当前数据是否有逾期利息(经销商代偿)
String sqls33 = "SELECT O.ID FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID = O.RENT_PLAN_ID LEFT JOIN (SELECT INCOME_ID FROM LV_PENALTY_PLAN GROUP BY INCOME_ID) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND LV.INCOME_ID IS NULL AND IFNULL(O.PENALTY, 0) > 0";
List<Map<String,String>> dataList11=DataOperatorUtil.getDataBySql(Sqlca, sqls11, null);
List<Map<String,String>> dataList22=DataOperatorUtil.getDataBySql(Sqlca, sqls22, null);
List<Map<String,String>> dataList33=DataOperatorUtil.getDataBySql(Sqlca, sqls33, null);
/**
* 将数据插入中间表的SQL
*/
// 未逾期及逾期未过月(经销商代偿)
String sql11 = "INSERT INTO LV_RENT_PLAN ( SELECT REPLACE(UUID(), '-', ''), CONCAT('k', getSerialNumber ('凭证号')), CI.CUSTOMER_NUM, CI.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, O.ID, DATE_FORMAT(O.INPUTTIME, '%Y/%m/%d') AS HIRE_DATE, LRP.PLAN_LIST, (IFNULL(O.CORPUS,0)+IFNULL(O.INTEREST,0)) AS RENT, IFNULL(O.CORPUS,0) AS CORPUS, IFNULL(O.INTEREST,0) AS INTEREST, 0.00 AS PENALTY, '' OWN_BANK, '' OWN_ACCOUNT, '' OWN_NUMBER, '' EBANK_NUMBER, '' CARDDEDUCT_ID, DATE_FORMAT(O.INPUTTIME, '%Y/%m/%d') AS ACCOUNTING_DATE, LRP.COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN (SELECT INCOME_ID FROM LV_RENT_PLAN GROUP BY INCOME_ID ) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND DATE_FORMAT(O.INPUTTIME, '%Y-%m') = DATE_FORMAT(LRP.PLAN_DATE, '%Y-%m') AND LV.INCOME_ID IS NULL AND IFNULL(O.CORPUS, 0) + IFNULL(O.INTEREST, 0) > 0)";
// 逾期过月(经销商代偿)
String sql22 = "INSERT INTO LV_RENT_PLAN2 ( SELECT REPLACE(UUID(), '-', ''), CONCAT('k', getSerialNumber ('凭证号')), CI.CUSTOMER_NUM, CI.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, O.ID, DATE_FORMAT(O.INPUTTIME, '%Y/%m/%d') AS HIRE_DATE, LRP.PLAN_LIST, (IFNULL(O.CORPUS,0)+IFNULL(O.INTEREST,0)) AS RENT, IFNULL(O.CORPUS,0) AS CORPUS, IFNULL(O.INTEREST,0) AS INTEREST, 0.00 AS PENALTY, '' OWN_BANK, '' OWN_ACCOUNT, '' OWN_NUMBER, '' EBANK_NUMBER, '' CARDDEDUCT_ID, DATE_FORMAT(O.INPUTTIME, '%Y/%m/%d') AS ACCOUNTING_DATE, LRP.COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN (SELECT INCOME_ID FROM LV_RENT_PLAN2 GROUP BY INCOME_ID ) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND DATE_FORMAT(O.INPUTTIME, '%Y-%m') <> DATE_FORMAT(LRP.PLAN_DATE, '%Y-%m') AND LV.INCOME_ID IS NULL AND IFNULL(O.CORPUS, 0) + IFNULL(O.INTEREST, 0) > 0) ";
// 逾期利息(经销商代偿)
String sql33 = "INSERT INTO LV_PENALTY_PLAN ( SELECT REPLACE(UUID(), '-', ''), CONCAT('k', getSerialNumber ('凭证号')) AS VOUCHER_F3, CI.CUSTOMER_NUM, CI.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, O.ID, DATE_FORMAT(O.INPUTTIME, '%Y/%m/%d') AS HIRE_DATE, LRP.PLAN_LIST, 0.00 AS RENT, 0.00 AS CORPUS, 0.00 AS INTEREST, IFNULL(O.PENALTY,0) AS PENALTY, '' OWN_BANK, '' OWN_ACCOUNT, '' OWN_NUMBER, '' EBANK_NUMBER, '' CARDDEDUCT_ID, DATE_FORMAT(O.INPUTTIME, '%Y/%m/%d') AS ACCOUNTING_DATE, LRP.COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN (SELECT INCOME_ID FROM LV_PENALTY_PLAN GROUP BY INCOME_ID ) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND LV.INCOME_ID IS NULL AND IFNULL(O.PENALTY,0) > 0)";
/**
* 根据查询语句判断, 有值才执行插入SQL
*/
if(dataList11 != null && !dataList11.isEmpty()) {
SqlObject sqlss11 = new SqlObject(sql11);
Sqlca.executeSQL(sqlss11);
}
if(dataList22 != null && !dataList22.isEmpty()) {
SqlObject sqlss22 = new SqlObject(sql22);
Sqlca.executeSQL(sqlss22);
}
if(dataList33 != null && !dataList33.isEmpty()) {
SqlObject sqlss33 = new SqlObject(sql33);
Sqlca.executeSQL(sqlss33);
}
Sqlca.commit();
if(Sqlca!=null){
Sqlca.disConnect();
try {
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
/**
* 查询数据, 判断是否需要执行插入中间表
*/
// 查询是否有当月的, 未生成凭证的数据(经销商代偿)
String sqls11 = "SELECT O.ID FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN (SELECT INCOME_ID FROM LV_RENT_PLAN GROUP BY INCOME_ID) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND DATE_FORMAT(O.INPUTTIME, '%Y-%m') = DATE_FORMAT(LRP.PLAN_DATE, '%Y-%m') AND LV.INCOME_ID IS NULL AND IFNULL(O.CORPUS, 0) + IFNULL(O.INTEREST, 0) > 0";
// 查询跨月的, 未生成凭证的数据(经销商代偿)
String sqls22 = "SELECT O.ID FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN (SELECT INCOME_ID FROM LV_RENT_PLAN2 GROUP BY INCOME_ID) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND DATE_FORMAT(O.INPUTTIME, '%Y-%m') <> DATE_FORMAT(LRP.PLAN_DATE, '%Y-%m') AND LV.INCOME_ID IS NULL AND IFNULL(O.CORPUS, 0) + IFNULL(O.INTEREST, 0) > 0";
// 查询当前数据是否有逾期利息(经销商代偿)
String sqls33 = "SELECT O.ID FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID = O.RENT_PLAN_ID LEFT JOIN (SELECT INCOME_ID FROM LV_PENALTY_PLAN GROUP BY INCOME_ID) LV ON LV.INCOME_ID = O.ID WHERE O.MONEY_TYPE = 'bondRepay' AND DATE_FORMAT(O.INPUTTIME, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND LV.INCOME_ID IS NULL AND IFNULL(O.PENALTY, 0) > 0";
/**
* 将数据插入中间表
*/
String insertSql="";
SqlObject sqlObj=null;
String F3="";
String ID="";
// 当月代偿租金
List<Map<String,String>> dataList11=DataOperatorUtil.getDataBySql(Sqlca, sqls11, null);
if(dataList11 != null && !dataList11.isEmpty()) {
for(int i=0;i<dataList11.size();i++) {
F3="";
ID="";
try {
F3="k"+FlowUtil.getVoucher_Number(Sqlca);
} catch (Exception e) {
e.printStackTrace();
continue;
}
try {
ID = dataList11.get(i).get("ID");
// 未逾期及逾期未过月(经销商代偿)
insertSql = "INSERT INTO LV_RENT_PLAN ( SELECT REPLACE(UUID(),'-',''), '"+F3+"', CI.CUSTOMER_NUM, CI.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, O.ID, DATE_FORMAT(O.INPUTTIME,'%Y/%m/%d') AS HIRE_DATE, LRP.PLAN_LIST, (IFNULL(O.CORPUS,0)+IFNULL(O.INTEREST,0)) AS RENT, IFNULL(O.CORPUS,0) AS CORPUS, IFNULL(O.INTEREST,0) AS INTEREST, 0.00 AS PENALTY, '' AS OWN_BANK, '' AS OWN_ACCOUNT, '' AS OWN_NUMBER, '' AS EBANK_NUMBER, '' AS CARDDEDUCT_ID, DATE_FORMAT(O.INPUTTIME,'%Y/%m/%d') AS ACCOUNTING_DATE, LRP.COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID FROM LV_RENT_PLAN GROUP BY INCOME_ID ) LV ON LV.INCOME_ID=O.ID WHERE O.ID='"+ID+"' AND LV.INCOME_ID IS NULL )";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 逾期过月(经销商代偿)
List<Map<String,String>> dataList22=DataOperatorUtil.getDataBySql(Sqlca, sqls22, null);
if(dataList22 != null && !dataList22.isEmpty()) {
for(int i=0;i<dataList22.size();i++) {
F3="";
ID="";
try {
F3="k"+FlowUtil.getVoucher_Number(Sqlca);
} catch (Exception e) {
e.printStackTrace();
continue;
}
try {
ID = dataList22.get(i).get("ID");
insertSql = "INSERT INTO LV_RENT_PLAN2 ( SELECT REPLACE(UUID(),'-',''), '"+F3+"', CI.CUSTOMER_NUM, CI.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, O.ID, DATE_FORMAT(O.INPUTTIME,'%Y/%m/%d') AS HIRE_DATE, LRP.PLAN_LIST, (IFNULL(O.CORPUS,0)+IFNULL(O.INTEREST,0)) AS RENT, IFNULL(O.CORPUS,0) AS CORPUS, IFNULL(O.INTEREST,0) AS INTEREST, 0.00 AS PENALTY, '' AS OWN_BANK, '' AS OWN_ACCOUNT, '' AS OWN_NUMBER, '' AS EBANK_NUMBER, '' AS CARDDEDUCT_ID, DATE_FORMAT(O.INPUTTIME,'%Y/%m/%d') AS ACCOUNTING_DATE, LRP.COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID FROM LV_RENT_PLAN2 GROUP BY INCOME_ID ) LV ON LV.INCOME_ID=O.ID WHERE O.ID='"+ID+"' AND LV.INCOME_ID IS NULL )";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 逾期利息(经销商代偿)
List<Map<String,String>> dataList33=DataOperatorUtil.getDataBySql(Sqlca, sqls33, null);
if(dataList33 != null && !dataList33.isEmpty()) {
for(int i=0;i<dataList33.size();i++) {
F3="";
ID="";
try {
F3="k"+FlowUtil.getVoucher_Number(Sqlca);
} catch (Exception e) {
e.printStackTrace();
continue;
}
try {
ID = dataList33.get(i).get("ID");
insertSql = "INSERT INTO LV_PENALTY_PLAN ( SELECT REPLACE(UUID(),'-',''), '"+F3+"' AS VOUCHER_F3, CI.CUSTOMER_NUM, CI.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, O.ID, DATE_FORMAT(O.INPUTTIME,'%Y/%m/%d') AS HIRE_DATE, LRP.PLAN_LIST, 0.00 AS RENT, 0.00 AS CORPUS, 0.00 AS INTEREST, IFNULL(O.PENALTY,0) AS PENALTY, '' AS OWN_BANK, '' AS OWN_ACCOUNT, '' AS OWN_NUMBER, '' AS EBANK_NUMBER, '' AS CARDDEDUCT_ID, DATE_FORMAT(O.INPUTTIME,'%Y/%m/%d') AS ACCOUNTING_DATE, LRP.COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM FROM D_DEPOSITRETURN_INFO O LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID=O.RENT_PLAN_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID FROM LV_PENALTY_PLAN GROUP BY INCOME_ID ) LV ON LV.INCOME_ID=O.ID WHERE O.ID='"+ID+"' AND LV.INCOME_ID IS NULL )";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
Sqlca.commit();
} catch (Exception e) {
try {
Sqlca.rollback();
} catch (JBOException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}finally {
if(Sqlca!=null){
try {
Sqlca.commit();
} catch (JBOException e) {
e.printStackTrace();
}
try {
Sqlca.disConnect();
} catch (JBOException e) {
e.printStackTrace();
}
}
}
}
@ -87,105 +159,169 @@ public class InsertVoucherRentCompensatory {
* @param VOUCHERNO
* @throws Exception
*/
public void CreateVoucher() throws Exception{
public void CreateVoucher() {
Transaction Sqlca =null;
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
/**
* 查询中间表, 判断是否有数据需要执行
*/
/**
* 汽车回租
*/
// 当月的租金(经销商代偿)-(汽车回租)
String sqlqh11 = "SELECT O.ID FROM LV_RENT_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='02' AND V8.F58 IS NULL";
// 本月以前的租金(经销商代偿)-(汽车回租)
String sqlqh22 = "SELECT O.ID FROM LV_RENT_PLAN2 O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='02' AND V8.F58 IS NULL";
// 逾期利息(经销商代偿)-(汽车回租)
String sqlqh33 = "SELECT O.PENALTY FROM LV_PENALTY_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND F58 IS NOT NULL AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.PENALTY,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='02' AND V8.F58 IS NULL";
/**
* 汽车直租
*/
// 当月的租金(经销商代偿)-(汽车直租)
String sqlqz11 = "SELECT O.ID FROM LV_RENT_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='01' AND V8.F58 IS NULL";
// 本月以前的租金(经销商代偿)-(汽车直租)
String sqlqz22 = "SELECT O.ID FROM LV_RENT_PLAN2 O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='01' AND V8.F58 IS NULL";
// 逾期利息(经销商代偿)-(汽车直租)
String sqlqz33 = "SELECT O.PENALTY FROM LV_PENALTY_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND F58 IS NOT NULL AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.PENALTY,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='01' AND V8.F58 IS NULL";
/**
* 汽车回租
*/
List<Map<String,String>> dataListqh11=DataOperatorUtil.getDataBySql(Sqlca, sqlqh11, null);
List<Map<String,String>> dataListqh22=DataOperatorUtil.getDataBySql(Sqlca, sqlqh22, null);
List<Map<String,String>> dataListqh33=DataOperatorUtil.getDataBySql(Sqlca, sqlqh33, null);
/**
* 汽车直租
*/
List<Map<String,String>> dataListqz11=DataOperatorUtil.getDataBySql(Sqlca, sqlqz11, null);
List<Map<String,String>> dataListqz22=DataOperatorUtil.getDataBySql(Sqlca, sqlqz22, null);
List<Map<String,String>> dataListqz33=DataOperatorUtil.getDataBySql(Sqlca, sqlqz33, null);
/**
* 汽车类-回租
*/
// 收到的租金--经销商代偿-当月的-(汽车回租)
String sql_whereqh11 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='6' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='6' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019053000000001') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(LVRI.RENT,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
// 收到的租金--经销商代偿-跨月的-(汽车回租)
String sql_whereqh22 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019053000000002') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(LVRI.RENT,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
//收到的逾期利息--经销商代偿-(汽车回租)
String sql_whereqh33 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('代偿逾期利息-',LVRI.PLAN_LIST) ELSE '代偿逾期利息' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.PENALTY ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, DI.DISTRIBUTOR_NAME AS F61, LV.LOAN_SUBJECT AS F62, DI.DISTRIBUTOR_CODING AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019053000000003') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(LVRI.PENALTY,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
/**
* 汽车类-直租
*/
// 收到的租金--经销商代偿-当月的-(汽车直租)
String sql_whereqz11 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='3' THEN (LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='4' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='5' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='6' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='7' THEN ((LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) +(LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'利息',LCCT.START_DATE),2))) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='7' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='7' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='7' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='6' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='7' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000012') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(LVRI.RENT,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='01' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
// 收到的租金--经销商代偿-跨月的-(汽车直租)
String sql_whereqz22 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000013') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(LVRI.RENT,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='01' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
//收到的逾期利息--经销商代偿-(汽车直租)
String sql_whereqz33 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('代偿逾期利息-',LVRI.PLAN_LIST) ELSE '代偿逾期利息' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.PENALTY ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, DI.DISTRIBUTOR_NAME AS F61, LV.LOAN_SUBJECT AS F62, DI.DISTRIBUTOR_CODING AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000011') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-代偿逾期利息' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(LVRI.PENALTY,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='01' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
/**
* 根据查询语句判断, 有值才执行插入SQL
*/
/**
* 汽车回租
*/
if(dataListqh11 != null && !dataListqh11.isEmpty()) {
SqlObject sqlsqh11 = new SqlObject(sql_whereqh11);
Sqlca.executeSQL(sqlsqh11);
}
if(dataListqh22 != null && !dataListqh22.isEmpty()) {
SqlObject sqlsqh22 = new SqlObject(sql_whereqh22);
Sqlca.executeSQL(sqlsqh22);
}
if(dataListqh33 != null && !dataListqh33.isEmpty()) {
SqlObject sqlsqh33 = new SqlObject(sql_whereqh33);
Sqlca.executeSQL(sqlsqh33);
}
/**
* 汽车直租
*/
if(dataListqz11 != null && !dataListqz11.isEmpty()) {
SqlObject sqlsqz11 = new SqlObject(sql_whereqz11);
Sqlca.executeSQL(sqlsqz11);
}
if(dataListqz22 != null && !dataListqz22.isEmpty()) {
SqlObject sqlsqz22 = new SqlObject(sql_whereqz22);
Sqlca.executeSQL(sqlsqz22);
}
if(dataListqz33 != null && !dataListqz33.isEmpty()) {
SqlObject sqlsqz33 = new SqlObject(sql_whereqz33);
Sqlca.executeSQL(sqlsqz33);
}
Sqlca.commit();
System.out.println("***********************************************************");
System.out.println("**********************已生成代偿凭证**************************");
System.out.println("***********************************************************");
if(Sqlca!=null){
Sqlca.disConnect();
try {
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
/**
* 查询中间表, 判断是否有数据需要执行
*/
/**
* 汽车回租
*/
// 当月的租金(经销商代偿)-(汽车回租)
String sqlqh11 = "SELECT O.ID FROM LV_RENT_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='02' AND V8.F58 IS NULL";
// 本月以前的租金(经销商代偿)-(汽车回租)
String sqlqh22 = "SELECT O.ID FROM LV_RENT_PLAN2 O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='02' AND V8.F58 IS NULL";
// 逾期利息(经销商代偿)-(汽车回租)
String sqlqh33 = "SELECT O.ID,O.PENALTY FROM LV_PENALTY_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND F58 IS NOT NULL AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.PENALTY,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='02' AND V8.F58 IS NULL";
/**
* 汽车直租
*/
// 当月的租金(经销商代偿)-(汽车直租)
String sqlqz11 = "SELECT O.ID FROM LV_RENT_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='01' AND V8.F58 IS NULL";
// 本月以前的租金(经销商代偿)-(汽车直租)
String sqlqz22 = "SELECT O.ID FROM LV_RENT_PLAN2 O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.RENT,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='01' AND V8.F58 IS NULL";
// 逾期利息(经销商代偿)-(汽车直租)
String sqlqz33 = "SELECT O.ID,O.PENALTY FROM LV_PENALTY_PLAN O LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿-代偿逾期利息' AND F58 IS NOT NULL AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22', '%Y-%m-%d') GROUP BY F58 ) V8 ON V8.F58=O.INCOME_ID WHERE DATE_FORMAT(O.HIRE_DATE, '%Y-%m-%d') > DATE_FORMAT('2022-02-22', '%Y-%m-%d') AND IFNULL(O.PENALTY,0)>0 AND O.BUSINESSTYPE='1' AND O.LEAS_FORM='01' AND V8.F58 IS NULL";
/**
* 根据查询语句判断, 有值才执行插入SQL
* 汽车回租
*/
String insertSql="";
SqlObject sqlObj=null;
String ID="";
// 收到的租金--经销商代偿-当月的-(汽车回租)
List<Map<String,String>> dataListqh11=DataOperatorUtil.getDataBySql(Sqlca, sqlqh11, null);
if(dataListqh11 != null && !dataListqh11.isEmpty()) {
for(int i=0;i<dataListqh11.size();i++) {
ID="";
try {
ID = dataListqh11.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='6' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='6' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019053000000001') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22','%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 收到的租金--经销商代偿-跨月的-(汽车回租)
List<Map<String,String>> dataListqh22=DataOperatorUtil.getDataBySql(Sqlca, sqlqh22, null);
if(dataListqh22 != null && !dataListqh22.isEmpty()) {
for(int i=0;i<dataListqh22.size();i++) {
ID="";
try {
ID = dataListqh22.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019053000000002') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22','%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
//收到的逾期利息--经销商代偿-(汽车回租)
List<Map<String,String>> dataListqh33=DataOperatorUtil.getDataBySql(Sqlca, sqlqh33, null);
if(dataListqh33 != null && !dataListqh33.isEmpty()) {
for(int i=0;i<dataListqh33.size();i++) {
ID="";
try {
ID = dataListqh33.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('代偿逾期利息-',LVRI.PLAN_LIST) ELSE '代偿逾期利息' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.PENALTY ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, DI.DISTRIBUTOR_NAME AS F61, LV.LOAN_SUBJECT AS F62, DI.DISTRIBUTOR_CODING AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019053000000003') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-代偿逾期利息' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22','%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
/**
* 汽车直租
*/
// 收到的租金--经销商代偿-当月的-(汽车直租)
List<Map<String,String>> dataListqz11=DataOperatorUtil.getDataBySql(Sqlca, sqlqz11, null);
if(dataListqz11 != null && !dataListqz11.isEmpty()) {
for(int i=0;i<dataListqz11.size();i++) {
ID="";
try {
ID = dataListqz11.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='3' THEN (LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='4' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='5' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='6' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='7' THEN ((LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) +(LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'利息',LCCT.START_DATE),2))) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='7' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='7' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='7' THEN '' WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='6' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='7' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000012') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22','%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 收到的租金--经销商代偿-跨月的-(汽车直租)
List<Map<String,String>> dataListqz22=DataOperatorUtil.getDataBySql(Sqlca, sqlqz22, null);
if(dataListqz22 != null && !dataListqz22.isEmpty()) {
for(int i=0;i<dataListqz22.size();i++) {
ID="";
try {
ID = dataListqz22.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到代偿的租金-',LVRI.PLAN_LIST) ELSE '收到代偿的租金' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_NAME ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN DI.DISTRIBUTOR_CODING ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_PLAN2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000013') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-收到代偿的租金' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22','%Y-%m-%d') GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
List<Map<String,String>> dataListqz33=DataOperatorUtil.getDataBySql(Sqlca, sqlqz33, null);
if(dataListqz33 != null && !dataListqz33.isEmpty()) {
for(int i=0;i<dataListqz33.size();i++) {
ID="";
try {
ID = dataListqz33.get(i).get("ID");
//收到的逾期利息--经销商代偿-(汽车直租)
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('代偿逾期利息-',LVRI.PLAN_LIST) ELSE '代偿逾期利息' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.PENALTY ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, DI.DISTRIBUTOR_NAME AS F61, LV.LOAN_SUBJECT AS F62, DI.DISTRIBUTOR_CODING AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_PLAN LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.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 ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000011') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58 FROM VOUCHER_V8 WHERE MODULE_NAME='代偿-代偿逾期利息' AND DATE_FORMAT(GENERATE_DATE,'%Y-%m-%d')>DATE_FORMAT('2022-02-22','%Y-%m-%d') AND F58 IS NOT NULL GROUP BY F58 ) V8 ON V8.F58=LVRI.INCOME_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
Sqlca.commit();
System.out.println("***********************************************************");
System.out.println("**********************已生成代偿凭证**************************");
System.out.println("***********************************************************");
} catch (Exception e) {
try {
Sqlca.rollback();
} catch (JBOException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}finally {
if(Sqlca!=null){
try {
Sqlca.commit();
} catch (JBOException e) {
e.printStackTrace();
}
try {
Sqlca.disConnect();
} catch (JBOException e) {
e.printStackTrace();
}
}
}
}
}

View File

@ -3,18 +3,17 @@ package com.tenwa.voucher.CreateVoucherProcess;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import com.amarsoft.are.jbo.JBOException;
import com.amarsoft.awe.util.SqlObject;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.flow.util.FlowUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 定时任务生成卡扣租金及逾期利息凭证
* @author xiezhiwen
*/
public class InsertVoucherRentIncome {
private static final Logger logger = LoggerFactory.getLogger(InsertVoucherRentIncome.class);
@ -37,64 +36,114 @@ public class InsertVoucherRentIncome {
Transaction Sqlca =null;
try {
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
int a=0;
int b=0;
int c=0;
/**
* 查询数据, 判断是否需要执行插入中间表---改SQL别跨行
*/
// 查询是否有当月的, 未生成凭证的数据(卡扣)
logger.info("InsertVoucherRentIncome 20210906 新增fc_yc_overdue_repay_plan联表查询代码【开始】");
String sqls1="SELECT LRI.RENT FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRP.ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRP.ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND LRI.RENT>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqls1="SELECT LRI.ID,LRI.RENT FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRP.ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRP.ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND LRI.RENT>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 查询跨月的, 未生成凭证的数W据(卡扣)
String sqls2="SELECT LRI.RENT FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRP.ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRP.ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND LRI.RENT>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqls2="SELECT LRI.ID,LRI.RENT FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRP.ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRP.ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND LRI.RENT>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 查询当前数据是否有逾期利息(卡扣)
String sqls3="SELECT LRI.PENALTY FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_PENALTY_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND IFNULL(LRI.PENALTY,0)>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL)";
String sqls3="SELECT LRI.ID,LRI.PENALTY FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_PENALTY_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND IFNULL(LRI.PENALTY,0)>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL)";
// 代偿反冲租金
String sqls4="SELECT LRI.RENT, LRI.ID AS F56 FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-收到代偿的租金' AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V8 ON V8.F56=LRI.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXUnionPay','TLCollect') AND IFNULL(LRI.RENT,0)>0 AND FYORP.ID IS NULL AND DDI.RENT_PLAN_ID IS NOT NULL AND V8.F56 IS NULL";
String sqls4="SELECT LRI.RENT, LRI.ID AS F56 FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE (MODULE_NAME = '代偿反冲-收到代偿的租金' OR MODULE_NAME = '代偿反冲-收到代偿的租金-微信银联') AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V8 ON V8.F56=LRI.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXUnionPay','TLCollect') AND IFNULL(LRI.RENT,0)>0 AND FYORP.ID IS NULL AND DDI.RENT_PLAN_ID IS NOT NULL AND V8.F56 IS NULL";
// 代偿反冲逾期利息
String slqs5="SELECT LRI.PENALTY, LRI.ID AS F56 FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-代偿逾期利息' AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V8 ON V8.F56=LRI.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXUnionPay','TLCollect') AND IFNULL(LRI.PENALTY,0)>0 AND FYORP.ID IS NULL AND DDI.RENT_PLAN_ID IS NOT NULL AND V8.F56 IS NULL";
String slqs5="SELECT LRI.PENALTY, LRI.ID AS F56 FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE (MODULE_NAME = '代偿反冲-代偿逾期利息' OR MODULE_NAME = '代偿反冲-代偿逾期利息-微信银联') AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V8 ON V8.F56=LRI.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXUnionPay','TLCollect') AND IFNULL(LRI.PENALTY,0)>0 AND FYORP.ID IS NULL AND DDI.RENT_PLAN_ID IS NOT NULL AND V8.F56 IS NULL";
// 代偿反冲租金微信WXPay
String sqls6="SELECT LRI.RENT, LRI.ID AS F56 FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-收到代偿的租金-微信' AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V8 ON V8.F56=LRI.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('WXPay') AND IFNULL(LRI.RENT,0)>0 AND FYORP.ID IS NULL AND DDI.RENT_PLAN_ID IS NOT NULL AND V8.F56 IS NULL";
// 代偿反冲逾期利息微信
String slqs7="SELECT LRI.PENALTY, LRI.ID AS F56 FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.PAYMENT_NUMBER=LRI.PAYMENT_NUMBER AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN ( SELECT F56 FROM VOUCHER_V8 WHERE MODULE_NAME = '代偿反冲-代偿逾期利息-微信' AND (F56 IS NOT NULL AND F56<>'') GROUP BY F56 ) V8 ON V8.F56=LRI.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('WXPay') AND IFNULL(LRI.PENALTY,0)>0 AND FYORP.ID IS NULL AND DDI.RENT_PLAN_ID IS NOT NULL AND V8.F56 IS NULL";
/**
* 将数据插入中间表的SQL
* 根据查询语句判断, 有值才执行插入SQL
*/
String insertSql="";
String ID="";
String F3="";
SqlObject sqlObj=null;
// 未逾期及逾期未过月(卡扣)
List<Map<String,String>> dataList1=DataOperatorUtil.getDataBySql(Sqlca, sqls1, null);
if(dataList1 != null && !dataList1.isEmpty()) {
for(int i=0; i<dataList1.size(); i++) {
F3="";
ID="";
try {
F3="k"+FlowUtil.getVoucher_Number(Sqlca);
} catch (Exception e) {
e.printStackTrace();
continue;
}
try {
ID = dataList1.get(i).get("ID");
insertSql="INSERT INTO LV_RENT_INCOME ( SELECT REPLACE(UUID(),'-',''), '"+F3+"', CIF.CUSTOMER_NUM, CIF.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, LRP.ID, LRI.HIRE_DATE, LRP.PLAN_LIST, LRI.RENT, LRI.CORPUS, LRI.INTEREST, 0.00, LRI.OWN_BANK, LRI.OWN_ACCOUNT, LRI.OWN_NUMBER, LRI.EBANK_NUMBER, LRI.CARDDEDUCT_ID, LRI.ACCOUNTING_DATE, LRI.CHARGE_WAY AS COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM, LRI.ID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRI.PLAN_ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LRI.ID='"+ID+"' AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) )";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
System.out.println("本次当月需生成卡扣租金凭证数据:"+dataList1.size()+"");
}
// 逾期过月(卡扣)
List<Map<String,String>> dataList2=DataOperatorUtil.getDataBySql(Sqlca, sqls2, null);
if(dataList2 != null && !dataList2.isEmpty()) {
for(int i=0; i<dataList2.size(); i++) {
F3="";
ID="";
try {
F3="k"+FlowUtil.getVoucher_Number(Sqlca);
} catch (Exception e) {
e.printStackTrace();
continue;
}
try {
ID = dataList2.get(i).get("ID");
insertSql="INSERT INTO LV_RENT_INCOME2 ( SELECT REPLACE(UUID(),'-',''), '"+F3+"', CIF.CUSTOMER_NUM, CIF.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, LRP.ID, LRI.HIRE_DATE, LRP.PLAN_LIST, LRI.RENT, LRI.CORPUS, LRI.INTEREST, 0.00, LRI.OWN_BANK, LRI.OWN_ACCOUNT, LRI.OWN_NUMBER, LRI.EBANK_NUMBER, LRI.CARDDEDUCT_ID, LRI.ACCOUNTING_DATE, LRI.CHARGE_WAY AS COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM, LRI.ID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRI.PLAN_ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LRI.ID='"+ID+"' AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) )";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
System.out.println("本次跨月需生成卡扣租金凭证数据:"+dataList2.size()+"");
}
// 逾期利息(卡扣)
List<Map<String,String>> dataList3=DataOperatorUtil.getDataBySql(Sqlca, sqls3, null);
if(dataList3 != null && !dataList3.isEmpty()) {
for(int i=0; i<dataList3.size(); i++) {
F3="";
ID="";
try {
F3="k"+FlowUtil.getVoucher_Number(Sqlca);
} catch (Exception e) {
e.printStackTrace();
continue;
}
try {
ID = dataList3.get(i).get("ID");
insertSql="INSERT INTO LV_PENALTY_INCOME ( SELECT REPLACE(UUID(),'-',''), '"+F3+"', CIF.CUSTOMER_NUM, CIF.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, LRP.ID, LRI.HIRE_DATE, LRP.PLAN_LIST, 0.00, 0.00, 0.00, LRI.PENALTY, LRI.OWN_BANK, LRI.OWN_ACCOUNT, LRI.OWN_NUMBER, LRI.EBANK_NUMBER, LRI.CARDDEDUCT_ID, LRI.ACCOUNTING_DATE, LRI.CHARGE_WAY AS COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM, LRI.ID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_PENALTY_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID WHERE LRI.ID='"+ID+"' AND (LV1.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) )";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
System.out.println("本次需生成卡扣逾期利息凭证数据:"+dataList3.size()+"");
}
List<Map<String,String>> dataList4=DataOperatorUtil.getDataBySql(Sqlca, sqls4, null);
List<Map<String,String>> dataList5=DataOperatorUtil.getDataBySql(Sqlca, slqs5, null);
List<Map<String,String>> dataList6=DataOperatorUtil.getDataBySql(Sqlca, sqls6, null);
List<Map<String,String>> dataList7=DataOperatorUtil.getDataBySql(Sqlca, slqs7, null);
logger.info("InsertVoucherRentIncome 20210906 新增fc_yc_overdue_repay_plan联表查询代码【结束】");
/**
* 将数据插入中间表的SQL
*/
// 未逾期及逾期未过月(卡扣)
String sql1="INSERT INTO LV_RENT_INCOME ( SELECT REPLACE(UUID(),'-',''), CONCAT('k',GETSERIALNUMBER('凭证号')), CIF.CUSTOMER_NUM, CIF.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, LRP.ID, LRI.HIRE_DATE, LRP.PLAN_LIST, LRI.RENT, LRI.CORPUS, LRI.INTEREST, 0.00, LRI.OWN_BANK, LRI.OWN_ACCOUNT, LRI.OWN_NUMBER, LRI.EBANK_NUMBER, LRI.CARDDEDUCT_ID, LRI.ACCOUNTING_DATE, LRI.CHARGE_WAY AS COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM, LRI.ID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRI.PLAN_ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND LRI.RENT>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') )";
// 逾期过月(卡扣)
String sql2="INSERT INTO LV_RENT_INCOME2 ( SELECT REPLACE(UUID(),'-',''), CONCAT('k',GETSERIALNUMBER('凭证号')), CIF.CUSTOMER_NUM, CIF.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, LRP.ID, LRI.HIRE_DATE, LRP.PLAN_LIST, LRI.RENT, LRI.CORPUS, LRI.INTEREST, 0.00, LRI.OWN_BANK, LRI.OWN_ACCOUNT, LRI.OWN_NUMBER, LRI.EBANK_NUMBER, LRI.CARDDEDUCT_ID, LRI.ACCOUNTING_DATE, LRI.CHARGE_WAY AS COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM, LRI.ID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_RENT_INCOME2 GROUP BY INCOME_ID, LRI_ID ) LV2 ON LV2.INCOME_ID=LRI.PLAN_ID AND LV2.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND LRI.RENT>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND LV2.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') )";
// 逾期利息(卡扣)
String sql3="INSERT INTO LV_PENALTY_INCOME ( SELECT REPLACE(UUID(),'-',''), CONCAT('k',GETSERIALNUMBER('凭证号')), CIF.CUSTOMER_NUM, CIF.CUSTOMERNAME, LCI.ID, LCI.CONTRACT_NUMBER, LRP.ID, LRI.HIRE_DATE, LRP.PLAN_LIST, 0.00, 0.00, 0.00, LRI.PENALTY, LRI.OWN_BANK, LRI.OWN_ACCOUNT, LRI.OWN_NUMBER, LRI.EBANK_NUMBER, LRI.CARDDEDUCT_ID, LRI.ACCOUNTING_DATE, LRI.CHARGE_WAY AS COLLECT_STATUS, LCI.BUSINESSTYPE, LCI.LEAS_FORM, LRI.ID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRI.CONTRACT_ID AND LRP.PLAN_LIST=LRI.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRP.CONTRACT_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID=LCI.ID AND LUL.IS_MAIN='Y' LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID=LUL.CUSTOMER_ID LEFT JOIN ( SELECT INCOME_ID, LRI_ID FROM LV_PENALTY_INCOME GROUP BY INCOME_ID, LRI_ID ) LV1 ON LV1.INCOME_ID=LRI.PLAN_ID AND LV1.LRI_ID=LRI.ID LEFT JOIN ( SELECT RENT_PLAN_ID FROM D_DEPOSITRETURN_INFO WHERE MONEY_TYPE='bondRepay' AND IFNULL(PENALTY,0)>0 GROUP BY RENT_PLAN_ID ) DDI ON DDI.RENT_PLAN_ID=LRP.ID LEFT JOIN FC_YC_OVERDUE_REPAY_PLAN FYORP ON FYORP.RENT_PLAN_ID=LRI.PLAN_ID WHERE DATE_FORMAT(LRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LRI.CHARGE_WAY IN ('AutoBuckle','WXPay','WXUnionPay','TLCollect') AND IFNULL(LRI.PENALTY,0)>0 AND FYORP.ID IS NULL AND (LV1.INCOME_ID IS NULL AND DDI.RENT_PLAN_ID IS NULL) )";
/**
* 根据查询语句判断, 有值才执行插入SQL
*/
if(dataList1 != null && !dataList1.isEmpty()) {
SqlObject sqlss1 = new SqlObject(sql1);
a = Sqlca.executeSQL(sqlss1);
System.out.println("本次当月需生成卡扣租金凭证数据:"+a+"");
}
if(dataList2 != null && !dataList2.isEmpty()) {
SqlObject sqlss2 = new SqlObject(sql2);
b = Sqlca.executeSQL(sqlss2);
System.out.println("本次跨月需生成卡扣租金凭证数据:"+b+"");
}
if(dataList3 != null && !dataList3.isEmpty()) {
SqlObject sqlss3 = new SqlObject(sql3);
c = Sqlca.executeSQL(sqlss3);
System.out.println("本次需生成卡扣逾期利息凭证数据:"+c+"");
}
Sqlca.commit();
/**
@ -102,6 +151,7 @@ public class InsertVoucherRentIncome {
*/
CreateVoucherRedCompensatory cvrc = new CreateVoucherRedCompensatory();
List<String> list = new ArrayList<String>();
for (Map<String, String> map1 : dataList4) {
if(!list.contains(map1.get("F56"))){
list.add(map1.get("F56"));
@ -179,166 +229,260 @@ public class InsertVoucherRentIncome {
* 汽车回租-卡扣
*/
// 当月的租金(卡扣)-(汽车回租)
String sqlqh1="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlqh1="SELECT LVRI.ID FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 本月以前的租金(卡扣)-(汽车回租)
String sqlqh2="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlqh2="SELECT LVRI.ID FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 逾期利息(卡扣)-(汽车回租)
String sqlqh3="SELECT LVRI.PENALTY, LVRI.INCOME_ID AS F58 FROM LV_PENALTY_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL";
String sqlqh3="SELECT LVRI.ID FROM LV_PENALTY_INCOME LVRI LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL";
/**
* 汽车直租-卡扣
*/
// 当月的租金(卡扣)-(汽车直租)
String sqlqz1="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='01' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlqz1="SELECT LVRI.ID FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='01' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 本月以前的租金(卡扣)-(汽车直租)
String sqlqz2="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='01' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlqz2="SELECT LVRI.ID FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='01' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 逾期利息(卡扣)-(汽车直租)
String sqlqz3="SELECT LVRI.PENALTY, LVRI.INCOME_ID AS F58 FROM LV_PENALTY_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='01' AND V8.F58 IS NULL";
String sqlqz3="SELECT LVRI.ID FROM LV_PENALTY_INCOME LVRI LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='01' AND V8.F58 IS NULL";
/**
* 汽车回租-微信
*/
// 当月的租金(微信)-(汽车回租)
String sqlWh1="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlWh1="SELECT LVRI.ID FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 本月以前的租金(微信)-(汽车回租)
String sqlWh2="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlWh2="SELECT LVRI.ID FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 逾期利息(微信)-(汽车回租)
String sqlWh3="SELECT LVRI.PENALTY, LVRI.INCOME_ID AS F58 FROM LV_PENALTY_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL";
String sqlWh3="SELECT LVRI.ID FROM LV_PENALTY_INCOME LVRI LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL";
/**
* 汽车回租-微信银联
*/
// 当月的租金(微信)-(汽车直租)
String sqlWYh1="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlWYh1="SELECT LVRI.ID FROM LV_RENT_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')=DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 本月以前的租金(微信)-(汽车直租)
String sqlWYh2="SELECT LVRI.RENT, LVRI.INCOME_ID AS F58 FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
String sqlWYh2="SELECT LVRI.ID FROM LV_RENT_INCOME2 LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.RENT>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL AND DATE_FORMAT(NOW(),'%Y-%m')<>DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m')";
// 逾期利息(微信)-(汽车直租)
String sqlWYh3="SELECT LVRI.PENALTY, LVRI.INCOME_ID AS F58 FROM LV_PENALTY_INCOME LVRI LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LVRI.CONTRACT_ID AND LRP.ID=LVRI.INCOME_ID LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL";
String sqlWYh3="SELECT LVRI.ID FROM LV_PENALTY_INCOME LVRI LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.PENALTY>0 AND LVRI.BUSINESSTYPE='1' AND LVRI.LEAS_FORM='02' AND V8.F58 IS NULL";
/**
* 根据查询语句判断, 有值才执行插入SQL
* 汽车回租-卡扣
*/
String insertSql="";
SqlObject sqlObj=null;
String ID="";
// 收到的租金--卡扣-当月的-(汽车回租)
List<Map<String,String>> dataListqh1=DataOperatorUtil.getDataBySql(Sqlca, sqlqh1, null);
if(dataListqh1 != null && !dataListqh1.isEmpty()) {
for(int i=0; i<dataListqh1.size(); i++) {
ID="";
try {
ID = dataListqh1.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2018082100000142') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 收到的租金--卡扣-跨月的-(汽车回租)
List<Map<String,String>> dataListqh2=DataOperatorUtil.getDataBySql(Sqlca, sqlqh2, null);
if(dataListqh2 != null && !dataListqh2.isEmpty()) {
for(int i=0; i<dataListqh2.size(); i++) {
ID="";
try {
ID = dataListqh2.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2018082100000143') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
//收到的逾期利息--卡扣-(汽车回租)
List<Map<String,String>> dataListqh3=DataOperatorUtil.getDataBySql(Sqlca, sqlqh3, null);
if(dataListqh3 != null && !dataListqh3.isEmpty()) {
for(int i=0; i<dataListqh3.size(); i++) {
ID="";
try {
ID = dataListqh3.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-卡扣-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2018082100000144') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
/**
* 汽车直租-卡扣
*/
// 收到的租金--卡扣-当月的-(汽车直租)
List<Map<String,String>> dataListqz1= DataOperatorUtil.getDataBySql(Sqlca, sqlqz1, null);
if(dataListqz1 != null && !dataListqz1.isEmpty()) {
for(int i=0; i<dataListqz1.size(); i++) {
ID="";
try {
ID = dataListqz1.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='3' THEN (LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='4' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='5' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='6' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='7' THEN ((LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) +(LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'利息',LCCT.START_DATE),2))) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='7' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='7' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='7' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='6' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='7' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000008') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 收到的租金--卡扣-跨月的-(汽车直租)
List<Map<String,String>> dataListqz2= DataOperatorUtil.getDataBySql(Sqlca, sqlqz2, null);
if(dataListqz2 != null && !dataListqz2.isEmpty()) {
for(int i=0; i<dataListqz2.size(); i++) {
ID="";
try {
ID = dataListqz2.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000009') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
List<Map<String,String>> dataListqz3= DataOperatorUtil.getDataBySql(Sqlca, sqlqz3, null);
//收到的逾期利息--卡扣-(汽车直租)
if(dataListqz3 != null && !dataListqz3.isEmpty()) {
for(int i=0; i<dataListqz3.size(); i++) {
ID="";
try {
ID = dataListqz3.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-卡扣-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000007') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
/**
* 汽车回租-微信
*/
// 收到的租金--卡扣-当月的-(汽车回租)
List<Map<String,String>> dataListWh1=DataOperatorUtil.getDataBySql(Sqlca, sqlWh1, null);
if(dataListWh1 != null && !dataListWh1.isEmpty()) {
for(int i=0; i<dataListWh1.size(); i++) {
ID="";
try {
ID = dataListWh1.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信-',LVRI.PLAN_LIST) ELSE '收到的租金-微信' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '北京安鹏昌达资产管理有限公司' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN '807001002013' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120900000160') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 收到的租金--卡扣-跨月的-(汽车回租)
List<Map<String,String>> dataListWh2=DataOperatorUtil.getDataBySql(Sqlca, sqlWh2, null);
if(dataListWh2 != null && !dataListWh2.isEmpty()) {
for(int i=0; i<dataListWh2.size(); i++) {
ID="";
try {
ID = dataListWh2.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信-',LVRI.PLAN_LIST) ELSE '收到的租金-微信' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '北京安鹏昌达资产管理有限公司' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN '807001002013' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120900000161') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
//收到的逾期利息--卡扣-(汽车回租)
List<Map<String,String>> dataListWh3=DataOperatorUtil.getDataBySql(Sqlca, sqlWh3, null);
if(dataListWh3 != null && !dataListWh3.isEmpty()) {
for(int i=0; i<dataListWh3.size(); i++) {
ID="";
try {
ID = dataListWh3.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-微信-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-微信' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '北京安鹏昌达资产管理有限公司' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN '807001002013' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120900000159') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
/**
* 汽车直租-微信
*/
// 收到的租金--卡扣-当月的-(汽车回租)
List<Map<String,String>> dataListWYh1= DataOperatorUtil.getDataBySql(Sqlca, sqlWYh1, null);
List<Map<String,String>> dataListWYh2= DataOperatorUtil.getDataBySql(Sqlca, sqlWYh2, null);
List<Map<String,String>> dataListWYh3= DataOperatorUtil.getDataBySql(Sqlca, sqlWYh3, null);
/**
* 汽车类-回租-卡扣
*/
// 收到的租金--卡扣-当月的-(汽车回租)
String sql_whereqh1 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2018082100000142') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
// 收到的租金--卡扣-跨月的-(汽车回租)
String sql_whereqh2 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2018082100000143') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
//收到的逾期利息--卡扣-(汽车回租)
String sql_whereqh3 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-卡扣-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2018082100000144') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.PENALTY>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
/**
* 汽车类-直租-卡扣
*/
// 收到的租金--卡扣-当月的-(汽车直租)
String sql_whereqz1 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='3' THEN (LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='4' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='5' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='6' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='7' THEN ((LVRI.CORPUS-ROUND(LVRI.CORPUS/GETTAX(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) +(LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'利息',LCCT.START_DATE),2))) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='7' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='7' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='7' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='6' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='7' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000008') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='01' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
// 收到的租金--卡扣-跨月的-(汽车直租)
String sql_whereqz2 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-卡扣-',LVRI.PLAN_LIST) ELSE '收到的租金-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000009') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.RENT>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='01' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
//收到的逾期利息--卡扣-(汽车直租)
String sql_whereqz3 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-卡扣-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-卡扣' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019070100000007') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(卡扣)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS IN ('AutoBuckle','TLCollect') AND LVRI.PENALTY>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='01' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
/**
* 汽车类-回租-微信
*/
// 收到的租金--卡扣-当月的-(汽车回租)
String sql_whereWh1 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信-',LVRI.PLAN_LIST) ELSE '收到的租金-微信' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '北京安鹏昌达资产管理有限公司' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN '807001002013' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120900000160') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND LVRI.RENT>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
// 收到的租金--卡扣-跨月的-(汽车回租)
String sql_whereWh2 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信-',LVRI.PLAN_LIST) ELSE '收到的租金-微信' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '北京安鹏昌达资产管理有限公司' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN '807001002013' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120900000161') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND IFNULL(LVRI.RENT,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL AND LVRI.RENT>0 ORDER BY LVRI.VOUCHER_F3";
//收到的逾期利息--卡扣-(汽车回租)
String sql_whereWh3 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-微信-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-微信' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '北京安鹏昌达资产管理有限公司' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN '807001002013' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120900000159') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXPay' AND IFNULL(LVRI.PENALTY,0)>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
/**
* 汽车类-回租-微信银联
*/
// 收到的租金--卡扣-当月的-(汽车回租)
String sql_whereWYh1 = "INSERT INTO VOUCHER_V8 ( ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(), '-', '') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR( CASE WHEN ( LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE = '' ) THEN DATE_FORMAT(NOW(), '%Y/%m/%d') ELSE DATE_FORMAT( LVRI.ACCOUNTING_DATE, '%Y/%m/%d' ) END, 1, 4 ) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT( '收到的租金-微信银联-', LVRI.PLAN_LIST ) ELSE '收到的租金-微信银联' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER = '1' THEN LVRI.RENT WHEN LV.SORT_NUMBER = '2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER = '3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER = '4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER = '5' THEN ROUND( LVRI.INTEREST / GETTAX ( LCI.LEAS_FORM, '租息', LCCT.START_DATE ), 2 ) WHEN LV.SORT_NUMBER = '6' THEN ( LVRI.INTEREST - ROUND( LVRI.INTEREST / GETTAX ( LCI.LEAS_FORM, '租息', LCCT.START_DATE ), 2 ) ) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN ( LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE = '' ) THEN DATE_FORMAT(NOW(), '%Y/%m/%d') ELSE DATE_FORMAT( LVRI.ACCOUNTING_DATE, '%Y/%m/%d' ) END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR( CASE WHEN ( LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE = '' ) THEN DATE_FORMAT(NOW(), '%Y/%m/%d') ELSE DATE_FORMAT( LVRI.ACCOUNTING_DATE, '%Y/%m/%d' ) END, 1, 4 ) AS F51, SUBSTR( CASE WHEN ( LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE = '' ) THEN DATE_FORMAT(NOW(), '%Y/%m/%d') ELSE DATE_FORMAT( LVRI.ACCOUNTING_DATE, '%Y/%m/%d' ) END, 6, 2 ) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER = '1' OR LV.SORT_NUMBER = '6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER = '1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER = '6' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER = '1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER = '6' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER = '5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER = '6' THEN (SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER = ROUND( ( GETTAX ( LCI.LEAS_FORM, '租息', LCCT.START_DATE ) - 1 ) * 100, 0 )) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION = '1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER) OI ON OI.OWN_NAME = LCI.SUBJECTNAME LEFT JOIN (SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID = LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID = LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120500000153')) LV ON LV.PROJ_TYPE = LCI.LEAS_FORM LEFT JOIN (SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58,F56) V8 ON V8.F58 = LVRI.INCOME_ID AND V8.F56 = LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE, '%Y/%m/%d') > DATE_FORMAT('2022-02-22', '%Y/%m/%d') AND LVRI.COLLECT_STATUS = 'WXUnionPay' AND IFNULL(LVRI.RENT, 0) > 0 AND LCI.BUSINESSTYPE = '1' AND LCI.LEAS_FORM = '02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
// 收到的租金--卡扣-跨月的-(汽车回租)
String sql_whereWYh2 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信银联-',LVRI.PLAN_LIST) ELSE '收到的租金-微信银联' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120500000154') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.RENT>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
//收到的逾期利息--卡扣-(汽车回租)
String sql_whereWYh3 = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-微信银联-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-微信银联' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120500000155') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE DATE_FORMAT(LVRI.HIRE_DATE,'%Y/%m/%d')>DATE_FORMAT('2022-02-22','%Y/%m/%d') AND LVRI.COLLECT_STATUS='WXUnionPay' AND LVRI.PENALTY>0 AND LCI.BUSINESSTYPE='1' AND LCI.LEAS_FORM='02' AND V8.F58 IS NULL ORDER BY LVRI.VOUCHER_F3";
/**
* 根据查询语句判断, 有值才执行插入SQL
*/
/**
* 汽车回租-卡扣
*/
if(dataListqh1 != null && !dataListqh1.isEmpty()) {
SqlObject sqlsqh1 = new SqlObject(sql_whereqh1);
Sqlca.executeSQL(sqlsqh1);
}
if(dataListqh2 != null && !dataListqh2.isEmpty()) {
SqlObject sqlsqh2 = new SqlObject(sql_whereqh2);
Sqlca.executeSQL(sqlsqh2);
}
if(dataListqh3 != null && !dataListqh3.isEmpty()) {
SqlObject sqlsqh3 = new SqlObject(sql_whereqh3);
Sqlca.executeSQL(sqlsqh3);
}
/**
* 汽车直租-卡扣
*/
if(dataListqz1 != null && !dataListqz1.isEmpty()) {
SqlObject sqlsqz1 = new SqlObject(sql_whereqz1);
Sqlca.executeSQL(sqlsqz1);
}
if(dataListqz2 != null && !dataListqz2.isEmpty()) {
SqlObject sqlsqz2 = new SqlObject(sql_whereqz2);
Sqlca.executeSQL(sqlsqz2);
}
if(dataListqz3 != null && !dataListqz3.isEmpty()) {
SqlObject sqlsqz3 = new SqlObject(sql_whereqz3);
Sqlca.executeSQL(sqlsqz3);
}
/**
* 汽车回租-微信
*/
if(dataListWh1 != null && !dataListWh1.isEmpty()) {
SqlObject sqlsWh1 = new SqlObject(sql_whereWh1);
Sqlca.executeSQL(sqlsWh1);
}
if(dataListWh2 != null && !dataListWh2.isEmpty()) {
SqlObject sqlsWh2 = new SqlObject(sql_whereWh2);
Sqlca.executeSQL(sqlsWh2);
}
if(dataListWh3 != null && !dataListWh3.isEmpty()) {
SqlObject sqlsWh3 = new SqlObject(sql_whereWh3);
Sqlca.executeSQL(sqlsWh3);
}
/**
* 汽车回租-微信银联
*/
if(dataListWYh1 != null && !dataListWYh1.isEmpty()) {
SqlObject sqlsWYh1 = new SqlObject(sql_whereWYh1);
Sqlca.executeSQL(sqlsWYh1);
for(int i=0; i<dataListWYh1.size(); i++) {
ID="";
try {
ID = dataListWYh1.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信银联-',LVRI.PLAN_LIST) ELSE '收到的租金-微信银联' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT WHEN LV.SORT_NUMBER='2' THEN LVRI.INTEREST ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='3' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='4' THEN LVRI.INTEREST WHEN LV.SORT_NUMBER='5' THEN ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='6' THEN (LVRI.INTEREST-ROUND(LVRI.INTEREST/GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' OR LV.SORT_NUMBER='6' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='6' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='5' THEN '0604' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='6' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120500000153') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
// 收到的租金--卡扣-跨月的-(汽车回租)
List<Map<String,String>> dataListWYh2= DataOperatorUtil.getDataBySql(Sqlca, sqlWYh2, null);
if(dataListWYh2 != null && !dataListWYh2.isEmpty()) {
SqlObject sqlsWYh2 = new SqlObject(sql_whereWYh2);
Sqlca.executeSQL(sqlsWYh2);
for(int i=0; i<dataListWYh2.size(); i++) {
ID="";
try {
ID = dataListWYh2.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的租金-微信银联-',LVRI.PLAN_LIST) ELSE '收到的租金-微信银联' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.RENT ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN LVRI.CORPUS WHEN LV.SORT_NUMBER='3' THEN LVRI.INTEREST ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='1' THEN '' ELSE LCI.CONTRACT_NUMBER END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' ELSE LVRI.CUST_ID END AS F65, '' AS F73, '' AS F74, '' AS F75, '' AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_RENT_INCOME2 LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120500000154') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%-收到的租金(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
//收到的逾期利息--卡扣-(汽车回租)
List<Map<String,String>> dataListWYh3= DataOperatorUtil.getDataBySql(Sqlca, sqlWYh3, null);
if(dataListWYh3 != null && !dataListWYh3.isEmpty()) {
SqlObject sqlsWYh3 = new SqlObject(sql_whereWYh3);
Sqlca.executeSQL(sqlsWYh3);
for(int i=0; i<dataListWYh3.size(); i++) {
ID="";
try {
ID = dataListWYh3.get(i).get("ID");
insertSql = "INSERT INTO VOUCHER_V8 (ID, EVIDENCE_MESSAGE, PERIODYEAR, F15, F2, F3, F5, F6, F7, F8, F12, F1, F49, F50, F51, F52, F56, F59, F60, F61, F62, F65, F73, F74, F75, F76, V8_STATUS, GENERATE_DATE, V8_FLAG, MODULE_NAME, ENTRYDC, INPUTUSERID, F58, F67, F47, F48 ) SELECT REPLACE(UUID(),'-','') AS ID, '凭证输出' AS EVIDENCE_MESSAGE, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS PERIODYEAR, LVRI.HIRE_DATE AS F15, LV.SUBJECTS_CODE AS F2, LVRI.VOUCHER_F3 AS F3, CASE WHEN LVRI.PLAN_LIST IS NOT NULL THEN CONCAT('收到的逾期利息-微信银联-',LVRI.PLAN_LIST) ELSE '收到的逾期利息-微信银联' END AS F5, LV.LOAN_SUBJECT AS F6, CASE WHEN LV.SORT_NUMBER='1' THEN LVRI.PENALTY ELSE 0.00 END AS F7, CASE WHEN LV.SORT_NUMBER='2' THEN ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) WHEN LV.SORT_NUMBER='3' THEN LVRI.PENALTY-(ROUND(LVRI.PENALTY/GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)) ELSE 0.00 END AS F8, '定时任务-每天生成租金实收凭证' AS F12, CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END AS F1, LCI.SUBJECTID AS F49, LCI.SUBJECTNAME AS F50, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,1,4) AS F51, SUBSTR(CASE WHEN (LVRI.ACCOUNTING_DATE IS NULL OR LVRI.ACCOUNTING_DATE='') THEN DATE_FORMAT(NOW(),'%Y/%m/%d') ELSE DATE_FORMAT(LVRI.ACCOUNTING_DATE,'%Y/%m/%d') END,6,2) AS F52, LVRI.LRI_ID AS F56, LV.SORT_NUMBER AS F59, CASE WHEN LV.SORT_NUMBER='2' THEN LCI.CONTRACT_NUMBER ELSE '' END AS F60, CASE WHEN LV.SORT_NUMBER='1' THEN '汽车C端待查客户' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_NAME END AS F61, LV.LOAN_SUBJECT AS F62, CASE WHEN LV.SORT_NUMBER='1' THEN 'APZL00000000DC' WHEN LV.SORT_NUMBER='3' THEN '' ELSE LVRI.CUST_ID END AS F65, CASE WHEN LV.SORT_NUMBER='2' THEN '0603' ELSE '' END AS F73, '' AS F74, '' AS F75, CASE WHEN LV.SORT_NUMBER='3' THEN ( SELECT TAX_CODES FROM TAX_CODE WHERE TAX_NUMBER=ROUND((GETTAX(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) ) ELSE '' END AS F76, '已完整' AS V8_STATUS, DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS GENERATE_DATE, '0' AS V8_FLAG, LV.MODULAR_NUMBER AS MODULE_NAME, CASE WHEN LV.LOAN_DIRECTION='1' THEN '1' ELSE '-1' END AS ENTRYDC, 'admin' AS INPUTUSERID, LVRI.INCOME_ID AS F58, LCI.LEAS_FORM AS F67, LCI.CONTRACT_NUMBER, OI.OWN_NUMBER FROM LV_PENALTY_INCOME LVRI LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LVRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN ( SELECT OWN_NUMBER, MAX(OWN_NAME) AS OWN_NAME FROM OWN_INFO GROUP BY OWN_NUMBER ) OI ON OI.OWN_NAME=LCI.SUBJECTNAME LEFT JOIN ( SELECT LVC.PROJ_TYPE, LVL.ID, LVL.LOAN_DIRECTION, LVC.OWNED_COMPANY, LVL.SORT_NUMBER, LVL.LOAN_SUBJECT, LVC.MODULAR_NUMBER, LSC.SUBJECTS_CODE FROM LV_VOUCHER_CONFIG LVC LEFT JOIN LV_VOUCHER_LOAN LVL ON LVL.VOUCHER_ID=LVC.ID LEFT JOIN LV_STACTS_CONFIG LSC ON LSC.ID=LVL.LOAN_SUBJECT WHERE LVC.VOUCHER_NO IN ('PZ2019120500000155') ) LV ON LV.PROJ_TYPE=LCI.LEAS_FORM LEFT JOIN ( SELECT F58, F56 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%收到的逾期利息(微信银联)%' AND F58 IS NOT NULL AND F56 IS NOT NULL GROUP BY F58, F56 ) V8 ON V8.F58=LVRI.INCOME_ID AND V8.F56=LVRI.LRI_ID WHERE LVRI.ID='"+ID+"' AND V8.F58 IS NULL";
sqlObj = new SqlObject(insertSql);
Sqlca.executeSQL(sqlObj);
Sqlca.commit();
} catch (Exception e) {
Sqlca.rollback();
e.printStackTrace();
}
}
}
Sqlca.commit();
System.out.println("*******************merge20210906****************************************");