From 24d68d64539051919b3193fb604c5e8ffd1c1286 Mon Sep 17 00:00:00 2001 From: xiezhiwen Date: Tue, 23 Oct 2018 15:03:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=87=AD=E8=AF=81=E7=9B=B8=E5=85=B3--=E6=96=B0?= =?UTF-8?q?=E5=88=86=E5=BD=95=E8=B5=B7=E7=A7=9F=E5=87=AD=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CommLoanCautionMoney.java | 23 +++ .../CommLoanFinancingSubOthersMoney.java | 23 +++ ...irstAddFinancingInterestHandlingMoney.java | 23 +++ ...ommLoanFirstAddFinancingInterestMoney.java | 23 +++ .../CommLoanFirstAddFinancingMoney.java | 23 +++ .../CommLoanFirstAddHandlingMoney.java | 23 +++ .../CommLoanInterestAddHandlingMoney.java | 23 +++ .../CreateVoucherLoan/FundGPSFee.java | 2 +- .../CreateVoucherLoanDistributor.java | 143 +++++++++++------- .../ContractOnhireVoucher.java | 69 +++------ .../auxiliaryInfo/auxiliaryBusinessType.java | 8 +- .../auxiliaryInfo/auxiliaryCashFlow.java | 22 +++ .../auxiliaryInfo/auxiliaryContractAcc.java | 20 +-- .../auxiliaryContractCustomer.java | 19 ++- .../auxiliaryContractNumber.java | 2 - .../serviceImp/CreateVoucherServiceImpl.java | 57 +------ .../voucher/serviceImp/VoucherToV8Impl.java | 8 +- 17 files changed, 324 insertions(+), 187 deletions(-) create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanCautionMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFinancingSubOthersMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestHandlingMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddHandlingMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanInterestAddHandlingMoney.java create mode 100644 src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryCashFlow.java diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanCautionMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanCautionMoney.java new file mode 100644 index 000000000..9b216736f --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanCautionMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 保证金 + * @author xiezhiwen + */ +public class CommLoanCautionMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("CAUTION_MONEY")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFinancingSubOthersMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFinancingSubOthersMoney.java new file mode 100644 index 000000000..8445fd97a --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFinancingSubOthersMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 首付款+融资额-首付款-手续费-保证金-GPS + * @author xiezhiwen + */ +public class CommLoanFinancingSubOthersMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("FINANCING_SUB_OTHERS")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestHandlingMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestHandlingMoney.java new file mode 100644 index 000000000..48b5a8b87 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestHandlingMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 融资金额+首付款+利息(含税)+手续费(不含税) + * @author xiezhiwen + */ +public class CommLoanFirstAddFinancingInterestHandlingMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("FIRST_ADD_FINANCING_INTEREST_HANDLING")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestMoney.java new file mode 100644 index 000000000..19b66c53b --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingInterestMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 融资金额+首付款+利息(含税) + * @author xiezhiwen + */ +public class CommLoanFirstAddFinancingInterestMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("FIRST_ADD_FINANCING_INTEREST")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingMoney.java new file mode 100644 index 000000000..0b85bf2ad --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddFinancingMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 首付款+融资额 + * @author xiezhiwen + */ +public class CommLoanFirstAddFinancingMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("FIRST_ADD_FINANCING")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddHandlingMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddHandlingMoney.java new file mode 100644 index 000000000..8e5dff5dc --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanFirstAddHandlingMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 首付款+手续费 + * @author xiezhiwen + */ +public class CommLoanFirstAddHandlingMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("FIRST_ADD_HANDLING")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanInterestAddHandlingMoney.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanInterestAddHandlingMoney.java new file mode 100644 index 000000000..caac23f77 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/CommLoanInterestAddHandlingMoney.java @@ -0,0 +1,23 @@ +package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoan; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 利息(含税)+手续费(不含税) + * @author xiezhiwen + */ +public class CommLoanInterestAddHandlingMoney implements VoucherJavaParamService{ + + @Override + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("MONEY",param.get("INTEREST_ADD_HANDLING")); + return returnValue; + } + +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/FundGPSFee.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/FundGPSFee.java index 532ecf272..d51f3cb5f 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/FundGPSFee.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoan/FundGPSFee.java @@ -16,7 +16,7 @@ public class FundGPSFee implements VoucherJavaParamService{ returnValue.putAll(param); // GPS String GPS_FEE_FINANCE=param.get("GPS_FEE_FINANCE")==null?"0.00":param.get("GPS_FEE_FINANCE"); - returnValue.put("FUNDTYPE","01"); + //returnValue.put("FUNDTYPE","01"); returnValue.put("MONEY",GPS_FEE_FINANCE); return returnValue; } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java index 30b1a7d3b..ed16b054e 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java @@ -25,6 +25,15 @@ public class CreateVoucherLoanDistributor { String MONEY=null; String MONEYNOTAX=null; String MONEYTAX=null; + String GPS_FEE_FINANCE=null; + String CAUTION_MONEY=null; + String INTEREST=null; + String FIRST_ADD_FINANCING=null;//首付款+融资额 + String FINANCING_SUB_OTHERS=null;//首付款+融资额-首付款-手续费-保证金-GPS + String FIRST_ADD_HANDLING=null;//首付款+手续费 + String FIRST_ADD_FINANCING_INTEREST=null;//融资金额+首付款+利息(含税) + String FIRST_ADD_FINANCING_INTEREST_HANDLING=null;//融资金额+首付款+利息(含税)+手续费(不含税) + String INTEREST_ADD_HANDLING=null;//利息(含税)+手续费(不含税) String ACCOUNT_DATE=null; String FACT_DATE=null; String CONTRACT_ID=null; @@ -33,49 +42,55 @@ public class CreateVoucherLoanDistributor { String leas_form=null; String DISTRIBUTOR_ID=null; String DISTRIBUTOR_NAME=null; - String CARID=null; - String CARMODEL=null; + String F_I_TYPE=null;// 集团内外判断条件 集团内/01 || 集团外/02 String CUSTID=null; String CUSTNAME=null; String CUSTOMERTYPE=null; String BUSINESSTYPE=null; + String ACC_NUMBER=null; + String TAX_TYPE=null; String sql=""; String moneyDataSource=""; param.clear(); map.put("FlowUnid", FlowUnid); - //起租-给经销商放款-车款全款 - if("PZ2018070900000002".equals(VOUCHERNO)||"PZ2018072400000060".equals(VOUCHERNO)){ - moneyDataSource="LCCT.EQUIP_AMT"; + + // 确认GPS收入 + if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){ + moneyDataSource="LCCT.GPS_FEE"; + TAX_TYPE="GPS"; } - //起租-经销商支付的预付款(首付) + //收取首付款 if("PZ2018070900000003".equals(VOUCHERNO)||"PZ2018080200000065".equals(VOUCHERNO)){ moneyDataSource="LCCT.FIRST_PAYMENT"; + TAX_TYPE="本金"; } - - //记录保证金 + //收取客户保证金 if("PZ2018071000000004".equals(VOUCHERNO)||"PZ2018071000000006".equals(VOUCHERNO)||"PZ2018080300000070".equals(VOUCHERNO)||"PZ2018080300000071".equals(VOUCHERNO)){ moneyDataSource="LCCT.CAUTION_MONEY"; + TAX_TYPE="本金"; } - // GPS安装服务费参融/不参融 - if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)||"PZ2018082400000147".equals(VOUCHERNO)||"PZ2018082400000148".equals(VOUCHERNO)||"PZ2018082600000151".equals(VOUCHERNO)||"PZ2018082600000152".equals(VOUCHERNO)){ - moneyDataSource="LCCT.GPS_FEE"; - } - // 记录给经销商放款-其他(购置税/保险/装饰装潢等) - if("PZ2018073100000062".equals(VOUCHERNO)||"PZ2018080300000066".equals(VOUCHERNO)){ - moneyDataSource="(LCCT.PURCHASE_TAX+LCCT.INSURANCE_PREMIUM+LCCT.INCIDENTAL+LCCT.TABLEWARE_FEE)"; + //收取客户手续费(一次性确认收入)/按月分摊 + if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO) || "PZ2018071000000009".equals(VOUCHERNO)||"PZ2018080300000073".equals(VOUCHERNO)){ + moneyDataSource="LCCT.HANDLING_CHARGE_MONEY"; + TAX_TYPE="手续费"; } - - // GPS参融 - if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){ - sql="SELECT "+moneyDataSource+ " AS MONEY,ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'GPS',LCCT.START_DATE),2) AS MONEYNOTAX, ("+moneyDataSource+ "-ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'GPS',LCCT.START_DATE),2)) 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,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 LC_CALC_CONDITION LCCT INNER JOIN (select contract_id,FLOWUNID,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE from lc_fund_income_temp where fee_type='feetype10' group by contract_id,FLOWUNID) lfit ON lfit.contract_id=lcct.contract_id LEFT JOIN LB_CONTRACT_INFO LCI 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCCT.GPS_FEE_FINA='finatype02' AND lfit.FLOWUNID=:FLOWUNID"; - // GPS不参融 - }else if("PZ2018082400000147".equals(VOUCHERNO)||"PZ2018082400000148".equals(VOUCHERNO)||"PZ2018082600000151".equals(VOUCHERNO)||"PZ2018082600000152".equals(VOUCHERNO)){ - sql="SELECT "+moneyDataSource+ " AS MONEY,ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'GPS',LCCT.START_DATE),2) AS MONEYNOTAX, ("+moneyDataSource+ "-ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'GPS',LCCT.START_DATE),2)) 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,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 LC_CALC_CONDITION LCCT INNER JOIN (select contract_id,FLOWUNID,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE from lc_fund_income_temp where fee_type='feetype10' group by contract_id,FLOWUNID) lfit ON lfit.contract_id=lcct.contract_id LEFT JOIN LB_CONTRACT_INFO LCI 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCCT.GPS_FEE_FINA='finatype01' AND lfit.FLOWUNID=:FLOWUNID"; + if("PZ2018070900000002".equals(VOUCHERNO)||"PZ2018072400000060".equals(VOUCHERNO) || "PZ2018071000000005".equals(VOUCHERNO)||"PZ2018080300000069".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO)||"PZ2018080300000071".equals(VOUCHERNO)) { + 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.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.FIRST_PAYMENT,0) + IFNULL(LCCT.CLEAN_LEASE_MONEY,0) + IFNULL(LRPT.INTEREST,0) AS FIRST_ADD_FINANCING_INTEREST,IFNULL(LCCT.FIRST_PAYMENT,0) + IFNULL(LCCT.CLEAN_LEASE_MONEY,0) + IFNULL(LRPT.INTEREST,0) + IFNULL(ROUND(LCCT.HANDLING_CHARGE_MONEY / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS FIRST_ADD_FINANCING_INTEREST_HANDLING,IFNULL(LRPT.INTEREST,0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY,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 FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,MIN(ACC_NUMBER) ACC_NUMBER FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_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.FLOWUNID = :FLOWUNID "; }else { - sql="SELECT "+moneyDataSource+ " AS MONEY,ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS MONEYNOTAX, ("+moneyDataSource+ "-ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) 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,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 LC_CALC_CONDITION LCCT INNER JOIN (select contract_id,FLOWUNID,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE from lc_fund_income_temp where fee_type='feetype10' group by contract_id,FLOWUNID) lfit ON lfit.contract_id=lcct.contract_id LEFT JOIN LB_CONTRACT_INFO LCI 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE lfit.FLOWUNID=:FLOWUNID"; + sql="SELECT IFNULL("+moneyDataSource+", 0) AS MONEY,IFNULL(ROUND("+moneyDataSource+"/getTax (lci.LEAS_FORM,'"+TAX_TYPE+"',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL("+moneyDataSource+" - ROUND("+moneyDataSource+" / getTax (lci.LEAS_FORM,'"+TAX_TYPE+"',LCCT.START_DATE),2),0) AS MONEYTAX,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.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.FIRST_PAYMENT,0) + IFNULL(LCCT.CLEAN_LEASE_MONEY,0) + IFNULL(LRPT.INTEREST,0) AS FIRST_ADD_FINANCING_INTEREST,IFNULL(LCCT.FIRST_PAYMENT,0) + IFNULL(LCCT.CLEAN_LEASE_MONEY,0) + IFNULL(LRPT.INTEREST,0) + IFNULL(ROUND(LCCT.HANDLING_CHARGE_MONEY / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) AS FIRST_ADD_FINANCING_INTEREST_HANDLING,IFNULL(LRPT.INTEREST,0) + IFNULL(LCCT.HANDLING_CHARGE_MONEY,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 FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,MIN(ACC_NUMBER) ACC_NUMBER FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_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.FLOWUNID = :FLOWUNID "; + } + //sql="SELECT "+moneyDataSource+ " AS MONEY,ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2) AS MONEYNOTAX, ("+moneyDataSource+ "-ROUND("+moneyDataSource+ "/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)) 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,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_CALC_CONDITION LCCT INNER JOIN (select contract_id,FLOWUNID,MAX(ACC_NUMBER) AS ACC_NUMBER from lc_fund_income_temp where fee_type='feetype10' group by contract_id,FLOWUNID) lfit ON lfit.contract_id=lcct.contract_id LEFT JOIN LB_CONTRACT_INFO LCI 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE lfit.FLOWUNID=:FLOWUNID"; + + // 手续费收入(一次性确认收入) + if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO) || "PZ2018071000000005".equals(VOUCHERNO)||"PZ2018080300000069".equals(VOUCHERNO)){ + sql+=" AND lcct.HANDLING_CHARGE_MONEY_TYPE='0010'"; } + // 收到手续费(按月分摊收入) + if("PZ2018071000000009".equals(VOUCHERNO)||"PZ2018080300000073".equals(VOUCHERNO) || "PZ2018071000000006".equals(VOUCHERNO)||"PZ2018080300000071".equals(VOUCHERNO)){ + sql+=" AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020'"; + } List> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map); @@ -83,30 +98,45 @@ public class CreateVoucherLoanDistributor { String VOUCHER_TYPE="1";// 凭证分类 金蝶 String userid ="admin"; for (int i=0;i0){ - MONEYNOTAX=dataList.get(i).get("MONEYNOTAX").toString(); - MONEYTAX=dataList.get(i).get("MONEYTAX").toString(); - 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(); + MONEY=dataList.get(i).get("MONEY"); + MONEYNOTAX=dataList.get(i).get("MONEYNOTAX"); + MONEYTAX=dataList.get(i).get("MONEYTAX"); + GPS_FEE_FINANCE=dataList.get(i).get("GPS_FEE_FINANCE"); + CAUTION_MONEY=dataList.get(i).get("CAUTION_MONEY"); + INTEREST=dataList.get(i).get("INTEREST").toString(); + FIRST_ADD_FINANCING=dataList.get(i).get("FIRST_ADD_FINANCING"); + FINANCING_SUB_OTHERS=dataList.get(i).get("FINANCING_SUB_OTHERS"); + FIRST_ADD_HANDLING=dataList.get(i).get("FIRST_ADD_HANDLING"); + FIRST_ADD_FINANCING_INTEREST=dataList.get(i).get("FIRST_ADD_FINANCING_INTEREST"); + FIRST_ADD_FINANCING_INTEREST_HANDLING=dataList.get(i).get("FIRST_ADD_FINANCING_INTEREST_HANDLING"); + 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"); + CONTRACT_ID=dataList.get(i).get("CONTRACT_ID"); + CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER"); + PROJECT_NAME=dataList.get(i).get("PROJECT_NAME"); + leas_form=dataList.get(i).get("LEAS_FORM"); 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"); + F_I_TYPE=dataList.get(i).get("F_I_TYPE"); CUSTID=dataList.get(i).get("CUSTOMERID"); CUSTNAME=dataList.get(i).get("CUSTOMERNAME"); CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE"); BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE"); + ACC_NUMBER=dataList.get(i).get("ACC_NUMBER"); param.put("FACT_MONEY",MONEY); param.put("INTERESTNOTAX",MONEYNOTAX); param.put("TAX",MONEYTAX); + param.put("GPS_FEE_FINANCE",GPS_FEE_FINANCE); + param.put("CAUTION_MONEY",CAUTION_MONEY); + param.put("INTEREST",INTEREST); + param.put("FIRST_ADD_FINANCING",FIRST_ADD_FINANCING); + param.put("FINANCING_SUB_OTHERS",FINANCING_SUB_OTHERS); + param.put("FIRST_ADD_HANDLING",FIRST_ADD_HANDLING); + param.put("FIRST_ADD_FINANCING_INTEREST",FIRST_ADD_FINANCING_INTEREST); + param.put("FIRST_ADD_FINANCING_INTEREST_HANDLING",FIRST_ADD_FINANCING_INTEREST_HANDLING); + param.put("INTEREST_ADD_HANDLING",INTEREST_ADD_HANDLING); param.put("ACCOUNT_DATE",ACCOUNT_DATE); param.put("FACT_DATE",FACT_DATE); param.put("CONTRACT_ID",CONTRACT_ID); @@ -115,30 +145,33 @@ public class CreateVoucherLoanDistributor { 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("F_I_TYPE",F_I_TYPE); param.put("CUSTID",CUSTID); param.put("CUSTNAME",CUSTNAME); param.put("CUSTOMERTYPE",CUSTOMERTYPE); param.put("BUSINESSTYPE",BUSINESSTYPE); + param.put("ACC_NUMBER",ACC_NUMBER); param.put("VOUCHERNO",VOUCHERNO); if("1".equals(BUSINESSTYPE)){ - if("PZ2018073100000062".equals(VOUCHERNO)||"PZ2018080300000066".equals(VOUCHERNO)||"PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){ - param.put("LEASFORMASSET", "10"); // 融资租赁资产 - param.put("DEPT", "02"); // 部门 - }else{ - param.put("LEASFORMASSET", "04"); // 融资租赁资产 - param.put("DEPT", "02"); // 部门 + if("PZ2018073100000061".equals(VOUCHERNO)||"PZ2018080300000068".equals(VOUCHERNO)){// 确认GPS收入 + param.put("CASHFLOW", "");// 现金流项目 + param.put("BUSINESSTYPE", "0601");// 主营类型 + }else if("PZ2018071000000007".equals(VOUCHERNO)||"PZ2018080300000072".equals(VOUCHERNO)){// 收取客户手续费 + param.put("CASHFLOW", "");// 现金流项目 + param.put("BUSINESSTYPE", "91"); + }else if("PZ2018070900000002".equals(VOUCHERNO)||"PZ2018072400000060".equals(VOUCHERNO)){// 购置融资租赁资产 + if("f_i_type01".equals(F_I_TYPE)) {// 集团内 + param.put("CASHFLOW", "11212");// 现金流项目 + }else {// 集团外 + param.put("CASHFLOW", "11213");// 现金流项目 + } + param.put("BUSINESSTYPE", ""); + }else { + param.put("CASHFLOW", "");// 现金流项目 + param.put("BUSINESSTYPE", "");// 主营类型 } - if("03".equals(CUSTOMERTYPE)){ // 如果是个人业务 - param.put("LEASINCOMEFORM", "02"); // C端 - }else if("01".equals(CUSTOMERTYPE)){ - param.put("LEASINCOMEFORM", "01"); // B端 - } } - //param.put("FUNDTYPE", ""); // 主营类型 - param.put("BUSINESSTYPE", "06"); param.put("FlowUnid", FlowUnid); map.clear(); @@ -148,9 +181,9 @@ public class CreateVoucherLoanDistributor { if(vouch!=null){ vs.createVoucher(vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca); - }} - } - + } + } + if(Sqlca!=null){ Sqlca.commit(); diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireVoucher.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireVoucher.java index 7e6c1d996..42a43b9c9 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireVoucher.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireVoucher.java @@ -2,11 +2,7 @@ package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle; import com.amarsoft.awe.util.Transaction; import com.tenwa.flow.baseBussion.BaseBussiness; -import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherCustomerRentOrFee; -import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherHandlingMoney; import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherLoanDistributor; -import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherToCommission; -import com.tenwa.voucher.service.VoucherJavaParamService; /** * 起租相关凭证, 实际付款(汽车)流程结束后生成 * @author xiezhiwen @@ -17,51 +13,30 @@ public class ContractOnhireVoucher extends BaseBussiness { this.initBussinessParam(Sqlca); String FlowUnid=this.getAttribute("FlowUnid").toString(); CreateVoucherLoanDistributor cvld=new CreateVoucherLoanDistributor(); - cvld.CreateVoucher(FlowUnid, "PZ2018070900000002");//购置融资租赁资产-回 - cvld.CreateVoucher(FlowUnid, "PZ2018072400000060");//购置融资租赁资产-直 + cvld.CreateVoucher(FlowUnid, "PZ2018073100000061");// 确认GPS收入 --回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080300000068");// 确认GPS收入 --直租 - cvld.CreateVoucher(FlowUnid, "PZ2018070900000003");//经销商支付的预付款(首付)-回租 - cvld.CreateVoucher(FlowUnid, "PZ2018080200000065");//经销商支付的预付款(首付)-直租 + cvld.CreateVoucher(FlowUnid, "PZ2018070900000003");// 收取首付款-回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080200000065");// 收取首付款-直租 - cvld.CreateVoucher(FlowUnid, "PZ2018071000000004");//记录保证金(合同结束后要退回给客户,或者冲抵其他款项)--回租 - cvld.CreateVoucher(FlowUnid, "PZ2018080300000070");//记录保证金(合同结束后要退回给客户,或者冲抵其他款项)--直租 - - cvld.CreateVoucher(FlowUnid, "PZ2018071000000006");//给经销商放款冲抵客户保证金--回租 - cvld.CreateVoucher(FlowUnid, "PZ2018080300000071");//给经销商放款冲抵客户保证金--直租 - - cvld.CreateVoucher(FlowUnid, "PZ2018073100000062");//记录给经销商放款-其他(购置税/保险/装饰装潢等) --回租 - cvld.CreateVoucher(FlowUnid, "PZ2018080300000066");//记录给经销商放款-其他(购置税/保险/装饰装潢等)--直租 - - cvld.CreateVoucher(FlowUnid, "PZ2018073100000061");//记录GPS安装服务费(参融)--回租 - cvld.CreateVoucher(FlowUnid, "PZ2018080300000068");//记录GPS安装服务费(参融)--直租 - - cvld.CreateVoucher(FlowUnid, "PZ2018082400000147");//记录GPS安装服务费(不参融)--回租 - cvld.CreateVoucher(FlowUnid, "PZ2018082400000148");//记录GPS安装服务费(不参融)--直租 - - cvld.CreateVoucher(FlowUnid, "PZ2018082600000151");//给经销商放款冲抵GPS(不参融)--回租 - cvld.CreateVoucher(FlowUnid, "PZ2018082600000152");//给经销商放款冲抵GPS(不参融)--直租 - - CreateVoucherCustomerRentOrFee cvcr=new CreateVoucherCustomerRentOrFee(); - cvcr.CreateVoucher(FlowUnid, "PZ2018071000000005");//客户支付的应收账款总金额 - cvcr.CreateVoucher(FlowUnid, "PZ2018080300000069");//客户支付的应收账款总金额 - - cvcr.CreateVoucher(FlowUnid, "PZ2018071100000010");//给经销商放款-差额放款--回租 - cvcr.CreateVoucher(FlowUnid, "PZ2018080300000074");//给经销商放款-差额放款--直租 - - CreateVoucherHandlingMoney cvhl=new CreateVoucherHandlingMoney(); - cvhl.CreateVoucher(FlowUnid, "PZ2018071000000007");//应收客户手续费(一次性确认收入)--回租 - cvhl.CreateVoucher(FlowUnid, "PZ2018080300000072");//应收客户手续费(一次性确认收入)--直租 - - cvhl.CreateVoucher(FlowUnid, "PZ2018071000000009");//应收客户手续费(按月分摊收入)--回租 - cvhl.CreateVoucher(FlowUnid, "PZ2018080300000073");//应收客户手续费(按月分摊收入)--直租 - - cvhl.CreateVoucher(FlowUnid, "PZ2018082600000149");//给经销商放款冲抵手续费--回租 - cvhl.CreateVoucher(FlowUnid, "PZ2018082600000150");//给经销商放款冲抵手续费--直租 - - CreateVoucherToCommission cvtc = new CreateVoucherToCommission(); - cvtc.CreateVoucher(FlowUnid, "PZ2018082000000140");// 记录佣金--回租 - cvtc.CreateVoucher(FlowUnid, "PZ2018082000000141");// 记录佣金--直租' - //CreateVoucherCustCautionMoneyIncome cvci=new CreateVoucherCustCautionMoneyIncome(); + cvld.CreateVoucher(FlowUnid, "PZ2018070900000002");// 购置融资租赁资产-回 + cvld.CreateVoucher(FlowUnid, "PZ2018072400000060");// 购置融资租赁资产-直 + + cvld.CreateVoucher(FlowUnid, "PZ2018071000000005");// 合同起租(一次性确认收入)-回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080300000069");// 合同起租(一次性确认收入)-直租 + + cvld.CreateVoucher(FlowUnid, "PZ2018071000000006");// 合同起租(按月分摊收入)--回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080300000071");// 合同起租(按月分摊收入)--直租 + + cvld.CreateVoucher(FlowUnid, "PZ2018071000000004");// 收取客户保证金--回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080300000070");// 收取客户保证金--直租 + + cvld.CreateVoucher(FlowUnid, "PZ2018071000000007");// 收取客户手续费(一次性确认收入)--回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080300000072");// 收取客户手续费(一次性确认收入)--直租 + + cvld.CreateVoucher(FlowUnid, "PZ2018071000000009");// 收取客户手续费(按月分摊收入)--回租 + cvld.CreateVoucher(FlowUnid, "PZ2018080300000073");// 收取客户手续费(按月分摊收入)--直租 + return "true"; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryBusinessType.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryBusinessType.java index a8d706f08..096e1a481 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryBusinessType.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryBusinessType.java @@ -6,15 +6,15 @@ import java.util.Map; import com.amarsoft.are.jbo.JBOTransaction; import com.tenwa.comm.exception.BusinessException; import com.tenwa.voucher.service.VoucherJavaParamService; - +/** + * 主营类型 + * @author xiezhiwen + */ public class auxiliaryBusinessType implements VoucherJavaParamService { - @Override public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { MapreturnValue=new HashMap(); - String PLAN_LIST=param.get("PLAN_LIST"); String BUSINESSTYPE=param.get("BUSINESSTYPE"); - returnValue.put("PLAN_LIST",PLAN_LIST); returnValue.put("BUSINESSTYPE",BUSINESSTYPE); return returnValue; } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryCashFlow.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryCashFlow.java new file mode 100644 index 000000000..577f4c4a6 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryCashFlow.java @@ -0,0 +1,22 @@ +package com.tenwa.voucher.CreateVoucherProcess.auxiliaryInfo; + +import java.util.HashMap; +import java.util.Map; + +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.comm.exception.BusinessException; +import com.tenwa.voucher.service.VoucherJavaParamService; +/** + * 现金流量项目 + * @author xiezhiwen + */ +public class auxiliaryCashFlow implements VoucherJavaParamService { + + public Map getJavaParam(JBOTransaction tx, + Map param) throws BusinessException { + MapreturnValue=new HashMap(); + String CASHFLOW=param.get("CASHFLOW"); + returnValue.put("CASHFLOW",CASHFLOW); + return returnValue; + } +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractAcc.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractAcc.java index 8ca010eb6..d5dce7591 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractAcc.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractAcc.java @@ -6,15 +6,17 @@ import java.util.Map; import com.amarsoft.are.jbo.JBOTransaction; import com.tenwa.comm.exception.BusinessException; import com.tenwa.voucher.service.VoucherJavaParamService; - +/** + * 银行账号 + * @author xiezhiwen + */ public class auxiliaryContractAcc implements VoucherJavaParamService { -@Override -public Map getJavaParam(JBOTransaction tx, - Map param) throws BusinessException { - MapreturnValue=new HashMap(); - String ACC_NUMBER=param.get("ACC_NUMBER"); - returnValue.put("ACC_NUMBER",ACC_NUMBER); - return returnValue; -} + public Map getJavaParam(JBOTransaction tx, + Map param) throws BusinessException { + MapreturnValue=new HashMap(); + String ACC_NUMBER=param.get("ACC_NUMBER"); + returnValue.put("ACC_NUMBER",ACC_NUMBER); + return returnValue; + } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractCustomer.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractCustomer.java index ad7c4c622..bb5243034 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractCustomer.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractCustomer.java @@ -9,14 +9,13 @@ import com.tenwa.voucher.service.VoucherJavaParamService; public class auxiliaryContractCustomer implements VoucherJavaParamService { -@Override -public Map getJavaParam(JBOTransaction tx, - Map param) throws BusinessException { - MapreturnValue=new HashMap(); - String DISTRIBUTOR_ID=param.get("DISTRIBUTOR_ID"); - String DISTRIBUTOR_NAME=param.get("DISTRIBUTOR_NAME"); - returnValue.put("DISTRIBUTOR_ID",DISTRIBUTOR_ID); - returnValue.put("DISTRIBUTOR_NAME",DISTRIBUTOR_NAME); - return returnValue; -} + public Map getJavaParam(JBOTransaction tx, + Map param) throws BusinessException { + MapreturnValue=new HashMap(); + String DISTRIBUTOR_ID=param.get("DISTRIBUTOR_ID"); + String DISTRIBUTOR_NAME=param.get("DISTRIBUTOR_NAME"); + returnValue.put("DISTRIBUTOR_ID",DISTRIBUTOR_ID); + returnValue.put("DISTRIBUTOR_NAME",DISTRIBUTOR_NAME); + return returnValue; + } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractNumber.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractNumber.java index b7c54a77a..e49aeda28 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractNumber.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/auxiliaryInfo/auxiliaryContractNumber.java @@ -14,9 +14,7 @@ public Map getJavaParam(JBOTransaction tx, Map param) throws BusinessException { MapreturnValue=new HashMap(); String CONTRACT_NUMBER=param.get("CONTRACT_NUMBER"); - String PROJECT_NAME=param.get("PROJECT_NAME"); returnValue.put("CONTRACT_NUMBER",CONTRACT_NUMBER); - returnValue.put("PROJECT_NAME",PROJECT_NAME); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java b/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java index 70d9759b5..1314b68f2 100644 --- a/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java +++ b/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java @@ -300,10 +300,7 @@ public class CreateVoucherServiceImpl { subData.put("F8", "0");//贷方金额 subData.put("ENTRYDC", "1"); //凭证信息像是经销商名称 - if("PZ2018071000000006".equals(VOUCHERNO) || "PZ2018080300000071".equals(VOUCHERNO) || "PZ2018071100000010".equals(VOUCHERNO) || "PZ2018080300000074".equals(VOUCHERNO) || "PZ2018082600000151".equals(VOUCHERNO) || "PZ2018082600000152".equals(VOUCHERNO)) { - subData.put("CUSTID",dataTemp.get("DISTRIBUTOR_ID"));//经销商id - subData.put("CUSTNAME",dataTemp.get("DISTRIBUTOR_NAME"));//经销商名称 - }else if("PZ2018082600000149".equals(VOUCHERNO) || "PZ2018082600000150".equals(VOUCHERNO) || "PZ2018070900000003".equals(VOUCHERNO) || "PZ2018080200000065".equals(VOUCHERNO) ) { + if("PZ2018071100000010".equals(VOUCHERNO) || "PZ2018080300000074".equals(VOUCHERNO)) { subData.put("CUSTID",dataTemp.get("DISTRIBUTOR_ID"));//经销商id subData.put("CUSTNAME",dataTemp.get("DISTRIBUTOR_NAME"));//经销商名称 }else if("PZ2018072100000037".equals(VOUCHERNO)||"PZ2018080400000091".equals(VOUCHERNO) || "PZ2018072100000038".equals(VOUCHERNO) || "PZ2018080400000092".equals(VOUCHERNO) || "PZ2018092500000207".equals(VOUCHERNO) || "PZ2018100900000249".equals(VOUCHERNO) || "PZ2018092500000208".equals(VOUCHERNO) || "PZ2018100900000250".equals(VOUCHERNO)){ @@ -330,7 +327,7 @@ public class CreateVoucherServiceImpl { subData.put("F8",dataTemp.get("MONEY"));//贷方金额 subData.put("ENTRYDC", "-1"); //凭证信息像是经销商名称 - if("PZ2018071000000006".equals(VOUCHERNO) || "PZ2018080300000071".equals(VOUCHERNO) || "PZ2018071100000010".equals(VOUCHERNO) || "PZ2018080300000074".equals(VOUCHERNO)) { + if("PZ2018071000000006".equals(VOUCHERNO) || "PZ2018080300000071".equals(VOUCHERNO)) { subData.put("CUSTID",dataTemp.get("DISTRIBUTOR_ID"));//经销商id subData.put("CUSTNAME",dataTemp.get("DISTRIBUTOR_NAME"));//经销商名称 }else if("PZ2018070900000003".equals(VOUCHERNO) || "PZ2018080200000065".equals(VOUCHERNO)) { @@ -352,8 +349,7 @@ public class CreateVoucherServiceImpl { if(dataTemp.containsKey("CONTRACT_ID")){ subData.put("CONTRACT_ID", dataTemp.get("CONTRACT_ID")); } - param.put("FUNDTYPE", dataTemp.get("FUNDTYPE")); - System.out.println(dataTemp.get("FUNDTYPE")); + if(sub.getAttribute("AUXILIARY_TYPE").getString().length()>0){ subData.putAll(this.getAuxiliaryData(tx, param, sub.getAttribute("AUXILIARY_TYPE").getString())); } @@ -362,53 +358,6 @@ public class CreateVoucherServiceImpl { // 获取当前凭证借贷序号 String SORT_NUMBER = bo.getAttribute("SORT_NUMBER").getString(); subData.put("SORT_NUMBER", SORT_NUMBER); - // 直租记录佣金 - if("PZ2018082000000141".equals(VOUCHERNO)) { - if("01".equals(LEAS_FORM)) { - if("1".equals(SORT_NUMBER)) { - param.put("BUSINESSTYPE", "9201"); - }else if("2".equals(SORT_NUMBER)) { - param.put("BUSINESSTYPE", "92"); - } - } - } - // 汽车类应收账款总金额根据分录配置辅助核算值---除了没有的和其他(10), 其他都是默认汽车(04) - if("PZ2018071000000005".equals(VOUCHERNO) || "PZ2018080300000069".equals(VOUCHERNO)) { - if("01".equals(LEAS_FORM)) {//直租 - if("5".equals(SORT_NUMBER)) { - subData.put("LEASFORMASSET", "10"); - }else if("1".equals(SORT_NUMBER) || "2".equals(SORT_NUMBER) || "6".equals(SORT_NUMBER) || "7".equals(SORT_NUMBER)) { - subData.remove("LEASFORMASSET"); - } - }else {// 回租 - if("4".equals(SORT_NUMBER)){ - subData.put("LEASFORMASSET", "10"); - }else if("1".equals(SORT_NUMBER) || "2".equals(SORT_NUMBER) || "6".equals(SORT_NUMBER)){ - subData.remove("LEASFORMASSET"); - } - } - } - // 传统应收账款总金额 辅助账调整 - if("PZ2018092500000170".equals(VOUCHERNO) || "PZ2018092800000247".equals(VOUCHERNO)) { - if("4".equals(SORT_NUMBER)) { - subData.put("LEASFORMASSET", "10"); - }else if("1".equals(SORT_NUMBER) || "2".equals(SORT_NUMBER) || "6".equals(SORT_NUMBER)) { - subData.remove("LEASFORMASSET"); - } - } - // 汽车传统应收账款总金额 辅助账调整 - if("PZ2018092500000202".equals(VOUCHERNO) || "PZ2018092800000248".equals(VOUCHERNO)) { - if("3".equals(SORT_NUMBER)) { - subData.put("LEASFORMASSET", "04"); - }else if("4".equals(SORT_NUMBER)) { - subData.put("LEASFORMASSET", "10"); - }else if("5".equals(SORT_NUMBER)) { - subData.put("LEASINCOMEFORM", "03"); - subData.put("LEASFORMASSET", "04"); - }else { - subData.remove("LEASFORMASSET"); - } - } list.add(subData); } return list; diff --git a/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java b/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java index fd3522381..cd4810885 100644 --- a/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java +++ b/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java @@ -129,15 +129,13 @@ public class VoucherToV8Impl implements VoucherService { d.put("F61",list.get(i).get("CUSTNAME")); d.put("F62",list.get(i).get("F6")); d.put("F63",list.get(i).get("DEPT")); - d.put("F64",list.get(i).get("LEASFORMASSET")); d.put("F65",list.get(i).get("CUSTID")); d.put("F66",list.get(i).get("DISTRIBUTOR_NAME")); d.put("F70", list.get(i).get("LEAS_FORM")); d.put("F72",list.get(i).get("DISTRIBUTOR_ID")); - d.put("F73",list.get(i).get("LEASINCOMEFORM")); - d.put("F74",list.get(i).get("FUNDTYPE")); - d.put("F75",list.get(i).get("BUSINESSTYPE")); - d.put("F76",list.get(i).get("ACC_NUMBER")); + d.put("F73",list.get(i).get("BUSINESSTYPE"));//主营类型 + d.put("F74",list.get(i).get("CASHFLOW"));// 现金流项目 + d.put("F75",list.get(i).get("ACC_NUMBER")); d.put("inputuserid",user.getAttribute("userid").getString()); d.put("v8_status",status);