diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractOnhireChange.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractOnhireChange.java index f75d054f2..27a4fad89 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractOnhireChange.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherContractOnhireChange.java @@ -12,19 +12,18 @@ import com.amarsoft.dict.als.cache.CacheLoaderFactory; import com.tenwa.comm.util.jboutil.DataOperatorUtil; import com.tenwa.voucher.serviceImp.CreateVoucherServiceImpl; /** - * 合同变更凭证取值 + * 起租后合同变更汽车流程结束后生成凭证 * @author xiezhiwen */ public class CreateVoucherContractOnhireChange { - public String CreateVoucher(String FlowUnid,String VOUCHERNO) throws Exception { + public String CreateVoucher(String FlowUnid,String VOUCHERNO,String userid) throws Exception { Transaction Sqlca=null; Map map=new HashMap(); Map param=new HashMap(); + if(userid==null || "".equals(userid)) {userid="admin";} 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; @@ -32,7 +31,7 @@ public class CreateVoucherContractOnhireChange { String PROJECT_NAME=null; String leas_form=null; String DISTRIBUTOR_ID=null; - String DISTRIBUTOR_NAME=null; + String DISTRIBUTOR_NAME=null; String CUSTID=null; String CUSTNAME=null; String CUSTOMERTYPE=null; @@ -40,26 +39,22 @@ public class CreateVoucherContractOnhireChange { String sql=""; param.clear(); map.put("FlowUnid", FlowUnid); - // 未实现利息总额 - if("PZ2018072100000049".equals(VOUCHERNO)||"PZ2018080400000105".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 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 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 LRPT.FLOWUNID = :FLOWUNID "; - } - // 未实现利息税金 - if("PZ2018072100000050".equals(VOUCHERNO)||"PZ2018080400000106".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 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 = LRPT.CONTRACT_ID LEFT JOIN LC_CALC_CONDITION LCCT ON LCCT.CONTRACT_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='1' AND LRPT.FLOWUNID = :FLOWUNID "; + //合同变更-调整未实现利息收入--回租(减少) + if("PZ2018072100000049".equals(VOUCHERNO)){ + sql="SELECT IFNULL(LRP.INTEREST,0)-IFNULL(LRPT.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,CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID,CONTRACT_ID)LRPT LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST 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=LRP.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 LCI.LEAS_FORM='02' AND IFNULL(LRP.INTEREST,0)-IFNULL(LRPT.INTEREST,0)>0 AND LRPT.FLOWUNID=:FLOWUNID "; + //合同变更-调整未实现利息收入--回租(增多) + }else if ("PZ2018072100000050".equals(VOUCHERNO)) { + sql="SELECT IFNULL(LRPT.INTEREST,0)-IFNULL(LRP.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,CONTRACT_ID,SUM(INTEREST) AS INTEREST FROM LC_RENT_PLAN_TEMP GROUP BY FLOWUNID,CONTRACT_ID)LRPT LEFT JOIN (SELECT CONTRACT_ID,SUM(INTEREST) AS INTEREST 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=LRP.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 LCI.LEAS_FORM='02' AND IFNULL(LRPT.INTEREST,0)-IFNULL(LRP.INTEREST,0)>0 AND LRPT.FLOWUNID=:FLOWUNID "; } List> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map); CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl(); - String VOUCHER_TYPE="1";// 凭证分类 金蝶 - String userid ="admin"; + String VOUCHER_TYPE="1";// 凭证分类 for (int i=0;i0){ - MONEYNOTAX=dataList.get(i).get("MONEYNOTAX").toString(); - MONEYTAX=dataList.get(i).get("MONEYTAX").toString(); ACCOUNT_DATE=dataList.get(i).get("ACCOUNT_DATE").toString(); FACT_DATE =dataList.get(i).get("FACT_DATE").toString(); CONTRACT_ID=dataList.get(i).get("CONTRACT_ID").toString(); @@ -74,8 +69,6 @@ public class CreateVoucherContractOnhireChange { BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE"); 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); @@ -88,17 +81,7 @@ public class CreateVoucherContractOnhireChange { param.put("CUSTNAME",CUSTNAME); param.put("CUSTOMERTYPE",CUSTOMERTYPE); param.put("BUSINESSTYPE",BUSINESSTYPE); - if("1".equals(BUSINESSTYPE)){ - param.put("LEASFORMASSET", "04"); // 融资租赁资产 - param.put("DEPT", "02"); // 部门 - if("03".equals(CUSTOMERTYPE)){ // 如果是个人业务 - param.put("LEASINCOMEFORM", "02"); // C端 - }else if("01".equals(CUSTOMERTYPE)){ - param.put("LEASINCOMEFORM", "01"); // B端 - } - } - param.put("FUNDTYPE", "01"); // 主营类型 - param.put("BUSINESSTYPE", "06"); + param.put("VOUCHERNO",VOUCHERNO); param.put("FlowUnid", FlowUnid); map.clear(); diff --git a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireChange.java b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireChange.java index 012b19a7d..1e78d2ab6 100644 --- a/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireChange.java +++ b/src_core/com/tenwa/voucher/CreateVoucherProcess/CreateVoucherMethodSettle/ContractOnhireChange.java @@ -4,7 +4,7 @@ import com.amarsoft.awe.util.Transaction; import com.tenwa.flow.baseBussion.BaseBussiness; import com.tenwa.voucher.CreateVoucherProcess.CreateVoucherContractOnhireChange; /** - * 汽车业务合同变更流程结束后生成相关凭证 + * 起租后合同变更汽车流程结束后生成凭证 * @author xiezhiwen */ public class ContractOnhireChange extends BaseBussiness { @@ -13,13 +13,11 @@ public class ContractOnhireChange extends BaseBussiness { public Object run(Transaction Sqlca) throws Exception { this.initBussinessParam(Sqlca); String FlowUnid=this.getAttribute("FlowUnid").toString(); + String userid = this.getAttribute("CurUserID").toString(); CreateVoucherContractOnhireChange cvco=new CreateVoucherContractOnhireChange(); - cvco.CreateVoucher(FlowUnid, "PZ2018072100000049");//合同变更-调整未实现利息收入--回租 - cvco.CreateVoucher(FlowUnid, "PZ2018080400000105");//合同变更-调整未实现利息收入--直租 - - cvco.CreateVoucher(FlowUnid, "PZ2018072100000050");//合同变更-调整利息的税--回租 - cvco.CreateVoucher(FlowUnid, "PZ2018080400000106");//合同变更-调整的税--直租 + cvco.CreateVoucher(FlowUnid, "PZ2018072100000049",userid);//合同变更-调整未实现利息收入--回租(减少) + cvco.CreateVoucher(FlowUnid, "PZ2018072100000050",userid);//合同变更-调整未实现利息收入--回租(增多) return "true"; } diff --git a/src_tenwa/com/tenwa/lease/app/quartzmession/WechatMessagePush.java b/src_tenwa/com/tenwa/lease/app/quartzmession/WechatMessagePush.java index 52938e3b6..fddc0ec23 100644 --- a/src_tenwa/com/tenwa/lease/app/quartzmession/WechatMessagePush.java +++ b/src_tenwa/com/tenwa/lease/app/quartzmession/WechatMessagePush.java @@ -194,7 +194,7 @@ public class WechatMessagePush implements Job{ customer_id=rs.getString("customerid"); // 查寻当条是否是历史失败的 - selSql="SELECT openid FROM wechat_message_record WHERE OPENID='"+openid+"' AND CONTRACT_NUMBER='"+contract_number+"' AND PLAN_LIST='"+plan_list+"' AND SEND_TYPE='1'"; + selSql="SELECT openid FROM wechat_message_record WHERE OPENID='"+openid+"' AND CONTRACT_NUMBER='"+contract_number+"' AND PLAN_LIST='"+plan_list+"' AND SEND_TYPE='2'"; ASResultSet rs1 = Sqlca.getASResultSet(new SqlObject(selSql)); if(!rs1.next()) {