凭证相关--季付月结凭证逻辑调整

This commit is contained in:
tenwa666 2019-04-22 14:19:50 +08:00
parent 2d5b465ae2
commit 0432047450

View File

@ -60,7 +60,7 @@ public class CreateVoucherMonthSettlementForTradition {
}
// 月结--确认未实现利息收入-季付(传统)
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_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_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 '%确认未实现利息收入-季付%');";
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 '%确认未实现利息收入-季付%');";
}
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);