代偿红冲逾期利息凭证优化及微信消息推送内容变更

This commit is contained in:
xiezhiwen 2019-11-29 09:25:49 +08:00
parent c99e2f1936
commit e744071946
5 changed files with 22 additions and 17 deletions

View File

@ -1,19 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans>
<!-- <service xmlns="http://xfire.codehaus.org/config/1.0">
<name>test</name>
<serviceClass>com.tenwa.makeContract.IHelloService</serviceClass>
<implementationClass>com.tenwa.makeContract.HelloService</implementationClass>
</service> -->
<service xmlns="http://xfire.codehaus.org/config/1.0">
<!-- 接口名字 -->
<name>McontractService</name>
<!-- 接口路径 -->
<serviceClass>com.tenwa.makeContract.McontractService</serviceClass>
<!-- 接口实现类路径 -->
<implementationClass>com.tenwa.makeContract.impl.McontractServiceImpl</implementationClass>
</service>
<service xmlns="http://xfire.codehaus.org/config/1.0">
<!-- 接口名字 -->
<name>CustomerService</name>
<!-- 接口路径 -->
<serviceClass>com.tenwa.voucher.service.CustomerService</serviceClass>
<!-- 接口实现类路径 -->
<implementationClass>com.tenwa.voucher.serviceImp.CustomerServiceImpl</implementationClass>
</service>
</beans>

View File

@ -45,7 +45,8 @@ public class CreateVoucherRedCompensatory {
sql="SELECT IFNULL(V8.MONEY, 0) AS MONEY,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER FROM (SELECT SUM(F7) AS MONEY,MAX(F58) AS F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%代偿-收到代偿的租金%' AND F58 = '"+LRP_ID+"' AND F59 = '1' GROUP BY F3) V8 LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID = V8.F58 LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58=V8.F58 AND F59=1 AND MODULE_NAME LIKE '%代偿反冲-收到代偿的租金%') ";
// 代偿反冲-收到的逾期利息
}else if("PZ2019071500000031".equals(VOUCHERNO)){
sql="SELECT IFNULL(LRIT.PENALTY, 0) AS MONEY,IFNULL(V8.MONEY, 0) AS MONEYNOTAX,ROUND((IFNULL(LRIT.PENALTY, 0) - IFNULL(V8.MONEY, 0)),2) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER FROM (SELECT SUM(F7) AS MONEY,MAX(F58) AS F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%덜낄-덜낄待퍅적口%' AND F58 = '"+LRP_ID+"' AND F59 = '1' GROUP BY F3) V8 LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID = V8.F58 LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,SUM(PENALTY) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,PLAN_LIST)LRIT ON LRIT.CONTRACT_ID=LRP.CONTRACT_ID AND LRIT.PLAN_LIST=LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = V8.F58 AND F59 = 1 AND MODULE_NAME LIKE '%덜낄럽녑-덜낄待퍅적口%') ";
// sql="SELECT IFNULL(LRIT.PENALTY, 0) AS MONEY,IFNULL(V8.MONEY, 0) AS MONEYNOTAX,ROUND((IFNULL(LRIT.PENALTY, 0) - IFNULL(V8.MONEY, 0)),2) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,V8.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,V8.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER FROM (SELECT SUM(F7) AS MONEY,MAX(F58) AS F58,MAX(F65) AS DISTRIBUTOR_CODING,MAX(F61) AS DISTRIBUTOR_NAME FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%덜낄-덜낄待퍅적口%' AND F58 = '"+LRP_ID+"' AND F59 = '1' GROUP BY F3) V8 LEFT JOIN LC_RENT_PLAN LRP ON LRP.ID = V8.F58 LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,SUM(PENALTY) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,PLAN_LIST)LRIT ON LRIT.CONTRACT_ID=LRP.CONTRACT_ID AND LRIT.PLAN_LIST=LRP.PLAN_LIST LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID WHERE LCI.BUSINESSTYPE = '1' AND IFNULL(V8.MONEY, 0) > 0 AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = V8.F58 AND F59 = 1 AND MODULE_NAME LIKE '%덜낄럽녑-덜낄待퍅적口%') ";
sql="SELECT IFNULL(LRI.PENALTY, 0) AS MONEY,IFNULL(V8.MONEY, 0) AS MONEYNOTAX,ROUND((IFNULL(LRI.PENALTY, 0) - IFNULL(V8.MONEY, 0)),2) AS MONEYTAX,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LRP.CONTRACT_ID,DI.DISTRIBUTOR_CODING AS DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,LRP.PLAN_LIST,LRP.ID AS F58,LCI.CONTRACT_NUMBER FROM (SELECT ID,CONTRACT_ID,PLAN_LIST FROM LC_RENT_PLAN WHERE ID = '"+LRP_ID+"') LRP LEFT JOIN LB_CONTRACT_INFO LCI ON LCI.ID = LRP.CONTRACT_ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO=LCI.DISTRIBUTOR_ID LEFT JOIN (SELECT CONTRACT_ID,PLAN_LIST,SUM(PENALTY) AS PENALTY FROM LC_RENT_INCOME GROUP BY CONTRACT_ID,PLAN_LIST) LRI ON LRI.CONTRACT_ID = LRP.CONTRACT_ID AND LRI.PLAN_LIST = LRP.PLAN_LIST LEFT JOIN (SELECT SUM(F7) AS MONEY,MAX(F58) AS F58 FROM VOUCHER_V8 WHERE MODULE_NAME LIKE '%덜낄-덜낄待퍅적口%' AND F58 = '"+LRP_ID+"' AND F59 = '1' GROUP BY F3) V8 ON V8.F58 = LRP.ID WHERE LCI.BUSINESSTYPE = '1' AND NOT EXISTS (SELECT F58 FROM VOUCHER_V8 WHERE F58 = LRP.ID AND F59 = 1 AND MODULE_NAME LIKE '%덜낄럽녑-덜낄待퍅적口%') ";
}
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, null);

