This commit is contained in:
58261 2018-10-10 20:34:53 +08:00
commit 4d55f74333
14 changed files with 616 additions and 24 deletions

View File

@ -110,7 +110,7 @@
//得到不带路径的文件名
sFileName = StringFunction.getFileName(sFileName);
sFileName = URLDecoder.decode(URLDecoder.decode(sFileName,"UTF-8"),"UTF-8");
sFileName = URLDecoder.decode(URLDecoder.decode(sFileName,"utf-8"),"utf-8");
//定义数据库操作变量
SqlObject so = null;
String sNewSql = "";

View File

@ -99,7 +99,7 @@ WHERE lci.businesstype='#businessType' AND (
WHERE fbo.flow_unid = fo.objectno
AND fbo.flow_name = '资金付款'
AND fo.phaseno NOT IN ('1000', '8000'))) tab
where tab.overmoney>0
]]>
</table_sql>
</MYSQL>

View File

@ -63,7 +63,7 @@ public class CmbToCallbackController extends BaseFlowStartAction {
* 本方放款账户获取######开始
*/
BizObjectManager accountManager = JBOFactory.getBizObjectManager(OWN_ACCOUNT.CLASS_NAME);
List<BizObject> accountBoList = accountManager.createQuery("select o.acc_number,o.acc_bank,o.acc_name,o.branch_code,oi.OWN_NAME from o join jbo.com.tenwa.entity.comm.own.OWN_INFO oi on o.own_id = oi.OWN_NUMBER where o.money_type='01' and o.state_='0010' and acc_type='0010' and account_type='out_account' ").getResultList(false);
List<BizObject> accountBoList = accountManager.createQuery("select o.acc_number,o.acc_bank,o.acc_name,o.branch_code,oi.OWN_NAME from o join jbo.com.tenwa.entity.comm.own.OWN_INFO oi on o.own_id = oi.OWN_NUMBER where o.money_type='01' and o.state_='0010' and acc_type='0010' and account_type='out_account' or account_type='inAndOut_account' ").getResultList(false);
if( accountBoList==null ) {
map.put("code", "1") ;
map.put("msg", "本方账户不存在,请检查") ;

View File

@ -88,7 +88,7 @@ public class CmbToPayController extends BaseFlowStartAction {
* 本方放款账户获取######开始
*/
BizObjectManager accountManager = JBOFactory.getBizObjectManager(OWN_ACCOUNT.CLASS_NAME);
List<BizObject> accountBoList = accountManager.createQuery("select o.id,o.acc_number,o.acc_bank,o.acc_name,o.branch_code,oi.OWN_NAME from o join jbo.com.tenwa.entity.comm.own.OWN_INFO oi on o.own_id = oi.OWN_NUMBER where o.money_type='01' and o.state_='0010' and acc_type='0010' and account_type='out_account' ").getResultList(false);
List<BizObject> accountBoList = accountManager.createQuery("select o.id,o.acc_number,o.acc_bank,o.acc_name,o.branch_code,oi.OWN_NAME from o join jbo.com.tenwa.entity.comm.own.OWN_INFO oi on o.own_id = oi.OWN_NUMBER where o.money_type='01' and o.state_='0010' and acc_type='0010' and (account_type='out_account' or account_type='inAndOut_account') ").getResultList(false);
if( accountBoList==null ||accountBoList.size()==0) {
map.put("code", "1") ;
map.put("msg", "本方账户不存在,请检查") ;
@ -97,7 +97,7 @@ public class CmbToPayController extends BaseFlowStartAction {
}
if( accountBoList!=null && accountBoList.size()>1 ) {
map.put("code", "1") ;
map.put("msg", "启用的汽车类放款账户有多个请检查,请检查") ;
map.put("msg", "启用的汽车类放款账户只能同时存在一个,请在本方账户中检查!") ;
JSONObject jsonObj = JSONObject.fromObject(map);
return jsonObj.toString();
}

View File

@ -43,11 +43,12 @@ public class CreateVoucherContractChangeForCarTradition {
// 未实现利息总额
if("PZ2018100900000265".equals(VOUCHERNO)||"PZ2018100900000266".equals(VOUCHERNO) || "PZ2018100900000284".equals(VOUCHERNO)||"PZ2018100900000285".equals(VOUCHERNO)){
sql="SELECT ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) - ROUND(LRP.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) 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 LB_CONTRACT_INFO LCI INNER JOIN (SELECT MAX(CONTRACT_ID) CONTRACT_ID,SUM(INTEREST) SUMINTE,FLOWUNID FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.CONTRACT_ID = LCI.ID INNER JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.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 LRPT.FLOWUNID = :FLOWUNID ";
}
// 未实现利息税金
if("PZ2018100900000267".equals(VOUCHERNO)||"PZ2018100900000268".equals(VOUCHERNO) || "PZ2018100900000286".equals(VOUCHERNO)||"PZ2018100900000287".equals(VOUCHERNO)){
}else if("PZ2018100900000267".equals(VOUCHERNO)||"PZ2018100900000268".equals(VOUCHERNO) || "PZ2018100900000286".equals(VOUCHERNO)||"PZ2018100900000287".equals(VOUCHERNO)){
sql="SELECT (LRPT.SUMINTE-ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) - (LRP.SUMINTE-ROUND(LRP.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2)) 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 LB_CONTRACT_INFO LCI INNER JOIN (SELECT MAX(CONTRACT_ID) CONTRACT_ID,SUM(INTEREST) SUMINTE,FLOWUNID FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.CONTRACT_ID = LCI.ID INNER JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.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 LRPT.FLOWUNID = :FLOWUNID ";
}else {// 提前结清--调整未实现利息收入/调整未实现利息收入税金(汽车传统)
sql="SELECT LRP.INTEREST AS MONEY,ROUND(LRP.INTEREST/getTax(LCI.LEAS_FOMR,'租息',LCI.INPUTTIME),2) AS MONEYNOTAX,LRP.INTEREST- ROUND(LRP.INTEREST/getTax(LCI.LEAS_FOMR,'租息',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 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 INNER JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRP.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 LFRA.FLOWUNID = :FLOWUNID ";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
@ -89,9 +90,9 @@ public class CreateVoucherContractChangeForCarTradition {
param.put("CUSTOMERTYPE",CUSTOMERTYPE);
param.put("BUSINESSTYPE",BUSINESSTYPE);
if("3".equals(BUSINESSTYPE)){
param.put("LEASFORMASSET", ""); // 融资租赁资产
param.put("LEASFORMASSET", "04"); // 融资租赁资产
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "05");
param.put("LEASINCOMEFORM", "04");
}
param.put("FUNDTYPE", "01"); // 主营类型
param.put("BUSINESSTYPE", "06");

View File

@ -43,11 +43,13 @@ public class CreateVoucherContractChangeForTradition {
// 未实现利息总额
if("PZ2018100900000269".equals(VOUCHERNO)||"PZ2018100900000270".equals(VOUCHERNO) || "PZ2018100900000288".equals(VOUCHERNO)||"PZ2018100900000289".equals(VOUCHERNO)){
sql="SELECT ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) - ROUND(LRP.SUMINTE/getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) 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 LB_CONTRACT_INFO LCI INNER JOIN (SELECT MAX(CONTRACT_ID) CONTRACT_ID,SUM(INTEREST) SUMINTE,FLOWUNID FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.CONTRACT_ID = LCI.ID INNER JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.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 LRPT.FLOWUNID = :FLOWUNID ";
}
// 未实现利息税金
if("PZ2018100900000271".equals(VOUCHERNO)||"PZ2018100900000272".equals(VOUCHERNO) || "PZ2018100900000290".equals(VOUCHERNO)||"PZ2018100900000291".equals(VOUCHERNO)){
sql="SELECT (LRPT.SUMINTE-ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'×âÏ¢',LCI.INPUTTIME),2)) - (LRP.SUMINTE-ROUND(LRP.SUMINTE/getTax(LCI.LEAS_FORM,'×âÏ¢',LCI.INPUTTIME),2)) 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 LB_CONTRACT_INFO LCI INNER JOIN (SELECT MAX(CONTRACT_ID) CONTRACT_ID,SUM(INTEREST) SUMINTE,FLOWUNID FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.CONTRACT_ID = LCI.ID INNER JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.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 LRPT.FLOWUNID = :FLOWUNID ";
}else if("PZ2018100900000271".equals(VOUCHERNO)||"PZ2018100900000272".equals(VOUCHERNO) || "PZ2018100900000290".equals(VOUCHERNO)||"PZ2018100900000291".equals(VOUCHERNO)){
sql="SELECT (LRPT.SUMINTE-ROUND(LRPT.SUMINTE/getTax(LCI.LEAS_FORM,'×âÏ¢',LCI.INPUTTIME),2)) - (LRP.SUMINTE-ROUND(LRP.SUMINTE/getTax(LCI.LEAS_FORM,'×âÏ¢',LCI.INPUTTIME),2)) 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 LB_CONTRACT_INFO LCI INNER JOIN (SELECT MAX(CONTRACT_ID) CONTRACT_ID,SUM(INTEREST) SUMINTE,FLOWUNID FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID) LRPT ON LRPT.CONTRACT_ID = LCI.ID INNER JOIN (SELECT CONTRACT_ID,SUM(INTEREST) SUMINTE FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.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 LRPT.FLOWUNID = :FLOWUNID ";
}else {
sql="SELECT LRP.INTEREST AS MONEY,ROUND(LRP.INTEREST/getTax(LCI.LEAS_FOMR,'×âÏ¢',LCI.INPUTTIME),2) AS MONEYNOTAX,LRP.INTEREST- ROUND(LRP.INTEREST/getTax(LCI.LEAS_FOMR,'×âÏ¢',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 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 INNER JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRP ON LRP.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRP.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 LFRA.FLOWUNID = :FLOWUNID ";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
@ -90,7 +92,7 @@ public class CreateVoucherContractChangeForTradition {
param.put("BUSINESSTYPE",BUSINESSTYPE);
if("2".equals(BUSINESSTYPE)){
param.put("LEASFORMASSET", ""); // ÈÚ×Ê×âÁÞ×ʲú
param.put("LEASFORMASSET", "02/03/05/06"); // ÈÚ×Ê×âÁÞ×ʲú
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "06");
}

View File

@ -0,0 +1,134 @@
package com.tenwa.voucher.CreateVoucherProcess;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.flow.baseBussion.BaseBussiness;
import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
public class CreateVoucherDepositDeductionForTradition extends BaseBussiness {
public String CreateVoucher(String FlowUnid, String VOUCHERNO) throws Exception {
Transaction Sqlca = null;
Map<String, String> map = new HashMap<String, String>();
Map<String, String> param = new HashMap<String, String>();
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
String MONEY = null;
String MONEYNOTAX = null;
String MONEYTAX = null;
String ACCOUNT_DATE = null;
String FACT_DATE = null;
String CONTRACT_ID = null;
String CONTRACT_NUMBER = null;
String PROJECT_NAME = null;
String leas_form = null;
String DISTRIBUTOR_ID = null;
String DISTRIBUTOR_NAME = null;
String CUSTID = null;
String CUSTNAME = null;
String CUSTOMERTYPE = null;
String BUSINESSTYPE = null;
String ACC_NUM = null;
String sql = "";
String feeType="";
String taxType="";
param.clear();
map.put("FlowUnid", FlowUnid);
// 保证金抵扣租金
if("PZ2018092500000217".equals(VOUCHERNO) || "PZ2018101000000336".equals(VOUCHERNO) || "PZ2018092500000185".equals(VOUCHERNO) || "PZ2018101000000338".equals(VOUCHERNO)) {
feeType="LRIT.RENT";
taxType="租金";
// 保证金抵扣罚金
}else if("PZ2018092500000219".equals(VOUCHERNO) || "PZ2018101000000337".equals(VOUCHERNO) || "PZ2018092500000187".equals(VOUCHERNO) || "PZ2018101000000339".equals(VOUCHERNO)) {
feeType="LRIT.PENALTY";
taxType="违约金";
}
sql = "SELECT '"+feeType+"' AS MONEY,ROUND('"+feeType+"' / getTax(LCI.LEAS_FORM,'"+taxType+"',LCI.INPUTTIME),2) AS MONEYNOTAX,('"+feeType+"' - ROUND('"+feeType+"' / getTax(LCI.LEAS_FORM,'"+taxType+"',LCI.INPUTTIME),2)) AS MONEYTAX,LRIT.ACCOUNTING_DATE 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,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LRIT.OWN_NUMBER FROM LC_RENT_INCOME_TEMP LRIT LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.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 LRIT.SETTLE_METHOD = 'settlemethod7' AND LRIT.FLOWUNID = :FLOWUNID ";
// 查询sql, 将结果集封装到list集合中
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
String VOUCHER_TYPE = "1";// 凭证分类 金蝶
String userid = "admin";
//遍历获取结果集, 将结果写入map中
for (int i = 0; i < dataList.size(); i++) {
MONEY = dataList.get(i).get("MONEY").toString();
if ("".equals(MONEY)||MONEY == null)MONEY = "0.00";
double mon = Double.parseDouble(MONEY);
// 判断有金额, 封装值到map中
if (Math.abs(mon) > 0) {
MONEYNOTAX = dataList.get(i).get("MONEYNOTAX").toString();
MONEYTAX = dataList.get(i).get("MONEYTAX").toString();
ACCOUNT_DATE = dataList.get(i).get("ACCOUNT_DATE").toString();
FACT_DATE = dataList.get(i).get("FACT_DATE").toString();
CONTRACT_ID = dataList.get(i).get("CONTRACT_ID").toString();
CONTRACT_NUMBER = dataList.get(i).get("CONTRACT_NUMBER").toString();
PROJECT_NAME = dataList.get(i).get("PROJECT_NAME").toString();
leas_form = dataList.get(i).get("LEAS_FORM").toString();
DISTRIBUTOR_ID = dataList.get(i).get("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME = dataList.get(i).get("DISTRIBUTOR_NAME");
CUSTID = dataList.get(i).get("CUSTOMERID");
CUSTNAME = dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
ACC_NUM = dataList.get(i).get("OWN_NUMBER");
param.put("FACT_MONEY", MONEY);
param.put("INTERESTNOTAX", MONEYNOTAX);
param.put("TAX", MONEYTAX);
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("CUSTID", CUSTID);
param.put("CUSTNAME", CUSTNAME);
param.put("CUSTOMERTYPE", CUSTOMERTYPE);
param.put("BUSINESSTYPE", BUSINESSTYPE);
param.put("ACC_NUMBER", ACC_NUM);
if ("2".equals(BUSINESSTYPE)) {
param.put("LEASFORMASSET", ""); // 融资租赁资产
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "06");
}else if ("3".equals(BUSINESSTYPE)) {
param.put("LEASFORMASSET", "04"); // 融资租赁资产
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "05");
}
param.put("BUSINESSTYPE", "06");
param.put("FlowUnid", FlowUnid);
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
// 根据map中的参数, 查询LV_VOUCHER_CONFIG表数据
BizObject vouch = DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
// 如果结果不为空,
if (vouch != null) {
//将创建凭证的参数传入在下一层
vs.createVoucher(vouch.getAttribute("MODULAR_NUMBER").getString(),vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid, param,Sqlca);
}
}
}
if (Sqlca != null) {
Sqlca.commit();
}
String sMessage = "true";
return sMessage;
}
}

View File

@ -45,29 +45,29 @@ public class CreateVoucherEarlySettlement {
//收到的逾期租金--回租+直租
if("PZ2018081700000126".equals(VOUCHERNO)||"PZ2018081700000127".equals(VOUCHERNO)){
moneyDataSource="LFRA.DUN_RENT";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
}
//收到的逾期利息--回租/直租
if("PZ2018081700000128".equals(VOUCHERNO)||"PZ2018081700000129".equals(VOUCHERNO)){
moneyDataSource="LFRA.AGREED_PENALTY";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
}
//收到的违约金--回租/直租
if("PZ2018081700000130".equals(VOUCHERNO)||"PZ2018081700000131".equals(VOUCHERNO)){
moneyDataSource="LFRA.SDHANDLING_CHARGE";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
}
//收到的提前还款一年内剩余利息--回租/直租
if("PZ2018081700000138".equals(VOUCHERNO)||"PZ2018081700000139".equals(VOUCHERNO)){
moneyDataSource="LFRA.FIST_CORPUS";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
joinType="LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER ";
}
// 收到的手续费--回租/直租
if("PZ2018081700000132".equals(VOUCHERNO)||"PZ2018081700000133".equals(VOUCHERNO)) {
sql="SELECT LFRA.OTHER_IN AS MONEY,ROUND(LFRA.OTHER_IN / getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME), 2) AS MONEYNOTAX,(LFRA.OTHER_IN - ROUND(LFRA.OTHER_IN / 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 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,cif.customer_num FROM LC_FUND_RENT_ADJUST_TEMP LFRA INNER JOIN(SELECT CONTRACT_ID,PAYMENT_NUMBER FROM LC_RENT_PLAN GROUP BY CONTRACT_ID)LRI ON LRI.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRI.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER 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 LFRA.FLOWUNID = :FLOWUNID ";
sql="SELECT LFRA.OTHER_IN AS MONEY,ROUND(LFRA.OTHER_IN / getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME), 2) AS MONEYNOTAX,(LFRA.OTHER_IN - ROUND(LFRA.OTHER_IN / 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 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,cif.customer_num FROM LC_FUND_RENT_ADJUST_TEMP LFRA INNER JOIN(SELECT CONTRACT_ID,PAYMENT_NUMBER FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PAYMENT_NUMBER)LRI ON LRI.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRI.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER 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 LFRA.FLOWUNID = :FLOWUNID ";
}else if("PZ2018081700000134".equals(VOUCHERNO)||"PZ2018081700000135".equals(VOUCHERNO)){//收到名义货价--回租/直租
sql="SELECT LFRA.SDNOMINAL_PRICE AS MONEY,ROUND(LFRA.SDNOMINAL_PRICE / getTax(LCI.LEAS_FORM,'留购价',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.SDNOMINAL_PRICE - ROUND(LFRA.SDNOMINAL_PRICE / 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 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,cif.customer_num FROM LC_FUND_RENT_ADJUST_TEMP LFRA INNER JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER FROM LC_RENT_PLAN GROUP BY CONTRACT_ID) LRI ON LRI.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRI.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER 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 LFRA.FLOWUNID = :FLOWUNID ";
sql="SELECT LFRA.SDNOMINAL_PRICE AS MONEY,ROUND(LFRA.SDNOMINAL_PRICE / getTax(LCI.LEAS_FORM,'留购价',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.SDNOMINAL_PRICE - ROUND(LFRA.SDNOMINAL_PRICE / 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 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,cif.customer_num FROM LC_FUND_RENT_ADJUST_TEMP LFRA INNER JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER FROM LC_RENT_PLAN GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRI ON LRI.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRI.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID) LRIT ON LRIT.CONTRACT_ID = LRI.CONTRACT_ID AND LRIT.PAYMENT_NUMBER = LRI.PAYMENT_NUMBER 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 LFRA.FLOWUNID = :FLOWUNID ";
}else {
sql="SELECT "+moneyDataSource+ " AS MONEY,ROUND("+moneyDataSource+ " / getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME), 2) AS MONEYNOTAX,("+moneyDataSource+ " - ROUND("+moneyDataSource+ " / 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 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,cif.customer_num FROM LC_FUND_RENT_ADJUST_TEMP LFRA INNER JOIN(SELECT CONTRACT_ID,PAYMENT_NUMBER FROM LC_RENT_PLAN GROUP BY CONTRACT_ID)LRI ON LRI.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER INNER JOIN LB_CONTRACT_INFO LCI ON LRI.CONTRACT_ID = LCI.ID "+joinType+" 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 LFRA.FLOWUNID = :FLOWUNID ";
}

View File

@ -0,0 +1,141 @@
package com.tenwa.voucher.CreateVoucherProcess;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
public class CreateVoucherEarlySettlementForTradition {
public String CreateVoucher(String FlowUnid,String VOUCHERNO) throws Exception {
Transaction Sqlca =null;
Map<String,String> map=new HashMap<String, String>();
Map<String,String> param=new HashMap<String, String>();
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
String MONEY=null;
String MONEYNOTAX=null;
String MONEYTAX=null;
String ACCOUNT_DATE=null;
String FACT_DATE=null;
String CONTRACT_ID=null;
String CONTRACT_NUMBER=null;
String PROJECT_NAME=null;
String leas_form=null;
String DISTRIBUTOR_ID=null;
String DISTRIBUTOR_NAME=null;
String CUSTID=null;
String CUSTNAME=null;
String CUSTOMERTYPE=null;
String BUSINESSTYPE=null;
String ACC_NUMBER=null;
String sql="";
param.clear();
map.put("FlowUnid", FlowUnid);
// 收到的逾期租金
if("PZ2018101000000322".equals(VOUCHERNO) || "PZ2018101000000323".equals(VOUCHERNO) || "PZ2018101000000304".equals(VOUCHERNO) || "PZ2018101000000305".equals(VOUCHERNO)) {
sql="SELECT LFRA.DUN_RENT AS MONEY,ROUND(LFRA.DUN_RENT / getTax(LCI.LEAS_FORM,'租金',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.DUN_RENT - ROUND(LFRA.DUN_RENT / 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 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,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.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 LFRA.FLOWUNID = :FLOWUNID ";
// 收到的逾期罚息
}else if("PZ2018101000000324".equals(VOUCHERNO) || "PZ2018101000000325".equals(VOUCHERNO) || "PZ2018101000000306".equals(VOUCHERNO) || "PZ2018101000000307".equals(VOUCHERNO)) {
sql="SELECT LFRA.AGREED_PENALTY AS MONEY,ROUND(LFRA.AGREED_PENALTY / getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.AGREED_PENALTY - ROUND(LFRA.AGREED_PENALTY / 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 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,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.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 LFRA.FLOWUNID = :FLOWUNID ";
// 收到的提前还款剩余本金
}else if("PZ2018101000000326".equals(VOUCHERNO) || "PZ2018101000000327".equals(VOUCHERNO) || "PZ2018101000000308".equals(VOUCHERNO) || "PZ2018101000000309".equals(VOUCHERNO)) {
sql="SELECT LFRA.CORPUS_OVERAGE AS MONEY,LFRA.CORPUS_OVERAGE-LFIT.CAUTION_MONEY AS MONEYNOTAX,LFIT.CAUTION_MONEY 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,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) 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_TEMP WHERE FEE_TYPE='feetype2'GROUP BY CONTRACT_ID)LFIT 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";
// 收到的未到期利息
}else if("PZ2018101000000328".equals(VOUCHERNO) || "PZ2018101000000329".equals(VOUCHERNO) || "PZ2018101000000310".equals(VOUCHERNO) || "PZ2018101000000311".equals(VOUCHERNO)) {
sql="SELECT LFRA.AGREED_INTEREST AS MONEY,ROUND(LFRA.AGREED_INTEREST / getTax(LCI.LEAS_FORM,'租息',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.AGREED_INTEREST - ROUND(LFRA.AGREED_INTEREST / 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 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,PAYMENT_NUMBER,MAX(OWN_NUMBER) AS ACC_NUMBER FROM LC_RENT_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.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 LFRA.FLOWUNID = :FLOWUNID ";
// 收到的项目违约金
}else if("PZ2018101000000330".equals(VOUCHERNO) || "PZ2018101000000331".equals(VOUCHERNO) || "PZ2018101000000312".equals(VOUCHERNO) || "PZ2018101000000313".equals(VOUCHERNO)) {
sql="SELECT LFRA.PAYDAY_DATE AS MONEY,ROUND(LFRA.PAYDAY_DATE / getTax(LCI.LEAS_FORM,'违约金',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.PAYDAY_DATE - ROUND(LFRA.PAYDAY_DATE / 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 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,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.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 LFRA.FLOWUNID = :FLOWUNID ";
// 收到的违约手续费
}else if("PZ2018101000000332".equals(VOUCHERNO) || "PZ2018101000000333".equals(VOUCHERNO) || "PZ2018101000000314".equals(VOUCHERNO) || "PZ2018101000000315".equals(VOUCHERNO)) {
sql="SELECT LFRA.SDHANDLING_CHARGE AS MONEY,ROUND(LFRA.SDHANDLING_CHARGE / getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFRA.SDHANDLING_CHARGE - ROUND(LFRA.SDHANDLING_CHARGE / 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 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,PAYMENT_NUMBER,MAX(ACC_NUMBER) AS ACC_NUMBER FROM LC_FUND_INCOME_TEMP GROUP BY CONTRACT_ID,PAYMENT_NUMBER) LRIT ON LRIT.PAYMENT_NUMBER = LFRA.PAYMENT_NUMBER LEFT JOIN LB_CONTRACT_INFO LCI ON LRIT.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 LFRA.FLOWUNID = :FLOWUNID ";
// 收到名义货价
}else if("PZ2018101000000334".equals(VOUCHERNO) || "PZ2018101000000335".equals(VOUCHERNO) || "PZ2018101000000316".equals(VOUCHERNO) || "PZ2018101000000317".equals(VOUCHERNO)) {
sql="";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
String userid ="admin";
for (int i=0;i<dataList.size();i++){
MONEY=dataList.get(i).get("MONEY").toString();
if("".equals(MONEY)||MONEY==null) MONEY="0.00";
double mon=Double.parseDouble(MONEY);
if(mon>0){
MONEYNOTAX=dataList.get(i).get("MONEYNOTAX").toString();
MONEYTAX=dataList.get(i).get("MONEYTAX").toString();
ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE").toString();
FACT_DATE =dataList.get(i).get("FACT_DATE").toString();
CONTRACT_ID=dataList.get(i).get("CONTRACT_ID").toString();
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER").toString();
PROJECT_NAME=dataList.get(i).get("PROJECT_NAME").toString();
leas_form=dataList.get(i).get("LEAS_FORM").toString();
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME");
CUSTID=dataList.get(i).get("CUSTOMERID");
CUSTNAME=dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");
if("".equals(ACC_NUMBER)||ACC_NUMBER==null) {
ACC_NUMBER="0";
}
param.put("FACT_MONEY",MONEY);
param.put("INTERESTNOTAX",MONEYNOTAX);
param.put("TAX",MONEYTAX);
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("CUSTID",CUSTID);
param.put("CUSTNAME",CUSTNAME);
param.put("CUSTOMERTYPE",CUSTOMERTYPE);
param.put("BUSINESSTYPE",BUSINESSTYPE);
param.put("ACC_NUMBER",ACC_NUMBER);
param.put("VOUCHERNO",VOUCHERNO);
if("2".equals(BUSINESSTYPE)){
param.put("LEASFORMASSET", "02/03/05/06"); // 融资租赁资产
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "06");
}else if("3".equals(BUSINESSTYPE)){
param.put("LEASFORMASSET", "04"); // 融资租赁资产
param.put("DEPT", "01"); // 部门
if("PZ2018101000000326".equals(VOUCHERNO) || "PZ2018101000000327".equals(VOUCHERNO)) {
param.put("LEASINCOMEFORM", "04");
}else {
param.put("LEASINCOMEFORM", "05");
}
}
param.put("BUSINESSTYPE", "06");
param.put("FlowUnid", FlowUnid);
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
vs.createVoucher(vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca);
}
}
}
if(Sqlca!=null){
Sqlca.commit();
}
String sMessage="true";
return sMessage;
}
}

View File

@ -0,0 +1,135 @@
package com.tenwa.voucher.CreateVoucherProcess;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import jbo.voucher.LV_VOUCHER_CONFIG;
import com.amarsoft.are.jbo.BizObject;
import com.amarsoft.awe.util.Transaction;
import com.amarsoft.dict.als.cache.CacheLoaderFactory;
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
import com.tenwa.flow.baseBussion.BaseBussiness;
import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
public class CreateVoucherIncomeForTradition extends BaseBussiness {
public String CreateVoucher(String FlowUnid, String VOUCHERNO, String FeeType) throws Exception {
Transaction Sqlca = null;
Map<String, String> map = new HashMap<String, String>();
Map<String, String> param = new HashMap<String, String>();
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
String MONEY = null;
String MONEYNOTAX = null;
String MONEYTAX = null;
String ACCOUNT_DATE = null;
String FACT_DATE = null;
String CONTRACT_ID = null;
String CONTRACT_NUMBER = null;
String PROJECT_NAME = null;
String leas_form = null;
String DISTRIBUTOR_ID = null;
String DISTRIBUTOR_NAME = null;
String CARID = null;
String CARMODEL = null;
String CUSTID = null;
String CUSTNAME = null;
String CUSTOMERTYPE = null;
String BUSINESSTYPE = null;
String ACC_NUM = null;
String sql = "";
param.clear();
map.put("FlowUnid", FlowUnid);
map.put("FEE_TYPE", FeeType);
if("PZ2018092500000205".equals(VOUCHERNO)||"PZ2018100900000292".equals(VOUCHERNO)||"PZ2018092500000173".equals(VOUCHERNO)||"PZ2018100900000294".equals(VOUCHERNO)) {
sql = "SELECT LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax(LCI.LEAS_FORM,'违约金',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax(LCI.LEAS_FORM,'违约金',LCI.INPUTTIME),2)) AS MONEYTAX,LFIT.ACCOUNTING_DATE 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 LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
}else if("PZ2018092500000206".equals(VOUCHERNO)||"PZ2018100900000293".equals(VOUCHERNO)||"PZ2018092500000174".equals(VOUCHERNO)||"PZ2018100900000295".equals(VOUCHERNO)){
sql = "SELECT LFIT.FACT_MONEY AS MONEY,ROUND(LFIT.FACT_MONEY / getTax(LCI.LEAS_FORM,'留购价',LCI.INPUTTIME),2) AS MONEYNOTAX,(LFIT.FACT_MONEY - ROUND(LFIT.FACT_MONEY / getTax(LCI.LEAS_FORM,'留购价',LCI.INPUTTIME),2)) AS MONEYTAX,LFIT.ACCOUNTING_DATE 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 LFIT.FEE_TYPE = :FEE_TYPE AND LFIT.FLOWUNID = :FLOWUNID ";
}
// 查询sql, 将结果集封装到list集合中
List<Map<String, String>> dataList = DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs = new CreateVoucherServiceImpl();
String VOUCHER_TYPE = "1";// 凭证分类 金蝶
String userid = "admin";
//遍历获取结果集, 将结果写入map中
for (int i = 0; i < dataList.size(); i++) {
MONEY = dataList.get(i).get("MONEY").toString();
if ("".equals(MONEY)||MONEY == null)MONEY = "0.00";
double mon = Double.parseDouble(MONEY);
// 判断有金额, 封装值到map中
if (Math.abs(mon) > 0) {
MONEYNOTAX = dataList.get(i).get("MONEYNOTAX").toString();
MONEYTAX = dataList.get(i).get("MONEYTAX").toString();
ACCOUNT_DATE = dataList.get(i).get("ACCOUNT_DATE").toString();
FACT_DATE = dataList.get(i).get("FACT_DATE").toString();
CONTRACT_ID = dataList.get(i).get("CONTRACT_ID").toString();
CONTRACT_NUMBER = dataList.get(i).get("CONTRACT_NUMBER").toString();
PROJECT_NAME = dataList.get(i).get("PROJECT_NAME").toString();
leas_form = dataList.get(i).get("LEAS_FORM").toString();
DISTRIBUTOR_ID = dataList.get(i).get("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME = dataList.get(i).get("DISTRIBUTOR_NAME");
CARID = dataList.get(i).get("CARID");
CARMODEL = dataList.get(i).get("MODEL");
CUSTID = dataList.get(i).get("CUSTOMERID");
CUSTNAME = dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE = dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE = dataList.get(i).get("BUSINESSTYPE");
ACC_NUM = dataList.get(i).get("ACC_NUMBER");
param.put("FACT_MONEY", MONEY);
param.put("INTERESTNOTAX", MONEYNOTAX);
param.put("TAX", MONEYTAX);
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("ACC_NUMBER", ACC_NUM);
param.put("VOUCHERNO", VOUCHERNO);
if ("2".equals(BUSINESSTYPE)) {
param.put("LEASFORMASSET", ""); // 融资租赁资产
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "06");
}else if ("3".equals(BUSINESSTYPE)) {
param.put("LEASFORMASSET", ""); // 融资租赁资产
param.put("DEPT", "01"); // 部门
param.put("LEASINCOMEFORM", "05");
}
// param.put("FUNDTYPE", ""); // 主营类型
param.put("BUSINESSTYPE", "06");
param.put("FlowUnid", FlowUnid);
map.clear();
map.put("PROJ_TYPE", leas_form);
map.put("VOUCHER_NO", VOUCHERNO);
// 根据map中的参数, 查询LV_VOUCHER_CONFIG表数据
BizObject vouch = DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
// 如果结果不为空,
if (vouch != null) {
//将创建凭证的参数传入在下一层
vs.createVoucher(vouch.getAttribute("MODULAR_NUMBER").getString(),vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid, param,Sqlca);
}
}
}
if (Sqlca != null) {
Sqlca.commit();
}
String sMessage = "true";
return sMessage;
}
}

View File

@ -0,0 +1,82 @@
package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle;
import com.amarsoft.awe.util.Transaction;
import com.tenwa.flow.baseBussion.BaseBussiness;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherContractChangeForCarTradition;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherContractChangeForTradition;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherEarlySettlement;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherEarlySettlementForTradition;
/**
* 汽车类传统提前结清流程结束后生成相关凭证
* @author xiezhiwen
*/
public class ContractEarlySettlementSQForCarTradition extends BaseBussiness {
@Override
public Object run(Transaction Sqlca) throws Exception {
this.initBussinessParam(Sqlca);
String FlowUnid=this.getAttribute("FlowUnid").toString();
// 汽车类传统-------------------------------------------------------------------------------------
CreateVoucherContractChangeForCarTradition cvct=new CreateVoucherContractChangeForCarTradition();
cvct.CreateVoucher(FlowUnid, "PZ2018101000000318");//调整未实现利息收入不含税--回租
cvct.CreateVoucher(FlowUnid, "PZ2018101000000319");//调整未实现利息收入不含税--直租
cvct.CreateVoucher(FlowUnid, "PZ2018101000000320");//调整未实现利息收入税金--回租
cvct.CreateVoucher(FlowUnid, "PZ2018101000000321");//调整未实现利息收入税金--直租
// 传统---------------------------------------------------------------------------------------------
CreateVoucherContractChangeForTradition cvcft= new CreateVoucherContractChangeForTradition();
cvcft.CreateVoucher(FlowUnid, "PZ2018101000000300");//调整未实现利息收入不含税--回租
cvcft.CreateVoucher(FlowUnid, "PZ2018101000000301");//调整未实现利息收入不含税--直租
cvcft.CreateVoucher(FlowUnid, "PZ2018101000000302");//调整未实现利息收入税金--回租
cvcft.CreateVoucher(FlowUnid, "PZ2018101000000303");//调整未实现利息收入税金--直租
CreateVoucherEarlySettlementForTradition cves = new CreateVoucherEarlySettlementForTradition();
// 汽车类传统-----------------------------------------------------------------------------------------------
cves.CreateVoucher(FlowUnid, "PZ2018101000000322");//收到的逾期租金--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000323");//收到的逾期租金--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000324");//收到的逾期罚息--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000325");//收到的逾期罚息--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000326");//收到的提前还款剩余本金--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000327");//收到的提前还款剩余本金--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000328");//收到的未到期利息--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000329");//收到的未到期利息--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000330");//收到的项目违约金--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000331");//收到的项目违约金--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000332");//收到的违约手续费--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000333");//收到的违约手续费--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000334");//收到名义货价--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000335");//收到名义货价--直租
// 传统-----------------------------------------------------------------------------------------------
cves.CreateVoucher(FlowUnid, "PZ2018101000000304");//收到的逾期租金--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000305");//收到的逾期租金--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000306");//收到的逾期罚息--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000307");//收到的逾期罚息--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000308");//收到的提前还款剩余本金--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000309");//收到的提前还款剩余本金--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000310");//收到的未到期利息--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000311");//收到的未到期利息--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000312");//收到的项目违约金--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000313");//收到的项目违约金--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000314");//收到的违约手续费--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000315");//收到的违约手续费--直租
cves.CreateVoucher(FlowUnid, "PZ2018101000000316");//收到名义货价--回租
cves.CreateVoucher(FlowUnid, "PZ2018101000000317");//收到名义货价--直租
return "true";
}
}

View File

@ -0,0 +1,33 @@
package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle;
import com.amarsoft.awe.util.Transaction;
import com.tenwa.flow.baseBussion.BaseBussiness;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherIncomeForTradition;
/**
* 传统/汽车类传统网银收款生成凭证
* @author xiezhiwen
*/
public class IncomeVoucherForTradition extends BaseBussiness {
@Override
public Object run(Transaction Sqlca) throws Exception {
this.initBussinessParam(Sqlca);
String FlowUnid=this.getAttribute("FlowUnid").toString();
CreateVoucherIncomeForTradition cvci=new CreateVoucherIncomeForTradition();
// 汽车类传统
cvci.CreateVoucher(FlowUnid, "PZ2018092500000205", "feetype30");//回款-收到的违约金/罚款--回租
cvci.CreateVoucher(FlowUnid, "PZ2018100900000292", "feetype30");//回款-收到的违约金/罚款--直租
cvci.CreateVoucher(FlowUnid, "PZ2018092500000206", "feetype4"); //回款-收到名义货价--回租
cvci.CreateVoucher(FlowUnid, "PZ2018100900000293", "feetype4"); //回款-收到名义货价--直租
// 传统
cvci.CreateVoucher(FlowUnid, "PZ2018092500000173", "feetype30");//回款-收到的违约金/罚款--回租
cvci.CreateVoucher(FlowUnid, "PZ2018100900000294", "feetype30");//回款-收到的违约金/罚款--直租
cvci.CreateVoucher(FlowUnid, "PZ2018092500000174", "feetype4"); //回款-收到名义货价--回租
cvci.CreateVoucher(FlowUnid, "PZ2018100900000295", "feetype4"); //回款-收到名义货价--直租
return "true";
}
}

View File

@ -0,0 +1,48 @@
package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle;
import com.amarsoft.awe.util.Transaction;
import com.tenwa.flow.baseBussion.BaseBussiness;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherCustCautionMoneyIncome;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherDepositDeductionForTradition;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherDepositDeductionToMoney;
/**
* 保证金抵扣流成结束后生成(传统)
* @author xiezhiwen
*/
public class VoucherDepositDeductionForTradition extends BaseBussiness {
@Override
public Object run(Transaction Sqlca) throws Exception {
this.initBussinessParam(Sqlca);
String FlowUnid=this.getAttribute("FlowUnid").toString();
CreateVoucherDepositDeductionForTradition cvdd=new CreateVoucherDepositDeductionForTradition();
// 汽车类传统
cvdd.CreateVoucher(FlowUnid, "PZ2018092500000217");//保证金抵扣租金 --回租
cvdd.CreateVoucher(FlowUnid, "PZ2018101000000336");//保证金抵扣租金--直租
//cvdd.CreateVoucher(FlowUnid, "PZ2018092500000218");//保证金抵扣违约金 --回租
//cvdd.CreateVoucher(FlowUnid, "");//保证金抵扣违约金 --直租
cvdd.CreateVoucher(FlowUnid, "PZ2018092500000219");//保证金抵扣罚金 --回租
cvdd.CreateVoucher(FlowUnid, "PZ2018101000000337");//保证金抵扣罚金 --直租
//cvdd.CreateVoucher(FlowUnid, "PZ2018092500000220");//保证金抵扣名义货价 --回租
//cvdd.CreateVoucher(FlowUnid, "");//保证金抵扣名义货价--直租
// 传统
cvdd.CreateVoucher(FlowUnid, "PZ2018092500000185");//保证金抵扣租金 --回租
cvdd.CreateVoucher(FlowUnid, "PZ2018101000000338");//保证金抵扣租金--直租
cvdd.CreateVoucher(FlowUnid, "PZ2018092500000186");//保证金抵扣违约金 --回租
cvdd.CreateVoucher(FlowUnid, "");//保证金抵扣违约金 --直租
cvdd.CreateVoucher(FlowUnid, "PZ2018092500000187");//保证金抵扣罚金 --回租
cvdd.CreateVoucher(FlowUnid, "PZ2018101000000339");//保证金抵扣罚金--直租
cvdd.CreateVoucher(FlowUnid, "PZ2018092500000188");//保证金抵扣名义货价 --回租
cvdd.CreateVoucher(FlowUnid, "");//保证金抵扣名义货价--直租
return "true";
}
}

View File

@ -17,9 +17,10 @@ import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl;
public class InsertVoucherRentIncome {
private String sys_date;
private String[] voucher_nos={"PZ2018072100000024","PZ2018080400000081",
"PZ2018072100000025","PZ2018080400000082"
,"PZ2018072100000028","PZ2018080400000085",
"PZ2018082100000142","PZ2018082100000143","PZ2018082100000144","PZ2018082100000145"};
"PZ2018072100000025","PZ2018080400000082","PZ2018072100000028","PZ2018080400000085",
"PZ2018082100000142","PZ2018082100000143","PZ2018082100000144","PZ2018082100000145",
"PZ2018092500000203","PZ2018100900000296","PZ2018092500000204","PZ2018100900000297",
"PZ2018092500000171","PZ2018100900000298","PZ2018092500000172","PZ2018100900000299"};
public String getSys_date() {
return sys_date;
@ -34,7 +35,6 @@ public class InsertVoucherRentIncome {
//回款-收到的逾期利息 复制--回款-收到的逾期利息
"PZ2018072100000025" "PZ2018080400000082"*/
/***
*
* @param VOUCHERNO
* @throws Exception
*/
@ -51,6 +51,14 @@ public class InsertVoucherRentIncome {
if("PZ2018072100000024".equals(VOUCHERNO)||"PZ2018080400000081".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) 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.LOAN_DIRECTION='1' THEN lvri.rent ELSE 0.00 END,CASE WHEN lv.LOAN_DIRECTION='2' THEN lvri.rent ELSE 0.00 END,'IT管理员',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 '02' 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 FROM lv_rent_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 ('PZ2018072100000024','PZ2018080400000081')) lv ON lv.proj_type=lci.LEAS_FORM WHERE 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("PZ2018092500000203".equals(VOUCHERNO)||"PZ2018100900000296".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) 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.LOAN_DIRECTION = '1' THEN lvri.rent ELSE 0.00 END,CASE WHEN lv.LOAN_DIRECTION = '2' THEN lvri.rent ELSE 0.00 END,'IT管理员',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 '04' ELSE '' END,lvri.OWN_NUMBER,'已完整',NOW(),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id FROM lv_rent_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 ('PZ2018092500000203','PZ2018100900000296')) lv ON lv.proj_type = lci.LEAS_FORM WHERE 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("PZ2018092500000171".equals(VOUCHERNO)||"PZ2018100900000298".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) 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.LOAN_DIRECTION = '1' THEN lvri.rent ELSE 0.00 END,CASE WHEN lv.LOAN_DIRECTION = '2' THEN lvri.rent ELSE 0.00 END,'IT管理员',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 '06' ELSE '' END,lvri.OWN_NUMBER,'已完整',NOW(),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id FROM lv_rent_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 ('PZ2018092500000171','PZ2018100900000298')) lv ON lv.proj_type = lci.LEAS_FORM WHERE 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("PZ2018082100000142".equals(VOUCHERNO)||"PZ2018082100000143".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) 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.LOAN_DIRECTION='1' THEN lvri.rent ELSE 0.00 END,CASE WHEN lv.LOAN_DIRECTION='2' THEN lvri.rent ELSE 0.00 END,'IT管理员',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,lvri.cust_name AS cust_name,lv.loan_subject,CASE WHEN lv.loan_direction='2' THEN '04' ELSE '' END,lvri.cust_id,CASE WHEN lv.loan_direction='2' THEN '02' 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 FROM lv_rent_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 ('PZ2018082100000142','PZ2018082100000143')) lv ON lv.proj_type=lci.LEAS_FORM WHERE 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='') ORDER BY lvri.voucher_f3 ";
@ -59,6 +67,14 @@ public class InsertVoucherRentIncome {
if("PZ2018072100000025".equals(VOUCHERNO)||"PZ2018080400000082".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) 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,'IT管理员',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 '02' 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 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 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";
}
//收到的逾期利息--网银(汽车传统)
if("PZ2018092500000204".equals(VOUCHERNO)||"PZ2018100900000297".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) 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,'IT管理员',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 '05' ELSE '' END,lvri.OWN_NUMBER,'已完整',NOW(),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id 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 ('PZ2018092500000204','PZ2018100900000297')) lv ON lv.proj_type = lci.LEAS_FORM WHERE 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 ";
}
//收到的逾期利息--网银(传统)
if("PZ2018092500000172".equals(VOUCHERNO)||"PZ2018100900000299".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) 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,'IT管理员',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 '06' ELSE '' END,lvri.OWN_NUMBER,'已完整',NOW(),'0',lv.modular_number,CASE WHEN lv.loan_direction = '1' THEN '1' ELSE '-1' END,'admin',lvri.income_id 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 ('PZ2018092500000172','PZ2018100900000299')) lv ON lv.proj_type = lci.LEAS_FORM WHERE 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 ";
}
//收到的逾期利息--卡扣
if("PZ2018082100000144".equals(VOUCHERNO)||"PZ2018082100000145".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) 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,'IT管理员',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,lvri.cust_name AS cust_name,lv.loan_subject,CASE WHEN lv.loan_direction='2' THEN '04' ELSE '' END,lvri.cust_id,CASE WHEN lv.loan_direction='2' THEN '02' 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 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 ('PZ2018082100000144','PZ2018082100000145')) lv ON lv.proj_type=lci.LEAS_FORM WHERE 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='') ORDER BY lvri.voucher_f3";