diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java index ebf50b945..d0db5af40 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherActualPaymentCarTradition.java @@ -26,18 +26,18 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{ Map map=new HashMap(); Map param=new HashMap(); // 定义全局对象 - String EQUIP_AMT=null; // 设备款 - String EQUIP_AMT_NOTAX=null; // 设备款(不含税) - String EQUIP_AMT_TAX=null; // 设备款(税金) - String FIRST_PAYMENT=null; // 首付款 - String FIRST_PAYMENT_NOTAX=null; // 首付款(不含税) - String FIRST_PAYMENT_TAX=null; // 首付款(税金) - String INSURANCE_PREMIUM_ADD_OTHER=null;// 保险费+其他金额 - String INSURANCE_PREMIUM_ADD_OTHER_NOTAX=null;// 保险费+其他金额(不含税) - String INSURANCE_PREMIUM_ADD_OTHER_TAX=null; // 保险费+其他金额(税金) - String EQUIP_INSURACE_PREMIUM_OTHER=null;// 设备款+保险费+其他 - String OTHERSMONEY=null; // 车款+保险+其他-首付款 - String ACCOUNT_DATE=null; // 会计日期 + String EQUIP=null; // 设备款 + String EQUIPNOTAX=null; // 设备款(不含税) + String EQUIPTAX=null; // 设备款(税金) + String INSURANCE_PREMIUM_OTHER=null; // 保险+其他 + String INSURANCE_PREMIUM_OTHER_NOTAX=null;// 保险+其他(不含税) + String INSURANCE_PREMIUM_OTHER_TAX=null;// 保险+其他(税金) + String EQUIP_INSURACE_PREMIUM_OTHER=null;// 设备款+保险+其他 + String FIRST_PAYMENT=null; // 首付款 + String FIRST_PAYMENT_NOTAX=null; // 首付款(不含税) + String FIRST_PAYMENT_TAX=null; // 首付款(税金) + String EQUIP_PREMIUM_OTHER_SUBFIRST=null;// 设备款+保险 + 其他-首付款 + String ACCOUNT_DATE=null; // 记账日期 String FACT_DATE=null; // 实际付款日期 String CONTRACT_ID=null; // 合同id String CONTRACT_NUMBER=null; // 合同编号 @@ -50,11 +50,16 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{ String CUSTOMERTYPE=null; // 客户类别 String BUSINESSTYPE=null; // 业务类型 String ACC_NUMBER=null; // 银行账号 - String PRODUCT_ID=null; // 产品编号 String sql=""; - sql="SELECT LCCT.EQUIP_AMT,ROUND(LCCT.EQUIP_AMT / getTax (LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIP_AMT_NOTAX,(LCCT.EQUIP_AMT - ROUND(LCCT.EQUIP_AMT / getTax (LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS EQUIP_AMT_TAX,LCCT.FIRST_PAYMENT,ROUND(LCCT.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LCCT.FIRST_PAYMENT - ROUND(LCCT.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LCCT.INSURANCE_PREMIUM+LCCT.OTHER_MONEY) AS INSURANCE_PREMIUM_ADD_OTHER,ROUND((LCCT.INSURANCE_PREMIUM+LCCT.OTHER_MONEY) / getTax (LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_ADD_OTHER_NOTAX,((LCCT.INSURANCE_PREMIUM+LCCT.OTHER_MONEY) - ROUND((LCCT.INSURANCE_PREMIUM+LCCT.OTHER_MONEY) / getTax (LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_ADD_OTHER_TAX,(LCCT.EQUIP_AMT+LCCT.INSURANCE_PREMIUM+LCCT.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,(LCCT.EQUIP_AMT+LCCT.INSURANCE_PREMIUM+LCCT.OTHER_MONEY-LCCT.FIRST_PAYMENT) AS OTHERSMONEY,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 AS DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,lfit.ACC_NUMBER,LPDI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT INNER JOIN (SELECT contract_id,FLOWUNID,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 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_PRODUCT_INFO LPDI ON LPDI.PRODUCT_ID = LPI.PRODUCT_ID WHERE LCI.BUSINESSTYPE = '3' AND lfit.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 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 "; + // 非差额放款部分 + if("PZ2018092500000198".equals(VOUCHERNO) || "PZ2018092600000236".equals(VOUCHERNO)){ + sql+=" AND LFIT3.SETTLE_METHOD !='settlemethod11'"; + }else{// 差额部分 + sql+=" AND LFIT3.SETTLE_METHOD='settlemethod11'"; + } param.clear(); map.put("FLOWUNID", FlowUnid); @@ -69,17 +74,17 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{ String userid ="admin"; for (int i=0;i map=new HashMap(); Map param=new HashMap(); // 定义全局对象 - String EQUIP_AMT=null; // 设备款 - String EQUIP_AMT_NOTAX=null; // 设备款(不含税) - String EQUIP_AMT_TAX=null; // 设备款(税金) - String FIRST_PAYMENT=null; // 首付款 + String EQUIP=null; // 设备款 + String EQUIPNOTAX=null; // 设备款(不含税) + String EQUIPTAX=null; // 设备款(税金) + String OTHER_MONEY=null; // 其他款 + String OTHERNOTAX=null; // 其它金额(不含税) + String OTHERTAX=null; // 其它金额(税金) + String EQUIP_OTHER=null; // 设备款+其他 + String FIRST_PAYMENT=null; // 首付款 + String GUARANTY=null; // 保证金 String HANDLING_CHARGE_MONEY=null; // 手续费 - String HANDLING_CHARGE_MONEY_NOTAX=null;// 不含税手续费 - String HANDLING_CHARGE_MONEY_TAX=null; // 手续费税金 - String CAUTION_MONEY=null; // 保证金 - String OTHER_MONEY=null; // 其它金额 - String OTHER_MONEY_NOTAX=null; // 其它金额(不含税) - String OTHER_MONEY_TAX=null; // 其它金额(税金) - String ACCOUNT_DATE=null; // 会计日期 + String HANDLING_CHARGE_MONEY_NOTAX=null;// 手续费(不含税) + String HANDLING_CHARGE_MONEY_TAX=null; // 手续费(税金) + String OTHERS_MATH=null; // 设备款+其他-首付款-保证金-手续费 + String ACCOUNT_DATE=null; // 记账日期 String FACT_DATE=null; // 实际付款日期 String CONTRACT_ID=null; // 合同id String CONTRACT_NUMBER=null; // 合同编号 @@ -50,11 +52,22 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{ String CUSTOMERTYPE=null; // 客户类别 String BUSINESSTYPE=null; // 业务类型 String ACC_NUMBER=null; // 银行账号 - String PRODUCT_ID=null; // 产品编号 String sql=""; - sql="SELECT LCCT.EQUIP_AMT,ROUND(LCCT.EQUIP_AMT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIP_AMT_NOTAX,(LCCT.EQUIP_AMT-ROUND(LCCT.EQUIP_AMT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS EQUIP_AMT_TAX,LCCT.FIRST_PAYMENT,LCCT.HANDLING_CHARGE_MONEY,ROUND(LCCT.HANDLING_CHARGE_MONEY/ getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2) AS HANDLING_CHARGE_MONEY_NOTAX,(LCCT.HANDLING_CHARGE_MONEY - ROUND(LCCT.HANDLING_CHARGE_MONEY/ getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2)) AS HANDLING_CHARGE_MONEY_TAX,IFNULL(LCCT.CAUTION_MONEY, 0) AS CAUTION_MONEY,LCCT.OTHER_MONEY,ROUND(LCCT.OTHER_MONEY/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS OTHER_MONEY_NOTAX,(LCCT.OTHER_MONEY - ROUND(LCCT.OTHER_MONEY/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS OTHER_MONEY_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 AS DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,lfit.ACC_NUMBER,LPDI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT INNER JOIN (SELECT contract_id,FLOWUNID,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 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_PRODUCT_INFO LPDI ON LPDI.PRODUCT_ID=LPI.PRODUCT_ID WHERE LCI.BUSINESSTYPE='2' AND lfit.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,LFIT2.OTHER_MONEY,ROUND(LFIT2.OTHER_MONEY/getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS OTHERNOTAX,(LFIT2.OTHER_MONEY-ROUND(LFIT2.OTHER_MONEY/getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS OTHERTAX,(LFIT1.EQUIP + LFIT2.OTHER_MONEY) AS EQUIP_OTHER,LFIT3.FIRST_PAYMENT,LFIT4.GUARANTY,LFIT5.HANDLING_CHARGE_MONEY,ROUND(LFIT5.HANDLING_CHARGE_MONEY/getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2) AS HANDLING_CHARGE_MONEY_NOTAX,(LFIT5.HANDLING_CHARGE_MONEY -ROUND(LFIT5.HANDLING_CHARGE_MONEY/getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2)) AS HANDLING_CHARGE_MONEY_TAX,(LFIT1.EQUIP + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT - LFIT4.GUARANTY - LFIT5.HANDLING_CHARGE_MONEY) AS OTHERS_MATH,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 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 GUARANTY,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE='feetype2')LFIT4 ON LFIT4.CONTRACT_ID=LCI.ID LEFT JOIN(SELECT CONTRACT_ID,FACT_MONEY AS HANDLING_CHARGE_MONEY,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE='feetype1')LFIT5 ON LFIT5.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='2' AND LFIT1.FLOWUNID=:FLOWUNID "; + // 非差额放款部分 + if("PZ2018092500000161".equals(VOUCHERNO) || "PZ2018092600000225".equals(VOUCHERNO)){ + sql+=" AND (LFIT3.SETTLE_METHOD !='settlemethod11' AND LFIT4.SETTLE_METHOD !='settlemethod11' AND LFIT5.SETTLE_METHOD !='settlemethod11')"; + }else if("PZ2018092500000162".equals(VOUCHERNO) || "PZ2018092600000226".equals(VOUCHERNO) || "PZ2018092500000163".equals(VOUCHERNO) || "PZ2018092600000227".equals(VOUCHERNO)) {// 差额-经销商支付的预付款(首付)/给经销商放款-首付冲抵--回租 + sql+=" AND LFIT3.SETTLE_METHOD='settlemethod11'"; + }else if("PZ2018092500000164".equals(VOUCHERNO) || "PZ2018092600000229".equals(VOUCHERNO) || "PZ2018092500000165".equals(VOUCHERNO) || "PZ2018092600000230".equals(VOUCHERNO)) {// 客户记录保证金/给经销商放款-保证金冲抵 + sql+=" AND LFIT4.SETTLE_METHOD='settlemethod11'"; + }else if("PZ2018092500000166".equals(VOUCHERNO) || "PZ2018092600000231".equals(VOUCHERNO) || "PZ2018092500000167".equals(VOUCHERNO) || "PZ2018092600000232".equals(VOUCHERNO)) {// 收到客户手续费 / 给经销商放款-手续费冲抵 + sql+=" AND LFIT5.SETTLE_METHOD='settlemethod11'"; + }else if("PZ2018092500000169".equals(VOUCHERNO) || "PZ2018092600000233".equals(VOUCHERNO)) {// 给经销商放款-差额放款 + sql+=" AND (LFIT3.SETTLE_METHOD ='settlemethod11' OR LFIT4.SETTLE_METHOD ='settlemethod11' OR LFIT5.SETTLE_METHOD ='settlemethod11')"; + } param.clear(); map.put("FLOWUNID", FlowUnid); @@ -69,17 +82,19 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{ String userid ="admin"; for (int i=0;i map=new HashMap(); + Map param=new HashMap(); + // 定义全局对象 + String OTHERSMONEY=null; // 车款-首付款+保险+其他 + String EQUIP_SUBFIRST=null; // 车款-首付款 + String INSURANCE_PREMIUM_ADD_OTHER=null; // 保险+其他 + String INTEREST=null; // 利息 + String INTERESTNOTAX=null; // 利息(不含税) + String TAX=null; // 利息的税金 + String ACCOUNT_DATE=null; // 会计日期 + String FACT_DATE=null; // 实际付款日期 + String CONTRACT_ID=null; // 合同id + String CONTRACT_NUMBER=null; // 合同编号 + String PROJECT_NAME=null; // 项目名称 + String LEAS_FORM=null; // 项目类别 + String DISTRIBUTOR_ID=null; // 经销商编号 + String DISTRIBUTOR_NAME=null; // 经销商名称 + String CUSTOMERID=null; // 客户编号 + String CUSTOMERNAME=null; // 客户名称 + String CUSTOMERTYPE=null; // 客户类别 + String BUSINESSTYPE=null; // 业务类型 + String ACC_NUMBER=null; // 银行账号 + 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,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 LCCT LEFT JOIN (SELECT FLOWUNID,MIN(CONTRACT_ID) AS CONTRACT_ID,MIN(ACC_NUMBER) AS ACC_NUMBER 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 "; + }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,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 LCCT LEFT JOIN (SELECT FLOWUNID,MIN(CONTRACT_ID) AS CONTRACT_ID,MIN(ACC_NUMBER) AS ACC_NUMBER 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 "; + } + + param.clear(); + map.put("FLOWUNID", FlowUnid); + + // 查询sql, 将结果集封装到map中 + List> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map); + + // 创建生成凭证的类对象 + CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl(); + + // 设置常用参数 + String VOUCHER_TYPE="1"; // 凭证分类 金蝶 + String userid ="admin"; + + for (int i=0;ireturnValue=new HashMap(); returnValue.putAll(param); // 获取保证金 - String CAUTION_MONEY=param.get("CAUTION_MONEY")==null?"0.00":param.get("CAUTION_MONEY"); - returnValue.put("MONEY",CAUTION_MONEY); + String GUARANTY=param.get("GUARANTY")==null?"0.00":param.get("GUARANTY"); + returnValue.put("MONEY",GUARANTY); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquip.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquip.java index b167ec291..808ee199c 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquip.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquip.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToEquip implements VoucherJavaParamService{ MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取设备款 - String EQUIP_AMT=param.get("EQUIP_AMT")==null?"0.00":param.get("EQUIP_AMT"); - returnValue.put("MONEY",EQUIP_AMT); + String EQUIP=param.get("EQUIP")==null?"0.00":param.get("EQUIP"); + returnValue.put("MONEY",EQUIP); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddInsuranceAddOtherSubFirst.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddInsuranceAddOtherSubFirst.java index 7ac999967..d04e0f50f 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddInsuranceAddOtherSubFirst.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddInsuranceAddOtherSubFirst.java @@ -15,8 +15,9 @@ public class ContractGetMoneyToEquipAddInsuranceAddOtherSubFirst implements Vouc MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取设备款 - String OTHERSMONEY=param.get("OTHERSMONEY")==null?"0.00":param.get("OTHERSMONEY"); - returnValue.put("MONEY",OTHERSMONEY); + returnValue.put("FUNDTYPE","01"); + String EQUIP_PREMIUM_OTHER_SUBFIRST=param.get("EQUIP_PREMIUM_OTHER_SUBFIRST")==null?"0.00":param.get("EQUIP_PREMIUM_OTHER_SUBFIRST"); + returnValue.put("MONEY",EQUIP_PREMIUM_OTHER_SUBFIRST); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddOthers.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddOthers.java index dbb16374e..8e66546d8 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddOthers.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipAddOthers.java @@ -15,14 +15,9 @@ public class ContractGetMoneyToEquipAddOthers implements VoucherJavaParamService public Map getJavaParam(JBOTransaction tx, Map param) throws BusinessException { MapreturnValue=new HashMap(); returnValue.putAll(param); - // 获取设备款 - String EQUIP_AMT=param.get("EQUIP_AMT")==null?"0.00":param.get("EQUIP_AMT"); - // 获取其它金额 - String OTHER_MONEY=param.get("OTHER_MONEY")==null?"0.00":param.get("OTHER_MONEY"); - - // 其他款项+设备款 - BigDecimal FactMoney=new BigDecimal(EQUIP_AMT).add(new BigDecimal(OTHER_MONEY)); - returnValue.put("MONEY",FactMoney.toString()); + // 设备款+其他金额 + String EQUIP_OTHER=param.get("EQUIP_OTHER")==null?"0.00":param.get("EQUIP_OTHER"); + returnValue.put("MONEY",EQUIP_OTHER); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipNoTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipNoTax.java index d743e1d8b..dd14fd0df 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipNoTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipNoTax.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToEquipNoTax implements VoucherJavaParamService{ MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取设备款 - String EQUIP_AMT_NOTAX=param.get("EQUIP_AMT_NOTAX")==null?"0.00":param.get("EQUIP_AMT_NOTAX"); - returnValue.put("MONEY",EQUIP_AMT_NOTAX); + String EQUIPNOTAX=param.get("EQUIPNOTAX")==null?"0.00":param.get("EQUIPNOTAX"); + returnValue.put("MONEY",EQUIPNOTAX); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipSubFirst.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipSubFirst.java new file mode 100644 index 000000000..35e67cf9c --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipSubFirst.java @@ -0,0 +1,21 @@ +package com.tenwa.voucher.CreateVoucherProcess.VoucherGetMoneyForTradition; + +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 ContractGetMoneyToEquipSubFirst implements VoucherJavaParamService{ + public Map getJavaParam(JBOTransaction tx, Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + String EQUIP_SUBFIRST=param.get("EQUIP_SUBFIRST")==null?"0.00":param.get("EQUIP_SUBFIRST"); + returnValue.put("MONEY",EQUIP_SUBFIRST); + return returnValue; + } +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipTax.java index 20aa09da3..ca9e17315 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToEquipTax.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToEquipTax implements VoucherJavaParamService{ MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取设备款 - String EQUIP_AMT_TAX=param.get("EQUIP_AMT_TAX")==null?"0.00":param.get("EQUIP_AMT_TAX"); - returnValue.put("MONEY",EQUIP_AMT_TAX); + String EQUIPTAX=param.get("EQUIPTAX")==null?"0.00":param.get("EQUIPTAX"); + returnValue.put("MONEY",EQUIPTAX); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToINTEREST.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToINTEREST.java new file mode 100644 index 000000000..263990866 --- /dev/null +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToINTEREST.java @@ -0,0 +1,21 @@ +package com.tenwa.voucher.CreateVoucherProcess.VoucherGetMoneyForTradition; + +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; +/** + * 获取INTEREST + * @author xiezhiwen + */ +public class ContractGetMoneyToINTEREST implements VoucherJavaParamService{ + public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { + MapreturnValue=new HashMap(); + returnValue.putAll(param); + returnValue.put("FUNDTYPE","02"); + returnValue.put("MONEY",param.get("INTEREST")); + return returnValue; + } +} diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOther.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOther.java index 5ccac5085..7f498e928 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOther.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOther.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToInsuranceAddOther implements VoucherJavaParamServ MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取设备款 - String INSURANCE_PREMIUM_ADD_OTHER=param.get("INSURANCE_PREMIUM_ADD_OTHER")==null?"0.00":param.get("INSURANCE_PREMIUM_ADD_OTHER"); - returnValue.put("MONEY",INSURANCE_PREMIUM_ADD_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; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherNoTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherNoTax.java index 1c7109ae7..778dec909 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherNoTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherNoTax.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToInsuranceAddOtherNoTax implements VoucherJavaPara MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取设备款 - String INSURANCE_PREMIUM_ADD_OTHER_NOTAX=param.get("INSURANCE_PREMIUM_ADD_OTHER_NOTAX")==null?"0.00":param.get("INSURANCE_PREMIUM_ADD_OTHER_NOTAX"); - returnValue.put("MONEY",INSURANCE_PREMIUM_ADD_OTHER_NOTAX); + String INSURANCE_PREMIUM_OTHER_NOTAX=param.get("INSURANCE_PREMIUM_OTHER_NOTAX")==null?"0.00":param.get("INSURANCE_PREMIUM_OTHER_NOTAX"); + returnValue.put("MONEY",INSURANCE_PREMIUM_OTHER_NOTAX); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherTax.java index 79defb5d9..487f23ccb 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToInsuranceAddOtherTax.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToInsuranceAddOtherTax implements VoucherJavaParamS MapreturnValue=new HashMap(); returnValue.putAll(param); // 保险+其他(税金) - String INSURANCE_PREMIUM_ADD_OTHER_TAX=param.get("INSURANCE_PREMIUM_ADD_OTHER_TAX")==null?"0.00":param.get("INSURANCE_PREMIUM_ADD_OTHER_TAX"); - returnValue.put("MONEY",INSURANCE_PREMIUM_ADD_OTHER_TAX); + String INSURANCE_PREMIUM_OTHER_TAX=param.get("INSURANCE_PREMIUM_OTHER_TAX")==null?"0.00":param.get("INSURANCE_PREMIUM_OTHER_TAX"); + returnValue.put("MONEY",INSURANCE_PREMIUM_OTHER_TAX); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyNoTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyNoTax.java index 06cc158e3..37cab07a1 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyNoTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyNoTax.java @@ -14,6 +14,7 @@ public class ContractGetMoneyToMoneyNoTax implements VoucherJavaParamService{ public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { MapreturnValue=new HashMap(); returnValue.putAll(param); + returnValue.put("FUNDTYPE","02"); returnValue.put("MONEY",param.get("INTERESTNOTAX")); return returnValue; } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyTax.java index 3f3dc12ac..b8f5ab032 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToMoneyTax.java @@ -14,6 +14,7 @@ public class ContractGetMoneyToMoneyTax implements VoucherJavaParamService{ public Map getJavaParam(JBOTransaction tx,Map param) throws BusinessException { MapreturnValue=new HashMap(); returnValue.putAll(param); + returnValue.put("FUNDTYPE","02"); returnValue.put("MONEY",param.get("TAX")); return returnValue; } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOther.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOther.java index 6ba47bc76..69a796e86 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOther.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOther.java @@ -1,6 +1,5 @@ package com.tenwa.voucher.CreateVoucherProcess.VoucherGetMoneyForTradition; -import java.math.BigDecimal; import java.util.HashMap; import java.util.Map; diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherNoTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherNoTax.java index 46d5feade..48f72774e 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherNoTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherNoTax.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToOtherNoTax implements VoucherJavaParamService{ MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取其它金额 - String OTHER_MONEY_NOTAX=param.get("OTHER_MONEY_NOTAX")==null?"0.00":param.get("OTHER_MONEY_NOTAX"); - returnValue.put("MONEY",OTHER_MONEY_NOTAX); + String OTHERNOTAX=param.get("OTHERNOTAX")==null?"0.00":param.get("OTHERNOTAX"); + returnValue.put("MONEY",OTHERNOTAX); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherTax.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherTax.java index be577072a..b417d773c 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherTax.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOtherTax.java @@ -15,8 +15,8 @@ public class ContractGetMoneyToOtherTax implements VoucherJavaParamService{ MapreturnValue=new HashMap(); returnValue.putAll(param); // 获取其它金额 - String OTHER_MONEY_TAX=param.get("OTHER_MONEY_TAX")==null?"0.00":param.get("OTHER_MONEY_TAX"); - returnValue.put("MONEY",OTHER_MONEY_TAX); + String OTHERTAX=param.get("OTHERTAX")==null?"0.00":param.get("OTHERTAX"); + returnValue.put("MONEY",OTHERTAX); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOthersMath.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOthersMath.java index 3df614451..95d183658 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOthersMath.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/VoucherGetMoneyForTradition/ContractGetMoneyToOthersMath.java @@ -15,20 +15,8 @@ public class ContractGetMoneyToOthersMath implements VoucherJavaParamService{ public Map getJavaParam(JBOTransaction tx, Map param) throws BusinessException { MapreturnValue=new HashMap(); returnValue.putAll(param); - // 获取设备款 - String EQUIP_AMT=param.get("EQUIP_AMT")==null?"0.00":param.get("EQUIP_AMT"); - // 获取其它金额 - String OTHER_MONEY=param.get("OTHER_MONEY")==null?"0.00":param.get("OTHER_MONEY"); - // 获取首付款 - String FIRST_PAYMENT=param.get("FIRST_PAYMENT")==null?"0.00":param.get("FIRST_PAYMENT"); - // 获取保证金 - String CAUTION_MONEY=param.get("CAUTION_MONEY")==null?"0.00":param.get("CAUTION_MONEY"); - // 获取手续费 - String HANDLING_CHARGE_MONEY=param.get("HANDLING_CHARGE_MONEY")==null?"0.00":param.get("HANDLING_CHARGE_MONEY"); - // 其他款项+设备款 - BigDecimal FactMoney=new BigDecimal(EQUIP_AMT).add(new BigDecimal(OTHER_MONEY)).subtract(new BigDecimal(FIRST_PAYMENT)).subtract(new BigDecimal(CAUTION_MONEY)).subtract(new BigDecimal(HANDLING_CHARGE_MONEY)); - - returnValue.put("MONEY",FactMoney.toString()); + String OTHERS_MATH=param.get("OTHERS_MATH")==null?"0.00":param.get("OTHERS_MATH"); + returnValue.put("MONEY",OTHERS_MATH); return returnValue; } } diff --git a/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java b/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java index 163bfa481..ce68e79da 100644 --- a/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java +++ b/src_core/com/tenwa/voucher/serviceImp/CreateVoucherServiceImpl.java @@ -225,6 +225,7 @@ public class CreateVoucherServiceImpl { for(BizObject bo:subList){ Map subData=new HashMap(); String subId=bo.getAttribute("LOAN_SUBJECT").getString(); + BizObject sub=JBOFactory.createBizObjectQuery(LV_STACTS_CONFIG.CLASS_NAME,"id=:id").setParameter("id", subId).getSingleResult(false); subData.put("F2", sub.getAttribute("SUBJECTS_CODE").getString()); if(sub.getAttribute("SUBJECTS_CODE").getString().endsWith("****")){ @@ -267,7 +268,6 @@ public class CreateVoucherServiceImpl { abs=abs.replaceAll(para, StringUtil.nullToString( param.get(para.replaceAll("#", "")))); } - Map dataTemp=new HashMap(); VoucherParamServiceImpl psi=new VoucherParamServiceImpl(); //获取数据 @@ -360,6 +360,49 @@ public class CreateVoucherServiceImpl { if(sub.getAttribute("AUXILIARY_TYPE").getString().length()>0){ subData.putAll(this.getAuxiliaryData(tx, param, sub.getAttribute("AUXILIARY_TYPE").getString())); } + + // 获取直租/回租类型 + String LEAS_FORM = param.get("LEAS_FORM"); + // 获取当前凭证借贷序号 + String SORT_NUMBER = bo.getAttribute("SORT_NUMBER").getString(); + // 汽车类应收账款总金额根据分录配置辅助核算值---除了没有的和其他(10), 其他都是默认汽车(04) + if("PZ2018071000000005".equals(voucherid) || "PZ2018080300000069".equals(voucherid)) { + 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(voucherid) || "PZ2018092800000247".equals(voucherid)) { + 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(voucherid) || "PZ2018092800000248".equals(voucherid)) { + if("3".equals(SORT_NUMBER) || "5".equals(SORT_NUMBER)) { + // 传统融资租赁收入 + subData.put("LEASINCOMEFORM", "03"); + subData.put("LEASFORMASSET", "04"); + }else if("4".equals(SORT_NUMBER)) { + subData.put("LEASFORMASSET", "10"); + }else { + subData.remove("LEASFORMASSET"); + } + } list.add(subData); } return list;