diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java index 34c3cf3e2..fbdb8d3fc 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java @@ -80,10 +80,10 @@ public class CreateVoucherLoanDistributor { sql="SELECT IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,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(LRPT.INTEREST, 0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY/getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),0) AS INTEREST_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,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("PZ2019070100000004".equals(VOUCHERNO)) { - sql="SELECT IFNULL(LCCT.CLEAN_LEASE_MONEY,0) AS MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,(IFNULL(LCCT.CLEAN_LEASE_MONEY,0)-IFNULL(LCCT.GPS_FEE, 0))-IFNULL(ROUND((IFNULL(LCCT.CLEAN_LEASE_MONEY,0)-IFNULL(LCCT.GPS_FEE, 0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS MONEYTAX,IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(ROUND(IFNULL(LCCT.INSURANCE_PREMIUM, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS INSURANCE_PREMIUM_NOTAX,IFNULL(ROUND(IFNULL(LCCT.PURCHASE_TAX, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS PURCHASE_TAX_NOTAX,IFNULL(ROUND((IFNULL(LCCT.TABLEWARE_FEE, 0)+IFNULL(LCCT.INCIDENTAL, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS OTHERNOTAX,IFNULL(ROUND((IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS MONEYNOTAX,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 LEFT JOIN LB_PRODUCTTOCOMPANY_INFO LPCI ON LPCI.PRODUCT_ID = LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID AND (LPCI.COMPANY_NAME IS NULL OR LPCI.COMPANY_NAME = LCI.SUBJECTNAME) "; + sql="SELECT IFNULL(LCCT.CLEAN_LEASE_MONEY,0) AS MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,((IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(ROUND((IFNULL(LCCT.CLEAN_LEASE_MONEY, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0))-((IFNULL(LCCT.GPS_FEE, 0)) - IFNULL(ROUND((IFNULL(LCCT.GPS_FEE, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0))) AS MONEYTAX,IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(ROUND(IFNULL(LCCT.INSURANCE_PREMIUM, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS INSURANCE_PREMIUM_NOTAX,IFNULL(ROUND(IFNULL(LCCT.PURCHASE_TAX, 0) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS PURCHASE_TAX_NOTAX,IFNULL(ROUND((IFNULL(LCCT.TABLEWARE_FEE, 0)+IFNULL(LCCT.INCIDENTAL, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS OTHERNOTAX,IFNULL(ROUND((IFNULL(LCCT.EQUIP_AMT, 0) - IFNULL(LCCT.FIRST_PAYMENT, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS MONEYNOTAX,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 LEFT JOIN LB_PRODUCTTOCOMPANY_INFO LPCI ON LPCI.PRODUCT_ID = LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID AND (LPCI.COMPANY_NAME IS NULL OR LPCI.COMPANY_NAME = LCI.SUBJECTNAME) "; // 合同起租-直租(分子公司) }else if("PZ2020081100000005".equals(VOUCHERNO)) { - sql="SELECT IFNULL(LCCT.CLEAN_LEASE_MONEY,0) AS MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,(IFNULL(LCCT.CLEAN_LEASE_MONEY,0)-IFNULL(LCCT.GPS_FEE, 0))-IFNULL(ROUND((IFNULL(LCCT.CLEAN_LEASE_MONEY,0)-IFNULL(LCCT.GPS_FEE, 0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS MONEYTAX,IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(ROUND((IFNULL(LCCT.CLEAN_LEASE_MONEY,0)-IFNULL(LCCT.GPS_FEE, 0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS MONEYNOTAX,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 LEFT JOIN LB_PRODUCTTOCOMPANY_INFO LPCI ON LPCI.PRODUCT_ID = LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID AND (LPCI.COMPANY_NAME IS NOT NULL AND LPCI.COMPANY_NAME <> LCI.SUBJECTNAME) "; + sql="SELECT IFNULL(LCCT.CLEAN_LEASE_MONEY,0) AS MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,((IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) - IFNULL(ROUND((IFNULL(LCCT.CLEAN_LEASE_MONEY, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0))-((IFNULL(LCCT.GPS_FEE, 0)) - IFNULL(ROUND((IFNULL(LCCT.GPS_FEE, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0))) AS MONEYTAX,IFNULL(LCCT.GPS_FEE, 0) AS GPS_FEE_FINANCE,IFNULL(ROUND((IFNULL(LCCT.CLEAN_LEASE_MONEY,0)-IFNULL(LCCT.GPS_FEE, 0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS MONEYNOTAX,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 LEFT JOIN LB_PRODUCTTOCOMPANY_INFO LPCI ON LPCI.PRODUCT_ID = LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID AND (LPCI.COMPANY_NAME IS NOT NULL AND LPCI.COMPANY_NAME <> LCI.SUBJECTNAME) "; // 购置融资租赁产-回租 }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,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 ";