View File

@ -69,7 +69,6 @@ public class CreateVoucherRentIncome {
List<Map<String,String>> dataList=DataOperatorUtil.getDataBySql(Sqlca, sql, map);
CreateVoucherServiceImpl vs=new CreateVoucherServiceImpl();
CreateVoucherRedCompensatory cvrc = new CreateVoucherRedCompensatory();
String VOUCHER_TYPE="1";// 凭证分类 金蝶
for (int i=0;i<dataList.size();i++){

View File

@ -44,7 +44,7 @@ public class InsertVoucherRentIncome {
// 查询跨月的, 未生成凭证的数据(卡扣)
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 IN ('手工收款', '批量收款') AND lri.rent > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_rent_income) AND lrp.id NOT IN (SELECT income_id FROM lv_rent_income2) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_RENT_PLAN) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_RENT_PLAN2) 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 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 IN ('手工收款', '批量收款') AND lri.penalty > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_penalty_income) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_PENALTY_PLAN) AND lul.is_main = 'Y' ";
String sqls3="SELECT lri.PENALTY 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 IN ('手工收款', '批量收款') AND lri.penalty > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_penalty_income) AND LRP.ID NOT IN (SELECT INCOME_ID FROM LV_PENALTY_PLAN) AND LRP.ID NOT IN (SELECT INCOME_ID FROM LV_RENT_PLAN) AND LRP.ID NOT IN (SELECT INCOME_ID FROM LV_RENT_PLAN2) AND lul.is_main = 'Y' ";
// 代偿反冲租金
String sqls4="SELECT lri.RENT,LRP.ID AS F58 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 IN ('手工收款', '批量收款') AND lri.rent > 0 AND ( LRP.ID IN (SELECT INCOME_ID FROM LV_RENT_PLAN) OR LRP.ID IN (SELECT INCOME_ID FROM LV_RENT_PLAN2)) AND NOT EXISTS(SELECT F58 FROM VOUCHER_V8 WHERE F58=LRP.ID AND F59=1 AND MODULE_NAME LIKE '%代偿反冲-收到代偿的租金%') AND lul.is_main = 'Y' ";
@ -65,7 +65,8 @@ public class InsertVoucherRentIncome {
// 逾期过月(卡扣)
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,lrp.plan_list,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,lrp.COLLECT_STATUS,LCI.BUSINESSTYPE,LCI.LEAS_FORM 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 IN ('手工收款', '批量收款') AND lri.rent > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_rent_income) AND lrp.id NOT IN (SELECT income_id FROM lv_rent_income2) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_RENT_PLAN) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_RENT_PLAN2) 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,lrp.id,lri.HIRE_DATE,lrp.plan_list,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,lrp.COLLECT_STATUS,LCI.BUSINESSTYPE,LCI.LEAS_FORM 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 IN ('手工收款', '批量收款','代偿') AND lri.penalty > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_penalty_income) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_PENALTY_PLAN) 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,lrp.id,lri.HIRE_DATE,lrp.plan_list,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,lrp.COLLECT_STATUS,LCI.BUSINESSTYPE,LCI.LEAS_FORM 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 IN ('手工收款', '批量收款','代偿') AND lri.penalty > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_penalty_income) AND LRP.ID NOT IN(SELECT INCOME_ID FROM LV_PENALTY_PLAN) 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,lrp.id,lri.HIRE_DATE,lrp.plan_list,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,lrp.COLLECT_STATUS,LCI.BUSINESSTYPE,LCI.LEAS_FORM 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 IN ('手工收款','批量收款','代偿') AND lri.penalty > 0 AND lrp.id NOT IN (SELECT income_id FROM lv_penalty_income) AND LRP.ID NOT IN (SELECT INCOME_ID FROM LV_PENALTY_PLAN) AND LRP.ID NOT IN (SELECT INCOME_ID FROM LV_RENT_PLAN) AND LRP.ID NOT IN (SELECT INCOME_ID FROM LV_RENT_PLAN2) AND lul.is_main = 'Y')";
/**
* 根据查询语句判断, 有值才执行插入SQL
*/

