diff --git a/WebContent/Tenwa/Lease/voucher/TAX_CODE_LIST.jsp b/WebContent/Tenwa/Lease/voucher/TAX_CODE_LIST.jsp
index aba7ce611..ce7807336 100644
--- a/WebContent/Tenwa/Lease/voucher/TAX_CODE_LIST.jsp
+++ b/WebContent/Tenwa/Lease/voucher/TAX_CODE_LIST.jsp
@@ -15,7 +15,7 @@
//0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格
String sButtons[][] = {
{"true","All","Button","新增","新增","newRecord()","","","","btn_icon_add",""},
- {"true","","Button","详情","详情","viewAndEdit()","","","","btn_icon_detail",""},
+ {"true","","Button","修改","修改","viewAndEdit()","","","","btn_icon_detail",""},
{"true","","Button","删除","删除","if(confirm('确实要删除吗?'))as_delete(0,'')","","","","btn_icon_delete",""},
};
diff --git a/WebContent/WEB-INF/etc/jbo/jbo_voucher.xml b/WebContent/WEB-INF/etc/jbo/jbo_voucher.xml
index d5d59a744..a9a0949a7 100644
--- a/WebContent/WEB-INF/etc/jbo/jbo_voucher.xml
+++ b/WebContent/WEB-INF/etc/jbo/jbo_voucher.xml
@@ -228,6 +228,56 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src_core/com/tenwa/officetempalte/importcallback/impl/LCEbankCallBack.java b/src_core/com/tenwa/officetempalte/importcallback/impl/LCEbankCallBack.java
index cfb038d3f..9d377018b 100644
--- a/src_core/com/tenwa/officetempalte/importcallback/impl/LCEbankCallBack.java
+++ b/src_core/com/tenwa/officetempalte/importcallback/impl/LCEbankCallBack.java
@@ -9,6 +9,7 @@ import java.util.Map;
import jbo.app.tenwa.calc.LC_EBANK;
import jbo.com.tenwa.entity.comm.own.OWN_ACCOUNT;
+import jbo.voucher.LV_DEFAULT_ATTRIBUTE;
import com.amarsoft.app.lc.util.DateAssistant;
import com.amarsoft.are.jbo.BizObject;
@@ -107,14 +108,14 @@ public class LCEbankCallBack extends BaseImportExcelCallBack {
//检验网银编号不重复
String ebank_sn=importObject.getAttribute("ebank_sn").toString();
- //与已有的网银编号比较
+ /*//与已有的网银编号比较
BizObjectManager bom=JBOFactory.getBizObjectManager(LC_EBANK.CLASS_NAME);
tx.join(bom);
String sql="select ebank_sn from O where ebank_sn='"+ebank_sn+"'";
List ebanklist=bom.createQuery(sql).getResultList(false);
if(ebanklist.size()>0){
throw new BusinessException("网银编号不能重复");
- }
+ }*/
//检验本方帐户
String OWN_BANK=importObject.getAttribute("OWN_BANK").toString();
@@ -129,7 +130,7 @@ public class LCEbankCallBack extends BaseImportExcelCallBack {
flag=true;
}
if(flag==false){
- throw new BusinessException("本方账户信息不匹配");
+ throw new BusinessException("网银:"+ebank_sn+", 本方账户信息不匹配 !");
}
}
@@ -138,6 +139,10 @@ public class LCEbankCallBack extends BaseImportExcelCallBack {
List ebankSns = new ArrayList();
boolean flag = false;
String ebs = "";
+ List list=JBOFactory.createBizObjectQuery(LC_EBANK.CLASS_NAME,null).getResultList(false);
+ for(int i=0;i0) THEN (LCCT.FIRST_PAYMENT- IFNULL(LFIT3.FIRST_PAYMENT,0)) ELSE 0.00 END AS MONEY,CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY- IFNULL(LFIT4.GUARANTY,0))>0) THEN (LCCT.CAUTION_MONEY- IFNULL(LFIT4.GUARANTY,0)) ELSE 0.00 END AS INTERESTNOTAX,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0))>0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0)) ELSE 0.00 END AS TAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT- IFNULL(LFIT3.FIRST_PAYMENT,0))>0) THEN (LCCT.FIRST_PAYMENT- IFNULL(LFIT3.FIRST_PAYMENT,0)) ELSE 0.00 END AS FIRST_PAYMENT,CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY- IFNULL(LFIT4.GUARANTY,0))>0) THEN (LCCT.CAUTION_MONEY- IFNULL(LFIT4.GUARANTY,0)) ELSE 0.00 END AS GUARANTY,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0))>0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0)) ELSE 0.00 END AS HANDLING_CHARGE_MONEY,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0))>0) THEN IFNULL(ROUND((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0))/getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) ELSE 0.00 END AS HANDLING_CHARGE_MONEY_NOTAX,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN IFNULL(((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) - ROUND((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)),0) ELSE 0.00 END AS HANDLING_CHARGE_MONEY_TAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - (CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT- IFNULL(LFIT3.FIRST_PAYMENT,0))>0) THEN (LCCT.FIRST_PAYMENT- IFNULL(LFIT3.FIRST_PAYMENT,0)) ELSE 0.00 END) - (CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY- IFNULL(LFIT4.GUARANTY,0))>0) THEN (LCCT.CAUTION_MONEY- IFNULL(LFIT4.GUARANTY,0)) ELSE 0.00 END) - (CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0))>0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY,0)) ELSE 0.00 END) 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_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 ON LFIT1.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT FLOWUNID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID) LFIT2 ON LFIT2.FLOWUNID = LFIT1.FLOWUNID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype5' GROUP BY CONTRACT_ID) LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype1' GROUP BY CONTRACT_ID) 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 LPI.BUSINESSTYPE = '2' AND LCCT.FLOWUNID = :FLOWUNID ";
- sql="SELECT CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) > 0) THEN (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) ELSE 0.00 END AS MONEY,CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) > 0) THEN (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) ELSE 0.00 END AS INTERESTNOTAX,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) ELSE 0.00 END AS TAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) > 0) THEN (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) ELSE 0.00 END AS FIRST_PAYMENT,CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) > 0) THEN (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) ELSE 0.00 END AS GUARANTY,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR(LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) ELSE 0.00 END AS HANDLING_CHARGE_MONEY,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN IFNULL(ROUND((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) / getTax(LCI.LEAS_FORM,'本金',LCCT.START_DATE),2),0) ELSE 0.00 END AS HANDLING_CHARGE_MONEY_NOTAX,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN IFNULL(((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) - ROUND((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) / getTax (LCI.LEAS_FORM,'本金',LCCT.START_DATE),2)),0) ELSE 0.00 END AS HANDLING_CHARGE_MONEY_TAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - (CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) > 0) THEN (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0))ELSE 0.00 END) - (CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) > 0) THEN (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) ELSE 0.00 END) - (CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) ELSE 0.00 END) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(),'%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE,'%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE, '%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%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,LLI.LEASE_ACC_NUMBER AS ACC_NUMBER FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 ON LFIT1.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT FLOWUNID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID) LFIT2 ON LFIT2.FLOWUNID = LFIT1.FLOWUNID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype5' GROUP BY CONTRACT_ID) LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype1' GROUP BY CONTRACT_ID) LFIT5 ON LFIT5.CONTRACT_ID = LCI.ID LEFT JOIN LB_LESSOR_INFO LLI ON LLI.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 lul.IS_MAIN='Y' AND LCCT.FLOWUNID = :FLOWUNID ";
+ sql="SELECT ROUND((getTax(lci.LEAS_FORM,'手续费',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) > 0) THEN (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) ELSE 0.00 END AS MONEY,CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) > 0) THEN (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) ELSE 0.00 END AS INTERESTNOTAX,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) ELSE 0.00 END AS TAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) AS EQUIP_OTHER,CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) > 0) THEN (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) ELSE 0.00 END AS FIRST_PAYMENT,CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) > 0) THEN (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) ELSE 0.00 END AS GUARANTY,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR(LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) ELSE 0.00 END AS HANDLING_CHARGE_MONEY,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN IFNULL(ROUND((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2),0) ELSE 0.00 END AS HANDLING_CHARGE_MONEY_NOTAX,CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN IFNULL(((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) - ROUND((LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) / getTax (LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2)),0) ELSE 0.00 END AS HANDLING_CHARGE_MONEY_TAX,IFNULL(LFIT1.EQUIP, 0) + IFNULL(LFIT2.OTHER_MONEY, 0) - (CASE WHEN (LFIT3.FIRST_PAYMENT IS NULL OR (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0)) > 0) THEN (LCCT.FIRST_PAYMENT - IFNULL(LFIT3.FIRST_PAYMENT, 0))ELSE 0.00 END) - (CASE WHEN (LFIT4.GUARANTY IS NULL OR (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) > 0) THEN (LCCT.CAUTION_MONEY - IFNULL(LFIT4.GUARANTY, 0)) ELSE 0.00 END) - (CASE WHEN (LFIT5.HANDLING_CHARGE_MONEY IS NULL OR (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) > 0) THEN (LCCT.HANDLING_CHARGE_MONEY - IFNULL(LFIT5.HANDLING_CHARGE_MONEY, 0)) ELSE 0.00 END) AS OTHERS_MATH,CASE WHEN DATE_FORMAT(NOW(),'%Y/%m') > DATE_FORMAT(LFIT1.FACT_DATE,'%Y/%m') THEN DATE_FORMAT(LFIT1.ACCOUNTING_DATE, '%Y/%m/%d') ELSE DATE_FORMAT(LFIT1.FACT_DATE, '%Y/%m/%d') END AS ACCOUNT_DATE,DATE_FORMAT(LFIT1.FACT_DATE, '%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,LLI.LEASE_ACC_NUMBER AS ACC_NUMBER FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,MAX(FACT_DATE) AS FACT_DATE,MAX(ACCOUNTING_DATE) AS ACCOUNTING_DATE,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype10' GROUP BY FLOWUNID,CONTRACT_ID) LFIT1 ON LFIT1.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT FLOWUNID,SUM(FACT_MONEY) AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29' GROUP BY FLOWUNID) LFIT2 ON LFIT2.FLOWUNID = LFIT1.FLOWUNID LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS FIRST_PAYMENT FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype5' GROUP BY CONTRACT_ID) LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS GUARANTY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS HANDLING_CHARGE_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype1' GROUP BY CONTRACT_ID) LFIT5 ON LFIT5.CONTRACT_ID = LCI.ID LEFT JOIN LB_LESSOR_INFO LLI ON LLI.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 lul.IS_MAIN='Y' AND LCCT.FLOWUNID = :FLOWUNID ";
// 非差额放款部分--购置融资租赁资产-传统租赁资产(判断首付款&&保证金&&手续费是否已经回款)
if("PZ2018092500000159".equals(VOUCHERNO)){
@@ -105,6 +107,12 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE");// 客户类别
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");// 业务类型
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");// 银行账号
+ TAX_NUM=dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
// 将数据封装到定义好的map集合中
param.put("FACT_MONEY",MONEY);
@@ -131,7 +139,9 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("ACC_NUMBER",ACC_NUMBER);
param.put("VOUCHERNO",VOUCHERNO);
-
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
// 通过客户名称获取客户编码维护里面的数据, 如果有数据说明是集团内, 如果没有数据说明是集团外
BizObject cust_list=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+CUSTOMERID+"'").getSingleResult(false);
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForCarTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForCarTradition.java
index 1f0fbeb10..fe9ed1938 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForCarTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForCarTradition.java
@@ -42,11 +42,11 @@ public class CreateVoucherContractChangeForCarTradition {
map.put("FlowUnid", FlowUnid);
// 未实现利息总额
if("PZ2018100900000265".equals(VOUCHERNO)||"PZ2018100900000266".equals(VOUCHERNO) || "PZ2018100900000284".equals(VOUCHERNO)||"PZ2018100900000285".equals(VOUCHERNO)){
- sql="SELECT IFNULL(ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)-ROUND(LRP.SUMINTE / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEY,0 AS MONEYNOTAX,0 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LRPT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '3' AND LCCT.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)-ROUND(LRP.SUMINTE / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEY,0 AS MONEYNOTAX,0 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LRPT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '3' AND lul.IS_MAIN='Y' AND LCCT.FLOWUNID = :FLOWUNID ";
}else if("PZ2018100900000267".equals(VOUCHERNO)||"PZ2018100900000268".equals(VOUCHERNO) || "PZ2018100900000286".equals(VOUCHERNO)||"PZ2018100900000287".equals(VOUCHERNO)){
- sql="SELECT IFNULL((LRPT.SUMINTE-ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))-(LRP.SUMINTE - ROUND(LRP.SUMINTE / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEY,0 AS MONEYNOTAX,0 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LRPT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '3' AND LCCT.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL((LRPT.SUMINTE-ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))-(LRP.SUMINTE - ROUND(LRP.SUMINTE / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEY,0 AS MONEYNOTAX,0 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LRPT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '3' AND lul.IS_MAIN='Y' AND LCCT.FLOWUNID = :FLOWUNID ";
}else {// 提前结清--调整未实现利息收入/调整未实现利息收入税金(汽车传统)
- sql="SELECT IFNULL(LRP.INTEREST,0) AS MONEY,IFNULL(ROUND(LRP.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL(LRP.INTEREST - ROUND(LRP.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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 FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID INNER 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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LRP.INTEREST,0) AS MONEY,IFNULL(ROUND(LRP.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL(LRP.INTEREST - ROUND(LRP.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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 FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRP.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LCI.ID INNER 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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}
List> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForTradition.java
index f37cfb788..72ae3582c 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractChangeForTradition.java
@@ -42,7 +42,7 @@ public class CreateVoucherContractChangeForTradition {
map.put("FlowUnid", FlowUnid);
// 未实现利息总额
if("PZ2018100900000269".equals(VOUCHERNO) || "PZ2018100900000288".equals(VOUCHERNO)){
- sql="SELECT IFNULL(LRPT.SUMINTE,0) - IFNULL(LRP.SUMINTE,0) AS MONEY,0 AS MONEYNOTAX,0 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LRPT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '2' AND LCCT.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LRPT.SUMINTE,0) - IFNULL(LRP.SUMINTE,0) AS MONEY,0 AS MONEYNOTAX,0 AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.CONTRACT_ID = LRPT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '2' AND lul.IS_MAIN='Y' AND LCCT.FLOWUNID = :FLOWUNID ";
}
//sql="SELECT LRPT.SUMINTE AS MONEY,ROUND(LRPT.SUMINTE / getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS MONEYNOTAX,(LRPT.SUMINTE-ROUND(LRPT.SUMINTE / getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID AS 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID=LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE 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 ";
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractTerminate.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractTerminate.java
index 97a000d19..331dfae0c 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractTerminate.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractTerminate.java
@@ -5,8 +5,10 @@ import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -39,6 +41,7 @@ public class CreateVoucherContractTerminate {
String CUSTNAME=null;
String CUSTOMERTYPE=null;
String BUSINESSTYPE=null;
+ String TAX_NUM=null;
// 金额类型
String date1="";
@@ -68,24 +71,24 @@ public class CreateVoucherContractTerminate {
// 调整未实现利息收入
if("PZ2018072100000045".equals(VOUCHERNO)){
- sql="SELECT IFNULL(LRPT.INTEREST, 0) AS MONEY,ROUND(IFNULL(LRPT.INTEREST, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LRPT.INTEREST, 0) - ROUND(IFNULL(LRPT.INTEREST, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(LCRAT.PAYDAY_ADJUST, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(LCRAT.PAYDAY_ADJUST, '%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 FROM LC_FUND_RENT_ADJUST_TEMP LCRAT LEFT JOIN (SELECT LRPT.CONTRACT_ID,LRPT.FLOWUNID FROM LC_RENT_PLAN_TEMP LRPT LEFT JOIN LC_FUND_RENT_ADJUST_TEMP LCRAT ON LRPT.FLOWUNID = LCRAT.FLOWUNID AND LRPT.PAYMENT_NUMBER = LCRAT.PAYMENT_NUMBER GROUP BY LRPT.FLOWUNID,LRPT.CONTRACT_ID) LRP ON LRP.FLOWUNID = LCRAT.FLOWUNID LEFT JOIN (SELECT LRPT.CONTRACT_ID,SUM(LRPT.INTEREST) AS INTEREST FROM LC_RENT_PLAN LRPT LEFT JOIN LC_FUND_RENT_ADJUST_TEMP LCRAT ON LCRAT.PAYMENT_NUMBER = LRPT.PAYMENT_NUMBER WHERE DATE_FORMAT(LRPT.PLAN_DATE,'%Y/%m/%d') >= DATE_FORMAT(LCRAT.PAYDAY_ADJUST,'%Y/%m/%d')GROUP BY LRPT.CONTRACT_ID) LRPT ON LRPT.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND LCRAT.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LRPT.INTEREST, 0) AS MONEY,ROUND(IFNULL(LRPT.INTEREST, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LRPT.INTEREST, 0) - ROUND(IFNULL(LRPT.INTEREST, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(LCRAT.PAYDAY_ADJUST, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(LCRAT.PAYDAY_ADJUST, '%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 FROM LC_FUND_RENT_ADJUST_TEMP LCRAT LEFT JOIN (SELECT LRPT.CONTRACT_ID,LRPT.FLOWUNID FROM LC_RENT_PLAN_TEMP LRPT LEFT JOIN LC_FUND_RENT_ADJUST_TEMP LCRAT ON LRPT.FLOWUNID = LCRAT.FLOWUNID AND LRPT.PAYMENT_NUMBER = LCRAT.PAYMENT_NUMBER GROUP BY LRPT.FLOWUNID,LRPT.CONTRACT_ID) LRP ON LRP.FLOWUNID = LCRAT.FLOWUNID LEFT JOIN (SELECT LRPT.CONTRACT_ID,SUM(LRPT.INTEREST) AS INTEREST FROM LC_RENT_PLAN LRPT LEFT JOIN LC_FUND_RENT_ADJUST_TEMP LCRAT ON LCRAT.PAYMENT_NUMBER = LRPT.PAYMENT_NUMBER WHERE DATE_FORMAT(LRPT.PLAN_DATE,'%Y/%m/%d') >= DATE_FORMAT(LCRAT.PAYDAY_ADJUST,'%Y/%m/%d')GROUP BY LRPT.CONTRACT_ID) LRPT ON LRPT.CONTRACT_ID = LRP.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND lul.IS_MAIN='Y' AND LCRAT.FLOWUNID = :FLOWUNID ";
// 收到的逾期租金
}else if("PZ2018081700000127".equals(VOUCHERNO)) {
- sql="SELECT IFNULL(LRPT.RENT, 0)-IFNULL(LRI.RENT,0) AS MONEY,IFNULL(LRPT.CORPUS, 0)-IFNULL(LRI.CORPUS,0) AS MONEYNOTAX,IFNULL(LRPT.INTEREST, 0)-IFNULL(LRI.INTEREST,0) AS MONEYTAX,DATE_FORMAT(LCRAT.PAYDAY_ADJUST, '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(LCRAT.PAYDAY_ADJUST, '%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 FROM LC_FUND_RENT_ADJUST_TEMP LCRAT LEFT JOIN (SELECT LRPT.CONTRACT_ID,LRPT.FLOWUNID FROM LC_RENT_PLAN_TEMP LRPT LEFT JOIN LC_FUND_RENT_ADJUST_TEMP LCRAT ON LRPT.FLOWUNID = LCRAT.FLOWUNID AND LRPT.PAYMENT_NUMBER = LCRAT.PAYMENT_NUMBER GROUP BY LRPT.FLOWUNID,LRPT.CONTRACT_ID) LRP ON LRP.FLOWUNID = LCRAT.FLOWUNID LEFT JOIN (SELECT LRPT.FLOWUNID,LRPT.CONTRACT_ID,SUM(LRPT.RENT) RENT,SUM(LRPT.CORPUS) CORPUS,SUM(LRPT.INTEREST) AS INTEREST FROM LC_RENT_PLAN LRPT LEFT JOIN LC_FUND_RENT_ADJUST_TEMP LCRAT ON LCRAT.PAYMENT_NUMBER = LRPT.PAYMENT_NUMBER WHERE DATE_FORMAT(LRPT.PLAN_DATE,'%Y/%m/%d') > dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
@@ -73,7 +76,12 @@ public class CreateVoucherDepositDeductionToMoney extends BaseBussiness {
CUSTNAME = dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
-
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
+
param.put("FACT_MONEY", MONEY);
param.put("INTERESTNOTAX", MONEYNOTAX);
param.put("TAX", MONEYTAX);
@@ -93,6 +101,10 @@ public class CreateVoucherDepositDeductionToMoney extends BaseBussiness {
param.put("CUSTOMERTYPE", CUSTOMERTYPE);
param.put("BUSINESSTYPE", "0603");
param.put("FlowUnid", FlowUnid);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
+
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEarlySettlementForTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEarlySettlementForTradition.java
index 3adf026fc..59579a082 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEarlySettlementForTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherEarlySettlementForTradition.java
@@ -41,29 +41,29 @@ public class CreateVoucherEarlySettlementForTradition {
map.put("FlowUnid", FlowUnid);
if("PZ2018101000000322".equals(VOUCHERNO) || "PZ2018101000000323".equals(VOUCHERNO)) {// 收到的逾期租金(汽车传统)
- sql="SELECT IFNULL(LFRA.DUN_RENT,0) AS MONEY,IFNULL(ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.DUN_RENT - ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.DUN_RENT,0) AS MONEY,IFNULL(ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.DUN_RENT - ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000304".equals(VOUCHERNO) || "PZ2018101000000305".equals(VOUCHERNO)) {// 收到的逾期租金(传统)
- sql="SELECT IFNULL(LFRA.DUN_RENT,0) AS MONEY,IFNULL(ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.DUN_RENT - ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.DUN_RENT,0) AS MONEY,IFNULL(ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.DUN_RENT - ROUND(LFRA.DUN_RENT / getTax (LCI.LEAS_FORM,'租金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000324".equals(VOUCHERNO) || "PZ2018101000000325".equals(VOUCHERNO)) {// 收到的逾期罚息(汽车传统)
- sql="SELECT IFNULL(LFRA.AGREED_PENALTY,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_PENALTY - ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.AGREED_PENALTY,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_PENALTY - ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000306".equals(VOUCHERNO) || "PZ2018101000000307".equals(VOUCHERNO)) {// 收到的逾期罚息(传统)
- sql="SELECT IFNULL(LFRA.AGREED_PENALTY,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_PENALTY - ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.AGREED_PENALTY,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_PENALTY - ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000326".equals(VOUCHERNO) || "PZ2018101000000327".equals(VOUCHERNO)) {// 收到的提前还款剩余本金 (汽车传统)
- sql="SELECT IFNULL(LFRA.CORPUS_OVERAGE,0) AS MONEY,IFNULL(LFRA.CORPUS_OVERAGE - LFIT.CAUTION_MONEY,0) AS MONEYNOTAX,IFNULL(LFIT.CAUTION_MONEY,0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS CAUTION_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.CORPUS_OVERAGE,0) AS MONEY,IFNULL(LFRA.CORPUS_OVERAGE - LFIT.CAUTION_MONEY,0) AS MONEYNOTAX,IFNULL(LFIT.CAUTION_MONEY,0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS CAUTION_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000308".equals(VOUCHERNO) || "PZ2018101000000309".equals(VOUCHERNO)) {// 收到的提前还款剩余本金 (传统)
- sql="SELECT IFNULL(LFRA.CORPUS_OVERAGE,0) AS MONEY,IFNULL(LFRA.CORPUS_OVERAGE - LFIT.CAUTION_MONEY,0) AS MONEYNOTAX,IFNULL(LFIT.CAUTION_MONEY,0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS CAUTION_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.CORPUS_OVERAGE,0) AS MONEY,IFNULL(LFRA.CORPUS_OVERAGE - LFIT.CAUTION_MONEY,0) AS MONEYNOTAX,IFNULL(LFIT.CAUTION_MONEY,0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,SUM(FACT_MONEY) AS CAUTION_MONEY FROM LC_FUND_INCOME WHERE FEE_TYPE = 'feetype2' GROUP BY CONTRACT_ID) LFIT ON LFIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000328".equals(VOUCHERNO) || "PZ2018101000000329".equals(VOUCHERNO)) {// 收到的未到期利息(汽车传统)
- sql="SELECT IFNULL(LFRA.AGREED_INTEREST,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_INTEREST - ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.AGREED_INTEREST,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_INTEREST - ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000310".equals(VOUCHERNO) || "PZ2018101000000311".equals(VOUCHERNO)) {// 收到的未到期利息(传统)
- sql="SELECT IFNULL(LFRA.AGREED_INTEREST,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_INTEREST - ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.AGREED_INTEREST,0) AS MONEY,IFNULL(ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.AGREED_INTEREST - ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000330".equals(VOUCHERNO) || "PZ2018101000000331".equals(VOUCHERNO)) {// 收到的项目违约金(汽车传统)
- sql="SELECT IFNULL(LFRA.PAYDAY_DATE,0) AS MONEY,IFNULL(ROUND(LFRA.PAYDAY_DATE / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL(ROUND(LFRA.PAYDAY_DATE - ROUND(LFRA.PAYDAY_DATE / getTax(LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.PAYDAY_DATE,0) AS MONEY,IFNULL(ROUND(LFRA.PAYDAY_DATE / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL(ROUND(LFRA.PAYDAY_DATE - ROUND(LFRA.PAYDAY_DATE / getTax(LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000312".equals(VOUCHERNO) || "PZ2018101000000313".equals(VOUCHERNO)) {// 收到的项目违约金(传统)
- sql="SELECT IFNULL(LFRA.PAYDAY_DATE,0) AS MONEY,IFNULL(ROUND(LFRA.PAYDAY_DATE / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL(ROUND(LFRA.PAYDAY_DATE - ROUND(LFRA.PAYDAY_DATE / getTax(LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.PAYDAY_DATE,0) AS MONEY,IFNULL(ROUND(LFRA.PAYDAY_DATE / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL(ROUND(LFRA.PAYDAY_DATE - ROUND(LFRA.PAYDAY_DATE / getTax(LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),2),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000332".equals(VOUCHERNO) || "PZ2018101000000333".equals(VOUCHERNO)) {// 收到的违约手续费(汽车传统)
- sql="SELECT IFNULL(LFRA.SDHANDLING_CHARGE,0) AS MONEY,IFNULL(ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.SDHANDLING_CHARGE - ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.SDHANDLING_CHARGE,0) AS MONEY,IFNULL(ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.SDHANDLING_CHARGE - ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000314".equals(VOUCHERNO) || "PZ2018101000000315".equals(VOUCHERNO)) {// 收到的违约手续费(传统)
- sql="SELECT IFNULL(LFRA.SDHANDLING_CHARGE,0) AS MONEY,IFNULL(ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.SDHANDLING_CHARGE - ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 LFRA.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL(LFRA.SDHANDLING_CHARGE,0) AS MONEY,IFNULL(ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFRA.SDHANDLING_CHARGE - ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LCI.ID 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,LRIT.ACC_NUMBER FROM LC_FUND_RENT_ADJUST_TEMP LFRA LEFT JOIN (SELECT CONTRACT_ID,MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME GROUP BY CONTRACT_ID) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 lul.IS_MAIN='Y' AND LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018101000000334".equals(VOUCHERNO) || "PZ2018101000000335".equals(VOUCHERNO)) {// 收到名义货价(汽车传统)
sql="";
}else if("PZ2018101000000316".equals(VOUCHERNO) || "PZ2018101000000317".equals(VOUCHERNO)) {// 收到名义货价(传统)
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherForInterestSubsidyImport.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherForInterestSubsidyImport.java
index 25c279cd5..a128d85a4 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherForInterestSubsidyImport.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherForInterestSubsidyImport.java
@@ -6,7 +6,10 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
+
import com.amarsoft.are.jbo.BizObject;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.are.jbo.JBOTransaction;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
@@ -53,11 +56,12 @@ public class CreateVoucherForInterestSubsidyImport {
String CUSTNAME=null;
String SUBJECTCODE=null;
String ACC_NUMBER=null;
+ String TAX_NUM=null;
String voucherNo = "PZ2018072100000028";
Map param = new HashMap();
// 获取新导入的贴息数据
- String sql = "SELECT IFNULL(LD.DISCOUNT_MONEY, 0) AS MONEY,IFNULL(ROUND(LD.DISCOUNT_MONEY/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LD.DISCOUNT_MONEY- ROUND(LD.DISCOUNT_MONEY/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(LD.RECEIVED_DATE, '%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,LD.BANK_SUBJECT AS SUBJECTCODE,LD.ACC_NUMBER FROM LB_DISCOUNT LD LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.FRAME_NUMBER=LD.FRAME_NUMBER LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LEC.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LCCT.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 IS_VOUCHER IS NULL ";
+ String sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LD.DISCOUNT_MONEY, 0) AS MONEY,IFNULL(ROUND(LD.DISCOUNT_MONEY/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LD.DISCOUNT_MONEY- ROUND(LD.DISCOUNT_MONEY/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(LD.RECEIVED_DATE, '%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,LD.BANK_SUBJECT AS SUBJECTCODE,LD.ACC_NUMBER FROM LB_DISCOUNT LD LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.FRAME_NUMBER=LD.FRAME_NUMBER LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID=LEC.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LCCT.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 IS_VOUCHER IS NULL AND lul.IS_MAIN='Y' ";
// 查询sql, 将结果集封装到list集合中
List> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, null);
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
@@ -82,7 +86,12 @@ public class CreateVoucherForInterestSubsidyImport {
CUSTNAME=dataList.get(i).get("CUSTOMERNAME");
SUBJECTCODE=dataList.get(i).get("SUBJECTCODE");
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");
-
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
+
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
param.put("TAX",MONEYTAX);
@@ -99,6 +108,10 @@ public class CreateVoucherForInterestSubsidyImport {
param.put("SUBJECTCODE",SUBJECTCODE);
param.put("ACC_NUMBER",ACC_NUMBER);
param.put("VOUCHERNO",voucherNo);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
+
param.put("CASHFLOW", "11213");// 现金流项目
Map map = new HashMap();
@@ -133,11 +146,12 @@ public class CreateVoucherForInterestSubsidyImport {
String CUSTNAME=null;
String SUBJECTCODE=null;
String ACC_NUMBER=null;
+ String TAX_NUM=null;
String voucherNo = "PZ2018072100000041";
Map param = new HashMap();
// 获取新导入的贴息数据
- String sql = "SELECT -IFNULL(LD.DISCOUNT_MONEY, 0) AS MONEY,-IFNULL(ROUND(LD.DISCOUNT_MONEY / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,-IFNULL((LD.DISCOUNT_MONEY - ROUND(LD.DISCOUNT_MONEY / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,LD.BANK_SUBJECT AS SUBJECTCODE,LD.ACC_NUMBER FROM LB_DISCOUNT LD LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.FRAME_NUMBER = LD.FRAME_NUMBER LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LEC.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LCCT.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 LD.ID=:ID";
+ String sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,-IFNULL(LD.DISCOUNT_MONEY, 0) AS MONEY,-IFNULL(ROUND(LD.DISCOUNT_MONEY / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS MONEYNOTAX,-IFNULL((LD.DISCOUNT_MONEY - ROUND(LD.DISCOUNT_MONEY / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,LD.BANK_SUBJECT AS SUBJECTCODE,LD.ACC_NUMBER FROM LB_DISCOUNT LD LEFT JOIN LB_EQUIPMENT_CAR LEC ON LEC.FRAME_NUMBER = LD.FRAME_NUMBER LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LEC.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LCCT.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 AND lul.IS_MAIN='Y' LD.ID=:ID";
// 查询sql, 将结果集封装到list集合中
Mapmap1 = new HashMap();
map1.put("ID",id);
@@ -165,6 +179,12 @@ public class CreateVoucherForInterestSubsidyImport {
CUSTNAME=dataList.get(i).get("CUSTOMERNAME");
SUBJECTCODE=dataList.get(i).get("SUBJECTCODE");
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");
+ TAX_NUM=dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
@@ -182,6 +202,9 @@ public class CreateVoucherForInterestSubsidyImport {
param.put("SUBJECTCODE",SUBJECTCODE);
param.put("ACC_NUMBER",ACC_NUMBER);
param.put("VOUCHERNO",voucherNo);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
param.put("CASHFLOW", "11213");// 现金流项目
Map map = new HashMap();
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherIncomeForTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherIncomeForTradition.java
index b91ee7b6f..e274de100 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherIncomeForTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherIncomeForTradition.java
@@ -5,8 +5,10 @@ import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -40,6 +42,7 @@ public class CreateVoucherIncomeForTradition extends BaseBussiness {
String CUSTOMERTYPE = null;
String BUSINESSTYPE = null;
String ACC_NUM = null;
+ String TAX_NUM = null;
String sql = "";
param.clear();
map.put("FlowUnid", FlowUnid);
@@ -48,16 +51,16 @@ public class CreateVoucherIncomeForTradition extends BaseBussiness {
// 汽车传统/收到的违约金/罚款
if("PZ2018092500000205".equals(VOUCHERNO)||"PZ2018100900000292".equals(VOUCHERNO)) {
- sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '3' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
+ sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN='Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
// 传统/收到的违约金/罚款
}else if("PZ2018092500000173".equals(VOUCHERNO)){
- sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '2' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
+ sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'违约金',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN='Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
// 汽车类传统/收到名义货价
}else if("PZ2018092500000206".equals(VOUCHERNO)||"PZ2018100900000293".equals(VOUCHERNO)){
- sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '3' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
+ sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '3' AND lul.IS_MAIN='Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
// 传统/收到名义货价
}else if("PZ2018092500000174".equals(VOUCHERNO)){
- sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '2' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
+ sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'留购价',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN='Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
}
// 查询sql, 将结果集封装到list集合中
List> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
@@ -88,7 +91,13 @@ public class CreateVoucherIncomeForTradition extends BaseBussiness {
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
ACC_NUM = dataList.get(i).get("ACC_NUMBER");
-
+ TAX_NUM = dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
+
param.put("FACT_MONEY", MONEY);
param.put("INTERESTNOTAX", MONEYNOTAX);
param.put("TAX", MONEYTAX);
@@ -108,6 +117,9 @@ public class CreateVoucherIncomeForTradition extends BaseBussiness {
param.put("BUSINESSTYPE", BUSINESSTYPE);
param.put("ACC_NUMBER", ACC_NUM);
param.put("VOUCHERNO", VOUCHERNO);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
//回款-收到的违约金/罚款--回租
if("PZ2018092500000173".equals(VOUCHERNO)) {
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java
index 0f53bae01..af9d1873c 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherLoanDistributor.java
@@ -6,6 +6,7 @@ import java.util.Map;
import jbo.app.tenwa.customer.CUSTOMER_LIST;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.JBOFactory;
@@ -22,7 +23,6 @@ public class CreateVoucherLoanDistributor {
Map param=new HashMap();
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
-
String MONEY=null;
String MONEYNOTAX=null;
String MONEYTAX=null;
@@ -49,6 +49,8 @@ public class CreateVoucherLoanDistributor {
String ACC_NUMBER=null;
String REQNBR=null;
String TAX_TYPE=null;
+ String TAX_NUM=null;
+
String sql="";
String moneyDataSource="";
param.clear();
@@ -86,7 +88,7 @@ public class CreateVoucherLoanDistributor {
sql="SELECT IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) AS MONEYNOTAX,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) 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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID,PSL.payType FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN PRD_SPECIFIC_LIBRARY PSL ON PSL.PRODUCTID = LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND PSL.operationType = 'DYCD' AND LFIT.FLOWUNID = :FLOWUNID ";
//sql="SELECT IFNULL(LCCT.FIRST_PAYMENT, 0) + IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) AS MONEY,IFNULL(LCCT.FIRST_PAYMENT, 0) AS MONEYNOTAX,IFNULL(LCCT.CLEAN_LEASE_MONEY, 0) 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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT.ACC_NUMBER,LFIT.REQNBR,LPI.PRODUCT_ID FROM LC_CALC_CONDITION LCCT LEFT JOIN (SELECT LFIT.FLOWUNID,LFIT.CONTRACT_ID,MIN(LFIT.ACC_NUMBER) ACC_NUMBER,MIN(LFICDT.REQNBR) AS REQNBR,MIN(LFIT.EBANK_STATUS) AS EBANK_STATUS FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN lc_fund_income_callback_detail_temp LFICDT ON LFICDT.cmb_pay_no = LFIT.CMB_PAY_NO WHERE lfit.FEE_TYPE = 'feetype10' GROUP BY CONTRACT_ID,FLOWUNID) LFIT ON LFIT.CONTRACT_ID = LCCT.CONTRACT_ID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = lfit.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID LEFT JOIN PRD_SPECIFIC_LIBRARY PSL ON PSL.PRODUCTID=LPI.PRODUCT_ID WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS = '05' AND LFIT.FLOWUNID = :FLOWUNID ";
}else {
- 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,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,MIN(EBANK_STATUS) AS EBANK_STATUS 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 WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS= '05' AND lfit.FLOWUNID = :FLOWUNID ";
+ sql="SELECT ROUND((getTax(lci.LEAS_FORM,'"+TAX_TYPE+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,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,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,MIN(EBANK_STATUS) AS EBANK_STATUS 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 WHERE LPI.BUSINESSTYPE = '1' AND LFIT.EBANK_STATUS= '05' AND lfit.FLOWUNID = :FLOWUNID ";
}
//else if("PZ2018122000000010".equals(VOUCHERNO)){
@@ -173,6 +175,12 @@ public class CreateVoucherLoanDistributor {
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");
REQNBR=dataList.get(i).get("REQNBR");
+ TAX_NUM=dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
@@ -200,6 +208,9 @@ public class CreateVoucherLoanDistributor {
param.put("ACC_NUMBER",ACC_NUMBER);
param.put("REQNBR",REQNBR);
param.put("VOUCHERNO",VOUCHERNO);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
}
// 通过客户名称获取客户编码维护里面的数据, 如果有数据说明是集团内, 如果没有数据说明是集团外
BizObject cust_list1=JBOFactory.createBizObjectQuery(CUSTOMER_LIST.CLASS_NAME, "CUST_ID='"+DISTRIBUTOR_ID+"'").getSingleResult(false);
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMonthSettlement.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMonthSettlement.java
index ce0460b08..920b2434e 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMonthSettlement.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMonthSettlement.java
@@ -9,9 +9,11 @@ import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.JBOException;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -43,6 +45,7 @@ public class CreateVoucherMonthSettlement{
String CUSTNAME=null;
String CUSTOMERTYPE=null;
String BUSINESSTYPE=null;
+ String TAX_NUM=null;
String F58=null;
param.clear();
String sql="";
@@ -67,12 +70,12 @@ public class CreateVoucherMonthSettlement{
// 月结利息
if("PZ2018071200000016".equals(voucherNo)) {
// sql="SELECT CRM.ID,CRM.INTEREST_TAX 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 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 LPI.BUSINESSTYPE='1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND DATEDIFF(SYSDATE(),LRP.PLAN_DATE)>3 AND (IFNULL(LRP.INTEREST,0)-IFNULL(LRI.INTEREST,0))<>0 AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%')";
- sql="SELECT CRM.ID,CRM.INTEREST_TAX 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 FROM LC_RENT_INCOME GROUP BY CONTRACT_ID)LRI2 ON LRI2.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 LPI.BUSINESSTYPE = '1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND (CAST(CRM.RENT_LIST AS SIGNED)-CAST(IFNULL(LRI2.PLAN_LIST,0) AS SIGNED))<=2 AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%') ";
+ sql="SELECT ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,CRM.ID,CRM.INTEREST_TAX 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 FROM LC_RENT_INCOME GROUP BY CONTRACT_ID)LRI2 ON LRI2.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 LPI.BUSINESSTYPE = '1' AND lul.IS_MAIN='Y' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND (IFNULL(LRP.INTEREST, 0) - IFNULL(LRI.INTEREST, 0)) <> 0 AND (CAST(CRM.RENT_LIST AS SIGNED)-CAST(IFNULL(LRI2.PLAN_LIST,0) AS SIGNED))<=2 AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%') ";
// 手续费(按月分摊)
}else if("PZ2018071200000017".equals(voucherNo)){
- sql="SELECT CRM.ID,CRM.INTEREST AS MONEY,ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST - ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,CRM.FEE AS FEEMONEY,IFNULL((CRM.FEE - ROUND(CRM.FEE / getTax (LCI.LEAS_FORM,'手续费',LCCT.START_DATE))),0) AS FEE_NOTAX,CRM.DISCOUNT AS DISCOUNT,IFNULL((CRM.DISCOUNT - ROUND(CRM.DISCOUNT / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE))),0) AS DISCOUNT_NOTAX,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 LB_CONTRACT_INFO LCI ON CRM.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT 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 LPI.BUSINESSTYPE='1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%') ";
+ sql="SELECT CRM.ID,CRM.INTEREST AS MONEY,ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST - ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,CRM.FEE AS FEEMONEY,IFNULL((CRM.FEE - ROUND(CRM.FEE / getTax (LCI.LEAS_FORM,'手续费',LCCT.START_DATE))),0) AS FEE_NOTAX,CRM.DISCOUNT AS DISCOUNT,IFNULL((CRM.DISCOUNT - ROUND(CRM.DISCOUNT / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE))),0) AS DISCOUNT_NOTAX,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 LB_CONTRACT_INFO LCI ON CRM.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT 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 LPI.BUSINESSTYPE='1' AND lul.IS_MAIN='Y' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND lcct.HANDLING_CHARGE_MONEY_TYPE='0020' AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%') ";
}else {
- sql="SELECT CRM.ID,CRM.INTEREST AS MONEY,ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST - ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,CRM.FEE AS FEEMONEY,IFNULL((CRM.FEE - ROUND(CRM.FEE / getTax (LCI.LEAS_FORM,'手续费',LCCT.START_DATE))),0) AS FEE_NOTAX,IFNULL(CRM.DISCOUNT,0) AS DISCOUNT_NOTAX,IFNULL(CRM.DISCOUNT,0) - ROUND(IFNULL(CRM.DISCOUNT,0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS DISCOUNT_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 LB_CONTRACT_INFO LCI ON CRM.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT 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 LPI.BUSINESSTYPE = '1' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%') ";
+ sql="SELECT CRM.ID,CRM.INTEREST AS MONEY,ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(CRM.INTEREST - ROUND(CRM.INTEREST / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) AS TAX,CRM.FEE AS FEEMONEY,IFNULL((CRM.FEE - ROUND(CRM.FEE / getTax (LCI.LEAS_FORM,'手续费',LCCT.START_DATE))),0) AS FEE_NOTAX,IFNULL(CRM.DISCOUNT,0) AS DISCOUNT_NOTAX,IFNULL(CRM.DISCOUNT,0) - ROUND(IFNULL(CRM.DISCOUNT,0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS DISCOUNT_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 LB_CONTRACT_INFO LCI ON CRM.CONTRACT_ID = LCI.ID LEFT JOIN LC_CALC_CONDITION LCCT 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 LPI.BUSINESSTYPE = '1' AND lul.IS_MAIN='Y' AND DATE_FORMAT(CRM.END_DATE, '%Y/%m') = DATE_FORMAT(SYSDATE(), '%Y/%m') AND CRM.ID NOT IN (SELECT f58 AS ID FROM voucher_v8 WHERE module_name LIKE '%"+modular+"%') ";
}
/*//租金的利息税金
@@ -112,29 +115,38 @@ public class CreateVoucherMonthSettlement{
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
F58=dataList.get(i).get("ID");
-
- param.put("FACT_MONEY",MONEY);
- param.put("INTERESTNOTAX",MONEYNOTAX);
- param.put("TAX",TAX);
- //param.put("FACT_MONEY",FEEMONEY);
- param.put("ACCOUNT_DATE",ACCOUNT_DATE);
- param.put("FACT_DATE",FACT_DATE);
- param.put("CONTRACT_ID",CONTRACT_ID);
- param.put("CONTRACT_NUMBER",CONTRACT_NUMBER);
- param.put("PROJECT_NAME",PROJECT_NAME);
- 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("CUSTID",CUSTID);
- param.put("CUSTNAME",CUSTNAME);
- param.put("CUSTOMERTYPE",CUSTOMERTYPE);
- param.put("BUSINESSTYPE",BUSINESSTYPE);
- param.put("VOUCHERNO",voucherNo);
- param.put("F58",F58);
-
- param.put("BUSINESSTYPE", "0604"); // 主营类型
+ TAX_NUM=dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
+
+ param.put("FACT_MONEY",MONEY);
+ param.put("INTERESTNOTAX",MONEYNOTAX);
+ param.put("TAX",TAX);
+ //param.put("FACT_MONEY",FEEMONEY);
+ param.put("ACCOUNT_DATE",ACCOUNT_DATE);
+ param.put("FACT_DATE",FACT_DATE);
+ param.put("CONTRACT_ID",CONTRACT_ID);
+ param.put("CONTRACT_NUMBER",CONTRACT_NUMBER);
+ param.put("PROJECT_NAME",PROJECT_NAME);
+ 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("CUSTID",CUSTID);
+ param.put("CUSTNAME",CUSTNAME);
+ param.put("CUSTOMERTYPE",CUSTOMERTYPE);
+ param.put("BUSINESSTYPE",BUSINESSTYPE);
+ param.put("VOUCHERNO",voucherNo);
+ param.put("F58",F58);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
+
+ param.put("BUSINESSTYPE", "0604"); // 主营类型
map.clear();
map.put("PROJ_TYPE", leas_form);
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java
index 4ab1dc0de..b4c3ba19b 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherOnhireTradition.java
@@ -46,7 +46,7 @@ public class CreateVoucherOnhireTradition extends BaseBussiness{
if("PZ2018092500000170".equals(VOUCHERNO)) {
sql="SELECT IFNULL(LCCT.EQUIP_AMT,0) - IFNULL(LCCT.FIRST_PAYMENT,0) + IFNULL(LCCT.OTHER_MONEY,0) AS MONEY,IFNULL(LRPT.INTEREST, 0) AS INTEREST,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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID,CONTRACT_ID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '2' AND lul.IS_MAIN = 'Y' AND LCCT.FLOWUNID = :FLOWUNID ";
}else {
- sql="SELECT IFNULL((LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT + LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY),0) AS OTHERSMONEY,IFNULL((LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT),0) AS EQUIP_SUBFIRST,IFNULL((LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY),0) AS INSURANCE_OTHER,IFNULL(LRPT.INTEREST,0) AS INTEREST,IFNULL(ROUND(LRPT.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS INTERESTNOTAX,IFNULL((LRPT.INTEREST - ROUND(LRPT.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '3' AND LCCT.FLOWUNID = :FLOWUNID ";
+ sql="SELECT IFNULL((LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT + LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY),0) AS OTHERSMONEY,IFNULL((LCCT.EQUIP_AMT - LCCT.FIRST_PAYMENT),0) AS EQUIP_SUBFIRST,IFNULL((LCCT.INSURANCE_PREMIUM + LCCT.OTHER_MONEY),0) AS INSURANCE_OTHER,IFNULL(LRPT.INTEREST,0) AS INTEREST,IFNULL(ROUND(LRPT.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2),0) AS INTERESTNOTAX,IFNULL((LRPT.INTEREST - ROUND(LRPT.INTEREST / getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)),0) 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 FROM LC_CALC_CONDITION_TEMP LCCT LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.FLOWUNID = LCCT.FLOWUNID LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRPT.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 = '3' AND lul.IS_MAIN='Y' AND LCCT.FLOWUNID = :FLOWUNID ";
}
param.clear();
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedDashedIncomeTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedDashedIncomeTradition.java
index 64cfa7971..b7e7269e1 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedDashedIncomeTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedDashedIncomeTradition.java
@@ -5,8 +5,10 @@ import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -41,6 +43,7 @@ public class CreateVoucherRedDashedIncomeTradition extends BaseBussiness {
String CUSTOMERTYPE = null;
String BUSINESSTYPE = null;
String ACC_NUMBER = null;
+ String TAX_NUM = null;
String TaxType="";
String sql = "";
param.clear();
@@ -57,7 +60,7 @@ public class CreateVoucherRedDashedIncomeTradition extends BaseBussiness {
TaxType="留购价";
}
- sql = "SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+TaxType+"',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+TaxType+"',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '2' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
+ sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'"+TaxType+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY,0) AS MONEY,IFNULL(ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+TaxType+"',LCCT.START_DATE),2),0) AS MONEYNOTAX,IFNULL((LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+TaxType+"',LCCT.START_DATE),2)),0) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LPI.BUSINESSTYPE = '2' AND lul.IS_MAIN='Y' AND LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
/*// GPS不参融
if("PZ2018092500000178".equals(VOUCHERNO) || "PZ2018100900000260".equals(VOUCHERNO)) {
@@ -90,6 +93,12 @@ public class CreateVoucherRedDashedIncomeTradition extends BaseBussiness {
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
ACC_NUMBER = dataList.get(i).get("ACC_NUMBER");
+ TAX_NUM = dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
param.put("FACT_MONEY", MONEY);
param.put("INTERESTNOTAX", MONEYNOTAX);
@@ -108,6 +117,9 @@ public class CreateVoucherRedDashedIncomeTradition extends BaseBussiness {
param.put("BUSINESSTYPE", BUSINESSTYPE);
param.put("ACC_NUMBER", ACC_NUMBER);
param.put("VOUCHERNO", VOUCHERNO);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
//收到客户手续费--回租
if("PZ2018092500000176".equals(VOUCHERNO)) {
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncome.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncome.java
index 4b3741399..233c9b190 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncome.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncome.java
@@ -5,9 +5,11 @@ import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.JBOException;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -40,6 +42,7 @@ public class CreateVoucherRedRentIncome {
String CUSTNAME=null;
String CUSTOMERTYPE=null;
String BUSINESSTYPE=null;
+ String TAX_NUM=null;
String sql="";
param.clear();
@@ -48,16 +51,16 @@ public class CreateVoucherRedRentIncome {
map.put("FLOWUNID", FlowUnid);
// 收到的租金
if("PZ2018072100000037".equals(VOUCHERNO)){
- sql= "SELECT IFNULL(LRIT.INTEREST, 0) AS MONEY,CASE WHEN MONTH(NOW())=MONTH(LRP.PLAN_DATE) THEN ROUND(IFNULL(LRIT.INTEREST, 0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)ELSE '0' END AS MONEYNOTAX,CASE WHEN MONTH(NOW()) = MONTH(LRP.PLAN_DATE) THEN (IFNULL(LRIT.INTEREST, 0) - ROUND(IFNULL(LRIT.INTEREST, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE '0' END AS MONEYTAX,LRIT.RENT AS RENTMONEY,LRIT.CORPUS AS CORPUS,CASE WHEN MONTH(NOW()) = MONTH(LRP.PLAN_DATE) THEN LRIT.INTEREST ELSE '0' END AS INTEREST,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 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND lrp.plan_list=lrit.plan_list LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND LRIT.FLOWUNID = :FLOWUNID ";
+ sql= "SELECT ROUND((getTax(lci.LEAS_FORM,'租金',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LRIT.INTEREST, 0) AS MONEY,CASE WHEN MONTH(NOW())=MONTH(LRP.PLAN_DATE) THEN ROUND(IFNULL(LRIT.INTEREST, 0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)ELSE '0' END AS MONEYNOTAX,CASE WHEN MONTH(NOW()) = MONTH(LRP.PLAN_DATE) THEN (IFNULL(LRIT.INTEREST, 0) - ROUND(IFNULL(LRIT.INTEREST, 0) / getTax (LCI.LEAS_FORM,'租息',LCCT.START_DATE),2)) ELSE '0' END AS MONEYTAX,LRIT.RENT AS RENTMONEY,LRIT.CORPUS AS CORPUS,CASE WHEN MONTH(NOW()) = MONTH(LRP.PLAN_DATE) THEN LRIT.INTEREST ELSE '0' END AS INTEREST,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 FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND lrp.plan_list=lrit.plan_list LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND LRIT.FLOWUNID = :FLOWUNID ";
// 收到的逾期利息
}else if("PZ2018072100000038".equals(VOUCHERNO)){
- sql= "SELECT IFNULL(LRIT.PENALTY,0) AS MONEY,ROUND(IFNULL(LRIT.PENALTY,0)/getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LRIT.PENALTY,0)-ROUND(IFNULL(LRIT.PENALTY,0)/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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND LRIT.FLOWUNID=:FLOWUNID ";
+ sql= "SELECT ROUND((getTax(lci.LEAS_FORM,'逾期利息',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LRIT.PENALTY,0) AS MONEY,ROUND(IFNULL(LRIT.PENALTY,0)/getTax(LCI.LEAS_FORM,'逾期利息',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LRIT.PENALTY,0)-ROUND(IFNULL(LRIT.PENALTY,0)/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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LRIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND LRIT.FLOWUNID=:FLOWUNID ";
// 收到的违约金/罚款
}else if("PZ2018072100000039".equals(VOUCHERNO)) {
- sql="SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,ROUND(IFNULL(LFIT.FACT_MONEY,0)/getTax(LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LFIT.FACT_MONEY,0)-ROUND(IFNULL(LFIT.FACT_MONEY,0)/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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LFIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND FEE_TYPE='feetype30' AND LFIT.FLOWUNID=:FLOWUNID ";
+ sql="SELECT ROUND((getTax(lci.LEAS_FORM,'违约金',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY,0) AS MONEY,ROUND(IFNULL(LFIT.FACT_MONEY,0)/getTax(LCI.LEAS_FORM,'违约金',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LFIT.FACT_MONEY,0)-ROUND(IFNULL(LFIT.FACT_MONEY,0)/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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LFIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND FEE_TYPE='feetype30' AND LFIT.FLOWUNID=:FLOWUNID ";
// 收到的名义货架
}else if("PZ2018072100000043".equals(VOUCHERNO)) {
- sql="SELECT IFNULL(LFIT.FACT_MONEY,0) AS MONEY,ROUND(IFNULL(LFIT.FACT_MONEY,0)/getTax(LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LFIT.FACT_MONEY,0)-ROUND(IFNULL(LFIT.FACT_MONEY,0)/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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LFIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND FEE_TYPE='feetype4' AND LFIT.FLOWUNID=:FLOWUNID ";
+ sql="SELECT ROUND((getTax(lci.LEAS_FORM,'留购价',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,IFNULL(LFIT.FACT_MONEY,0) AS MONEY,ROUND(IFNULL(LFIT.FACT_MONEY,0)/getTax(LCI.LEAS_FORM,'留购价',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LFIT.FACT_MONEY,0)-ROUND(IFNULL(LFIT.FACT_MONEY,0)/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,DI.F_I_TYPE,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE FROM LC_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID=LFIT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.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 = '1' AND FEE_TYPE='feetype4' AND LFIT.FLOWUNID=:FLOWUNID ";
}
List> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
@@ -85,6 +88,12 @@ public class CreateVoucherRedRentIncome {
CUSTNAME=dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
+ TAX_NUM=dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
@@ -106,6 +115,9 @@ public class CreateVoucherRedRentIncome {
param.put("CUSTNAME",CUSTNAME);
param.put("CUSTOMERTYPE",CUSTOMERTYPE);
param.put("BUSINESSTYPE",BUSINESSTYPE);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
if("1".equals(BUSINESSTYPE)){
if("PZ2018072100000037".equals(VOUCHERNO)) {
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncomeTradition.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncomeTradition.java
index 090098b92..f191c683e 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncomeTradition.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherRedRentIncomeTradition.java
@@ -5,9 +5,11 @@ import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.JBOException;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -45,6 +47,7 @@ public class CreateVoucherRedRentIncomeTradition {
String CUSTOMERTYPE=null;
String BUSINESSTYPE=null;
String ACC_NUM=null;
+ String TAX_NUM=null;
String sql="";
param.clear();
map.clear();
@@ -52,19 +55,19 @@ public class CreateVoucherRedRentIncomeTradition {
// 收到的租金-月付-3--回租
if("PZ2018092500000179".equals(VOUCHERNO)){
- sql= "SELECT IFNULL(LRIT.INTEREST,0) AS MONEY,ROUND(IFNULL(LRIT.INTEREST,0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2) AS MONEYNOTAX,(IFNULL(LRIT.INTEREST,0)-ROUND(IFNULL(LRIT.INTEREST,0)/getTax(LCI.LEAS_FORM,'租息',LCCT.START_DATE),2))AS MONEYTAX,IFNULL(LRIT.RENT,0) AS RENT,IFNULL(LRIT.CORPUS,0) AS CORPUS,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LrIT.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LRIT.FLOWUNID,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LRIT.OWN_NUMBER FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LC_RENT_PLAN LRP ON LRP.CONTRACT_ID=LRIT.CONTRACT_ID AND LRP.PLAN_LIST=LRIT.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 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 LCI.BUSINESSTYPE = '2' AND LrIT.FLOWUNID = :FLOWUNID AND LCCT.INCOME_NUMBER_YEAR ='income_1' AND DATE_FORMAT(LRP.PLAN_DATE,'%Y-%m') > dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
@@ -93,6 +96,12 @@ public class CreateVoucherRedRentIncomeTradition {
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
ACC_NUM=dataList.get(i).get("OWN_NUMBER");
+ TAX_NUM=dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
param.put("INTEREST",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
@@ -115,6 +124,9 @@ public class CreateVoucherRedRentIncomeTradition {
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("ACC_NUMBER",ACC_NUM);
param.put("VOUCHERNO",VOUCHERNO);
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
if("PZ2018100900000263".equals(VOUCHERNO)) {
param.put("BUSINESSTYPE", "0604");// 主营类型
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherToBeforeOnhire.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherToBeforeOnhire.java
index b35b3933e..9d1977e14 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherToBeforeOnhire.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherToBeforeOnhire.java
@@ -5,8 +5,10 @@ import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
+import com.amarsoft.are.jbo.JBOFactory;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
@@ -38,6 +40,7 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
String CUSTOMERTYPE = null;
String BUSINESSTYPE = null;
String ACC_NUM = null;
+ String TAX_NUM = null;
String tax_type="";
String sql = "";
param.clear();
@@ -54,7 +57,7 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
}
// 传统
if("PZ2018092500000156".equals(VOUCHERNO) || "PZ2018092500000157".equals(VOUCHERNO) || "PZ2018092500000158".equals(VOUCHERNO)) {
- sql = "SELECT LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='2' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
+ sql = "SELECT ROUND((getTax(lci.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE)-1)*100,0) AS TAX_NUM,LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='2' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
}else {// 汽车类传统
sql = "SELECT LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax (LCI.LEAS_FORM,'"+tax_type+"',LCCT.START_DATE),2)) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT.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_FUND_INCOME_TEMP LFIT LEFT JOIN LB_CONTRACT_INFO LCI ON LFIT.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 LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_ID = LCI.ID WHERE LFIT.FEE_TYPE = :FEE_TYPE AND LPI.BUSINESSTYPE='3' AND lul.IS_MAIN='Y' AND LFIT.FLOWUNID = :FLOWUNID ";
}
@@ -91,7 +94,12 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
CUSTOMERNAME = dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
- // ACC_NUM = dataList.get(i).get("ACC_NUMBER");
+ TAX_NUM = dataList.get(i).get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
param.put("FACT_MONEY", MONEY);
param.put("INTERESTNOTAX", MONEYNOTAX);
@@ -108,9 +116,10 @@ public class CreateVoucherToBeforeOnhire extends BaseBussiness {
param.put("CUSTNAME", CUSTOMERNAME);
param.put("CUSTOMERTYPE", CUSTOMERTYPE);
param.put("BUSINESSTYPE", BUSINESSTYPE);
- /*if(!"PZ2018092500000157".equals(VOUCHERNO) || !"PZ2018092600000245".equals(VOUCHERNO) || !"PZ2018092500000158".equals(VOUCHERNO) || !"PZ2018092600000246".equals(VOUCHERNO)) {
- param.put("ACC_NUMBER", ACC_NUM);
- }*/
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
+
param.put("VOUCHERNO", VOUCHERNO);
// 传统类型
diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertVoucherRentIncome.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertVoucherRentIncome.java
index f3502bb42..4e05fab38 100644
--- a/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertVoucherRentIncome.java
+++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/InsertVoucherRentIncome.java
@@ -46,22 +46,21 @@ public class InsertVoucherRentIncome {
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
-
/**
* 汽车类
*/
//收到的租金--网银-未逾期及逾期未过月的--(汽车)
if("PZ2018072100000024".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f1,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3,'收到的租金',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest/getTax(lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest-ROUND(lvri.interest/getTax(lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '汽车C端待查客户' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000DC' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_id END,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END,'','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018072100000024')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest - ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '汽车C端待查客户' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000DC' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END AS f73, '' AS f75,CASE WHEN lv.sort_number = '6' THEN ROUND((getTax (lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018072100000024')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
//收到的租金--网银-逾期过月--(汽车)
if("PZ2018080400000081".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67 ) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f1,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3,'收到的租金',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '汽车C端待查客户' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000DC' ELSE lvri.cust_id END,'','','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018080400000081')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67 ) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '汽车C端待查客户' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000DC' ELSE lvri.cust_id END AS f65,'' AS f73,'' AS f74,'' AS f75,'' AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018080400000081')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
//收到的逾期利息--网银
if("PZ2018072100000025".equals(VOUCHERNO)){
// sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f1,f3,f5,f6,f7,f8,f12,f15,f49,f50,f51,f52,f59,f60,f61,f62,f64,f65,f73,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') f1,lvri.voucher_f3,'收到的逾期利息',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) ELSE 0.00 END AS f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,lci.contract_number,CASE WHEN lv.loan_direction = '1' THEN '业务系统待查客户' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.loan_direction = '2' THEN '04' ELSE '' END,CASE WHEN lv.loan_direction = '1' THEN 'APZL00000000DC' ELSE lvri.cust_id END,CASE WHEN lv.loan_direction = '2' THEN '0603' ELSE '' END,lvri.OWN_NUMBER,'已完整',NOW(3),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,CASE WHEN lv.sort_number = '2' THEN lci.leas_form ELSE '' END FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id WHERE lvc.voucher_no IN ('PZ2018072100000025','PZ2018080400000082'))lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的逾期利息%' AND f58 IS NOT NULL) AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') f1,lv.subjects_code AS f2,lvri.voucher_f3,'收到的逾期利息',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'租息',lcct.start_date),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'租息',lcct.start_date),2)) ELSE 0.00 END AS f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '汽车C端待查客户' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000DC' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_id END,CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END,'','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018072100000025')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的逾期利息%' AND f58 IS NOT NULL) AND lvri.penalty>0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.subjects_code AS f2,lvri.voucher_f3 AS f3,'收到的逾期利息' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2)) ELSE 0.00 END AS f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '汽车C端待查客户' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000DC' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END AS f73,'' AS f74,'' AS f75,CASE WHEN lv.sort_number = '3' THEN ROUND((getTax (lci.LEAS_FORM,'逾期利息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018072100000025')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的逾期利息%' AND f58 IS NOT NULL) AND lvri.penalty>0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
/**
@@ -69,25 +68,25 @@ public class InsertVoucherRentIncome {
*/
//收到的租金-月付--网银-未逾期及逾期未过月的(传统)
if("PZ2018100900000298".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f1,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3,'收到的租金',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest - ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_id END,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END,'','已完整',DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018100900000298')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR='income_1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest - ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' WHEN lv.sort_number = '6' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END AS f73,'' AS f74,'' AS f75,CASE WHEN lv.sort_number = '6' THEN ROUND((getTax (lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018100900000298')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR='income_1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BYlvri.voucher_f3 ";
}
//收到的租金-月付--网银-逾期过月(传统)
if("PZ2018092500000171".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67 ) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f1,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3,'收到的租金',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' ELSE lvri.cust_id END,'','','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018092500000171')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR='income_1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67 ) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' ELSE lvri.cust_id END AS f65,'' AS f73,'' AS f74,'' AS f75,'' AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018092500000171')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR='income_1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
//收到的租金-季付--网银-未逾期及逾期未过月的(传统)
if("PZ2019022500000012".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f1,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3,'收到的租金',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN (LVRI.INTEREST -ROUND(LVRI.INTEREST /getTax(lci.leas_form,'租息',lcct.start_date),2))ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN (LVRI.INTEREST -ROUND(LVRI.INTEREST /getTax(lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '2' OR lv.sort_number = '5' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' WHEN lv.sort_number = '5' THEN '' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' WHEN lv.sort_number = '5' THEN '' ELSE lvri.cust_id END,'','','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2019022500000012')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR = 'income_3' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN (LVRI.INTEREST - ROUND(LVRI.INTEREST / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN (LVRI.INTEREST - ROUND(LVRI.INTEREST / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49, lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '2' OR lv.sort_number = '5' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' WHEN lv.sort_number = '5' THEN '' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' WHEN lv.sort_number = '5' THEN '' ELSE lvri.cust_id END AS f65,'' AS f73,'' AS f74,'' AS f75,CASE WHEN lv.sort_number = '5' THEN ROUND((getTax (lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag, lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2019022500000012')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR = 'income_3' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
//收到的租金-季付--网银-逾期过月(传统)
if("PZ2019022500000011".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67 ) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f1,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3,'收到的租金',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' ELSE lvri.cust_id END,'','','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2019022500000011')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR='income_3' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67 ) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(lvri.hire_date, '%Y/%m/%d') f15,lv.SUBJECTS_CODE AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END AS f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' ELSE lvri.cust_id END AS f65,'' AS f73,'' AS f74,'' AS f75,'' AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name, CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2019022500000011')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '2' AND lcct.INCOME_NUMBER_YEAR='income_3' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
//收到的逾期利息--网银(传统)
if("PZ2018092500000172".equals(VOUCHERNO)){
- sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') f1,lv.subjects_code AS f2,lvri.voucher_f3,'收到的逾期利息',lv.LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'租息',lcct.start_date),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'租息',lcct.start_date),2)) ELSE 0.00 END AS f8,'定时任务-每天生成租金实收凭证',DATE_FORMAT(SYSDATE(), '%Y/%m/%d'),lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS cust_name,lv.loan_subject,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_id END,CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END,'','已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018092500000172')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '2' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的逾期利息%' AND f58 IS NOT NULL) AND lvri.penalty>0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
+ sql_where="INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f75,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE(UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') f15,lv.subjects_code AS f2,lvri.voucher_f3 AS f3,'收到的逾期利息' AS f5,lv.LOAN_SUBJECT AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2)) ELSE 0.00 END AS f8,'定时任务-每天生成租金实收凭证' AS f12,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '传统B端待查客户' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS f61,lv.loan_subject AS f62,CASE WHEN lv.sort_number = '1' THEN 'APZL00000000CT' WHEN lv.sort_number = '3' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END AS f73,'' AS f74,'' AS f75,CASE WHEN lv.sort_number = '3' THEN ROUND((getTax (lci.LEAS_FORM,'逾期利息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc, 'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id=lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id=lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018092500000172')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '2' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的逾期利息%' AND f58 IS NOT NULL) AND lvri.penalty>0 AND lvri.EBANK_NUMBER IS NOT NULL AND lvri.EBANK_NUMBER <> '' ORDER BY lvri.voucher_f3 ";
}
/**
@@ -126,33 +125,55 @@ public class InsertVoucherRentIncome {
*f17也会存进表中
*查询sql 用逗号关联的方法,查询乘积条数 where 1=1
*/
- public void initLVRentIncome() throws Exception{
+ public void initLVRentIncome(){
Transaction Sqlca =null;
try{
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
// String sql="INSERT INTO lv_rent_income (SELECT REPLACE(UUID(),'-',''),CONCAT('k',getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE ,lri.RENT ,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID FROM lc_rent_income lri LEFT JOIN lb_contract_info lci ON lci.id=lri.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id=lci.id LEFT JOIN customer_info cif ON cif.customerid=lul.customer_id WHERE lri.rent>0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income))";
// 未逾期及逾期未过月
- String sql="INSERT INTO lv_rent_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status NOT IN('手工收款','批量收款','提前结清') OR (lrp.collect_status IS NULL OR lrp.collect_status='')) AND lri.rent > 0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income) AND DATE_FORMAT(NOW(), '%Y-%m') = DATE_FORMAT(lrp.plan_date, '%Y-%m'))";
+ String sql1="INSERT INTO lv_rent_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status = '网银收款' OR (lrp.collect_status IS NULL OR lrp.collect_status = '')) AND lri.rent > 0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income) AND DATE_FORMAT(NOW(), '%Y-%m') = DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y')";
// 逾期过月
- String sq1="INSERT INTO lv_rent_income2 (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status NOT IN ('手工收款','批量收款','提前结清') OR (lrp.collect_status IS NULL OR lrp.collect_status = '' )) AND lri.rent > 0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income2) AND DATE_FORMAT(NOW(), '%Y-%m') > DATE_FORMAT(lrp.plan_date, '%Y-%m')) ";
- String sql1="INSERT INTO lv_penalty_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE,0.00,0.00,0.00,lri.PENALTY,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status NOT IN ('手工收款','批量收款','提前结清') OR (lrp.collect_status IS NULL OR lrp.collect_status = '')) AND lri.penalty > 0 AND lri.id NOT IN (SELECT income_id FROM lv_penalty_income)) ";
+ String sql2="INSERT INTO lv_rent_income2 (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status ='网银收款' OR (lrp.collect_status IS NULL OR lrp.collect_status='')) AND lri.rent > 0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income2) AND DATE_FORMAT(NOW(), '%Y-%m') > DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y')";
+ // 逾期利息
+ String sql3="INSERT INTO lv_penalty_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lri.ID,lri.HIRE_DATE,0.00,0.00,0.00,lri.PENALTY,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status ='网银收款' OR (lrp.collect_status IS NULL OR lrp.collect_status = '')) AND lri.penalty > 0 AND lri.id NOT IN (SELECT income_id FROM lv_penalty_income) AND (lri.PENALTY!='0.00' AND lri.PENALTY IS NOT NULL) AND lul.is_main='Y') ";
// String sql2="INSERT INTO lv_discount_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,ld.ID,DATE_FORMAT(ld.inputtime, '%Y/%m/%d'),ld.discount_money,0.00,0.00,0.00,oac.acc_bank,oac.acc_name,oac.acc_number FROM lb_discount ld LEFT JOIN lb_contract_info lci ON lci.contract_no = ld.contract_no 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 (SELECT acc_bank,acc_name,acc_number FROM OWN_ACCOUNT WHERE account_type = 'in_account' AND state_ = '0010' LIMIT 0, 1) oac ON 1 = 1 WHERE ld.discount_money > 0 AND ld.id NOT IN (SELECT income_id FROM lv_discount_income)) ";
- SqlObject as1 = new SqlObject(sq1);
- SqlObject asql = new SqlObject(sql);
- SqlObject asql1 = new SqlObject(sql1);
- // SqlObject asql2 = new SqlObject(sql2);
- Sqlca.executeSQL(as1);
- Sqlca.executeSQL(asql);
- Sqlca.executeSQL(asql1);
- // Sqlca.executeSQL(asql2);
+
+ // 用于判断当前数据是否是未逾期或者逾期未过月的, 决定是否执行sql1
+ String sqls1="SELECT lri.rent FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status ='网银收款' OR (lrp.collect_status IS NULL OR lrp.collect_status='')) AND lri.rent > 0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income) AND DATE_FORMAT(NOW(), '%Y-%m') = DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y'";
+ // 用于判断当前数据是否是逾期过月的, 决定是否执行sqls2
+ String sqls2="SELECT lri.rent FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status ='网银收款' OR (lrp.collect_status IS NULL OR lrp.collect_status='')) AND lri.rent > 0 AND lri.id NOT IN (SELECT income_id FROM lv_rent_income2) AND DATE_FORMAT(NOW(), '%Y-%m') > DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y'";
+ // 判断当前数据是否有逾期利息
+ String sqls3="SELECT lri.rent FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE (lrp.collect_status ='网银收款' OR (lrp.collect_status IS NULL OR lrp.collect_status = '')) AND lri.penalty > 0 AND lri.id NOT IN (SELECT income_id FROM lv_penalty_income) AND (lri.PENALTY!='0.00' AND lri.PENALTY IS NOT NULL) AND lul.is_main='Y'";
+ List> dataList1=DataOperatorUtil.getDataBySql(Sqlca, sqls1, null);
+ List> dataList2=DataOperatorUtil.getDataBySql(Sqlca, sqls2, null);
+ List> dataList3=DataOperatorUtil.getDataBySql(Sqlca, sqls3, null);
+
+ if(dataList1 != null && !dataList1.isEmpty()) {
+ SqlObject sqlss1 = new SqlObject(sql1);
+ Sqlca.executeSQL(sqlss1);
+ }else if(dataList2 != null && !dataList2.isEmpty()) {
+ SqlObject sqlss2 = new SqlObject(sql2);
+ Sqlca.executeSQL(sqlss2);
+ }else if(dataList3 != null && !dataList3.isEmpty()) {
+ SqlObject sqlss3 = new SqlObject(sql3);
+ Sqlca.executeSQL(sqlss3);
+ }
Sqlca.commit();
}catch(Exception e){
- Sqlca.rollback();
+ try {
+ Sqlca.rollback();
+ } catch (JBOException e1) {
+ e1.printStackTrace();
+ }
e.printStackTrace();
}finally{
if(Sqlca!=null){
- Sqlca.disConnect();
+ try {
+ Sqlca.disConnect();
+ } catch (JBOException e) {
+ e.printStackTrace();
+ }
Sqlca=null;
}
}
diff --git a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java
index 5d2a40253..971f3d6f6 100644
--- a/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java
+++ b/src_core/com/tenwa/voucher/serviceImp/VoucherToNCforVoucherPZ.java
@@ -210,11 +210,11 @@ public class VoucherToNCforVoucherPZ implements Job{
map.put("F3",F3);
// 获取v8表借方数据
- String sql1 = "SELECT f5,f6,f7,f15,f59,f60,f65,f73,f74,f75 FROM VOUCHER_V8 WHERE F3=:F3 AND ENTRYDC='1'";
+ String sql1 = "SELECT f5,f6,f7,f15,f59,f60,f65,f73,f74,f75,f76 FROM VOUCHER_V8 WHERE F3=:F3 AND ENTRYDC='1'";
List> v1 = DataOperatorUtil.getDataBySql(Sqlca,sql1,map);
// 获取v8表贷方数据
- String sql2 = "SELECT f1,f5,f6,f8,f15,f51,f52,f59,f60,f65,f73,f74,f75 FROM VOUCHER_V8 WHERE F3=:F3 AND ENTRYDC='-1'";
+ String sql2 = "SELECT f1,f5,f6,f8,f15,f51,f52,f59,f60,f65,f73,f74,f75,f76 FROM VOUCHER_V8 WHERE F3=:F3 AND ENTRYDC='-1'";
List> v2 = DataOperatorUtil.getDataBySql(Sqlca,sql2,map);
// 获取v8表公共信息
@@ -356,7 +356,7 @@ public class VoucherToNCforVoucherPZ implements Job{
pk_Checkvalue3.setText((v8Lend.get("f73")==null)?"":v8Lend.get("f73"));
}
}
- //现金流量项目辅助核算
+ // 现金流量项目辅助核算
if(ids.contains("3f0177c4295d4ed99ef18adb37c3e79f")) {
Element ass_item4 = ass1.addElement("item");
Element pk_Checktype4 = ass_item4.addElement("pk_Checktype");
@@ -364,7 +364,7 @@ public class VoucherToNCforVoucherPZ implements Job{
Element pk_Checkvalue4 = ass_item4.addElement("pk_Checkvalue");
pk_Checkvalue4.setText((v8Lend.get("f74")==null)?"":v8Lend.get("f74"));
}
- //银行账户辅助核算
+ // 银行账户辅助核算
if(ids.contains("5d241cc0d2794ef7943df15c5f97976a")) {
Element ass_item5 = ass1.addElement("item");
Element pk_Checktype5 = ass_item5.addElement("pk_Checktype");
@@ -372,6 +372,14 @@ public class VoucherToNCforVoucherPZ implements Job{
Element pk_Checkvalue5 = ass_item5.addElement("pk_Checkvalue");
pk_Checkvalue5.setText((v8Lend.get("f75")==null)?"":v8Lend.get("f75"));
}
+ // 税率辅助核算
+ if(ids.contains("26127f73553b45f5a23c60afdffb464e")) {
+ Element ass_item5 = ass1.addElement("item");
+ Element pk_Checktype5 = ass_item5.addElement("pk_Checktype");
+ pk_Checktype5.setText("税率");
+ Element pk_Checkvalue5 = ass_item5.addElement("pk_Checkvalue");
+ pk_Checkvalue5.setText((v8Lend.get("f76")==null)?"":v8Lend.get("f76"));
+ }
Element cashFlow = item1.addElement("cashFlow");
Element cashFlow_item1 = cashFlow.addElement("item");
Element m_pk_currtype1 = cashFlow_item1.addElement("m_pk_currtype");// 币种,最大长度为64,类型为:String
@@ -461,7 +469,7 @@ public class VoucherToNCforVoucherPZ implements Job{
Element pk_Checkvalue3 = ass_item3.addElement("pk_Checkvalue");
pk_Checkvalue3.setText((v8loan.get("f73")==null)?"":v8loan.get("f73"));
}
- //现金流量项目辅助核算
+ // 现金流量项目辅助核算
if(ids.contains("3f0177c4295d4ed99ef18adb37c3e79f")) {
Element ass_item4 = ass2.addElement("item");
Element pk_Checktype4 = ass_item4.addElement("pk_Checktype");
@@ -469,7 +477,7 @@ public class VoucherToNCforVoucherPZ implements Job{
Element pk_Checkvalue4 = ass_item4.addElement("pk_Checkvalue");
pk_Checkvalue4.setText((v8loan.get("f74")==null)?"":v8loan.get("f74"));
}
- //银行账户辅助核算
+ // 银行账户辅助核算
if(ids.contains("5d241cc0d2794ef7943df15c5f97976a")) {
Element ass_item5 = ass2.addElement("item");
Element pk_Checktype5 = ass_item5.addElement("pk_Checktype");
@@ -477,6 +485,15 @@ public class VoucherToNCforVoucherPZ implements Job{
Element pk_Checkvalue5 = ass_item5.addElement("pk_Checkvalue");
pk_Checkvalue5.setText((v8loan.get("f75")==null)?"":v8loan.get("f75"));
}
+ // 税率辅助核算
+ if(ids.contains("26127f73553b45f5a23c60afdffb464e")) {
+ Element ass_item5 = ass2.addElement("item");
+ Element pk_Checktype5 = ass_item5.addElement("pk_Checktype");
+ pk_Checktype5.setText("税率");
+ Element pk_Checkvalue5 = ass_item5.addElement("pk_Checkvalue");
+ pk_Checkvalue5.setText((v8loan.get("f76")==null)?"":v8loan.get("f76"));
+ }
+
Element item2_cashFlow = item2.addElement("cashFlow");
Element cashflowitem2 = item2_cashFlow.addElement("item");
Element m_pk_currtype2 = cashflowitem2.addElement("m_pk_currtype");// 币种,最大长度为64,类型为:String
diff --git a/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java b/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java
index 472ff4b46..675437d6e 100644
--- a/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java
+++ b/src_core/com/tenwa/voucher/serviceImp/VoucherToV8Impl.java
@@ -138,7 +138,8 @@ public class VoucherToV8Impl implements VoucherService {
d.put("F72",list.get(i).get("DISTRIBUTOR_ID"));
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("F75",list.get(i).get("ACC_NUMBER"));// 银行账号
+ d.put("F76",list.get(i).get("TAX_CODE"));// 利率编码
d.put("inputuserid",user.getAttribute("userid").getString());
d.put("v8_status",status);
diff --git a/src_tenwa/com/tenwa/httpclient/resources/VouchersPropertiesUtil.java b/src_tenwa/com/tenwa/httpclient/resources/VouchersPropertiesUtil.java
index ac980a4a7..fdc02afb8 100644
--- a/src_tenwa/com/tenwa/httpclient/resources/VouchersPropertiesUtil.java
+++ b/src_tenwa/com/tenwa/httpclient/resources/VouchersPropertiesUtil.java
@@ -8,13 +8,21 @@ import java.util.concurrent.ConcurrentHashMap;
import com.amarsoft.are.ARE;
+/**
+ * 读取配置文件
+ * @author xiezhiwen
+ *
+ */
public class VouchersPropertiesUtil {
+ // 定义全局map, 存储配置文件信息
private static Map attributes;
public static void load() {
attributes = new ConcurrentHashMap();
+ // 创建Properties对象
Properties prop = new Properties();
try {
+ // 加载根路径配置文件; 本地:config, 服务器在classes路径下
prop.load(VouchersPropertiesUtil.class.getResourceAsStream("/vouchers.properties"));
for(Entry entry : prop.entrySet()) {
if(entry.getKey() == null || entry.getValue() == null) {
diff --git a/src_tenwa/com/tenwa/lease/app/ebank/EbankUse.java b/src_tenwa/com/tenwa/lease/app/ebank/EbankUse.java
index 6b6381a97..ba40f22b0 100644
--- a/src_tenwa/com/tenwa/lease/app/ebank/EbankUse.java
+++ b/src_tenwa/com/tenwa/lease/app/ebank/EbankUse.java
@@ -11,6 +11,7 @@ import jbo.sys.USER_INFO;
import jbo.voucher.LV_STACTS_CONFIG;
import jbo.voucher.LV_VOUCHER_CONFIG;
import jbo.voucher.LV_VOUCHER_LOAN;
+import jbo.voucher.TAX_CODE;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.are.jbo.BizObjectManager;
@@ -332,7 +333,7 @@ public class EbankUse {
// 通过传入id查询所需数据
map.put("ID", ID);
- String sql1 = "SELECT LE.MAYOPE_MONEY AS MONEY,ROUND(LE.MAYOPE_MONEY / 1.06, 2) AS MONEYNOTAX,LE.MAYOPE_MONEY - ROUND(LE.MAYOPE_MONEY / 1.06, 2) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LE.OWNACC_NUMBER AS ACC_NUMBER,LE.EBANK_SN,CI.CUSTOMER_NUM as CUSTOMERID,CI.CUSTOMERNAME FROM LC_EBANK LE LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID=LE.CUSTOMER_ID WHERE ID = :ID ";
+ String sql1 = "SELECT ROUND((getTax('02','本金',NOW())-1)*100,0) AS TAX_NUM,LE.MAYOPE_MONEY AS MONEY,ROUND(LE.MAYOPE_MONEY / getTax('02','本金',NOW()), 2) AS MONEYNOTAX,LE.MAYOPE_MONEY - ROUND(LE.MAYOPE_MONEY / getTax('02','本金',NOW()), 2) AS TAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LE.OWNACC_NUMBER AS ACC_NUMBER,LE.EBANK_SN,CI.CUSTOMER_NUM AS CUSTOMERID,CI.CUSTOMERNAME FROM LC_EBANK LE LEFT JOIN CUSTOMER_INFO CI ON CI.CUSTOMERID = LE.CUSTOMER_ID WHERE ID = :ID ";
List> dataList;
dataList = DataOperatorUtil.getDataBySql(Sqlca, sql1, map);
@@ -357,6 +358,13 @@ public class EbankUse {
String EBANK_SN = jbo.get("EBANK_SN").toString();
String CUSTOMERID = jbo.get("CUSTOMERID");
String CUSTOMERNAME = jbo.get("CUSTOMERNAME");
+ String TAX_NUM = jbo.get("TAX_NUM");
+ // 通过税率获取编码
+ BizObject TAX_CODES=null;
+ if(TAX_NUM!=null && !"".equals(TAX_NUM)) {
+ TAX_CODES=JBOFactory.createBizObjectQuery(TAX_CODE.CLASS_NAME,"TAX_NUMBER='"+TAX_NUM+"'").getSingleResult(false);
+ }
+
//NameManager.getCustomerName(CUSTOMERID);
// 将数据封装如param中
param.put("FACT_MONEY", MONEY);
@@ -369,8 +377,9 @@ public class EbankUse {
param.put("CUSTID", CUSTOMERID);
param.put("CUSTNAME", CUSTOMERNAME);
param.put("VOUCHERNO", VOUCHERNO);
- param.put("DEPT", "02"); // 部门
-
+ if(TAX_CODES!=null) {
+ param.put("TAX_CODE",TAX_CODES.getAttribute("TAX_CODES").getString());
+ }
// 通过凭证编号获取对应编号的凭证信息
map.clear();
map.put("VOUCHER_NO", VOUCHERNO);
diff --git a/src_tenwa/com/tenwa/lease/app/quartzmession/Checkfordeduction.java b/src_tenwa/com/tenwa/lease/app/quartzmession/Checkfordeduction.java
index 8e2bdea57..501b4e370 100644
--- a/src_tenwa/com/tenwa/lease/app/quartzmession/Checkfordeduction.java
+++ b/src_tenwa/com/tenwa/lease/app/quartzmession/Checkfordeduction.java
@@ -1,6 +1,7 @@
package com.tenwa.lease.app.quartzmession;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import javax.swing.JOptionPane;
@@ -65,28 +66,28 @@ public class Checkfordeduction {
for (String str : ids) {
// 收到的租金--卡扣-未逾期及逾期未过月的(汽车)
if ("PZ2018082100000142".equals(VOUCHERNO)) {
- sql_where = "INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3,'收到的租金',CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest - ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'"+user_name+"',lvri.ACCOUNTING_DATE,lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS cust_name,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_id END AS cust_id,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END,'已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018082100000142')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') and lvri.income_id='"+str+"' ORDER BY lvri.voucher_f3 ";
+ sql_where = "INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,f2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'),1,4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest / getTax(lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest - ROUND(lvri.interest / getTax(lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'"+user_name+"' AS f12,lvri.ACCOUNTING_DATE AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'),1,4) AS f51,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'),5,2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS f61,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f62,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END AS f73,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END AS f75,CASE WHEN lv.sort_number = '6' THEN ROUND((getTax(lci.LEAS_FORM,'租息',LCCT.START_DATE)-1)*100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018082100000142')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id = '"+str+"' ORDER BY lvri.voucher_f3 ";
}
// 收到的租金--卡扣-逾期过月的(汽车)
if ("PZ2018082100000143".equals(VOUCHERNO)) {
- sql_where = "INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,F2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3,'收到的租金',CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'"+user_name+"',lvri.ACCOUNTING_DATE,lv.OWNED_COMPANY,lv.OWNED_COMPANY,SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4),SUBSTR(DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2),lv.sort_number,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_name END AS cust_name,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_id END AS cust_id,'',CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.OWN_NUMBER ELSE '' END,'已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id,lci.leas_form FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018082100000143')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id='"+str+"' ORDER BY lvri.voucher_f3 ";
+ sql_where = "INSERT INTO voucher_v8 (id,evidence_message,periodyear,f15,F2,f3,f5,f6,f7,f8,f12,f1,f49,f50,f51,f52,f59,f60,f61,f62,f65,f73,f74,f75,f76,v8_status,generate_date,v8_flag,module_name,entrydc,inputuserid,f58,f67) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'"+user_name+"' AS f12,lvri.ACCOUNTING_DATE AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_name END AS f61,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f62,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_id END AS f65,'' AS f73,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.OWN_NUMBER ELSE '' END AS f75,'' AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018082100000143')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL) AND lvri.rent > 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id = '"+str+"' ORDER BY lvri.voucher_f3 ";
}
// 卡扣回款反冲-收到的租金--卡扣-未逾期及逾期未过月的(汽车)
if ("PZ2018121800000009".equals(VOUCHERNO)) {
- sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, f2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id, '凭证输出' evidence_message, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ) periodyear, lvri.ACCOUNTING_DATE f15, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.SUBJECTS_CODE END AS f2, lvri.voucher_f3, '收到的租金', CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7, CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND( lvri.interest / getTax ( lci.leas_form, '租息', lcct.start_date ), 2 ) WHEN lv.sort_number = '6' THEN ( lvri.interest - ROUND( lvri.interest / getTax ( lci.leas_form, '租息', lcct.start_date ), 2 )) ELSE 0.00 END f8, '"+user_name+"', lvri.ACCOUNTING_DATE, lv.OWNED_COMPANY, lv.OWNED_COMPANY, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ), SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2 ), lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS cust_name, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_id END AS cust_id, CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END, CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74, CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END, '已完整', DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'), '0', lv.modular_number, CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END, 'admin', lvri.income_id, lci.leas_form FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN ( SELECT lvc.PROJ_TYPE, lvl.id, lvl.LOAN_DIRECTION, lvc.OWNED_COMPANY, lvl.sort_number, lvl.loan_subject, lvc.modular_number, lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018121800000009')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN ( SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL ) AND lvri.rent < 0 AND ( lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '' ) and lvri.income_id='"+str+"' ORDER BY lvri.voucher_f3 ";
+ sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, f2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75,f76, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent WHEN LV.sort_number = '2' THEN LVRI.INTEREST ELSE 0.00 END f7,CASE WHEN lv.sort_number = '3' THEN lvri.corpus WHEN lv.sort_number = '4' THEN lvri.interest WHEN lv.sort_number = '5' THEN ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2) WHEN lv.sort_number = '6' THEN (lvri.interest - ROUND(lvri.interest / getTax (lci.leas_form,'租息',lcct.start_date),2)) ELSE 0.00 END f8,'"+user_name+"' AS f12,lvri.ACCOUNTING_DATE AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_name END AS f61,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f62,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '6' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '5' THEN '0604' ELSE '' END AS f73,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END AS f75,CASE WHEN lv.sort_number = '6' THEN ROUND((getTax (lci.LEAS_FORM,'租息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018121800000009')) lv ON lv.proj_type = lci.LEAS_FORM WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL) AND lvri.rent < 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id = '"+str+"' ORDER BY lvri.voucher_f3 ";
}
// 卡扣回款反冲-收到的租金--卡扣-逾期过月的(汽车)
if ("PZ2018121800000007".equals(VOUCHERNO)) {
- sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, F2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id, '凭证输出' evidence_message, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ) periodyear, lvri.ACCOUNTING_DATE f15, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.SUBJECTS_CODE END AS f2, lvri.voucher_f3, '收到的租金', CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7, CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8, '"+user_name+"', lvri.ACCOUNTING_DATE, lv.OWNED_COMPANY, lv.OWNED_COMPANY, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ), SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2 ), lv.sort_number, CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_name END AS cust_name, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_id END AS cust_id, '', CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74, CASE WHEN lv.sort_number = '1' THEN lvri.OWN_NUMBER ELSE '' END, '已完整',DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'), '0', lv.modular_number, CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END, 'admin', lvri.income_id, lci.leas_form FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN ( SELECT lvc.PROJ_TYPE, lvl.id, lvl.LOAN_DIRECTION, lvc.OWNED_COMPANY, lvl.sort_number, lvl.loan_subject, lvc.modular_number, lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018121800000007')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN ( SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL ) AND lvri.rent < 0 AND ( lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '' ) and lvri.income_id='"+str+"' ORDER BY lvri.voucher_f3 ";
+ sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, F2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75,f76, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3 AS f3,'收到的租金' AS f5,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.rent ELSE 0.00 END f7,CASE WHEN lv.sort_number = '2' THEN lvri.corpus WHEN lv.sort_number = '3' THEN lvri.interest ELSE 0.00 END f8,'"+user_name+"' AS f12,lvri.ACCOUNTING_DATE AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_name END AS f61,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f62,CASE WHEN lv.sort_number = '1' THEN '' ELSE lvri.cust_id END AS f65,'' AS f73,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.OWN_NUMBER ELSE '' END AS f75,'' AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_rent_income2 lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.SUBJECTS_CODE FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.LOAN_SUBJECT WHERE lvc.voucher_no IN ('PZ2018121800000007')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%-收到的租金(卡扣)%' AND f58 IS NOT NULL) AND lvri.rent < 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id = '"+str+"' ORDER BY lvri.voucher_f3 ";
}
// 收到的逾期利息--卡扣
if ("PZ2018082100000144".equals(VOUCHERNO)) {
- sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, f2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id, '凭证输出' evidence_message, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ) periodyear, lvri.ACCOUNTING_DATE f15, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.SUBJECTS_CODE END AS f2, lvri.voucher_f3, '收到的逾期利息', CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7, CASE WHEN lv.sort_number = '2' THEN ROUND( lvri.penalty / getTax ( LCI.LEAS_FORM, '租息', lcct.start_date ), 2 ) WHEN lv.sort_number = '3' THEN lvri.penalty - ( ROUND( lvri.penalty / getTax ( LCI.LEAS_FORM, '租息', lcct.start_date ), 2 )) ELSE 0.00 END AS f8, '"+user_name+"', lvri.ACCOUNTING_DATE, lv.OWNED_COMPANY, lv.OWNED_COMPANY, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ), SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2 ), lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS cust_name, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_id END AS cust_id, CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END, CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74, CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END, '已完整', DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'), '0', lv.modular_number, CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END, 'admin', lvri.income_id, lci.leas_form FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN ( SELECT lvc.PROJ_TYPE, lvl.id, lvl.LOAN_DIRECTION, lvc.OWNED_COMPANY, lvl.sort_number, lvl.loan_subject, lvc.modular_number, lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018082100000144')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN ( SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%收到的逾期利息(卡扣)%' AND f58 IS NOT NULL ) AND lvri.penalty > 0 AND ( lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '' ) and lvri.income_id='"+str+"' ORDER BY lvri.voucher_f3 ";
+ sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, f2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75,f76, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3 AS f3,'收到的逾期利息' AS f5,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2)) ELSE 0.00 END AS f8,'"+user_name+"' AS f12,lvri.ACCOUNTING_DATE AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS f61,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f62,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END AS f73,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END AS f75,CASE WHEN lv.sort_number = '3' THEN ROUND((getTax (lci.LEAS_FORM,'逾期利息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018082100000144')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%收到的逾期利息(卡扣)%' AND f58 IS NOT NULL) AND lvri.penalty > 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id = '"+str+"' ORDER BY lvri.voucher_f3 ";
}
// 卡扣回款反冲--逾期利息
if ("PZ2018121800000006".equals(VOUCHERNO)) {
- sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, f2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id, '凭证输出' evidence_message, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ) periodyear, lvri.ACCOUNTING_DATE f15, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.SUBJECTS_CODE END AS f2, lvri.voucher_f3, '收到的逾期利息', CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7, CASE WHEN lv.sort_number = '2' THEN ROUND( lvri.penalty / getTax ( LCI.LEAS_FORM, '租息', lcct.start_date ), 2 ) WHEN lv.sort_number = '3' THEN lvri.penalty - ( ROUND( lvri.penalty / getTax ( LCI.LEAS_FORM, '租息', lcct.start_date ), 2 )) ELSE 0.00 END AS f8, '"+user_name+"', lvri.ACCOUNTING_DATE, lv.OWNED_COMPANY, lv.OWNED_COMPANY, SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 1, 4 ), SUBSTR( DATE_FORMAT(SYSDATE(), '%Y%m%d'), 5, 2 ), lv.sort_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS contract_number,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS cust_name, CASE WHEN lv.sort_number = '1' THEN ( SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank ) ELSE lv.LOAN_SUBJECT END AS LOAN_SUBJECT, CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_id END AS cust_id, CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END, CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74, CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END, '已完整', DATE_FORMAT(NOW(),'%Y/%m/%d %H:%i:%s'), '0', lv.modular_number, CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END, 'admin', lvri.income_id, lci.leas_form FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN ( SELECT lvc.PROJ_TYPE, lvl.id, lvl.LOAN_DIRECTION, lvc.OWNED_COMPANY, lvl.sort_number, lvl.loan_subject, lvc.modular_number, lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018121800000006')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN ( SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%收到的逾期利息(卡扣)%' AND f58 IS NOT NULL ) AND lvri.penalty < 0 AND ( lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '' ) and lvri.income_id='"+str+"' ORDER BY lvri.voucher_f3 ";
+ sql_where = "INSERT INTO voucher_v8 ( id, evidence_message, periodyear, f15, f2, f3, f5, f6, f7, f8, f12, f1, f49, f50, f51, f52, f59, f60, f61, f62, f65, f73, f74, f75,f76, v8_status, generate_date, v8_flag, module_name, entrydc, inputuserid, f58, f67 ) SELECT REPLACE (UUID(), '-', '') id,'凭证输出' evidence_message,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) periodyear,lvri.ACCOUNTING_DATE f15,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.subjects_code FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.SUBJECTS_CODE END AS f2,lvri.voucher_f3 AS f3,'收到的逾期利息' AS f5,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f6,CASE WHEN lv.sort_number = '1' THEN lvri.penalty ELSE 0.00 END AS f7,CASE WHEN lv.sort_number = '2' THEN ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2) WHEN lv.sort_number = '3' THEN lvri.penalty - (ROUND(lvri.penalty / getTax (LCI.LEAS_FORM,'逾期利息',lcct.start_date),2)) ELSE 0.00 END AS f8,'"+user_name+"' AS f12,lvri.ACCOUNTING_DATE AS f1,lv.OWNED_COMPANY AS f49,lv.OWNED_COMPANY AS f50,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 1, 4) AS f51,SUBSTR(DATE_FORMAT(lvri.ACCOUNTING_DATE, '%Y%m%d'), 5, 2) AS f52,lv.sort_number AS f59,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lci.contract_number END AS f60,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_name END AS f61,CASE WHEN lv.sort_number = '1' THEN (SELECT lsc.id FROM lv_stacts_config lsc WHERE lsc.subjects_name = lvri.own_bank) ELSE lv.LOAN_SUBJECT END AS f62,CASE WHEN lv.sort_number = '1' OR lv.sort_number = '3' THEN '' ELSE lvri.cust_id END AS f65,CASE WHEN lv.sort_number = '2' THEN '0603' ELSE '' END AS f73,CASE WHEN lv.sort_number = '1' THEN '11113' ELSE '' END AS f74,CASE WHEN lv.sort_number = '1' THEN lvri.own_number ELSE '' END AS f75,CASE WHEN lv.sort_number = '3' THEN ROUND((getTax (lci.LEAS_FORM,'逾期利息',LCCT.START_DATE) - 1) * 100,0) ELSE '' END AS f76,'已完整' AS v8_status,DATE_FORMAT(NOW(), '%Y/%m/%d %H:%i:%s') AS generate_date,'0' AS v8_flag,lv.modular_number AS module_name,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END AS entrydc,'admin' AS inputuserid,lvri.income_id AS f58,lci.leas_form AS f67 FROM lv_penalty_income lvri LEFT JOIN lb_contract_info lci ON lci.id = lvri.contract_id LEFT JOIN lc_calc_condition lcct ON lcct.contract_id = lci.id LEFT JOIN (SELECT lvc.PROJ_TYPE,lvl.id,lvl.LOAN_DIRECTION,lvc.OWNED_COMPANY,lvl.sort_number,lvl.loan_subject,lvc.modular_number,lsc.subjects_code FROM lv_voucher_config lvc LEFT JOIN lv_voucher_loan lvl ON lvl.VOUCHER_ID = lvc.id LEFT JOIN lv_stacts_config lsc ON lsc.id = lvl.loan_subject WHERE lvc.voucher_no IN ('PZ2018121800000006')) lv ON lv.proj_type = lci.leas_form WHERE LCI.BUSINESSTYPE = '1' AND lvri.income_id NOT IN (SELECT f58 FROM voucher_v8 WHERE module_name LIKE '%收到的逾期利息(卡扣)%' AND f58 IS NOT NULL) AND lvri.penalty < 0 AND (lvri.EBANK_NUMBER IS NULL OR lvri.EBANK_NUMBER = '') AND lvri.income_id = '"+str+"' ORDER BY lvri.voucher_f3 ";
}
SqlObject asql = new SqlObject(sql_where);
@@ -128,20 +129,32 @@ public class Checkfordeduction {
String[] ids = id.split("@");
for (String str : ids) {
// 未逾期及逾期未过月的租金
- String sql = "INSERT INTO lv_rent_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id = '"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_rent_income) AND DATE_FORMAT(NOW(), '%Y-%m') = DATE_FORMAT(lrp.plan_date, '%Y-%m')) ";
+ String sql1 = "INSERT INTO lv_rent_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id = '"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_rent_income) AND DATE_FORMAT(NOW(), '%Y-%m') = DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y') ";
// 逾期过月的租金
- String sq1 = "INSERT INTO lv_rent_income2 (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id = '"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_rent_income2) AND DATE_FORMAT(NOW(), '%Y-%m') > DATE_FORMAT(lrp.plan_date, '%Y-%m')) ";
+ String sql2 = "INSERT INTO lv_rent_income2 (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id = '"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_rent_income2) AND DATE_FORMAT(NOW(), '%Y-%m') > DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y') ";
// 逾期利息
- String sql1 = "INSERT INTO lv_penalty_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,0.00,0.00,0.00,lri.PENALTY,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID, lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lri.contract_id = lrp.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id ='"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_penalty_income)) ";
+ String sql3 = "INSERT INTO lv_penalty_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('凭证号')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,0.00,0.00,0.00,lri.PENALTY,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID, lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lri.contract_id = lrp.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id ='"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_penalty_income) AND (lri.PENALTY!='0.00' AND lri.PENALTY IS NOT NULL) AND lul.is_main='Y') ";
// String sql2 = "INSERT INTO lv_discount_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,ld.ID,DATE_FORMAT(ld.inputtime, '%Y/%m/%d'),ld.discount_money,0.00,0.00,0.00,oac.acc_bank,oac.acc_name,oac.acc_number FROM lb_discount ld LEFT JOIN lb_contract_info lci ON lci.contract_no = ld.contract_no 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 (SELECT acc_bank,acc_name,acc_number FROM OWN_ACCOUNT WHERE account_type = 'in_account' AND state_ = '0010' LIMIT 0, 1) oac ON 1 = 1 WHERE ld.id NOT IN (SELECT income_id FROM lv_discount_income)) ";
- SqlObject as1 = new SqlObject(sq1);
- SqlObject asql = new SqlObject(sql);
- SqlObject asql1 = new SqlObject(sql1);
- // SqlObject asql2 = new SqlObject(sql2);
- Sqlca.executeSQL(as1);
- Sqlca.executeSQL(asql);
- Sqlca.executeSQL(asql1);
- //Sqlca.executeSQL(asql2);
+
+ // 用于判断当前数据是否是未逾期或者逾期未过月的, 决定是否执行sql1
+ String sqls1="SELECT lri.rent FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id = '"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_rent_income) AND DATE_FORMAT(NOW(), '%Y-%m') = DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y'";
+ // 用于判断当前数据是否是逾期过月的, 决定是否执行sqls2
+ String sqls2="SELECT lri.rent FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lrp.contract_id = lri.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id = '"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_rent_income2) AND DATE_FORMAT(NOW(), '%Y-%m') > DATE_FORMAT(lrp.plan_date, '%Y-%m') AND lul.is_main='Y'";
+ // 判断当前数据是否有逾期利息
+ String sqls3="SELECT lri.PENALTY FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lri.contract_id = lrp.contract_id AND lrp.plan_list = lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id = lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id ='"+ str + "' AND lrp.id NOT IN (SELECT INCOME_ID FROM lv_penalty_income) AND (lri.PENALTY!='0.00' AND lri.PENALTY IS NOT NULL) AND lul.is_main='Y'";
+ List> dataList1=DataOperatorUtil.getDataBySql(Sqlca, sqls1, null);
+ List> dataList2=DataOperatorUtil.getDataBySql(Sqlca, sqls2, null);
+ List> dataList3=DataOperatorUtil.getDataBySql(Sqlca, sqls3, null);
+ if(dataList1 != null && !dataList1.isEmpty()) {
+ SqlObject sqlss1 = new SqlObject(sql1);
+ Sqlca.executeSQL(sqlss1);
+ }else if(dataList2 != null && !dataList2.isEmpty()) {
+ SqlObject sqlss2 = new SqlObject(sql2);
+ Sqlca.executeSQL(sqlss2);
+ }else if(dataList3 != null && !dataList3.isEmpty()) {
+ SqlObject sqlss3 = new SqlObject(sql3);
+ Sqlca.executeSQL(sqlss3);
+ }
}
// Sqlca.commit();
} catch (Exception e) {