三期相关代码
This commit is contained in:
parent
57e30374af
commit
2a974fa3b8
@ -4,17 +4,19 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import jbo.app.tenwa.customer.CUSTOMER_LIST;
|
||||
import jbo.voucher.LV_VOUCHER_CONFIG;
|
||||
import jbo.voucher.TAX_CODE;
|
||||
|
||||
import com.amarsoft.app.util.ProductParamUtil;
|
||||
import com.amarsoft.are.jbo.BizObject;
|
||||
import com.amarsoft.are.jbo.JBOFactory;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
|
||||
import com.itextpdf.text.log.SysoCounter;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
import com.tenwa.flow.baseBussion.BaseBussiness;
|
||||
import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
|
||||
|
||||
import jbo.app.tenwa.customer.CUSTOMER_LIST;
|
||||
import jbo.voucher.LV_VOUCHER_CONFIG;
|
||||
import jbo.voucher.TAX_CODE;
|
||||
/**
|
||||
* 传统实际付款后生成凭证
|
||||
* @author xiezhiwen
|
||||
@ -44,6 +46,7 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
String HANDLING_CHARGE_MONEY_NOTAX=null;// 手续费(不含税)
|
||||
String HANDLING_CHARGE_MONEY_TAX=null; // 手续费(税金)
|
||||
String OTHERS_MATH=null; // 设备款+其他-首付款-保证金-手续费
|
||||
String GPS_FEE=null; // GPS费用
|
||||
String ACCOUNT_DATE=null; // 记账日期
|
||||
String FACT_DATE=null; // 实际付款日期
|
||||
String CONTRACT_ID=null; // 合同id
|
||||
@ -60,23 +63,25 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
String TAX_NUM=null; // 银行账号
|
||||
String sql="";
|
||||
|
||||
if (("PZ2018092500000159".equals(VOUCHERNO)) || ("PZ2018092500000162".equals(VOUCHERNO))
|
||||
|| ("PZ2018092500000164".equals(VOUCHERNO)) || ("PZ2018092500000166".equals(VOUCHERNO))
|
||||
|| ("PZ2018092500000169".equals(VOUCHERNO)) || ("PZ2019071800000036".equals(VOUCHERNO))
|
||||
|| ("PZ2019071800000038".equals(VOUCHERNO)) || ("PZ2019071800000039".equals(VOUCHERNO))
|
||||
|| ("PZ2019071800000040".equals(VOUCHERNO)) || ("PZ2019071800000041".equals(VOUCHERNO))
|
||||
|| ("PZ2019071800000037".equals(VOUCHERNO))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT1.EQUIP, 0) AS EQUIP,ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS EQUIPNOTAX,(IFNULL(LFIT1.EQUIP, 0) - ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS EQUIPTAX,ROUND((ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)+IFNULL(LFIT2.OTHER_MONEY, 0)),2) AS EQUIPNOTAX_OTHER,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,IFNULL(LFIT3.FIRST_PAYMENT, 0) AS FIRST_PAYMENT,ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS FIRST_PAYMENT_NOTAX,(IFNULL(LFIT3.FIRST_PAYMENT, 0) - ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS FIRST_PAYMENT_TAX,IFNULL(LFIT4.GUARANTY, 0) AS GUARANTY,IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) AS HANDLING_CHARGE_MONEY,ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS HANDLING_CHARGE_MONEY_NOTAX,(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) - ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS HANDLING_CHARGE_MONEY_TAX,(IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - IFNULL(LFIT3.FIRST_PAYMENT, 0) - IFNULL(LFIT4.GUARANTY, 0) - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID,CONTRACT_ID) LFIT2 ON LFIT2.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT3 ON LFIT3.FLOWUNID = LFIT1.FLOWUNID AND LFIT3.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT4 ON LFIT4.FLOWUNID = LFIT1.FLOWUNID AND LFIT4.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT5 ON LFIT5.FLOWUNID = LFIT1.FLOWUNID AND LFIT5.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '2' AND LUL.IS_MAIN = 'Y' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
} else if (("PZ2019072000000077".equals(VOUCHERNO)) || ("PZ2019072000000078".equals(VOUCHERNO))
|
||||
|| ("PZ2019072000000079".equals(VOUCHERNO)) || ("PZ2019072000000080".equals(VOUCHERNO))
|
||||
|| ("PZ2019072000000081".equals(VOUCHERNO)) || ("PZ2019072200000112".equals(VOUCHERNO))
|
||||
|| ("PZ2019072200000113".equals(VOUCHERNO)) || ("PZ2019072200000114".equals(VOUCHERNO))
|
||||
|| ("PZ2019072200000115".equals(VOUCHERNO)) || ("PZ2019072200000116".equals(VOUCHERNO))
|
||||
|| ("PZ2019072200000117".equals(VOUCHERNO))) {
|
||||
sql = "SELECT ROUND((getTax (lci.LEAS_FORM,'本金',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT1.EQUIP, 0) AS EQUIP,ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS EQUIPNOTAX,(IFNULL(LFIT1.EQUIP, 0) - ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS EQUIPTAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,IFNULL(LFIT3.FIRST_PAYMENT, 0) AS FIRST_PAYMENT,ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS FIRST_PAYMENT_NOTAX,(IFNULL(LFIT3.FIRST_PAYMENT, 0) - ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS FIRST_PAYMENT_TAX,IFNULL(LFIT4.GUARANTY, 0) AS GUARANTY,IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) AS HANDLING_CHARGE_MONEY,ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS HANDLING_CHARGE_MONEY_NOTAX,(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) - ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS HANDLING_CHARGE_MONEY_TAX,(IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - IFNULL(LFIT3.FIRST_PAYMENT, 0) - IFNULL(LFIT4.GUARANTY, 0) - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID,CONTRACT_ID) LFIT2 ON LFIT2.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT3 ON LFIT3.FLOWUNID = LFIT1.FLOWUNID AND LFIT3.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT4 ON LFIT4.FLOWUNID = LFIT1.FLOWUNID AND LFIT4.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT5 ON LFIT5.FLOWUNID = LFIT1.FLOWUNID AND LFIT5.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '3' AND LUL.IS_MAIN = 'Y' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
// 传统回租
|
||||
if("PZ2018092500000159".equals(VOUCHERNO) || "PZ2018092500000162".equals(VOUCHERNO) || "PZ2018092500000164".equals(VOUCHERNO) || "PZ2018092500000166".equals(VOUCHERNO) || "PZ2019122300000165".equals(VOUCHERNO) || "PZ2018092500000169".equals(VOUCHERNO)){
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT1.EQUIP, 0) AS EQUIP,ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS EQUIPNOTAX,(IFNULL(LFIT1.EQUIP, 0) - ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS EQUIPTAX,ROUND((ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)+IFNULL(LFIT2.OTHER_MONEY, 0)),2) AS EQUIPNOTAX_OTHER,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,IFNULL(LFIT3.FIRST_PAYMENT, 0) AS FIRST_PAYMENT,ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS FIRST_PAYMENT_NOTAX,(IFNULL(LFIT3.FIRST_PAYMENT, 0) - ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS FIRST_PAYMENT_TAX,IFNULL(LFIT4.GUARANTY, 0) AS GUARANTY,IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) AS HANDLING_CHARGE_MONEY,ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS HANDLING_CHARGE_MONEY_NOTAX,(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) - ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS HANDLING_CHARGE_MONEY_TAX,(IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - IFNULL(LFIT3.FIRST_PAYMENT, 0) - IFNULL(LFIT4.GUARANTY, 0) - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID,CONTRACT_ID) LFIT2 ON LFIT2.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT3 ON LFIT3.FLOWUNID = LFIT1.FLOWUNID AND LFIT3.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT4 ON LFIT4.FLOWUNID = LFIT1.FLOWUNID AND LFIT4.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT5 ON LFIT5.FLOWUNID = LFIT1.FLOWUNID AND LFIT5.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '2' AND LUL.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
// 传统直租
|
||||
}else if("PZ2019071800000036".equals(VOUCHERNO) || "PZ2019071800000038".equals(VOUCHERNO) || "PZ2019071800000039".equals(VOUCHERNO) || "PZ2019071800000040".equals(VOUCHERNO) || "PZ2019071800000041".equals(VOUCHERNO) || "PZ2019071800000037".equals(VOUCHERNO)){
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT1.EQUIP, 0) AS EQUIP,ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS EQUIPNOTAX,(IFNULL(LFIT1.EQUIP, 0) - ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS EQUIPTAX,ROUND((ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)+IFNULL(LFIT2.OTHER_MONEY, 0)),2) AS EQUIPNOTAX_OTHER,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,IFNULL(LFIT3.FIRST_PAYMENT, 0) AS FIRST_PAYMENT,ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS FIRST_PAYMENT_NOTAX,(IFNULL(LFIT3.FIRST_PAYMENT, 0) - ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS FIRST_PAYMENT_TAX,IFNULL(LFIT4.GUARANTY, 0) AS GUARANTY,IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) AS HANDLING_CHARGE_MONEY,ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS HANDLING_CHARGE_MONEY_NOTAX,(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) - ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS HANDLING_CHARGE_MONEY_TAX,(IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - IFNULL(LFIT3.FIRST_PAYMENT, 0) - IFNULL(LFIT4.GUARANTY, 0) - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID,CONTRACT_ID) LFIT2 ON LFIT2.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT3 ON LFIT3.FLOWUNID = LFIT1.FLOWUNID AND LFIT3.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT4 ON LFIT4.FLOWUNID = LFIT1.FLOWUNID AND LFIT4.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT5 ON LFIT5.FLOWUNID = LFIT1.FLOWUNID AND LFIT5.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '2' AND LUL.IS_MAIN = 'Y' AND LCI.LEAS_FORM='01' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
// 汽车类传统-回租
|
||||
}else if("PZ2019072000000078".equals(VOUCHERNO) || "PZ2019072000000079".equals(VOUCHERNO) || "PZ2019072000000080".equals(VOUCHERNO) || "PZ2019122300000166".equals(VOUCHERNO) || "PZ2019072000000081".equals(VOUCHERNO)){
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LCCT.CLEAN_LEASE_MONEY,0) AS MONEY,CASE WHEN IFNULL(LFIT6.CONTRIBUTIVE_MONEY,0)=0 THEN IFNULL(LCCT.unite_money,0) ELSE 0 END AS INTERESTNOTAX,IFNULL(LFIT3.FIRST_PAYMENT, 0) AS FIRST_PAYMENT,ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS FIRST_PAYMENT_NOTAX,(IFNULL(LFIT3.FIRST_PAYMENT, 0) - ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS FIRST_PAYMENT_TAX,IFNULL(LFIT4.GUARANTY, 0) AS GUARANTY,IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) AS HANDLING_CHARGE_MONEY,ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS HANDLING_CHARGE_MONEY_NOTAX,(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) - ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS HANDLING_CHARGE_MONEY_TAX,(IFNULL(LCCT.CLEAN_LEASE_MONEY,0) + CASE WHEN IFNULL(LFIT6.CONTRIBUTIVE_MONEY,0)=0 THEN IFNULL(LCCT.unite_money,0) ELSE 0 END - IFNULL(LFIT3.FIRST_PAYMENT, 0) - IFNULL(LFIT4.GUARANTY, 0) - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)-IFNULL(LCCT.GPS_FEE,0)) AS OTHERS_MATH,IFNULL(LCCT.GPS_FEE,0) AS GPS_FEE,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID,CONTRACT_ID) LFIT2 ON LFIT2.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT3 ON LFIT3.FLOWUNID = LFIT1.FLOWUNID AND LFIT3.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT4 ON LFIT4.FLOWUNID = LFIT1.FLOWUNID AND LFIT4.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT5 ON LFIT5.FLOWUNID = LFIT1.FLOWUNID AND LFIT5.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS CONTRIBUTIVE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype32' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT6 ON LFIT6.FLOWUNID = LFIT1.FLOWUNID AND LFIT6.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '3' AND LUL.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
// 汽车类传统-直租
|
||||
}else if("PZ2019072200000112".equals(VOUCHERNO) || "PZ2019072200000113".equals(VOUCHERNO) || "PZ2019072200000114".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO) || "PZ2019072200000117".equals(VOUCHERNO)){
|
||||
sql="SELECT ROUND((getTax (lci.LEAS_FORM,'本金',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT1.EQUIP, 0) AS EQUIP,ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS EQUIPNOTAX,(IFNULL(LFIT1.EQUIP, 0) - ROUND(IFNULL(LFIT1.EQUIP, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS EQUIPTAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,IFNULL(LFIT3.FIRST_PAYMENT, 0) AS FIRST_PAYMENT,ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS FIRST_PAYMENT_NOTAX,(IFNULL(LFIT3.FIRST_PAYMENT, 0) - ROUND(IFNULL(LFIT3.FIRST_PAYMENT, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS FIRST_PAYMENT_TAX,IFNULL(LFIT4.GUARANTY, 0) AS GUARANTY,IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) AS HANDLING_CHARGE_MONEY,ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS HANDLING_CHARGE_MONEY_NOTAX,(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) - ROUND(IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS HANDLING_CHARGE_MONEY_TAX,(IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - IFNULL(LFIT3.FIRST_PAYMENT, 0) - IFNULL(LFIT4.GUARANTY, 0) - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID,CONTRACT_ID) LFIT2 ON LFIT2.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT3 ON LFIT3.FLOWUNID = LFIT1.FLOWUNID AND LFIT3.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT4 ON LFIT4.FLOWUNID = LFIT1.FLOWUNID AND LFIT4.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1' AND SETTLE_METHOD = 'settlemethod11' GROUP BY FLOWUNID,CONTRACT_ID) LFIT5 ON LFIT5.FLOWUNID = LFIT1.FLOWUNID AND LFIT5.CONTRACT_ID = LFIT1.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '3' AND LUL.IS_MAIN = 'Y' AND LCI.LEAS_FORM='01' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
// 放款-确认GPS收入-汽车类传统回租
|
||||
}else if("PZ2019090500000004".equals(VOUCHERNO)){
|
||||
sql="SELECT ROUND((getTax (lci.LEAS_FORM,'GPS',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LCCT.GPS_FEE,0) AS MONEY,ROUND(IFNULL(LCCT.GPS_FEE,0)/getTax(LCI.LEAS_FORM,'GPS',LCCT.START_DATE),2) AS INTERESTNOTAX,(IFNULL(LCCT.GPS_FEE,0)-ROUND(IFNULL(LCCT.GPS_FEE,0)/getTax(LCI.LEAS_FORM,'GPS',LCCT.START_DATE),2)) AS TAX,CASE WHEN DATE_FORMAT(NOW(), '%Y/%m') > DATE_FORMAT(LFIT.FACT_DATE, '%Y/%m') THEN DATE_FORMAT(LFIT.ACCOUNTING_DATE,'%Y/%m/%d') ELSE DATE_FORMAT(LFIT.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT.FACT_DATE, '%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER AS ACC_NUMBER FROM (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '3' AND LUL.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND IFNULL(LCCT.GPS_FEE,0)>0 AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
}
|
||||
|
||||
// 非差额放款
|
||||
if (("PZ2018092500000159".equals(VOUCHERNO)) || ("PZ2019071800000036".equals(VOUCHERNO)) || ("PZ2019072000000077".equals(VOUCHERNO)) || ("PZ2019072200000112".equals(VOUCHERNO))) {
|
||||
if("PZ2018092500000159".equals(VOUCHERNO) || "PZ2019071800000036".equals(VOUCHERNO) || "PZ2019072200000112".equals(VOUCHERNO)){
|
||||
sql+=" AND (IFNULL(LFIT3.FIRST_PAYMENT,0) = 0 AND IFNULL(LFIT4.GUARANTY,0) =0 AND IFNULL(LFIT5.HANDLING_CHARGE_MONEY ,0) = 0)";
|
||||
// 差额-经销商支付的预付款(首付)
|
||||
}else if("PZ2018092500000162".equals(VOUCHERNO) || "PZ2019071800000038".equals(VOUCHERNO) || "PZ2019072000000078".equals(VOUCHERNO) || "PZ2019072200000113".equals(VOUCHERNO)) {
|
||||
@ -85,19 +90,19 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
}else if("PZ2018092500000164".equals(VOUCHERNO) || "PZ2019071800000039".equals(VOUCHERNO) || "PZ2019072000000079".equals(VOUCHERNO) || "PZ2019072200000114".equals(VOUCHERNO)) {
|
||||
sql+=" AND IFNULL(LFIT4.GUARANTY,0) <> 0 ";
|
||||
// 收到客户手续费
|
||||
}else if("PZ2018092500000166".equals(VOUCHERNO) || "PZ2019071800000040".equals(VOUCHERNO) || "PZ2019071800000041".equals(VOUCHERNO) || "PZ2019072000000080".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO)) {
|
||||
}else if("PZ2018092500000166".equals(VOUCHERNO) || "PZ2019122300000165".equals(VOUCHERNO) || "PZ2019071800000040".equals(VOUCHERNO) || "PZ2019071800000041".equals(VOUCHERNO) || "PZ2019072000000080".equals(VOUCHERNO) || "PZ2019122300000166".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO)) {
|
||||
sql+=" AND IFNULL(LFIT5.HANDLING_CHARGE_MONEY ,0) <> 0 ";
|
||||
// 给经销商放款-差额放款
|
||||
} else if (("PZ2018092500000169".equals(VOUCHERNO)) || ("PZ2019072000000081".equals(VOUCHERNO)) || ("PZ2019072200000117".equals(VOUCHERNO))) {
|
||||
}else if("PZ2018092500000169".equals(VOUCHERNO) || "PZ2019072200000117".equals(VOUCHERNO)) {
|
||||
sql+=" AND (IFNULL(LFIT3.FIRST_PAYMENT,0) <> 0 OR IFNULL(LFIT4.GUARANTY,0) <> 0 OR IFNULL(LFIT5.HANDLING_CHARGE_MONEY ,0) <> 0)";
|
||||
}
|
||||
|
||||
// 手续费收入(一次性确认收入)
|
||||
if("PZ2019071800000040".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO)){
|
||||
if("PZ2019071800000040".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO) || "PZ2018092500000166".equals(VOUCHERNO) || "PZ2019072000000080".equals(VOUCHERNO)){
|
||||
sql+=" AND (lcct.HANDLING_CHARGE_MONEY_TYPE='0010' OR lcct.HANDLING_CHARGE_MONEY_TYPE IS NULL OR lcct.HANDLING_CHARGE_MONEY_TYPE='')";
|
||||
}
|
||||
// 收到手续费(按月分摊收入)
|
||||
if("PZ2019071800000041".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO)){
|
||||
if("PZ2019071800000041".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO) || "PZ2019122300000165".equals(VOUCHERNO) || "PZ2019122300000166".equals(VOUCHERNO)){
|
||||
sql+=" AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' ";
|
||||
}
|
||||
|
||||
@ -129,6 +134,7 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
HANDLING_CHARGE_MONEY_NOTAX=dataList.get(i).get("HANDLING_CHARGE_MONEY_NOTAX");// 不含税手续费
|
||||
HANDLING_CHARGE_MONEY_TAX=dataList.get(i).get("HANDLING_CHARGE_MONEY_TAX");// 手续费税金
|
||||
OTHERS_MATH=dataList.get(i).get("OTHERS_MATH");// 设备款+其他-首付款-保证金-手续费
|
||||
GPS_FEE=dataList.get(i).get("GPS_FEE"); // GPS费用
|
||||
ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE");// 会计日期
|
||||
FACT_DATE=dataList.get(i).get("FACT_DATE");// 实际付款日期
|
||||
CONTRACT_ID=dataList.get(i).get("CONTRACT_ID");// 合同id
|
||||
@ -166,6 +172,7 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
param.put("HANDLING_CHARGE_MONEY_NOTAX",HANDLING_CHARGE_MONEY_NOTAX);
|
||||
param.put("HANDLING_CHARGE_MONEY_TAX",HANDLING_CHARGE_MONEY_TAX);
|
||||
param.put("OTHERS_MATH",OTHERS_MATH);
|
||||
param.put("GPS_FEE_FINANCE",GPS_FEE);
|
||||
param.put("ACCOUNT_DATE",ACCOUNT_DATE);
|
||||
param.put("FACT_DATE",FACT_DATE);
|
||||
param.put("CONTRACT_ID",CONTRACT_ID);
|
||||
@ -187,9 +194,11 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
// 通过客户名称获取客户编码维护里面的数据, 如果有数据说明是集团内, 如果没有数据说明是集团外
|
||||
BizObject cust_list=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+CUSTOMERID+"'").getSingleResult(false);
|
||||
// 收到客户手续费
|
||||
if("PZ2018092500000166".equals(VOUCHERNO) || "PZ2019071800000040".equals(VOUCHERNO) || "PZ2019071800000041".equals(VOUCHERNO) || "PZ2019072000000080".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO)){
|
||||
if("PZ2018092500000166".equals(VOUCHERNO) || "PZ2019122300000165".equals(VOUCHERNO) || "PZ2019071800000040".equals(VOUCHERNO) || "PZ2019071800000041".equals(VOUCHERNO) || "PZ2019072000000080".equals(VOUCHERNO) || "PZ2019122300000166".equals(VOUCHERNO) || "PZ2019072200000115".equals(VOUCHERNO) || "PZ2019072200000116".equals(VOUCHERNO)){
|
||||
param.put("CASHFLOW", "");// 现金流项目
|
||||
param.put("BUSINESSTYPE", "0604");// 主营类型
|
||||
}else if("PZ2019090500000004".equals(VOUCHERNO)){
|
||||
param.put("BUSINESSTYPE", "0601");// 主营类型
|
||||
}
|
||||
|
||||
// 给供应商放款-非差额放款/给经销商放款-差额放款, 用来判断集团内外的现金流辅助项
|
||||
|
||||
@ -51,8 +51,14 @@ public class CreateVoucherCustCautionMoneyIncome extends BaseBussiness {
|
||||
map.put("FlowUnid", FlowUnid);
|
||||
map.put("FEE_TYPE", FeeType);
|
||||
|
||||
sql = "SELECT ROUND((getTax (lci.LEAS_FORM,'Áô¹º¼Û',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY, 0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'Áô¹º¼Û',lcct.start_date),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'Áô¹º¼Û',lcct.start_date),2)),0) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE != '') THEN LFIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE != '') THEN LFIT.FACT_DATE ELSE NOW() END,'%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '1' AND LUL.IS_MAIN = 'Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
|
||||
sql = "SELECT ROUND((getTax (lci.LEAS_FORM,'手续费',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY, 0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',lcct.start_date),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',lcct.start_date),2)),0) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE != '') THEN LFIT.ACCOUNTING_DATE ELSE NOW() END,'%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE != '') THEN LFIT.FACT_DATE ELSE NOW() END,'%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '1' AND LUL.IS_MAIN = 'Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
// 区分手续费是一次性还是按月分摊
|
||||
if("PZ2019121600000163".equals(VOUCHERNO)) {
|
||||
sql+=" AND (lcct.HANDLING_CHARGE_MONEY_TYPE='0010' OR lcct.HANDLING_CHARGE_MONEY_TYPE IS NULL OR lcct.HANDLING_CHARGE_MONEY_TYPE='')";
|
||||
// 按月
|
||||
}else if("PZ2019121700000164".equals(VOUCHERNO)) {
|
||||
sql+=" AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' ";
|
||||
}
|
||||
// 查询sql, 将结果集封装到list集合中
|
||||
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
|
||||
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
|
||||
@ -116,6 +122,8 @@ public class CreateVoucherCustCautionMoneyIncome extends BaseBussiness {
|
||||
param.put("BUSINESSTYPE", "0602");// 主营类型
|
||||
}else if("PZ2018072100000031".equals(VOUCHERNO) || "PZ2019070100000019".equals(VOUCHERNO)) {
|
||||
param.put("BUSINESSTYPE", "0605");// 主营类型
|
||||
}else if("PZ2019121600000163".equals(VOUCHERNO)) {
|
||||
param.put("BUSINESSTYPE", "0604");// 主营类型
|
||||
}
|
||||
// param.put("FUNDTYPE", ""); // 主营类型
|
||||
param.put("FlowUnid", FlowUnid);
|
||||
|
||||
@ -45,8 +45,8 @@ public class CreateVoucherEbankMoney {
|
||||
map.put("FLOWUNID", flowunid);
|
||||
// 回款-多余回款分解
|
||||
if("PZ2019070100000018".equals(VOUCHERNO) || "PZ2019073000000146".equals(VOUCHERNO)){
|
||||
//sql= "SELECT IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(NOW(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,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 CUSTOMERID,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 CUSTOMERNAME,LPI.BUSINESSTYPE,LE.EBANK_SN FROM (SELECT LRI.EBANK_NUMBER,MAX(LRI.CONTRACT_ID) AS CONTRACT_ID,MAX(LRIT.FLOWUNID) AS FLOWUNID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_INCOME_TEMP LRIT ON LRIT.CONTRACT_ID=LRI.CONTRACT_ID AND LRIT.PLAN_LIST=LRI.PLAN_LIST AND LRIT.HIRE_LIST=LRI.HIRE_LIST WHERE LRI.RENT > 0 GROUP BY LRI.EBANK_NUMBER)LRIT LEFT JOIN LC_EBANK LE ON LE.ID = LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LE.EBANK_SN NOT IN (SELECT MAX(F57) AS F57 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%回款-多余回款分解%' GROUP BY F3) AND LRIT.FLOWUNID = '"+flowunid+"'";
|
||||
sql= "SELECT IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(), '%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(NOW(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,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 CUSTOMERID,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 CUSTOMERNAME,LPI.BUSINESSTYPE,LE.EBANK_SN FROM (SELECT MAX(CONTRACT_ID) AS CONTRACT_ID,EBANK_NUMBER FROM LC_RENT_INCOME WHERE RENT > 0 GROUP BY EBANK_NUMBER) LRI LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID FROM LC_RENT_INCOME_TEMP GROUP BY FLOWUNID,CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID LEFT JOIN LC_EBANK LE ON LE.ID = LRI.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LE.EBANK_SN NOT IN (SELECT MAX(F57) AS F57 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%回款-多余回款分解%' GROUP BY F3) AND LRIT.FLOWUNID = '"+flowunid+"' ";
|
||||
//sql= "SELECT IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(), '%Y/%m/%d') AS ACCOUNT_DATE, DATE_FORMAT(NOW(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,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 CUSTOMERID,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 CUSTOMERNAME,LPI.BUSINESSTYPE,LE.EBANK_SN FROM (SELECT MAX(CONTRACT_ID) AS CONTRACT_ID,EBANK_NUMBER FROM LC_RENT_INCOME WHERE RENT > 0 GROUP BY EBANK_NUMBER) LRI LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID FROM LC_RENT_INCOME_TEMP GROUP BY FLOWUNID,CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID LEFT JOIN LC_EBANK LE ON LE.ID = LRI.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LE.EBANK_SN NOT IN (SELECT MAX(F57) AS F57 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%回款-多余回款分解%' GROUP BY F3) AND LRIT.FLOWUNID = '"+flowunid+"' ";
|
||||
sql= "SELECT IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(NOW(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,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 CUSTOMERID,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 CUSTOMERNAME,LPI.BUSINESSTYPE,LE.EBANK_SN FROM (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,EBANK_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY FLOWUNID,EBANK_NUMBER) LRIT LEFT JOIN LC_EBANK LE ON LE.ID = LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LE.EBANK_SN NOT IN (SELECT MAX(F57) AS F57 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%回款-多余回款分解%' GROUP BY F3) AND LRIT.FLOWUNID = '"+flowunid+"' ";
|
||||
}else if("PZ2019070100000024".equals(VOUCHERNO) || "PZ2019073000000147".equals(VOUCHERNO)){
|
||||
//sql= "SELECT -IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(NOW(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,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 CUSTOMERID,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 CUSTOMERNAME,LPI.BUSINESSTYPE,LE.EBANK_SN FROM (SELECT LRI.EBANK_NUMBER,MAX(LRI.CONTRACT_ID) AS CONTRACT_ID,MAX(LRIT.FLOWUNID) AS FLOWUNID FROM LC_RENT_INCOME LRI LEFT JOIN LC_RENT_INCOME_TEMP LRIT ON LRIT.CONTRACT_ID=LRI.CONTRACT_ID AND LRIT.PLAN_LIST=LRI.PLAN_LIST AND LRIT.HIRE_LIST=LRI.HIRE_LIST WHERE LRI.RENT < 0 GROUP BY LRI.EBANK_NUMBER)LRIT LEFT JOIN LC_EBANK LE ON LE.ID = LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LE.EBANK_SN NOT IN (SELECT MAX(F57) AS F57 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%回款反冲-多余回款分解%' GROUP BY F3) AND LRIT.FLOWUNID = '"+flowunid+"' ";
|
||||
sql= "SELECT - IFNULL(LE.MAYOPE_MONEY, 0) AS MONEY,DATE_FORMAT(NOW(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(NOW(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,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 CUSTOMERID,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 CUSTOMERNAME,LPI.BUSINESSTYPE,LE.EBANK_SN,LRIT.FLOWUNID FROM (SELECT FLOWUNID,EBANK_NUMBER,MAX(CONTRACT_ID) AS CONTRACT_ID FROM LC_RENT_INCOME_TEMP GROUP BY FLOWUNID,EBANK_NUMBER) LRIT LEFT JOIN LC_EBANK LE ON LE.ID = LRIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_UNION_LESSEE LUL ON LUL.CONTRACT_ID = LCI.ID LEFT JOIN CUSTOMER_INFO CIF ON CIF.CUSTOMERID = LUL.CUSTOMER_ID LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LUL.IS_MAIN = 'Y' AND IFNULL(LE.MAYOPE_MONEY, 0) > 0 AND LE.EBANK_SN NOT IN (SELECT MAX(F57) AS F57 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%回款反冲-多余回款分解%' GROUP BY F3) AND LRIT.FLOWUNID = '"+flowunid+"' ";
|
||||
|
||||
@ -0,0 +1,98 @@
|
||||
package com.tenwa.voucher.CreateVoucherProcess;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import jbo.voucher.LV_VOUCHER_CONFIG;
|
||||
import com.amarsoft.are.jbo.BizObject;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
|
||||
|
||||
public class CreateVoucherForOtherPay {
|
||||
public String CreateVoucher(String FlowUnid,String VOUCHERNO,String userid) throws Exception {
|
||||
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 CONTRACT_NUMBER=null;
|
||||
String leas_form=null;
|
||||
String CUSTID=null;
|
||||
String CUSTNAME=null;
|
||||
String BUSINESSTYPE=null;
|
||||
String ACC_NUMBER=null;
|
||||
|
||||
String sql="";
|
||||
param.clear();
|
||||
map.put("FlowUnid", FlowUnid);
|
||||
|
||||
// 客户多余还款退回
|
||||
if("PZ2018072100000051".equals(VOUCHERNO)) {
|
||||
sql="SELECT IFNULL(LE.RETURN_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,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,CASE WHEN LCI.LEAS_FORM IS NULL THEN '02' ELSE LCI.LEAS_FORM END AS LEAS_FORM,CASE WHEN CI.CUSTOMER_NUM IS NOT NULL THEN CI.CUSTOMER_NUM WHEN CI2.CUSTOMER_NUM IS NOT NULL THEN CI2.CUSTOMER_NUM ELSE 'APZL00000000DC' END AS CUSTOMERID,CASE WHEN CI.CUSTOMERNAME IS NOT NULL THEN CI.CUSTOMERNAME WHEN CI2.CUSTOMERNAME IS NOT NULL THEN CI2.CUSTOMERNAME ELSE 'APZL00000000DC' END AS CUSTOMERNAME,LCI.BUSINESSTYPE,LE.OWNACC_NUMBER FROM LC_EBANK_TEMP LE LEFT JOIN (SELECT EBANK_NUMBER,MAX(CONTRACT_ID) AS CONTRACT_ID FROM LC_RENT_INCOME GROUP BY EBANK_NUMBER )LRI ON LRI.EBANK_NUMBER=LE.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRI.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.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 CUSTOMER_INFO CI2 ON CI2.CUSTOMERID=LE.CUSTOMER_ID WHERE LE.FLOWUNID=:FLOWUNID";
|
||||
}
|
||||
|
||||
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
|
||||
|
||||
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
|
||||
String VOUCHER_TYPE="1";// 凭证分类 金蝶
|
||||
|
||||
for (int i=0;i<dataList.size();i++){
|
||||
MONEY=dataList.get(i).get("MONEY");
|
||||
if("".equals(MONEY)||MONEY==null) MONEY="0.00";
|
||||
double mon=Double.parseDouble(MONEY);
|
||||
if(mon>0){
|
||||
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");
|
||||
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER");
|
||||
leas_form="02";
|
||||
CUSTID=dataList.get(i).get("CUSTOMERID");
|
||||
CUSTNAME=dataList.get(i).get("CUSTOMERNAME");
|
||||
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
|
||||
ACC_NUMBER=dataList.get(i).get("OWNACC_NUMBER");
|
||||
|
||||
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("CONTRACT_NUMBER",CONTRACT_NUMBER);
|
||||
param.put("LEAS_FORM",leas_form);
|
||||
param.put("CUSTID",CUSTID);
|
||||
param.put("CUSTNAME",CUSTNAME);
|
||||
param.put("BUSINESSTYPE",BUSINESSTYPE);
|
||||
param.put("ACC_NUMBER",ACC_NUMBER);
|
||||
param.put("VOUCHERNO",VOUCHERNO);
|
||||
param.put("CASHFLOW", "11113");// 现金流项目
|
||||
param.put("FlowUnid", FlowUnid);
|
||||
|
||||
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){
|
||||
Sqlca.commit();
|
||||
}
|
||||
|
||||
String sMessage="true";
|
||||
return sMessage;
|
||||
}
|
||||
}
|
||||
@ -29,6 +29,7 @@ public class CreateVoucherLoanDistributor {
|
||||
String MONEYTAX=null;
|
||||
String GPS_FEE_FINANCE=null;
|
||||
String CAUTION_MONEY=null;
|
||||
String HANDLING_CHARGE_MONEY=null;
|
||||
String INTEREST=null;
|
||||
String FIRST_ADD_FINANCING=null;//首付款+融资额
|
||||
String FINANCING_SUB_OTHERS=null;//首付款+融资额-首付款-手续费-保证金-GPS
|
||||
@ -79,7 +80,7 @@ public class CreateVoucherLoanDistributor {
|
||||
sql="SELECT (IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.GPS_FEE, 0)) AS MONEY,ROUND((IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0)) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS MONEYNOTAX,((IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0)) - ROUND((IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS MONEYTAX,IFNULL(LRPT.INTEREST, 0) AS INTEREST,IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.PURCHASE_TAX, 0) AS PURCHASE_TAX,ROUND(IFNULL(LCCT.PURCHASE_TAX, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS PURCHASE_TAX_NOTAX,(IFNULL(LCCT.PURCHASE_TAX, 0)-ROUND(IFNULL(LCCT.PURCHASE_TAX, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS PURCHASE_TAX_TAX,IFNULL(LCCT.INSURANCE_PREMIUM, 0) AS INSURANCE_PREMIUM,ROUND(IFNULL(LCCT.INSURANCE_PREMIUM, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS INSURANCE_PREMIUM_NOTAX,(IFNULL(LCCT.INSURANCE_PREMIUM, 0)-ROUND(IFNULL(LCCT.INSURANCE_PREMIUM, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS INSURANCE_PREMIUM_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT WHERE lfit.FEE_TYPE = 'feetype10' AND LFIT.EBANK_STATUS = '05' GROUP BY FLOWUNID,CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM lc_pay_rent_plan GROUP BY CONTRACT_ID) LRPT ON LRPT.CONTRACT_ID = LFIT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.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 LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
// 购置融资租赁产-回租
|
||||
}else if("PZ2018070900000002".equals(VOUCHERNO)) {
|
||||
sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO AND LFIT.CONTRACT_ID=LFICDT.CONTRACT_ID WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.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 LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN PRD_SPECIFIC_LIBRARY PSL ON PSL.PRODUCTID=LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND (PSL.operationType <>'DYCD' OR PSL.operationType IS NULL) AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS FIRST_ADD_FINANCING,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) - IFNULL(LCCT.GPS_FEE, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,IFNULL(LCCT.HANDLING_CHARGE_MONEY,0) AS HANDLING_CHARGE_MONEY,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO AND LFIT.CONTRACT_ID=LFICDT.CONTRACT_ID WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.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 LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN PRD_SPECIFIC_LIBRARY PSL ON PSL.PRODUCTID=LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND (PSL.operationType <>'DYCD' OR PSL.operationType IS NULL) AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
// 购置融资租赁产-直租
|
||||
}else if("PZ2019070100000003".equals(VOUCHERNO)) {
|
||||
sql="SELECT ROUND(IFNULL(LCCT.EQUIP_AMT, 0) / getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE),2) AS MONEY,(IFNULL(LCCT.EQUIP_AMT, 0) - ROUND(IFNULL(LCCT.EQUIP_AMT, 0) / getTax(lci.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS MONEYTAX,IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0)-IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) - IFNULL(LCCT.CAUTION_MONEY, 0) AS FINANCING_SUB_OTHERS,IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY, 0) AS FIRST_ADD_HANDLING,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCCT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO AND LFIT.CONTRACT_ID = LFICDT.CONTRACT_ID WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.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 LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN PRD_SPECIFIC_LIBRARY PSL ON PSL.PRODUCTID = LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
@ -172,19 +173,33 @@ public class CreateVoucherLoanDistributor {
|
||||
}
|
||||
}
|
||||
}else {
|
||||
PRODUCT_ID=dataList.get(i).get("PRODUCT_ID");// 产品编号
|
||||
// 判断购置税是否参融
|
||||
String FINAN1 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "PURCHASE_TAX","FINAN");
|
||||
// 判断保险费是否参融
|
||||
String FINAN2 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "INSURANCE_PREMIUM","FINAN");
|
||||
// 判断保证金是否差额
|
||||
String isBalance1 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "HANDLING_CHARGE_MONEY","isBalance");
|
||||
// 判断手续费是否差额
|
||||
String isBalance2 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "CAUTION_MONEY","isBalance");
|
||||
MONEY=dataList.get(i).get("MONEY");
|
||||
if("PZ2018070900000002".equals(VOUCHERNO) || "PZ2018071000000005".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO)){
|
||||
MONEY=dataList.get(i).get("FIRST_ADD_FINANCING");
|
||||
}else{
|
||||
MONEY=dataList.get(i).get("MONEY");
|
||||
}else if("PZ2018071000000007".equals(VOUCHERNO) || "PZ2018071000000009".equals(VOUCHERNO)) {
|
||||
// 如果手续费是非差额放款, 购置融资租赁资产手续费取值为0,去除手续费
|
||||
if("no".equals(isBalance1)) {
|
||||
MONEY="0.00";
|
||||
}
|
||||
}
|
||||
if("".equals(MONEY)||MONEY==null) MONEY="0.00";
|
||||
double mon=Double.parseDouble(MONEY);
|
||||
if(mon>0){
|
||||
PRODUCT_ID=dataList.get(i).get("PRODUCT_ID");// 产品编号
|
||||
// 判断购置税是否参融
|
||||
String FINAN1 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "PURCHASE_TAX","FINAN");
|
||||
// 判断保险费是否参融
|
||||
String FINAN2 = ProductParamUtil.getProductParameterValue(PRODUCT_ID, "PRD0315", "INSURANCE_PREMIUM","FINAN");
|
||||
MONEYTAX=dataList.get(i).get("MONEYTAX");
|
||||
MONEYNOTAX=dataList.get(i).get("MONEYNOTAX");
|
||||
HANDLING_CHARGE_MONEY=dataList.get(i).get("HANDLING_CHARGE_MONEY");
|
||||
CAUTION_MONEY=dataList.get(i).get("CAUTION_MONEY");
|
||||
FINANCING_SUB_OTHERS=dataList.get(i).get("FINANCING_SUB_OTHERS");
|
||||
FIRST_ADD_HANDLING=dataList.get(i).get("FIRST_ADD_HANDLING");
|
||||
// 直租合同起租
|
||||
if("PZ2019070100000004".equals(VOUCHERNO)){
|
||||
double PURCHASE_TAX=0.00;//购置税
|
||||
@ -214,17 +229,25 @@ public class CreateVoucherLoanDistributor {
|
||||
}
|
||||
// 如果参融, 获取上边的对应金额, 如果不参融+0, 不影响
|
||||
MONEY=(mon+PURCHASE_TAX+INSURANCE_PREMIUM)+"";
|
||||
}else{
|
||||
// 不是直租购置融资租赁资产/合同起租, 正常取值
|
||||
MONEYTAX=dataList.get(i).get("MONEYTAX");
|
||||
}
|
||||
MONEYNOTAX=dataList.get(i).get("MONEYNOTAX");
|
||||
|
||||
// 购置融资租赁资产配置差额, 非差额
|
||||
if("PZ2018070900000002".equals(VOUCHERNO)){
|
||||
// 如果手续费是非差额放款, 购置融资租赁资产手续费取值为0,去除手续费
|
||||
if("no".equals(isBalance1)) {
|
||||
FINANCING_SUB_OTHERS=Double.parseDouble(FINANCING_SUB_OTHERS)+Double.parseDouble(HANDLING_CHARGE_MONEY)+"";
|
||||
FIRST_ADD_HANDLING=Double.parseDouble(FIRST_ADD_HANDLING)-Double.parseDouble(HANDLING_CHARGE_MONEY)+"";
|
||||
}
|
||||
// 如果保证金是非差额放款, 购置融资租赁资产手续费取值为0,去除手续费
|
||||
if("no".equals(isBalance2)) {
|
||||
FINANCING_SUB_OTHERS=Double.parseDouble(FINANCING_SUB_OTHERS)+Double.parseDouble(CAUTION_MONEY)+"";
|
||||
CAUTION_MONEY="0.00";
|
||||
}
|
||||
}
|
||||
|
||||
GPS_FEE_FINANCE=dataList.get(i).get("GPS_FEE_FINANCE");
|
||||
CAUTION_MONEY=dataList.get(i).get("CAUTION_MONEY");
|
||||
INTEREST=dataList.get(i).get("INTEREST");
|
||||
FIRST_ADD_HANDLING=dataList.get(i).get("FIRST_ADD_HANDLING");
|
||||
FIRST_ADD_FINANCING=dataList.get(i).get("FIRST_ADD_FINANCING");
|
||||
FINANCING_SUB_OTHERS=dataList.get(i).get("FINANCING_SUB_OTHERS");
|
||||
INTEREST_ADD_HANDLING=dataList.get(i).get("INTEREST_ADD_HANDLING");
|
||||
ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE");
|
||||
FACT_DATE =dataList.get(i).get("FACT_DATE");
|
||||
|
||||
@ -22,7 +22,8 @@ public class ContractActualPaymentTraditionVoucher extends BaseBussiness {
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2018092500000159",userid); // 放款-购置融资租赁资产(传统)-非差额
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2018092500000162",userid); // 放款-经销商支付的预付款(传统)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2018092500000164",userid); // 放款-客户记录保证金(传统)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2018092500000166",userid); // 放款-收到客户手续费(传统)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2018092500000166",userid); // 放款-收到客户手续费(传统)-一次性
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019122300000165",userid); // 放款-收到客户手续费(传统)-按月分摊
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2018092500000169",userid); // 放款-购置融资租赁资产(传统)-差额放款
|
||||
|
||||
/**
|
||||
@ -39,10 +40,11 @@ public class ContractActualPaymentTraditionVoucher extends BaseBussiness {
|
||||
* 汽车类传统-回租
|
||||
*/
|
||||
//cvap.CreateVoucher(FlowUnid, "PZ2019072000000077",userid); // 放款-购置融资租赁资产(汽车类传统)-非差额
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072000000077", userid); // 放款-确认GPS收入
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019090500000004",userid); // 放款-确认GPS收入
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072000000078",userid); // 放款-经销商支付的预付款(汽车类传统)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072000000079",userid); // 放款-客户记录保证金(汽车类传统)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072000000080",userid); // 放款-收到客户手续费(汽车类传统)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072000000080",userid); // 放款-收到客户手续费(汽车类传统)-一次性
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019122300000166",userid); // 放款-收到客户手续费(汽车类传统)-按月分摊
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072000000081",userid); // 放款-购置融资租赁资产(汽车类传统)-差额放款
|
||||
|
||||
/**
|
||||
@ -54,6 +56,7 @@ public class ContractActualPaymentTraditionVoucher extends BaseBussiness {
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072200000115",userid); // 放款-收到客户手续费(汽车类传统)(一次性)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072200000116",userid); // 放款-收到客户手续费(汽车类传统)(按月)
|
||||
cvap.CreateVoucher(FlowUnid, "PZ2019072200000117",userid); // 放款-购置融资租赁资产(汽车类传统)-差额放款
|
||||
|
||||
return "true";
|
||||
}
|
||||
}
|
||||
|
||||
@ -20,6 +20,7 @@ public class ContractBeforeOnhireToVoucher extends BaseBussiness {
|
||||
*/
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2018092500000156","feetype2",userid); // 回款-收到客户保证金(传统)
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2018092500000157","feetype1",userid); // 回款-收到客户手续费(传统)-一次性
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2019120400000149","feetype1",userid); // 回款-收到客户手续费(传统)-按月
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2018092500000158","feetype5",userid); // 回款-收到客户预付款(传统)
|
||||
|
||||
/**
|
||||
@ -35,6 +36,7 @@ public class ContractBeforeOnhireToVoucher extends BaseBussiness {
|
||||
*/
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2019072000000074","feetype2",userid); // 回款-收到客户保证金(汽车类传统)
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2019072000000075","feetype1",userid); // 回款-收到客户手续费(汽车类传统)-一次性
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2019120400000150","feetype1",userid); // 回款-收到客户手续费(汽车类传统)-按月
|
||||
cvbo.CreateVoucher(FlowUnid, "PZ2019072000000076","feetype5",userid); // 回款-收到客户预付款(汽车类传统)
|
||||
|
||||
/**
|
||||
|
||||
@ -3,6 +3,7 @@ package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.tenwa.flow.baseBussion.BaseBussiness;
|
||||
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherCustCautionMoneyIncome;
|
||||
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherEbankMoney;
|
||||
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherRedCompensatory;
|
||||
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherRentIncome;
|
||||
/**
|
||||
@ -24,6 +25,9 @@ public class IncomeVoucher extends BaseBussiness {
|
||||
// 汽车回租
|
||||
cvci.CreateVoucher(FlowUnid, "PZ2018072100000026", "feetype30",userid);//收到的违约金/罚款 --回租
|
||||
cvci.CreateVoucher(FlowUnid, "PZ2018072100000031", "feetype4",userid); //收到名义货价 --回租
|
||||
cvci.CreateVoucher(FlowUnid, "PZ2019121600000162", "feetype2",userid); //回款-收到客户保证金 --回租
|
||||
cvci.CreateVoucher(FlowUnid, "PZ2019121600000163", "feetype1",userid); //回款-收到客户手续费(一次性)--回租
|
||||
cvci.CreateVoucher(FlowUnid, "PZ2019121700000164", "feetype1",userid); //回款-收到客户手续费(按月) --回租
|
||||
|
||||
// 汽车直租
|
||||
cvci.CreateVoucher(FlowUnid, "PZ2019070100000015", "feetype30",userid);//收到的违约金/罚款 --回租
|
||||
@ -50,6 +54,9 @@ public class IncomeVoucher extends BaseBussiness {
|
||||
cvrcs.CreateVoucher(FlowUnid,"PZ2019071500000030",userid,Sqlca);//代偿租金
|
||||
cvrcs.CreateVoucher(FlowUnid,"PZ2019071500000031",userid,Sqlca);//代偿逾期利息
|
||||
|
||||
CreateVoucherEbankMoney cvem = new CreateVoucherEbankMoney();
|
||||
cvem.CreateVoucher(FlowUnid, "PZ2019070100000018", userid,Sqlca);// 回款-多余回款分解
|
||||
|
||||
return "true";
|
||||
}
|
||||
|
||||
|
||||
@ -0,0 +1,24 @@
|
||||
package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle;
|
||||
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.tenwa.flow.baseBussion.BaseBussiness;
|
||||
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherForOtherPay;
|
||||
/**
|
||||
* 1: 客户多余还款退回
|
||||
* @author xiezhiwen
|
||||
*/
|
||||
public class OtherPayMoneyVoucher extends BaseBussiness {
|
||||
|
||||
@Override
|
||||
public Object run(Transaction Sqlca) throws Exception {
|
||||
this.initBussinessParam(Sqlca);
|
||||
String FlowUnid=this.getAttribute("FlowUnid").toString();
|
||||
String userid = this.getAttribute("CurUserID").toString();
|
||||
|
||||
// 其他支付,客户多余还款退回
|
||||
CreateVoucherForOtherPay CVFOP = new CreateVoucherForOtherPay();
|
||||
CVFOP.CreateVoucher(FlowUnid, "PZ2018072100000051", userid);
|
||||
return "true";
|
||||
}
|
||||
|
||||
}
|
||||
@ -27,117 +27,166 @@ public class CreateVoucherMonthSettlementForTradition {
|
||||
|
||||
public void CreateVoucher(String voucherNo)throws Exception {
|
||||
Transaction Sqlca = null;
|
||||
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 TAX = null;
|
||||
String CORPUS_TAX = null;
|
||||
String CORPUS_ADD_INTEREST_TAX = null;
|
||||
String ACCOUNT_DATE = null;
|
||||
String FACT_DATE = null;
|
||||
String CONTRACT_ID = null;
|
||||
String CONTRACT_NUMBER = null;
|
||||
String PROJECT_NAME = null;
|
||||
String leas_form = null;
|
||||
String DISTRIBUTOR_ID = null;
|
||||
String DISTRIBUTOR_NAME = null;
|
||||
String CARID = null;
|
||||
String CARMODEL = null;
|
||||
String CUSTID = null;
|
||||
String CUSTNAME = null;
|
||||
String CUSTOMERTYPE = null;
|
||||
String BUSINESSTYPE = null;
|
||||
String F58 = null;
|
||||
String TAX_NUM = null;
|
||||
String sql = "";
|
||||
if (("PZ2018092500000183".equals(voucherNo)) || ("PZ2019071800000069".equals(voucherNo))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CAST(CRM.RENT_LIST AS SIGNED) - CAST(IFNULL(LRI2.PLAN_LIST, 0) AS SIGNED)) <= 2 THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,(IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX,((IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2))+(IFNULL(CRM.INTEREST_TAX,0)-ROUND(IFNULL(CRM.INTEREST_TAX,0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))) AS CORPUS_ADD_INTEREST_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_NAME = DI.DISTRIBUTOR_CODING OR CL.CUST_NAME = CIF.CUSTOMER_NUM) WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCCT.INCOME_NUMBER_YEAR = 'income_1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-月付%') ";
|
||||
} else if (("PZ2018092500000184".equals(voucherNo)) || ("PZ2019071800000070".equals(voucherNo))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST = 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 1) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 2) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 2) THEN ROUND(CRM.INTEREST_TAX * 2, 2) WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST-LRI2.PLAN_LIST<=1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 3) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,MAX(PLAN_DATE) AS PLAN_DATE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PLAN_LIST) LRP2 ON LRP2.CONTRACT_ID = LRI2.CONTRACT_ID AND LRP2.PLAN_LIST = LRI2.PLAN_LIST LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_ID = DI.DISTRIBUTOR_CODING OR CL.CUST_ID = CIF.CUSTOMER_NUM) WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCCT.INCOME_NUMBER_YEAR = 'income_3' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-季付%');";
|
||||
}
|
||||
if (("PZ2019072200000106".equals(voucherNo)) || ("PZ2019072300000144".equals(voucherNo))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CAST(CRM.RENT_LIST AS SIGNED) - CAST(IFNULL(LRI2.PLAN_LIST, 0) AS SIGNED)) <= 2 THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,(IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX,((IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2))+(IFNULL(CRM.INTEREST_TAX,0)-ROUND(IFNULL(CRM.INTEREST_TAX,0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))) AS CORPUS_ADD_INTEREST_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_NAME = DI.DISTRIBUTOR_CODING OR CL.CUST_NAME = CIF.CUSTOMER_NUM) WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCCT.INCOME_NUMBER_YEAR = 'income_1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-月付%') ";
|
||||
} else if (("PZ2019072200000107".equals(voucherNo)) || ("PZ2019072300000145".equals(voucherNo))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST = 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 1) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 2) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 2) THEN ROUND(CRM.INTEREST_TAX * 2, 2) WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST-LRI2.PLAN_LIST<=1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 3) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,MAX(PLAN_DATE) AS PLAN_DATE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PLAN_LIST) LRP2 ON LRP2.CONTRACT_ID = LRI2.CONTRACT_ID AND LRP2.PLAN_LIST = LRI2.PLAN_LIST LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_ID = DI.DISTRIBUTOR_CODING OR CL.CUST_ID = CIF.CUSTOMER_NUM) WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCCT.INCOME_NUMBER_YEAR = 'income_3' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-季付%');";
|
||||
}
|
||||
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 TAX = null;
|
||||
String CORPUS_TAX = null;
|
||||
String CORPUS_ADD_INTEREST_TAX = null;
|
||||
String ACCOUNT_DATE = null;
|
||||
String FACT_DATE = null;
|
||||
String CONTRACT_ID = null;
|
||||
String CONTRACT_NUMBER = null;
|
||||
String PROJECT_NAME = null;
|
||||
String leas_form = null;
|
||||
String DISTRIBUTOR_ID = null;
|
||||
String DISTRIBUTOR_NAME = null;
|
||||
String CARID = null;
|
||||
String CARMODEL = null;
|
||||
String CUSTID = null;
|
||||
String CUSTNAME = null;
|
||||
String CUSTOMERTYPE = null;
|
||||
String BUSINESSTYPE = null;
|
||||
String F58 = null;
|
||||
String TAX_NUM = null;
|
||||
String sql = "";
|
||||
/**
|
||||
* 传统-回租
|
||||
*/
|
||||
// 月结--确认未实现利息收入-月付(传统)
|
||||
if ("PZ2018092500000183".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CAST(CRM.RENT_LIST AS SIGNED) - CAST(IFNULL(LRI2.PLAN_LIST, 0) AS SIGNED)) <= 2 THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,(IFNULL(LRP.CORPUS, 0) - ROUND(IFNULL(LRP.CORPUS, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX,((IFNULL(LRP.CORPUS, 0) - ROUND(IFNULL(LRP.CORPUS, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) + (IFNULL(CRM.INTEREST_TAX, 0) - ROUND(IFNULL(CRM.INTEREST_TAX, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))) AS CORPUS_ADD_INTEREST_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_NAME = DI.DISTRIBUTOR_CODING OR CL.CUST_NAME = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-月付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND LCCT.INCOME_NUMBER_YEAR = 'income_1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND V8.F58 IS NULL ";
|
||||
// 月结--确认未实现利息收入-季付(传统)
|
||||
}else if ("PZ2018092500000184".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST = 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 1) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 2) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 2) THEN ROUND(CRM.INTEREST_TAX * 2, 2) WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST-LRI2.PLAN_LIST<=1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 3) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,MAX(PLAN_DATE) AS PLAN_DATE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PLAN_LIST) LRP2 ON LRP2.CONTRACT_ID = LRI2.CONTRACT_ID AND LRP2.PLAN_LIST = LRI2.PLAN_LIST LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_ID = DI.DISTRIBUTOR_CODING OR CL.CUST_ID = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-季付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND LCCT.INCOME_NUMBER_YEAR = 'income_3' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND V8.F58 IS NULL ";
|
||||
}else if("PZ2019120400000151".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'手续费',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,IFNULL(CRM.FEE_TAX,0) AS MONEY,ROUND(IFNULL(CRM.FEE_TAX,0) / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2) AS MONEYNOTAX,IFNULL(CRM.FEE_TAX,0)- ROUND(IFNULL(CRM.FEE_TAX,0) / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LCI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = CRM.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%月结-确认手续费-传统%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LCI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND IFNULL(CRM.FEE_TAX,0)>0 AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND lcct.HANDLING_CHARGE_MONEY_TYPE = '0020' AND V8.F58 IS NULL ";
|
||||
}
|
||||
/**
|
||||
* 传统-直租
|
||||
*/
|
||||
// 月结--确认未实现利息收入-月付(传统)
|
||||
if ("PZ2019071800000069".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CAST(CRM.RENT_LIST AS SIGNED) - CAST(IFNULL(LRI2.PLAN_LIST, 0) AS SIGNED)) <= 2 THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,(IFNULL(LRP.CORPUS, 0) - ROUND(IFNULL(LRP.CORPUS, 0) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX,((IFNULL(LRP.CORPUS, 0) - ROUND(IFNULL(LRP.CORPUS, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) + (IFNULL(CRM.INTEREST_TAX, 0) - ROUND(IFNULL(CRM.INTEREST_TAX, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))) AS CORPUS_ADD_INTEREST_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_NAME = DI.DISTRIBUTOR_CODING OR CL.CUST_NAME = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-月付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='01' AND LCCT.INCOME_NUMBER_YEAR = 'income_1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND V8.F58 IS NULL ";
|
||||
// 月结--确认未实现利息收入-季付(传统)
|
||||
}else if ("PZ2019071800000070".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST = 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 1) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 2) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 2) THEN ROUND(CRM.INTEREST_TAX * 2, 2) WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST-LRI2.PLAN_LIST<=1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 3) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,MAX(PLAN_DATE) AS PLAN_DATE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PLAN_LIST) LRP2 ON LRP2.CONTRACT_ID = LRI2.CONTRACT_ID AND LRP2.PLAN_LIST = LRI2.PLAN_LIST LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_ID = DI.DISTRIBUTOR_CODING OR CL.CUST_ID = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-季付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='01' AND LCCT.INCOME_NUMBER_YEAR = 'income_3' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND V8.F58 IS NULL ";
|
||||
}
|
||||
|
||||
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
|
||||
/**
|
||||
* 汽车类传统-回租
|
||||
*/
|
||||
// 月结--确认未实现利息收入-月付(汽车类传统)
|
||||
if ("PZ2019072200000106".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CAST(CRM.RENT_LIST AS SIGNED) - CAST(IFNULL(LRI2.PLAN_LIST, 0) AS SIGNED)) <= 2 THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,(IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX,((IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2))+(IFNULL(CRM.INTEREST_TAX,0)-ROUND(IFNULL(CRM.INTEREST_TAX,0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))) AS CORPUS_ADD_INTEREST_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_NAME = DI.DISTRIBUTOR_CODING OR CL.CUST_NAME = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-月付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND LCCT.INCOME_NUMBER_YEAR = 'income_1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND V8.F58 IS NULL ";
|
||||
// 月结--确认未实现利息收入-季付(汽车类传统)
|
||||
}else if ("PZ2019072200000107".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST = 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 1) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 2) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 2) THEN ROUND(CRM.INTEREST_TAX * 2, 2) WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST-LRI2.PLAN_LIST<=1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 3) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,MAX(PLAN_DATE) AS PLAN_DATE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PLAN_LIST) LRP2 ON LRP2.CONTRACT_ID = LRI2.CONTRACT_ID AND LRP2.PLAN_LIST = LRI2.PLAN_LIST LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_ID = DI.DISTRIBUTOR_CODING OR CL.CUST_ID = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-季付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND LCCT.INCOME_NUMBER_YEAR = 'income_3' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND V8.F58 IS NULL ";
|
||||
// 月结-确认手续费收入(汽车类传统)
|
||||
}else if("PZ2019120400000152".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'手续费',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,IFNULL(CRM.FEE_TAX,0) AS MONEY,ROUND(IFNULL(CRM.FEE_TAX,0) / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2) AS MONEYNOTAX,IFNULL(CRM.FEE_TAX,0)- ROUND(IFNULL(CRM.FEE_TAX,0) / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LCI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = CRM.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%月结-确认手续费-汽车类传统%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LCI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='02' AND IFNULL(CRM.FEE_TAX,0)>0 AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND lcct.HANDLING_CHARGE_MONEY_TYPE = '0020' AND V8.F58 IS NULL ";
|
||||
}
|
||||
/**
|
||||
* 汽车类传统-直租
|
||||
*/
|
||||
// 月结--确认未实现利息收入-月付(汽车类传统)
|
||||
if ("PZ2019072300000144".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CAST(CRM.RENT_LIST AS SIGNED) - CAST(IFNULL(LRI2.PLAN_LIST, 0) AS SIGNED)) <= 2 THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,(IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) AS CORPUS_TAX,((IFNULL(LRP.CORPUS,0)-ROUND(IFNULL(LRP.CORPUS,0)/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2))+(IFNULL(CRM.INTEREST_TAX,0)-ROUND(IFNULL(CRM.INTEREST_TAX,0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))) AS CORPUS_ADD_INTEREST_TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_NAME = DI.DISTRIBUTOR_CODING OR CL.CUST_NAME = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-月付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='01' AND LCCT.INCOME_NUMBER_YEAR = 'income_1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND V8.F58 IS NULL ";
|
||||
// 月结--确认未实现利息收入-季付(汽车类传统)
|
||||
}else if ("PZ2019072200000107".equals(voucherNo) || "PZ2019072300000145".equals(voucherNo)) {
|
||||
sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) AS TAX_NUM,CRM.ID,CASE WHEN (CL.CUST_NAME IS NOT NULL OR CL.CUST_NAME != '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST = 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 1) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST - LRI2.PLAN_LIST = 1) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(LRI2.HIRE_DATE, '%Y-%m-%d'))= 2) AND (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 2) THEN ROUND(CRM.INTEREST_TAX * 2, 2) WHEN CRM.RENT_LIST != 1 AND (CL.CUST_NAME IS NULL OR CL.CUST_NAME = '') AND (CRM.RENT_LIST-LRI2.PLAN_LIST<=1) AND ((TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 3) OR (TIMESTAMPDIFF(MONTH,DATE_FORMAT(LRP2.PLAN_DATE, '%Y-%m-%d'),DATE_FORMAT(NOW(), '%Y-%m-%d'))= 0)) THEN CRM.INTEREST_TAX ELSE 0 END AS MONEY,ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST_TAX - ROUND(CRM.INTEREST_TAX / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,CRM.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LEC.ID AS CARID,LEC.MODEL,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM CONTRACT_RENT_MONTH CRM LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID = CRM.CONTRACT_ID AND LRP.PLAN_LIST = CRM.rent_list LEFT JOIN LC_RENT_INCOME LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,MAX(PLAN_LIST) AS PLAN_LIST,MAX(HIRE_DATE) AS HIRE_DATE FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRI2 ON LRI2.CONTRACT_ID = lci.id LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,MAX(PLAN_DATE) AS PLAN_DATE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PLAN_LIST) LRP2 ON LRP2.CONTRACT_ID = LRI2.CONTRACT_ID AND LRP2.PLAN_LIST = LRI2.PLAN_LIST LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.CONTRACT_ID = LCI.ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN CUSTOMER_LIST CL ON (CL.CUST_ID = DI.DISTRIBUTOR_CODING OR CL.CUST_ID = CIF.CUSTOMER_NUM) LEFT JOIN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%确认未实现利息收入-季付%' GROUP BY F58)V8 ON V8.F58=CRM.ID WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN = 'Y' AND LCI.LEAS_FORM='01' AND LCCT.INCOME_NUMBER_YEAR = 'income_3' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(NOW(), '%Y/%m') AND V8.F58 IS NULL ";
|
||||
}
|
||||
|
||||
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
|
||||
String VOUCHER_TYPE = "1";// 凭证分类 金蝶
|
||||
String userid = "yuejie";
|
||||
for (int i = 0; i < dataList.size(); i++) {
|
||||
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
|
||||
|
||||
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
|
||||
String VOUCHER_TYPE = "1";// 凭证分类 金蝶
|
||||
String userid = "yuejie";
|
||||
for (int i = 0; i < dataList.size(); i++) {
|
||||
MONEY = dataList.get(i).get("MONEY").toString();
|
||||
double mon = Double.parseDouble(MONEY);
|
||||
if (mon > 0) {
|
||||
MONEYNOTAX = dataList.get(i).get("MONEYNOTAX");
|
||||
TAX = dataList.get(i).get("TAX");
|
||||
CORPUS_TAX = dataList.get(i).get("CORPUS_TAX");
|
||||
CORPUS_ADD_INTEREST_TAX = dataList.get(i).get("CORPUS_ADD_INTEREST_TAX");
|
||||
ACCOUNT_DATE = dataList.get(i).get("ACCOUNT_DATE").toString();
|
||||
FACT_DATE = dataList.get(i).get("FACT_DATE").toString();
|
||||
CONTRACT_ID = dataList.get(i).get("CONTRACT_ID").toString();
|
||||
CONTRACT_NUMBER = dataList.get(i).get("CONTRACT_NUMBER").toString();
|
||||
PROJECT_NAME = dataList.get(i).get("PROJECT_NAME").toString();
|
||||
leas_form = dataList.get(i).get("LEAS_FORM").toString();
|
||||
DISTRIBUTOR_ID = dataList.get(i).get("DISTRIBUTOR_ID");
|
||||
DISTRIBUTOR_NAME = dataList.get(i).get("DISTRIBUTOR_NAME");
|
||||
CARID = dataList.get(i).get("CARID");
|
||||
CARMODEL = dataList.get(i).get("MODEL");
|
||||
CUSTID = dataList.get(i).get("CUSTOMERID");
|
||||
CUSTNAME = dataList.get(i).get("CUSTOMERNAME");
|
||||
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
|
||||
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
|
||||
F58 = dataList.get(i).get("ID");
|
||||
TAX_NUM = dataList.get(i).get("TAX_NUM");
|
||||
// 通过税率获取编码
|
||||
BizObject TAX_CODES = null;
|
||||
if (TAX_NUM != null && !"".equals(TAX_NUM)) {
|
||||
TAX_CODES = JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME, "TAX_NUMBER='" + TAX_NUM + "'").getSingleResult(false);
|
||||
if (mon > 0) {
|
||||
MONEYNOTAX = dataList.get(i).get("MONEYNOTAX");
|
||||
TAX = dataList.get(i).get("TAX");
|
||||
CORPUS_TAX = dataList.get(i).get("CORPUS_TAX");
|
||||
CORPUS_ADD_INTEREST_TAX = dataList.get(i).get("CORPUS_ADD_INTEREST_TAX");
|
||||
ACCOUNT_DATE = dataList.get(i).get("ACCOUNT_DATE").toString();
|
||||
FACT_DATE = dataList.get(i).get("FACT_DATE").toString();
|
||||
CONTRACT_ID = dataList.get(i).get("CONTRACT_ID").toString();
|
||||
CONTRACT_NUMBER = dataList.get(i).get("CONTRACT_NUMBER").toString();
|
||||
PROJECT_NAME = dataList.get(i).get("PROJECT_NAME").toString();
|
||||
leas_form = dataList.get(i).get("LEAS_FORM").toString();
|
||||
DISTRIBUTOR_ID = dataList.get(i).get("DISTRIBUTOR_ID");
|
||||
DISTRIBUTOR_NAME = dataList.get(i).get("DISTRIBUTOR_NAME");
|
||||
CARID = dataList.get(i).get("CARID");
|
||||
CARMODEL = dataList.get(i).get("MODEL");
|
||||
CUSTID = dataList.get(i).get("CUSTOMERID");
|
||||
CUSTNAME = dataList.get(i).get("CUSTOMERNAME");
|
||||
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
|
||||
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
|
||||
F58 = dataList.get(i).get("ID");
|
||||
TAX_NUM = dataList.get(i).get("TAX_NUM");
|
||||
// 通过税率获取编码
|
||||
BizObject TAX_CODES = null;
|
||||
if (TAX_NUM != null && !"".equals(TAX_NUM)) {
|
||||
TAX_CODES = JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME, "TAX_NUMBER='" + TAX_NUM + "'").getSingleResult(false);
|
||||
}
|
||||
|
||||
param.put("FACT_MONEY", MONEY);
|
||||
param.put("INTERESTNOTAX", MONEYNOTAX);
|
||||
param.put("TAX", TAX);
|
||||
param.put("CORPUS_TAX",CORPUS_TAX);
|
||||
param.put("CORPUS_ADD_INTEREST_TAX",CORPUS_ADD_INTEREST_TAX);
|
||||
param.put("ACCOUNT_DATE", ACCOUNT_DATE);
|
||||
param.put("FACT_DATE", FACT_DATE);
|
||||
param.put("CONTRACT_ID", CONTRACT_ID);
|
||||
param.put("CONTRACT_NUMBER", CONTRACT_NUMBER);
|
||||
param.put("PROJECT_NAME", PROJECT_NAME);
|
||||
param.put("LEAS_FORM", leas_form);
|
||||
param.put("DISTRIBUTOR_ID", DISTRIBUTOR_ID);
|
||||
param.put("DISTRIBUTOR_NAME", DISTRIBUTOR_NAME);
|
||||
param.put("CARID", CARID);
|
||||
param.put("CARMODEL", CARMODEL);
|
||||
param.put("CUSTID", CUSTID);
|
||||
param.put("CUSTNAME", CUSTNAME);
|
||||
param.put("CUSTOMERTYPE", CUSTOMERTYPE);
|
||||
param.put("BUSINESSTYPE", BUSINESSTYPE);
|
||||
param.put("VOUCHERNO", voucherNo);
|
||||
param.put("F58", F58);
|
||||
if (TAX_CODES != null) {
|
||||
param.put("TAX_CODE", TAX_CODES.getAttribute("TAX_CODES").getString());
|
||||
}
|
||||
|
||||
param.put("BUSINESSTYPE", "0604"); // 主营类型
|
||||
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
||||
param.put("FACT_MONEY", MONEY);
|
||||
param.put("INTERESTNOTAX", MONEYNOTAX);
|
||||
param.put("TAX", TAX);
|
||||
param.put("CORPUS_TAX",CORPUS_TAX);
|
||||
param.put("CORPUS_ADD_INTEREST_TAX",CORPUS_ADD_INTEREST_TAX);
|
||||
param.put("ACCOUNT_DATE", ACCOUNT_DATE);
|
||||
param.put("FACT_DATE", FACT_DATE);
|
||||
param.put("CONTRACT_ID", CONTRACT_ID);
|
||||
param.put("CONTRACT_NUMBER", CONTRACT_NUMBER);
|
||||
param.put("PROJECT_NAME", PROJECT_NAME);
|
||||
param.put("LEAS_FORM", leas_form);
|
||||
param.put("DISTRIBUTOR_ID", DISTRIBUTOR_ID);
|
||||
param.put("DISTRIBUTOR_NAME", DISTRIBUTOR_NAME);
|
||||
param.put("CARID", CARID);
|
||||
param.put("CARMODEL", CARMODEL);
|
||||
param.put("CUSTID", CUSTID);
|
||||
param.put("CUSTNAME", CUSTNAME);
|
||||
param.put("CUSTOMERTYPE", CUSTOMERTYPE);
|
||||
param.put("BUSINESSTYPE", BUSINESSTYPE);
|
||||
param.put("VOUCHERNO", voucherNo);
|
||||
param.put("F58", F58);
|
||||
if (TAX_CODES != null) {
|
||||
param.put("TAX_CODE", TAX_CODES.getAttribute("TAX_CODES").getString());
|
||||
}
|
||||
|
||||
param.put("BUSINESSTYPE", "0604"); // 主营类型
|
||||
|
||||
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) {
|
||||
Sqlca.commit();
|
||||
}
|
||||
}
|
||||
}
|
||||
if (Sqlca != null) {
|
||||
Sqlca.disConnect();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if (Sqlca != null) {
|
||||
try {
|
||||
Sqlca.disConnect();
|
||||
} catch (JBOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
Sqlca = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -39,6 +39,8 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
|
||||
String DISTRIBUTOR_NAME = null;
|
||||
String CUSTOMERID = null;
|
||||
String CUSTOMERNAME = null;
|
||||
String CUSTOMERID2 = null;
|
||||
String CUSTOMERNAME2 = null;
|
||||
String CUSTOMERTYPE = null;
|
||||
String BUSINESSTYPE = null;
|
||||
String ACC_NUM = null;
|
||||
@ -57,17 +59,22 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
|
||||
}else {
|
||||
tax_type="本金";
|
||||
}
|
||||
if (("PZ2018092500000156".equals(VOUCHERNO)) || ("PZ2018092500000157".equals(VOUCHERNO)) || ("PZ2018092500000158".equals(VOUCHERNO)) || ("PZ2019071800000032".equals(VOUCHERNO)) || ("PZ2019071800000033".equals(VOUCHERNO)) || ("PZ2019071800000034".equals(VOUCHERNO)) || ("PZ2019071800000035".equals(VOUCHERNO))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'" + tax_type + "',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'" + tax_type + "',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'" + tax_type + "',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE <> '') THEN LFIT.ACCOUNTING_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE <> '') THEN LFIT.FACT_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='2' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
} else if (("PZ2019072000000074".equals(VOUCHERNO)) || ("PZ2019072000000075".equals(VOUCHERNO)) || ("PZ2019072000000076".equals(VOUCHERNO)) || ("PZ2019072200000108".equals(VOUCHERNO)) || ("PZ2019072200000109".equals(VOUCHERNO)) || ("PZ2019072200000110".equals(VOUCHERNO)) || ("PZ2019072200000111".equals(VOUCHERNO))) {
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'" + tax_type + "',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'" + tax_type + "',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'" + tax_type + "',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE <> '') THEN LFIT.ACCOUNTING_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE <> '') THEN LFIT.FACT_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='3' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
}
|
||||
if (("PZ2019071800000033".equals(VOUCHERNO)) || ("PZ2019072200000109".equals(VOUCHERNO))) {
|
||||
sql = sql + " AND (lcct.HANDLING_CHARGE_MONEY_TYPE='0010' OR lcct.HANDLING_CHARGE_MONEY_TYPE IS NULL OR lcct.HANDLING_CHARGE_MONEY_TYPE='')";
|
||||
} else if (("PZ2019071800000034".equals(VOUCHERNO)) || ("PZ2019072200000110".equals(VOUCHERNO))) {
|
||||
sql = sql + " AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' ";
|
||||
}
|
||||
// 传统
|
||||
if("PZ2018092500000156".equals(VOUCHERNO) || "PZ2018092500000157".equals(VOUCHERNO) || "PZ2018092500000158".equals(VOUCHERNO) || "PZ2019071800000032".equals(VOUCHERNO) || "PZ2019071800000033".equals(VOUCHERNO) || "PZ2019071800000034".equals(VOUCHERNO) || "PZ2019071800000035".equals(VOUCHERNO) || "PZ2019120400000149".equals(VOUCHERNO)) {
|
||||
//sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE <> '') THEN LFIT.ACCOUNTING_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE <> '') THEN LFIT.FACT_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='2' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE <> '') THEN LFIT.ACCOUNTING_DATE ELSE SYSDATE() END,'%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE <> '') THEN LFIT.FACT_DATE ELSE SYSDATE() END,'%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,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 'APZL00000000CT' END AS CUSTOMERID2,CASE WHEN (SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID = LE.CUSTOMER_ID) IS NOT NULL THEN (SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID = LE.CUSTOMER_ID) ELSE '传统B端待查客户' END AS CUSTOMERNAME2 FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LC_EBANK LE ON LE.ID=LFIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN = 'Y' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
// 汽车类传统
|
||||
}else if("PZ2019072000000074".equals(VOUCHERNO) || "PZ2019072000000075".equals(VOUCHERNO) || "PZ2019072000000076".equals(VOUCHERNO) || "PZ2019072200000108".equals(VOUCHERNO) || "PZ2019072200000109".equals(VOUCHERNO) || "PZ2019072200000110".equals(VOUCHERNO) || "PZ2019072200000111".equals(VOUCHERNO) || "PZ2019120400000150".equals(VOUCHERNO)) {
|
||||
//sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE <> '') THEN LFIT.ACCOUNTING_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE <> '') THEN LFIT.FACT_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='3' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(CASE WHEN (LFIT.ACCOUNTING_DATE IS NOT NULL OR LFIT.ACCOUNTING_DATE <> '') THEN LFIT.ACCOUNTING_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(CASE WHEN (LFIT.FACT_DATE IS NOT NULL OR LFIT.FACT_DATE <> '') THEN LFIT.FACT_DATE ELSE SYSDATE() END, '%Y/%m/%d') AS FACT_DATE,LFIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,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 'APZL00000000CT' END AS CUSTOMERID2,CASE WHEN (SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID = LE.CUSTOMER_ID) IS NOT NULL THEN (SELECT CUSTOMERNAME FROM CUSTOMER_INFO WHERE CUSTOMERID = LE.CUSTOMER_ID) ELSE '传统B端待查客户' END AS CUSTOMERNAME2 FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LC_EBANK LE ON LE.ID=LFIT.EBANK_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='3' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
|
||||
}
|
||||
|
||||
// 手续费判断一次性还是按月
|
||||
if("PZ2019071800000033".equals(VOUCHERNO) || "PZ2019072200000109".equals(VOUCHERNO) || "PZ2018092500000157".equals(VOUCHERNO) || "PZ2019072000000075".equals(VOUCHERNO)) {
|
||||
sql+=" AND (lcct.HANDLING_CHARGE_MONEY_TYPE='0010' OR lcct.HANDLING_CHARGE_MONEY_TYPE IS NULL OR lcct.HANDLING_CHARGE_MONEY_TYPE='')";
|
||||
}else if("PZ2019071800000034".equals(VOUCHERNO) || "PZ2019072200000110".equals(VOUCHERNO) || "PZ2019120400000149".equals(VOUCHERNO) || "PZ2019120400000150".equals(VOUCHERNO)){
|
||||
sql+=" AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' ";
|
||||
}
|
||||
|
||||
// 查询sql, 将结果集封装到list集合中
|
||||
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
|
||||
@ -94,6 +101,8 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
|
||||
DISTRIBUTOR_NAME = dataList.get(i).get("DISTRIBUTOR_NAME");
|
||||
CUSTOMERID = dataList.get(i).get("CUSTOMERID");
|
||||
CUSTOMERNAME = dataList.get(i).get("CUSTOMERNAME");
|
||||
CUSTOMERID2 = dataList.get(i).get("CUSTOMERID2");
|
||||
CUSTOMERNAME2 = dataList.get(i).get("CUSTOMERNAME2");
|
||||
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
|
||||
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
|
||||
TAX_NUM = dataList.get(i).get("TAX_NUM");
|
||||
@ -116,6 +125,8 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
|
||||
param.put("DISTRIBUTOR_NAME", DISTRIBUTOR_NAME);
|
||||
param.put("CUSTID", CUSTOMERID);
|
||||
param.put("CUSTNAME", CUSTOMERNAME);
|
||||
param.put("CUSTID2", CUSTOMERID2);
|
||||
param.put("CUSTNAME2", CUSTOMERNAME2);
|
||||
param.put("CUSTOMERTYPE", CUSTOMERTYPE);
|
||||
param.put("BUSINESSTYPE", BUSINESSTYPE);
|
||||
if(TAX_CODES!=null) {
|
||||
@ -125,7 +136,7 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
|
||||
param.put("VOUCHERNO", VOUCHERNO);
|
||||
|
||||
// 收到客户手续费
|
||||
if (("PZ2019071800000033".equals(VOUCHERNO)) || ("PZ2019071800000034".equals(VOUCHERNO)) || ("PZ2019072000000075".equals(VOUCHERNO)) || ("PZ2019072200000109".equals(VOUCHERNO)) || ("PZ2019072200000110".equals(VOUCHERNO))) {
|
||||
if("PZ2019071800000033".equals(VOUCHERNO) || "PZ2019071800000034".equals(VOUCHERNO) || "PZ2018092500000157".equals(VOUCHERNO) || "PZ2019120400000149".equals(VOUCHERNO) || "PZ2019072000000075".equals(VOUCHERNO) || "PZ2019120400000150".equals(VOUCHERNO) || "PZ2019072200000109".equals(VOUCHERNO) || "PZ2019072200000110".equals(VOUCHERNO)){
|
||||
param.put("CASHFLOW", "");// 现金流项目
|
||||
param.put("BUSINESSTYPE", "0604");// 主营类型
|
||||
}
|
||||
|
||||
@ -25,7 +25,6 @@ import com.amarsoft.are.jbo.JBOException;
|
||||
import com.amarsoft.are.jbo.JBOFactory;
|
||||
import com.amarsoft.are.jbo.JBOTransaction;
|
||||
import com.amarsoft.are.log.Log;
|
||||
import com.amarsoft.awe.Configure;
|
||||
import com.tenwa.comm.exception.BusinessException;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
import com.tenwa.quartz.StringUtil;
|
||||
@ -81,7 +80,7 @@ public class CreateVoucherServiceImpl {
|
||||
Map<String,String> param=new HashMap<String, String>();
|
||||
param.put("FlowUnid", "FBO2017101600000061");
|
||||
|
||||
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
|
||||
//CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
|
||||
//vs.createVoucher("","网银收款", "2017032800000009", "02", null, "admin", param, tx);
|
||||
}
|
||||
|
||||
@ -102,7 +101,8 @@ public class CreateVoucherServiceImpl {
|
||||
param.put("OWNED_COMPANY", owned);
|
||||
param.put("PROJ_TYPE", projtype);
|
||||
if(voucherType==null||"".equals(voucherType)){
|
||||
voucherType=Configure.getInstance().getConfigure("VoucherType");
|
||||
//voucherType=Configure.getInstance().getConfigure("VoucherType");
|
||||
voucherType="1";
|
||||
}
|
||||
param.put("VOUCHER_TYPE",voucherType);
|
||||
BizObject user=JBOFactory.createBizObjectQuery(USER_INFO.CLASS_NAME, "USERID='"+userid+"'").getSingleResult(false);
|
||||
@ -129,9 +129,56 @@ public class CreateVoucherServiceImpl {
|
||||
.setParameter("MODULAR_NUMBER",param.get("MODULAR_NUMBER")).setParameter("OWNED_COMPANY", param.get("OWNED_COMPANY")).setParameter("VOUCHER_TYPE",param.get("VOUCHER_TYPE"))
|
||||
.setParameter("PROJ_TYPE", param.get("PROJ_TYPE")).setParameter("ID", param.get("voucher_id")).getSingleResult(false);
|
||||
param.put("MODULAR_NUMBER", voucherConfig.getAttribute("MODULAR_NUMBER").getString());// 凭证名称
|
||||
param.put("F49", voucherConfig.getAttribute("OWNED_COMPANY").getString());
|
||||
param.put("F50", voucherConfig.getAttribute("OWNED_COMPANY").getString());
|
||||
String VOUCHERNO = param.get("VOUCHERNO");
|
||||
/*String CONTRACT_NUMBER = param.get("CONTRACT_NUMBER");
|
||||
String CONTRACT_ID = param.get("CONTRACT_ID");
|
||||
String SUBJECTID = param.get("SUBJECTID");
|
||||
String SUBJECTNAME = param.get("SUBJECTNAME");
|
||||
String OWN_NUMBER = "";
|
||||
|
||||
// 如果没有获取到主体信息, 出部分特殊要求,其它默认通过合同的id获取主体信息
|
||||
if(SUBJECTID==null || "".equals(SUBJECTID) || SUBJECTNAME==null || "".equals(SUBJECTNAME)) {
|
||||
if("PZ2018081600000120".equals(VOUCHERNO) || "PZ2018092500000155".equals(VOUCHERNO) || "PZ2019072000000071".equals(VOUCHERNO) || "PZ2019072000000072".equals(VOUCHERNO) || "PZ2019072000000073".equals(VOUCHERNO) || "PZ2018121800000005".equals(VOUCHERNO)) {
|
||||
String OWN_ACCOUNT= param.get("OWN_ACCOUNT");
|
||||
BizObject ZT = JBOFactory.createBizObjectQuery(LB_CONTRACT_INFO.CLASS_NAME,"SUBJECTNAME=:OWN_ACCOUNT").setParameter("OWN_ACCOUNT", OWN_ACCOUNT).getSingleResult(false);
|
||||
SUBJECTID = ZT.getAttribute("SUBJECTID").getString();
|
||||
SUBJECTNAME = ZT.getAttribute("SUBJECTNAME").getString();
|
||||
if(SUBJECTNAME !=null && !"".equals(SUBJECTNAME)) {
|
||||
BizObject BF = JBOFactory.createBizObjectQuery(OWN_INFO.CLASS_NAME,"OWN_NAME=:OWN_NAME").setParameter("OWN_NAME", SUBJECTNAME).getSingleResult(false);
|
||||
OWN_NUMBER = BF.getAttribute("OWN_NUMBER").getString();
|
||||
}
|
||||
}else {
|
||||
if(CONTRACT_ID!=null && !"".equals(CONTRACT_ID)) {
|
||||
BizObject ZT = JBOFactory.createBizObjectQuery(LB_CONTRACT_INFO.CLASS_NAME,"ID=:ID").setParameter("ID", CONTRACT_ID).getSingleResult(false);
|
||||
SUBJECTID = ZT.getAttribute("SUBJECTID").getString();
|
||||
SUBJECTNAME = ZT.getAttribute("SUBJECTNAME").getString();
|
||||
if(SUBJECTNAME !=null && !"".equals(SUBJECTNAME)) {
|
||||
BizObject BF = JBOFactory.createBizObjectQuery(OWN_INFO.CLASS_NAME,"OWN_NAME=:OWN_NAME").setParameter("OWN_NAME", SUBJECTNAME).getSingleResult(false);
|
||||
if(BF!=null && !"".equals(BF)) {
|
||||
OWN_NUMBER = BF.getAttribute("OWN_NUMBER").getString();
|
||||
}
|
||||
}
|
||||
}
|
||||
if(SUBJECTID==null || "".equals(SUBJECTID) || SUBJECTNAME==null || "".equals(SUBJECTNAME)) {
|
||||
BizObject ZT = JBOFactory.createBizObjectQuery(CODE_LIBRARY.CLASS_NAME,"itemno=:itemno").setParameter("itemno", "aa740e4111c111eaaa0000163e0e11e6").getSingleResult(false);
|
||||
SUBJECTID = "aa740e4111c111eaaa0000163e0e11e6";
|
||||
SUBJECTNAME = ZT.getAttribute("itemname").getString();
|
||||
BizObject BF = JBOFactory.createBizObjectQuery(OWN_INFO.CLASS_NAME,"OWN_NAME=:OWN_NAME").setParameter("OWN_NAME", SUBJECTNAME).getSingleResult(false);
|
||||
OWN_NUMBER = BF.getAttribute("OWN_NUMBER").getString();
|
||||
}
|
||||
}
|
||||
}
|
||||
if("PZ2018072100000032".equals(VOUCHERNO)) {
|
||||
BizObject BF = JBOFactory.createBizObjectQuery(OWN_INFO.CLASS_NAME,"OWN_NAME=:OWN_NAME").setParameter("OWN_NAME", SUBJECTNAME).getSingleResult(false);
|
||||
OWN_NUMBER = BF.getAttribute("OWN_NUMBER").getString();
|
||||
}
|
||||
param.put("F47", CONTRACT_NUMBER); // 合同编号
|
||||
param.put("F48", OWN_NUMBER); // 账套(出租人编号)
|
||||
param.put("F49", SUBJECTID); // 所属主体id
|
||||
param.put("F50", SUBJECTNAME);// 所属主体名称
|
||||
*/
|
||||
param.put("F49", voucherConfig.getAttribute("OWNED_COMPANY").getString());
|
||||
param.put("F50", voucherConfig.getAttribute("OWNED_COMPANY").getString());
|
||||
//3:加载默认默认属性库
|
||||
Map<String,String> attr=this.getDefaultAttribute(tx,param.get("VOUCHER_TYPE"));
|
||||
param.putAll(attr);
|
||||
@ -257,7 +304,7 @@ public class CreateVoucherServiceImpl {
|
||||
/**
|
||||
* 传统实际付款银行客户获取
|
||||
*/
|
||||
if("PZ2018092500000159".equals(VOUCHERNO) || "PZ2018092500000169".equals(VOUCHERNO) || "PZ2019071800000036".equals(VOUCHERNO) || "PZ2019071800000037".equals(VOUCHERNO) || "PZ2019072000000077".equals(VOUCHERNO) || "PZ2019072000000081".equals(VOUCHERNO) || "PZ2019072200000112".equals(VOUCHERNO) || "PZ2019072200000117".equals(VOUCHERNO)) {
|
||||
if("PZ2018092500000159".equals(VOUCHERNO) || "PZ2018092500000169".equals(VOUCHERNO) || "PZ2019071800000036".equals(VOUCHERNO) || "PZ2019071800000037".equals(VOUCHERNO) || "PZ2019072000000077".equals(VOUCHERNO) || "PZ2019072000000081".equals(VOUCHERNO) || "PZ2019072200000112".equals(VOUCHERNO) || "PZ2019072200000117".equals(VOUCHERNO) || "PZ2018072100000051".equals(VOUCHERNO)) {
|
||||
if("100208".equals(SUBJECT_CODE)) {
|
||||
BizObject OWN = JBOFactory.createBizObjectQuery(OWN_ACCOUNT.CLASS_NAME,"ACC_NUMBER=:ACC_NUMBER").setParameter("ACC_NUMBER", param.get("ACC_NUMBER")).getSingleResult(false);
|
||||
String acc_title = OWN.getAttribute("acc_title").getString();
|
||||
@ -363,16 +410,20 @@ public class CreateVoucherServiceImpl {
|
||||
if("PZ2018072100000026".equals(VOUCHERNO) || "PZ2018072100000031".equals(VOUCHERNO) || "PZ2018072100000028".equals(VOUCHERNO) || "PZ2018072100000041".equals(VOUCHERNO) || "PZ2019070100000015".equals(VOUCHERNO) || "PZ2019070100000019".equals(VOUCHERNO) || "PZ2019070100000018".equals(VOUCHERNO) || "PZ2019070100000024".equals(VOUCHERNO)){
|
||||
subData.put("CUSTID","APZL00000000DC");//虚拟客户
|
||||
subData.put("CUSTNAME","汽车C端待查客户");//虚拟客户
|
||||
}else if (("PZ2018081700000134".equals(VOUCHERNO)) || ("PZ2018081700000138".equals(VOUCHERNO)) || ("PZ2018072100000047".equals(VOUCHERNO)) || ("PZ2018081700000132".equals(VOUCHERNO)) || ("PZ2018081700000130".equals(VOUCHERNO)) || ("PZ2018081700000128".equals(VOUCHERNO)) || ("PZ2019071500000030".equals(VOUCHERNO)) || ("PZ2019071500000031".equals(VOUCHERNO))) {
|
||||
}else if("PZ2018081700000134".equals(VOUCHERNO) || "PZ2018081700000138".equals(VOUCHERNO) || "PZ2018072100000047".equals(VOUCHERNO) || "PZ2018081700000132".equals(VOUCHERNO) || "PZ2018081700000130".equals(VOUCHERNO) || "PZ2018081700000128".equals(VOUCHERNO)){
|
||||
subData.put("CUSTID","APZL00000000DC");//虚拟客户
|
||||
subData.put("CUSTNAME","汽车C端待查客户");//虚拟客户
|
||||
}else if("PZ2018072100000039".equals(VOUCHERNO) || "PZ2019070100000021".equals(VOUCHERNO) || "PZ2018072100000043".equals(VOUCHERNO) || "PZ2019070100000025".equals(VOUCHERNO)) {
|
||||
}else if("PZ2018072100000039".equals(VOUCHERNO) || "PZ2019070100000021".equals(VOUCHERNO) || "PZ2018072100000043".equals(VOUCHERNO) || "PZ2019070100000025".equals(VOUCHERNO) || "PZ2019121600000162".equals(VOUCHERNO) || "PZ2019121600000163".equals(VOUCHERNO) || "PZ2019121700000164".equals(VOUCHERNO)) {
|
||||
subData.put("CUSTID","APZL00000000DC");//虚拟客户
|
||||
subData.put("CUSTNAME","汽车C端待查客户");//虚拟客户
|
||||
// 起租前网银回款
|
||||
}else if (("PZ2018092500000156".equals(VOUCHERNO)) || ("PZ2018092500000157".equals(VOUCHERNO)) || ("PZ2018092500000158".equals(VOUCHERNO)) || ("PZ2019071800000032".equals(VOUCHERNO)) || ("PZ2019071800000033".equals(VOUCHERNO)) || ("PZ2019071800000034".equals(VOUCHERNO)) || ("PZ2019071800000035".equals(VOUCHERNO)) || ("PZ2019072000000074".equals(VOUCHERNO)) || ("PZ2019072000000075".equals(VOUCHERNO)) || ("PZ2019072000000076".equals(VOUCHERNO)) || ("PZ2019072200000108".equals(VOUCHERNO)) || ("PZ2019072200000109".equals(VOUCHERNO)) || ("PZ2019072200000110".equals(VOUCHERNO)) || ("PZ2019072200000111".equals(VOUCHERNO))) {
|
||||
}else if("PZ2018092500000156".equals(VOUCHERNO) || "PZ2018092500000158".equals(VOUCHERNO) || "PZ2019071800000032".equals(VOUCHERNO) || "PZ2019071800000033".equals(VOUCHERNO) || "PZ2019071800000034".equals(VOUCHERNO) || "PZ2019071800000035".equals(VOUCHERNO) || "PZ2019072000000074".equals(VOUCHERNO) || "PZ2019072000000076".equals(VOUCHERNO) || "PZ2019072200000108".equals(VOUCHERNO) || "PZ2019072200000109".equals(VOUCHERNO) || "PZ2019072200000110".equals(VOUCHERNO) || "PZ2019072200000111".equals(VOUCHERNO)) {
|
||||
subData.put("CUSTID","APZL00000000CT");//虚拟客户
|
||||
subData.put("CUSTNAME","传统B端待查客户");//虚拟客户
|
||||
// 起租前网银回款-传统与汽车类传统手续费
|
||||
}else if("PZ2018092500000157".equals(VOUCHERNO) || "PZ2019120400000149".equals(VOUCHERNO) || "PZ2019072000000075".equals(VOUCHERNO) || "PZ2019120400000150".equals(VOUCHERNO)) {
|
||||
subData.put("CUSTID",param.get("CUSTID2"));//网银回款前,网银选了客户就用网银的,没有就用CT默认
|
||||
subData.put("CUSTNAME",param.get("CUSTNAME2"));
|
||||
// 传统-回款-资金
|
||||
}else if("PZ2018092500000173".equals(VOUCHERNO) || "PZ2018092500000174".equals(VOUCHERNO) || "PZ2019071800000043".equals(VOUCHERNO) || "PZ2019071800000044".equals(VOUCHERNO) || "PZ2019072000000088".equals(VOUCHERNO) || "PZ2019072000000089".equals(VOUCHERNO) || "PZ2019072200000124".equals(VOUCHERNO) || "PZ2019072200000125".equals(VOUCHERNO) || "PZ2019073000000146".equals(VOUCHERNO) || "PZ2019073000000147".equals(VOUCHERNO)) {
|
||||
subData.put("CUSTID","APZL00000000CT");//虚拟客户
|
||||
@ -393,11 +444,16 @@ public class CreateVoucherServiceImpl {
|
||||
subData.put("CUSTID","APZL00000000CT");//虚拟客户
|
||||
subData.put("CUSTNAME","传统B端待查客户");//虚拟客户
|
||||
// 网银核销, 单笔网银第一次收租金客户为APZL00000000DC固定客户
|
||||
}else if (("PZ2018080400000081".equals(VOUCHERNO)) || ("PZ2019070100000017".equals(VOUCHERNO)) || ("PZ2018072100000025".equals(VOUCHERNO)) || ("PZ2019070100000014".equals(VOUCHERNO))) {
|
||||
}else if("PZ2018080400000081".equals(VOUCHERNO) || "PZ2019070100000017".equals(VOUCHERNO) || "PZ2018072100000025".equals(VOUCHERNO) || "PZ2019070100000014".equals(VOUCHERNO) || "PZ2019071500000030".equals(VOUCHERNO) || "PZ2019071500000031".equals(VOUCHERNO)){
|
||||
String YES_OR_NO = param.get("YES_OR_NO");
|
||||
if( "YES".equals(YES_OR_NO)){
|
||||
String CUSTID2 = param.get("CUSTID2");
|
||||
String CUSTNAME2 = param.get("CUSTNAME2");
|
||||
if(YES_OR_NO==null || "YES".equals(YES_OR_NO)){
|
||||
subData.put("CUSTID","APZL00000000DC");//虚拟账户
|
||||
subData.put("CUSTNAME","汽车C端待查客户");//虚拟账户
|
||||
}else if("NO".equals(YES_OR_NO)){
|
||||
subData.put("CUSTID",CUSTID2);//网银客户
|
||||
subData.put("CUSTNAME",CUSTNAME2);//网银客户
|
||||
}
|
||||
}
|
||||
}else{
|
||||
@ -434,7 +490,7 @@ public class CreateVoucherServiceImpl {
|
||||
subData.put("CUSTNAME",dataTemp.get("DISTRIBUTOR_NAME"));//经销商名称
|
||||
}
|
||||
}*/
|
||||
String LEAS_FORM = (String)param.get("LEAS_FORM");
|
||||
|
||||
// 起租-第一车贷, 购置融资租赁资产带固定编码
|
||||
if("PZ2018073100000062".equals(VOUCHERNO)) {
|
||||
if("3".equals(SORT_NUMBER)) {
|
||||
@ -480,10 +536,15 @@ public class CreateVoucherServiceImpl {
|
||||
*/
|
||||
if("PZ2018072100000024".equals(VOUCHERNO) || "PZ2019070100000016".equals(VOUCHERNO)) {
|
||||
String YES_OR_NO = param.get("YES_OR_NO");// 判断是否使用默认编码
|
||||
String CUSTID2 = param.get("CUSTID2");
|
||||
String CUSTNAME2 = param.get("CUSTNAME2");
|
||||
|
||||
if("YES".equals(YES_OR_NO) && "1".equals(SORT_NUMBER)){
|
||||
subData.put("CUSTID","APZL00000000DC");//虚拟账户
|
||||
subData.put("CUSTNAME","汽车C端待查客户");//虚拟账户
|
||||
}else if("NO".equals(YES_OR_NO) && "1".equals(SORT_NUMBER)){
|
||||
subData.put("CUSTID",CUSTID2);//虚拟账户
|
||||
subData.put("CUSTNAME",CUSTNAME2);//虚拟账户
|
||||
}
|
||||
}
|
||||
|
||||
@ -556,7 +617,7 @@ public class CreateVoucherServiceImpl {
|
||||
String sql = "select id from lv_voucher_loan where voucher_id=" + "'" + voucherConfigId + "'";
|
||||
Map<String,String> param = new HashMap<String, String>();
|
||||
List<Map<String,String>> list = DataOperatorUtil.getDataBySql(tx, sql, param);
|
||||
for(Map ma:list){
|
||||
for(Map<String,String> ma:list){
|
||||
fromCondtion.clear();
|
||||
otherProperty.clear();
|
||||
fromCondtion = ma;
|
||||
|
||||
@ -573,4 +573,12 @@ public interface LC_CALC_CONDITION{
|
||||
* ±£ÏշѱÈÀý DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String INSURANCE_PREMIUM_RATIO = "INSURANCE_PREMIUM_RATIO";
|
||||
/**
|
||||
* 联合方出资额 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY = "UNITE_MONEY";
|
||||
/**
|
||||
* 联合方出资额比例 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY_RATIO = "UNITE_MONEY_RATIO";
|
||||
}
|
||||
@ -573,4 +573,12 @@ public interface LC_CALC_CONDITION_HIS{
|
||||
* ±£ÏշѱÈÀý DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String INSURANCE_PREMIUM_RATIO = "INSURANCE_PREMIUM_RATIO";
|
||||
/**
|
||||
* 联合方出资额 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY = "UNITE_MONEY";
|
||||
/**
|
||||
* 联合方出资额比例 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY_RATIO = "UNITE_MONEY_RATIO";
|
||||
}
|
||||
@ -573,4 +573,12 @@ public interface LC_CALC_CONDITION_TEMP{
|
||||
* ±£ÏշѱÈÀý DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String INSURANCE_PREMIUM_RATIO = "INSURANCE_PREMIUM_RATIO";
|
||||
/**
|
||||
* 联合方出资额 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY = "UNITE_MONEY";
|
||||
/**
|
||||
* 联合方出资额比例 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY_RATIO = "UNITE_MONEY_RATIO";
|
||||
}
|
||||
@ -577,4 +577,12 @@ public interface LC_CONTRACT_CONDITION{
|
||||
* ±£ÏշѱÈÀý DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String INSURANCE_PREMIUM_RATIO = "INSURANCE_PREMIUM_RATIO";
|
||||
/**
|
||||
* 联合方出资额 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY = "UNITE_MONEY";
|
||||
/**
|
||||
* 联合方出资额比例 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY_RATIO = "UNITE_MONEY_RATIO";
|
||||
}
|
||||
@ -158,6 +158,10 @@ public interface LC_EBANK{
|
||||
*/
|
||||
public static final String UPDATETIME = "UPDATETIME";
|
||||
/**
|
||||
* Í˻ؽð¶î DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String RETURN_MONEY = "RETURN_MONEY";
|
||||
/**
|
||||
* 交易时间 STRING(32)<br>
|
||||
*/
|
||||
public static final String FACT_TIME = "FACT_TIME";
|
||||
|
||||
@ -157,4 +157,12 @@ public interface LC_EBANK_TEMP{
|
||||
* 更新时间 STRING(32)<br>
|
||||
*/
|
||||
public static final String UPDATETIME = "UPDATETIME";
|
||||
/**
|
||||
* 退回金额 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String RETURN_MONEY = "RETURN_MONEY";
|
||||
/**
|
||||
* 业务类型 STRING(10)<br>
|
||||
*/
|
||||
public static final String BUSINESS_TYPE = "BUSINESS_TYPE";
|
||||
}
|
||||
@ -577,4 +577,12 @@ public interface LC_PROJ_CONDITION{
|
||||
* ±£ÏշѱÈÀý DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String INSURANCE_PREMIUM_RATIO = "INSURANCE_PREMIUM_RATIO";
|
||||
/**
|
||||
* 联合方出资额 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY = "UNITE_MONEY";
|
||||
/**
|
||||
* 联合方出资额比例 DOUBLE(22)<br>
|
||||
*/
|
||||
public static final String UNITE_MONEY_RATIO = "UNITE_MONEY_RATIO";
|
||||
}
|
||||
@ -205,4 +205,8 @@ public interface LC_RENT_INCOME{
|
||||
* ¿Û¿îÅú´ÎºÅ STRING(32)<br>
|
||||
*/
|
||||
public static final String SPARE_BATCH_NO = "SPARE_BATCH_NO";
|
||||
/**
|
||||
* 手续费方式 STRING(10)<br>
|
||||
*/
|
||||
public static final String CHARGE_WAY = "CHARGE_WAY";
|
||||
}
|
||||
@ -213,4 +213,8 @@ public interface LC_RENT_INCOME_TEMP{
|
||||
* ¿Û¿îÅú´ÎºÅ STRING(32)<br>
|
||||
*/
|
||||
public static final String SPARE_BATCH_NO = "SPARE_BATCH_NO";
|
||||
/**
|
||||
* 手续费方式 STRING(10)<br>
|
||||
*/
|
||||
public static final String CHARGE_WAY = "CHARGE_WAY";
|
||||
}
|
||||
@ -181,4 +181,8 @@ public interface LC_RENT_PLAN{
|
||||
* 分润给SP STRING(18)<br>
|
||||
*/
|
||||
public static final String INTEREST_sp = "INTEREST_sp";
|
||||
/**
|
||||
* 分润支付状态 STRING(2)<br>
|
||||
*/
|
||||
public static final String SPLITTING_STATUS = "SPLITTING_STATUS";
|
||||
}
|
||||
@ -181,4 +181,8 @@ public interface LC_RENT_PLAN_HIS{
|
||||
* 分润给SP STRING(18)<br>
|
||||
*/
|
||||
public static final String INTEREST_sp = "INTEREST_sp";
|
||||
/**
|
||||
* 分润支付状态 STRING(2)<br>
|
||||
*/
|
||||
public static final String SPLITTING_STATUS = "SPLITTING_STATUS";
|
||||
}
|
||||
@ -181,4 +181,8 @@ public interface LC_RENT_PLAN_TEMP{
|
||||
* 分润给SP STRING(18)<br>
|
||||
*/
|
||||
public static final String INTEREST_sp = "INTEREST_sp";
|
||||
/**
|
||||
* 分润支付状态 STRING(2)<br>
|
||||
*/
|
||||
public static final String SPLITTING_STATUS = "SPLITTING_STATUS";
|
||||
}
|
||||
@ -93,4 +93,12 @@ public interface D_DEPOSITCHARGE_INFO_TEMP{
|
||||
* ¾ÏúÉÌÃû³Æ STRING(32)<br>
|
||||
*/
|
||||
public static final String DISTRIBUTOR_ACCOUNT_TEMP = "DISTRIBUTOR_ACCOUNT_TEMP";
|
||||
/**
|
||||
* Ö÷Ìåid STRING(32)<br>
|
||||
*/
|
||||
public static final String SUBJECTID = "SUBJECTID";
|
||||
/**
|
||||
* Ö÷ÌåÃû³Æ STRING(200)<br>
|
||||
*/
|
||||
public static final String SUBJECTNAME = "SUBJECTNAME";
|
||||
}
|
||||
@ -89,4 +89,12 @@ public interface D_DEPOSITRETURN_INFO_TEMP{
|
||||
* ÍË¿îÕ˺ŠSTRING(32)<br>
|
||||
*/
|
||||
public static final String refund_number = "refund_number";
|
||||
/**
|
||||
* Ö÷Ìåid STRING(32)<br>
|
||||
*/
|
||||
public static final String SUBJECTID = "SUBJECTID";
|
||||
/**
|
||||
* Ö÷ÌåÃû³Æ STRING(200)<br>
|
||||
*/
|
||||
public static final String SUBJECTNAME = "SUBJECTNAME";
|
||||
}
|
||||
@ -6,7 +6,6 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import jbo.app.tenwa.calc.LB_PAYMENTRETURN_LOG;
|
||||
import jbo.app.tenwa.calc.LC_EBANK_PROCESS;
|
||||
import jbo.app.tenwa.calc.LC_EBANK_TEMP;
|
||||
import jbo.app.tenwa.calc.LC_FUND_INCOME;
|
||||
@ -46,16 +45,6 @@ public class FundIncomeMethod {
|
||||
private String orgId;
|
||||
private String status;
|
||||
private String payType;
|
||||
private String contract_number;
|
||||
private String channel_name;
|
||||
private String product_id;
|
||||
private String customer_name;
|
||||
private String fact_object;
|
||||
private String fact_money;
|
||||
private String CLIENT_BANK;
|
||||
private String CLIENT_ACCOUNT;
|
||||
private String CLIENT_ACCNUMBER;
|
||||
private String username;
|
||||
|
||||
public String getIsChanged() {
|
||||
return isChanged;
|
||||
@ -175,88 +164,7 @@ public class FundIncomeMethod {
|
||||
public void setPayType(String payType) {
|
||||
this.payType = payType;
|
||||
}
|
||||
|
||||
public String getContract_number() {
|
||||
return contract_number;
|
||||
}
|
||||
|
||||
public void setContract_number(String contract_number) {
|
||||
this.contract_number = contract_number;
|
||||
}
|
||||
|
||||
public String getChannel_name() {
|
||||
return channel_name;
|
||||
}
|
||||
|
||||
public void setChannel_name(String channel_name) {
|
||||
this.channel_name = channel_name;
|
||||
}
|
||||
|
||||
public String getProduct_id() {
|
||||
return product_id;
|
||||
}
|
||||
|
||||
public void setProduct_id(String product_id) {
|
||||
this.product_id = product_id;
|
||||
}
|
||||
|
||||
public String getCustomer_name() {
|
||||
return customer_name;
|
||||
}
|
||||
|
||||
public void setCustomer_name(String customer_name) {
|
||||
this.customer_name = customer_name;
|
||||
}
|
||||
|
||||
public String getFact_object() {
|
||||
return fact_object;
|
||||
}
|
||||
|
||||
public void setFact_object(String fact_object) {
|
||||
this.fact_object = fact_object;
|
||||
}
|
||||
|
||||
public String getFact_money() {
|
||||
return fact_money;
|
||||
}
|
||||
|
||||
public void setFact_money(String fact_money) {
|
||||
this.fact_money = fact_money;
|
||||
}
|
||||
|
||||
public String getCLIENT_BANK() {
|
||||
return CLIENT_BANK;
|
||||
}
|
||||
|
||||
public void setCLIENT_BANK(String cLIENT_BANK) {
|
||||
CLIENT_BANK = cLIENT_BANK;
|
||||
}
|
||||
|
||||
public String getCLIENT_ACCOUNT() {
|
||||
return CLIENT_ACCOUNT;
|
||||
}
|
||||
|
||||
public void setCLIENT_ACCOUNT(String cLIENT_ACCOUNT) {
|
||||
CLIENT_ACCOUNT = cLIENT_ACCOUNT;
|
||||
}
|
||||
|
||||
public String getCLIENT_ACCNUMBER() {
|
||||
return CLIENT_ACCNUMBER;
|
||||
}
|
||||
|
||||
public void setCLIENT_ACCNUMBER(String cLIENT_ACCNUMBER) {
|
||||
CLIENT_ACCNUMBER = cLIENT_ACCNUMBER;
|
||||
}
|
||||
|
||||
public String getUsername() {
|
||||
return username;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public String getContactId(JBOTransaction tx) throws SQLException, Exception{
|
||||
public String getContactId(JBOTransaction tx) throws SQLException, Exception{
|
||||
|
||||
SqlObject s = new SqlObject("select customertype,contract_number,customer_id,"
|
||||
+ "LC_FUND_INCOME_TEMP.project_id,Product_Id from LC_FUND_INCOME_TEMP "
|
||||
@ -452,15 +360,15 @@ public String getContactId(JBOTransaction tx) throws SQLException, Exception{
|
||||
try{
|
||||
//获取深圳本方账户
|
||||
BizObject boOAS = JBOFactory.getBizObjectManager(OWN_ACCOUNT.CLASS_NAME,tx)
|
||||
.createQuery("account_purpose='default' and state_='0010' and FbSdk='Y' and own_id='807001002001' ").getSingleResult(false);
|
||||
.createQuery("account_purpose='default' and state_='0010' and FbSdk='Y' and own_id='aa740e4111c111eaaa0000163e0e11e6' ").getSingleResult(false);
|
||||
//获取天津本方账户
|
||||
BizObject boOAT = JBOFactory.getBizObjectManager(OWN_ACCOUNT.CLASS_NAME,tx)
|
||||
.createQuery("account_purpose='default' and state_='0010' and FbSdk='Y' and own_id='807001003' ").getSingleResult(false);
|
||||
.createQuery("account_purpose='default' and state_='0010' and FbSdk='Y' and own_id='d989246c11c111eaaa0000163e0e11e6' ").getSingleResult(false);
|
||||
for(String contractId : contractIds.split("@")){
|
||||
@SuppressWarnings("unchecked")
|
||||
List<BizObject> bos = JBOFactory.getBizObjectManager(LC_FUND_INCOME.CLASS_NAME)
|
||||
.createQuery("contract_id='"+contractId+"' and pay_type='pay_type_out' and pay_status='apply_pass'").getResultList(false);
|
||||
|
||||
.createQuery("contract_id='"+contractId+"' and pay_type='pay_type_out' and pay_status='apply_pass'")
|
||||
.getResultList(false);
|
||||
BigDecimal totalMoney = new BigDecimal("0");
|
||||
int contractCount = 0;
|
||||
if(bos.size() > 0){
|
||||
@ -476,16 +384,14 @@ public String getContactId(JBOTransaction tx) throws SQLException, Exception{
|
||||
otherProperty.put("FlowUnid", flowunid);
|
||||
otherProperty.put("IS_FLOWING", "0");
|
||||
otherProperty.put("ACCOUNTING_DATE", StringFunction.getTodayNow().split(" ")[0]);
|
||||
if("aa740e4111c111eaaa0000163e0e11e6".equals(lci.getAttribute("SUBJECTID").toString())){
|
||||
if(lci != null && "aa740e4111c111eaaa0000163e0e11e6".equals(lci.getAttribute("SUBJECTID").toString())){
|
||||
otherProperty.put("BANK", boOAS.getAttribute("ACC_BANK").getString());
|
||||
otherProperty.put("ACCOUNT", boOAS.getAttribute("ACC_NAME").getString());
|
||||
otherProperty.put("ACC_NUMBER", boOAS.getAttribute("ACC_NUMBER").getString());
|
||||
}else if("d989246c11c111eaaa0000163e0e11e6".equals(lci.getAttribute("SUBJECTID").toString())){
|
||||
}else if(lci != null && "d989246c11c111eaaa0000163e0e11e6".equals(lci.getAttribute("SUBJECTID").toString())){
|
||||
otherProperty.put("BANK", boOAT.getAttribute("ACC_BANK").getString());
|
||||
otherProperty.put("ACCOUNT", boOAT.getAttribute("ACC_NAME").getString());
|
||||
otherProperty.put("ACC_NUMBER", boOAT.getAttribute("ACC_NUMBER").getString());
|
||||
}else{
|
||||
throw new RuntimeException("未查询到对应的主体信息!");
|
||||
}
|
||||
otherProperty.put("INCOME_ID", bo.getAttribute("ID").getString());
|
||||
otherProperty.put(LC_FUND_INCOME.EBANK_STATUS, "03");
|
||||
@ -580,24 +486,6 @@ public String getContactId(JBOTransaction tx) throws SQLException, Exception{
|
||||
try {
|
||||
Transaction sqlTran = Transaction.createTransaction(tx);
|
||||
sqlTran.executeSQL(new SqlObject("delete from lc_fund_income where CONTRACT_ID='"+CONTRACT_ID+"'"));
|
||||
|
||||
BizObjectManager lplManage = JBOFactory.getBizObjectManager(LB_PAYMENTRETURN_LOG.CLASS_NAME,tx);
|
||||
BizObject lpl = lplManage.newObject();
|
||||
lpl.setAttributeValue("contract_no",contract_number);
|
||||
lpl.setAttributeValue("distributor_name",channel_name);
|
||||
lpl.setAttributeValue("product_name",product_id);
|
||||
lpl.setAttributeValue("person_name",customer_name);
|
||||
lpl.setAttributeValue("pay_object",fact_object);
|
||||
lpl.setAttributeValue("pay_number",fact_money);
|
||||
lpl.setAttributeValue("distributor_bank_name",CLIENT_BANK);
|
||||
lpl.setAttributeValue("distributor_Account_name",CLIENT_ACCOUNT);
|
||||
lpl.setAttributeValue("distributor_bank_number",CLIENT_ACCNUMBER);
|
||||
lpl.setAttributeValue("loan_type",payType);
|
||||
lpl.setAttributeValue("INPUTUSERNAME",username);
|
||||
lpl.setAttributeValue("INPUTUSERID",userId);
|
||||
lpl.setAttributeValue("INPUTORGID",orgId);
|
||||
lpl.setAttributeValue("INPUTTIME",StringFunction.getTodayNow());
|
||||
lplManage.saveObject(lpl);
|
||||
sqlTran.commit();
|
||||
return "success";
|
||||
} catch (Exception e) {
|
||||
|
||||
@ -37,6 +37,12 @@ public class CreateVoucherMonthSettlementMission implements Job {
|
||||
vouchermanage.CreateVoucher("PZ2018071200000017");//月结手续费(按月分摊)
|
||||
vouchermanage.CreateVoucher("PZ2018072100000048");//月结-确认贴息收入
|
||||
|
||||
/**
|
||||
* 汽车-直租
|
||||
*/
|
||||
vouchermanage.CreateVoucher("PZ2019070100000028");//月结-确认未实现利息收入
|
||||
vouchermanage.CreateVoucher("PZ2019070100000029");//月结手续费(按月分摊)
|
||||
|
||||
|
||||
|
||||
CreateVoucherMonthSettlementForTradition cmsft = new CreateVoucherMonthSettlementForTradition();
|
||||
@ -45,13 +51,30 @@ public class CreateVoucherMonthSettlementMission implements Job {
|
||||
*/
|
||||
cmsft.CreateVoucher("PZ2018092500000183");//月结-确认未实现利息收入-月付(传统)
|
||||
cmsft.CreateVoucher("PZ2018092500000184");//月结-确认未实现利息收入-季付(传统)
|
||||
cmsft.CreateVoucher("PZ2019120400000151");//月结-确认手续费(传统)-按月分摊
|
||||
/**
|
||||
* 传统-直租
|
||||
*/
|
||||
cmsft.CreateVoucher("PZ2019071800000069");//月结-确认未实现利息收入-月付(传统)
|
||||
cmsft.CreateVoucher("PZ2019071800000070");//月结-确认未实现利息收入-季付(传统)
|
||||
|
||||
/**
|
||||
* 汽车类传统-回租
|
||||
*/
|
||||
cmsft.CreateVoucher("PZ2019072200000106");//月结-确认未实现利息收入-月付(汽车类传统)
|
||||
cmsft.CreateVoucher("PZ2019072200000107");//月结-确认未实现利息收入-季付(汽车类传统)
|
||||
cmsft.CreateVoucher("PZ2019120400000152");//月结-确认手续费(汽车类传统)-按月分摊
|
||||
/**
|
||||
* 汽车类传统-直租
|
||||
*/
|
||||
cmsft.CreateVoucher("PZ2019072300000144");//月结-确认未实现利息收入-月付(汽车类传统)
|
||||
cmsft.CreateVoucher("PZ2019072300000145");//月结-确认未实现利息收入-季付(汽车类传统)
|
||||
String startime2 = StringFunction.getTodayNow();
|
||||
System.out.println("==================================已完成==================================");
|
||||
System.out.println("==================================已完成==================================");
|
||||
System.out.println("==================================已完成==================================");
|
||||
System.out.println("==================================已完成================================");
|
||||
System.out.println("==================================" + startime + "====" + startime2 + "====================================");
|
||||
System.out.println("================================月结执行完毕================================");
|
||||
System.out.println("===============开始时间:"+startime+"====结束时间: "+startime2+"===============");
|
||||
QuartzUtil.insertLog(startime,"com.tenwa.lease.app.quartzmession.CreateVoucherMonthSettlementMission", "success", "成功", curUserId);
|
||||
} catch (Exception e) {
|
||||
try {
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -0,0 +1,57 @@
|
||||
package com.tenwa.lease.app.quartzmession;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Date;
|
||||
import org.apache.log4j.LogManager;
|
||||
import org.apache.log4j.Logger;
|
||||
import org.quartz.Job;
|
||||
import org.quartz.JobExecutionContext;
|
||||
import org.quartz.JobExecutionException;
|
||||
import com.amarsoft.are.jbo.JBOException;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
|
||||
|
||||
/**
|
||||
* 1:动态池数总表跑批
|
||||
* @author xiezhiwen
|
||||
*/
|
||||
public class DynamicPoolTotalRunBatch implements Job{
|
||||
private static final Logger logger = LogManager.getLogger(DynamicPoolTotalRunBatch.class);// 引入logger日志
|
||||
|
||||
public void execute(JobExecutionContext arg0) throws JobExecutionException {
|
||||
Transaction Sqlca=null;
|
||||
try{
|
||||
Sqlca = Transaction.createTransaction("als");
|
||||
String create_time = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss").format(new Date());
|
||||
// 删除当月跑批记录
|
||||
String deleteSql="DELETE FROM LV_DYNAMIC_POOL_TOTAL WHERE DATE_FORMAT(CREATE_TIME,'%Y/%m')=DATE_FORMAT(NOW(),'%Y/%m')";
|
||||
Sqlca.executeSQL(deleteSql);
|
||||
// 将当月跑批数据插入静态池表
|
||||
String insertSql="INSERT INTO LV_DYNAMIC_POOL_TOTAL(SELECT REPLACE(UUID(), '-', '') AS ID,DATE_FORMAT(NOW(),'%Y/%m/%d') AS F1,SUM(IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00)) AS F2,SUM(IFNULL(LRP2.ZC_LOAN_SURPLUS_MONEY,0.00)) AS F3,SUM(CASE WHEN VOC1.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F4,SUM(CASE WHEN VOC2.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F5,SUM(CASE WHEN VOC3.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F6,SUM(CASE WHEN VOC4.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F7,SUM(CASE WHEN VOC5.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F8,SUM(CASE WHEN VOC6.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F9,SUM(CASE WHEN VOC7.CONTRACT_ID IS NOT NULL THEN IFNULL(LRP1.QB_LOAN_SURPLUS_MONEY,0.00) ELSE 0 END) AS F10,DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s') AS CREATE_TIME FROM (SELECT CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype10' AND EBANK_STATUS = '05' AND DATE_FORMAT(FACT_DATE,'%Y/%m')<=DATE_FORMAT(NOW(),'%Y/%m') GROUP BY CONTRACT_ID) LFI LEFT JOIN (SELECT LRP.CONTRACT_ID,SUM(LRP.CORPUS)-SUM(IFNULL(LRI.CORPUS,0)) AS QB_LOAN_SURPLUS_MONEY FROM (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP LEFT JOIN (SELECT CONTRACT_ID,SUM(CORPUS) AS CORPUS,SUM(IFNULL(PENALTY,0)) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID)LRI ON LRI.CONTRACT_ID=LRP.CONTRACT_ID GROUP BY LRP.CONTRACT_ID)LRP1 ON LRP1.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT LRP.CONTRACT_ID,SUM(LRP.CORPUS)-SUM(IFNULL(LRI.CORPUS,0)) AS ZC_LOAN_SURPLUS_MONEY FROM LC_RENT_PLAN LRP LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,SUM(CORPUS) AS CORPUS 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 WHERE DATE_FORMAT(LRP.PLAN_DATE,'%Y/%m/%d')>=DATE_FORMAT(NOW(),'%Y/%m/%d') AND LRP.CORPUS-IFNULL(LRI.CORPUS,0)<>0 AND NOT EXISTS(SELECT 1 FROM VI_OVERDUE_CONTRACT VOC WHERE VOC.CONTRACT_ID=LRP.CONTRACT_ID)GROUP BY LRP.CONTRACT_ID)LRP2 ON LRP2.CONTRACT_ID=LFI.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 1 AND 30 GROUP BY CONTRACT_ID)VOC1 ON VOC1.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 31 AND 60 GROUP BY CONTRACT_ID)VOC2 ON VOC2.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 61 AND 90 GROUP BY CONTRACT_ID)VOC3 ON VOC3.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 91 AND 120 GROUP BY CONTRACT_ID)VOC4 ON VOC4.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 121 AND 150 GROUP BY CONTRACT_ID)VOC5 ON VOC5.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY BETWEEN 151 AND 180 GROUP BY CONTRACT_ID)VOC6 ON VOC6.CONTRACT_ID=LRP1.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MAX(OVERDUE_DAY) AS OVERDUE_DAY FROM VI_OVERDUE_CONTRACT WHERE OVERDUE_DAY>180 GROUP BY CONTRACT_ID)VOC7 ON VOC7.CONTRACT_ID=LRP1.CONTRACT_ID ) ";
|
||||
int con = Sqlca.executeSQL(insertSql);
|
||||
Sqlca.commit();
|
||||
logger.info("动态池汇总数据跑批成功,《《《条数:"+con+"《《《《时间:"+create_time+"《《《"+insertSql);
|
||||
logger.info("动态池汇总数据跑批成功,《《《条数:"+con+"《《《《时间:"+create_time+"《《《"+insertSql);
|
||||
logger.info("动态池汇总数据跑批成功,《《《条数:"+con+"《《《《时间:"+create_time+"《《《"+insertSql);
|
||||
}catch(Exception e){
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池汇总数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>");
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池汇总数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>");
|
||||
logger.info("<<<<<<<<<<<<<<<<<<<<<<动态池汇总数据跑批定时任务执行异常>>>>>>>>>>>>>>>>>>>>>>");
|
||||
try {
|
||||
Sqlca.rollback();
|
||||
} catch (JBOException e1) {
|
||||
e1.printStackTrace();
|
||||
}
|
||||
e.printStackTrace();
|
||||
}finally {
|
||||
if(Sqlca!=null) {
|
||||
try {
|
||||
Sqlca.commit();
|
||||
Sqlca.disConnect();
|
||||
} catch (JBOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
File diff suppressed because one or more lines are too long
@ -103,7 +103,7 @@ public class CreateFiveGradeDataAction {
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.DEPOSITRATIO,BoDI.getAttribute("MARGIN_SCALE_SET"));
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.AGREEMENT,BoDI.getAttribute("LIMIT_END_DATE"));
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_FINANCING_AMOUNT,new BigDecimal(Double.parseDouble(FINANCING_AMOUNT_LOSS)+Double.parseDouble(FINANCING_AMOUNT_SUSPICIOUS)+Double.parseDouble(FINANCING_AMOUNT_SECONDARY)+Double.parseDouble(FINANCING_AMOUNT_ATTENTION)+Double.parseDouble(FINANCING_AMOUNT_NORMAL)).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.THE_REMAINING_AMOUNT, new BigDecimal(Double.parseDouble(BoDI.getAttribute("TOTAL").getString()) - (Double.parseDouble(this.FINANCING_AMOUNT_LOSS) + Double.parseDouble(this.FINANCING_AMOUNT_SUSPICIOUS) + Double.parseDouble(this.FINANCING_AMOUNT_SECONDARY) + Double.parseDouble(this.FINANCING_AMOUNT_ATTENTION) + Double.parseDouble(this.FINANCING_AMOUNT_NORMAL))).setScale(2, 4).toPlainString());
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.THE_REMAINING_AMOUNT,new BigDecimal(Double.parseDouble(BoDI.getAttribute("TOTAL").getString())-TOTAL_OUTSTANDING_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString());
|
||||
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_PRINCIPAL,new BigDecimal(TOTAL_OVERDUE_PRINCIPAL).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||
newBo.setAttributeValue(LB_FIVEGRADEDETAILED_INFO.TOTAL_OVERDUE_INTEREST,new BigDecimal(TOTAL_OVERDUE_INTEREST).setScale(2, BigDecimal.ROUND_HALF_UP));
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user