View File

@ -87,9 +87,10 @@ public class WechatMessagePush implements Job{
String keyword1=null;// 还款日期
String keyword2=null;// 还款期次
String keyword3=null;// 还款金额
String keyword4=null;//
String uuid=null; // 记录表id
String first="尊敬的用户您好,您的本期还款信息如下:";// 内容头
String remark="祝您工作顺利。"; // 备注
String first="尊敬的客户您好,本期还款信息如下:";// 内容头
String remark="请您在还款日前完成还款,感谢您的支持与配合,祝您生活愉快!";// 备注
String updSql="";
String insertSql="";
String msgid =null;
@ -137,7 +138,7 @@ public class WechatMessagePush implements Job{
Sqlca.executeSQL(new SqlObject(insertSql));
}
try {
msgid = WechatMessagePush.WechatPush(openid,link,type,first,keyword1,keyword2,keyword3,remark);
msgid = WechatMessagePush.WechatPush(openid,link,type,first,keyword1,keyword2,keyword3,keyword4,remark);
System.out.println(con);
} catch (Exception e) {
result="推送失败";
@ -172,14 +173,14 @@ public class WechatMessagePush implements Job{
String customer_id=null; // 客户id
String openid=null; // 微信标识
String link=null; // 详情链接
String type="1"; // 类型
String type="2"; // 类型
String keyword1=null; // 还款日期
String keyword2=null; // 应还金额
String keyword3=null; // 逾期金额
String keyword4=null; // 罚息金额
String uuid=null; // 记录表id
String first="亲爱的用户您好,您本期应还金额尚未归还,以下是您的账单信息:"; // 内容头
String remark="XX提醒您逾期会产生逾期费用请尽快还款如需帮助请您致电客服123456."; // 备注
String first="亲爱的用户您好,您本期应还金额尚未归还,以下是您的账单信息:"; // 内容头
String remark="您已逾期,逾期会产生利息并影响您的个人信用。为了更好地维护您的相关权益,请尽快还款。如需协商 ,请联系客服。"; // 备注
String updSql="";
String insertSql="";
String msgid =null;
@ -218,7 +219,7 @@ public class WechatMessagePush implements Job{
Sqlca.executeSQL(new SqlObject(insertSql));
}
try {
msgid = WechatMessagePush.WechatPush(openid,link,type,first,keyword1,keyword2,keyword3,remark);
msgid = WechatMessagePush.WechatPush(openid,link,type,first,keyword1,keyword2,keyword3,keyword4,remark);
System.out.println(con);
} catch (Exception e) {
result="推送失败";
@ -240,7 +241,7 @@ public class WechatMessagePush implements Job{
/**
* 3: 调用消息推送接口
*/
public synchronized static String WechatPush(String openid,String link,String type,String first,String keyword1,String keyword2,String keyword3,String remark) throws Exception {
public synchronized static String WechatPush(String openid,String link,String type,String first,String keyword1,String keyword2,String keyword3,String keyword4,String remark) throws Exception {
String strURL = WechatPropertiesUtil.getConfigValue("WechatURL");
URL url = new URL(strURL);
HttpURLConnection httpConn = (HttpURLConnection) url.openConnection();
@ -260,6 +261,8 @@ public class WechatMessagePush implements Job{
data.put("first", first);// 推送的头部
data.put("keyword1", keyword1);// 关键字1
data.put("keyword2", keyword2);// 关键字2
data.put("keyword3", keyword3);// 关键字3
data.put("keyword4", keyword4);// 关键字4
data.put("remark", remark);// 备注
json.put("data", data);