diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java index 4b91c46dc..78b8e9ab7 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java @@ -54,11 +54,11 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{ //购置融资租赁资产-汽车 if("PZ2018092500000196".equals(VOUCHERNO) || "PZ2018092600000234".equals(VOUCHERNO) || "PZ2018092500000198".equals(VOUCHERNO) || "PZ2018092600000236".equals(VOUCHERNO)) { - sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%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 FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.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 LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID=:FLOWUNID "; + sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%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 FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.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 LFIT1.FLOWUNID=:FLOWUNID "; }else if("PZ2018092500000197".equals(VOUCHERNO) || "PZ2018092600000235".equals(VOUCHERNO)) {// 购置融资租赁资产-其他 - sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%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 FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.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 LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID = :FLOWUNID "; + sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%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 FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.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 LFIT1.FLOWUNID = :FLOWUNID "; }else{// 经销商支付的预付款(首付) - sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%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 FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.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 LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID = :FLOWUNID "; + sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%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 FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.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 LFIT1.FLOWUNID = :FLOWUNID "; } // 非差额放款部分 @@ -81,29 +81,29 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{ String userid ="admin"; for (int i=0;i param=new HashMap(); String MONEY=null; - String FEEMONEY=null; String ACCOUNT_DATE=null; String FACT_DATE=null; String CONTRACT_ID=null; diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java index d191ca267..41e8f7feb 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java @@ -28,7 +28,7 @@ public class CreateVoucherOnhireTradition extends BaseBussiness{ // 定义全局对象 String OTHERSMONEY=null; // 车款-首付款+保险+其他 String EQUIP_SUBFIRST=null; // 车款-首付款 - String INSURANCE_PREMIUM_ADD_OTHER=null; // 保险+其他 + String INSURANCE_PREMIUM_OTHER=null; // 保险+其他 String INTEREST=null; // 利息 String INTERESTNOTAX=null; // 利息(不含税) String TAX=null; // 利息的税金 @@ -48,9 +48,9 @@ public class CreateVoucherOnhireTradition extends BaseBussiness{ String sql=""; if("PZ2018092500000170".equals(VOUCHERNO) || "PZ2018092800000247".equals(VOUCHERNO)) { - sql="SELECT (LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT + LCCT.INSURANCE_PREMIUM +LCCT.OTHER_MONEY) AS OTHERSMONEY,(LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT ) AS EQUIP_SUBFIRST,( LCCT.INSURANCE_PREMIUM +LCCT.OTHER_MONEY) AS INSURANCE_OTHER,LRPT.INTEREST,ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS INTERESTNOTAX,(LRPT.INTEREST - ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) AS TAX,LFIT.ACCOUNTING_DATE 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT FLOWUNID,MIN(CONTRACT_ID) AS CONTRACT_ID,MIN(ACC_NUMBER) AS ACC_NUMBER,MIN(ACCOUNTING_DATE) AS ACCOUNTING_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT ON LFIT.CONTRACT_ID=LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID 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 LCI.BUSINESSTYPE='2' AND LFIT.FLOWUNID=:FLOWUNID "; + sql="SELECT (LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT + LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY) AS OTHERSMONEY,(LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT) AS EQUIP_SUBFIRST,(LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY) AS INSURANCE_OTHER,LRPT.INTEREST,ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS INTERESTNOTAX,(LRPT.INTEREST - ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) AS 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MIN(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY CONTRACT_ID) LRPT ON LRPT.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 LCCT.FLOWUNID = :FLOWUNID "; }else { - sql="SELECT (LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT + LCCT.INSURANCE_PREMIUM +LCCT.OTHER_MONEY) AS OTHERSMONEY,(LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT ) AS EQUIP_SUBFIRST,( LCCT.INSURANCE_PREMIUM +LCCT.OTHER_MONEY) AS INSURANCE_OTHER,LRPT.INTEREST,ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS INTERESTNOTAX,(LRPT.INTEREST - ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) AS TAX,LFIT.ACCOUNTING_DATE 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT FLOWUNID,MIN(CONTRACT_ID) AS CONTRACT_ID,MIN(ACC_NUMBER) AS ACC_NUMBER,MIN(ACCOUNTING_DATE) AS ACCOUNTING_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT ON LFIT.CONTRACT_ID=LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT FLOWUNID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID 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 LCI.BUSINESSTYPE='3' AND LFIT.FLOWUNID=:FLOWUNID "; + sql="SELECT (LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT + LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY) AS OTHERSMONEY,(LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT) AS EQUIP_SUBFIRST,(LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY) AS INSURANCE_OTHER,LRPT.INTEREST,ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS INTERESTNOTAX,(LRPT.INTEREST - ROUND(LRPT.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) AS 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,MIN(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY CONTRACT_ID) LRPT ON LRPT.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 LCCT.FLOWUNID = :FLOWUNID "; } param.clear(); @@ -67,30 +67,30 @@ public class CreateVoucherOnhireTradition extends BaseBussiness{ String userid ="admin"; for (int i=0;i getJavaParam(JBOTransaction tx, Map param) throws BusinessException { MapreturnValue=new HashMap(); returnValue.putAll(param); - // 获取设备款 + // 获取设备款INSURANCE_OTHER String INSURANCE_PREMIUM_OTHER=param.get("INSURANCE_PREMIUM_OTHER")==null?"0.00":param.get("INSURANCE_PREMIUM_OTHER"); returnValue.put("MONEY",INSURANCE_PREMIUM_OTHER); return returnValue;