汽车租金休眠凭证

This commit is contained in:
xiezhiwen 2021-05-14 16:48:37 +08:00
parent 380a7c9142
commit 466453fb04
3 changed files with 143 additions and 2 deletions

View File

@ -0,0 +1,23 @@
package com.tenwa.voucher.CreateVoucherProcess.CreateVoucherMethodSettle;
import com.amarsoft.awe.util.Transaction;
import com.tenwa.flow.baseBussion.BaseBussiness;
import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherRentDormant;
/**
* 休眠-调整未实现利息收入生成凭证
* @author xiezhiwen
*/
public class RentDormantVoucher extends BaseBussiness {
@Override
public Object run(Transaction Sqlca) throws Exception {
this.initBussinessParam(Sqlca);
String FlowUnid=this.getAttribute("FlowUnid").toString();
String userid = this.getAttribute("CurUserID").toString();
CreateVoucherRentDormant cvco=new CreateVoucherRentDormant();
cvco.CreateVoucher(FlowUnid, "PZ2021051400000007",userid); // 休眠-调整未实现利息收入(减少)
cvco.CreateVoucher(FlowUnid, "PZ2021051400000008",userid); // 休眠-调整未实现利息收入(增加)
return "true";
}
}

View File

@ -0,0 +1,112 @@
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.are.jbo.JBOException;
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;
/**
* 休眠-调整未实现利息收入
* @author xiezhiwen
*/
public class CreateVoucherRentDormant {
public void CreateVoucher(String FlowUnid,String VOUCHERNO,String userid) throws Exception {
Transaction Sqlca=null;
try{
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 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 sql="";
param.clear();
map.put("FlowUnid", FlowUnid);
// 休眠-调整未实现利息收入(减少)
if("PZ2021051400000007".equals(VOUCHERNO)){
sql = "SELECT IFNULL(LRPT.INTEREST, 0) - IFNULL(LRPH.INTEREST, 0) AS MONEY, 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 (SELECT FLOWUNID, SUM(IFNULL(INTEREST, 0)) AS INTEREST, MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER FROM LC_RENT_PLAN_TEMP WHERE FLOWUNID = :FLOWUNID GROUP BY FLOWUNID) LRPT LEFT JOIN (SELECT FLOWUNID, SUM(IFNULL(INTEREST, 0)) AS INTEREST FROM LC_RENT_PLAN_HIS WHERE FLOWUNID = :FLOWUNID GROUP BY FLOWUNID) LRPH ON LRPH.FLOWUNID = LRPT.FLOWUNID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.PAYMENT_NUMBER = LRPT.PAYMENT_NUMBER 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 LPI.BUSINESSTYPE = '1' AND lul.IS_MAIN = 'Y' AND ( IFNULL(LRPT.INTEREST, 0) - IFNULL(LRPH.INTEREST, 0) ) < 0";
// 休眠-调整未实现利息收入(增加)
}else if("PZ2021051400000008".equals(VOUCHERNO)){
sql = "SELECT IFNULL(LRPT.INTEREST, 0) - IFNULL(LRPH.INTEREST, 0) AS MONEY, 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 (SELECT FLOWUNID, SUM(IFNULL(INTEREST, 0)) AS INTEREST, MAX(PAYMENT_NUMBER) AS PAYMENT_NUMBER FROM LC_RENT_PLAN_TEMP WHERE FLOWUNID = :FLOWUNID GROUP BY FLOWUNID) LRPT LEFT JOIN (SELECT FLOWUNID, SUM(IFNULL(INTEREST, 0)) AS INTEREST FROM LC_RENT_PLAN_HIS WHERE FLOWUNID = :FLOWUNID GROUP BY FLOWUNID) LRPH ON LRPH.FLOWUNID = LRPT.FLOWUNID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.PAYMENT_NUMBER = LRPT.PAYMENT_NUMBER 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 LPI.BUSINESSTYPE = '1' AND lul.IS_MAIN = 'Y' AND ( IFNULL(LRPT.INTEREST, 0) - IFNULL(LRPH.INTEREST, 0) ) > 0";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
if(userid==null) {
userid ="admin";
}
for (int i=0;i<dataList.size();i++){
MONEY=dataList.get(i).get("MONEY");
ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE");
FACT_DATE =dataList.get(i).get("FACT_DATE");
CONTRACT_ID=dataList.get(i).get("CONTRACT_ID");
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER");
PROJECT_NAME=dataList.get(i).get("PROJECT_NAME");
leas_form=dataList.get(i).get("LEAS_FORM");
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID");
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME");
CUSTID=dataList.get(i).get("CUSTOMERID");
CUSTNAME=dataList.get(i).get("CUSTOMERNAME");
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE");
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE");
param.put("FACT_MONEY",MONEY);
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("VOUCHERNO",VOUCHERNO);
param.put("FlowUnid", FlowUnid);
map.clear();
map.put("PROJ_TYPE", "01");
map.put("VOUCHER_NO", VOUCHERNO);
BizObject vouch=DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
if(vouch!=null){
vs.createVoucher(vouch.getAttribute("id").getString(),vouch.getAttribute("MODULAR_NUMBER").getString(), vouch.getAttribute("OWNED_COMPANY").getString(), leas_form, VOUCHER_TYPE, userid,param, Sqlca);
}
}
if(Sqlca!=null){
Sqlca.commit();
}
}catch (Exception e){
e.printStackTrace();
}finally{
if(Sqlca!=null){
try {
Sqlca.disConnect();
} catch (JBOException e) {
e.printStackTrace();
}
Sqlca = null;
}
}
}
}

View File

@ -99,9 +99,15 @@ public class CreateVoucherServiceImpl {
param.put("voucher_id", voucher_id);
param.put("MODULAR_NUMBER", vouNumber);
param.put("OWNED_COMPANY", owned);
param.put("PROJ_TYPE", projtype);
/**
* 休眠-调整未实现利息收入凭证配置默认直租
*/
if("PZ2021051400000007".equals(param.get("VOUCHERNO")) || "PZ2021051400000008".equals(param.get("VOUCHERNO"))) {
param.put("PROJ_TYPE", "01");
}else {
param.put("PROJ_TYPE", projtype);
}
if(voucherType==null||"".equals(voucherType)){
//voucherType=Configure.getInstance().getConfigure("VoucherType");
voucherType="1";
}
param.put("VOUCHER_TYPE",voucherType);