From 7a0536528fb95635dde1b1fda1952714a7092a9a Mon Sep 17 00:00:00 2001
From: shiyj1101 <1098226878@qq.com>
Date: 星期六, 07 八月 2021 23:00:58 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity
---
service-job/src/main/java/com/java110/job/task/wechat/FeeCollectionPushMessageTemplate.java | 111 ++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 93 insertions(+), 18 deletions(-)
diff --git a/service-job/src/main/java/com/java110/job/task/wechat/FeeCollectionPushMessageTemplate.java b/service-job/src/main/java/com/java110/job/task/wechat/FeeCollectionPushMessageTemplate.java
index f1fef10..38e6c9e 100644
--- a/service-job/src/main/java/com/java110/job/task/wechat/FeeCollectionPushMessageTemplate.java
+++ b/service-job/src/main/java/com/java110/job/task/wechat/FeeCollectionPushMessageTemplate.java
@@ -1,29 +1,37 @@
package com.java110.job.task.wechat;
import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.factory.SendSmsFactory;
import com.java110.core.factory.WechatFactory;
import com.java110.dto.community.CommunityDto;
import com.java110.dto.fee.FeeDto;
import com.java110.dto.feeCollectionOrder.FeeCollectionOrderDto;
import com.java110.dto.logSystemError.LogSystemErrorDto;
import com.java110.dto.owner.OwnerAppUserDto;
+import com.java110.dto.owner.OwnerDto;
import com.java110.dto.reportOweFee.ReportOweFeeDto;
import com.java110.dto.reportOweFee.ReportOweFeeItemDto;
import com.java110.dto.smallWeChat.SmallWeChatDto;
import com.java110.dto.smallWechatAttr.SmallWechatAttrDto;
+import com.java110.dto.smsConfig.SmsConfigDto;
import com.java110.dto.task.TaskDto;
import com.java110.entity.wechat.Content;
import com.java110.entity.wechat.Data;
import com.java110.entity.wechat.Miniprogram;
import com.java110.entity.wechat.PropertyFeeTemplateMessage;
+import com.java110.intf.common.ISmsConfigInnerServiceSMO;
+import com.java110.intf.fee.IFeeCollectionDetailInnerServiceSMO;
import com.java110.intf.fee.IFeeCollectionOrderInnerServiceSMO;
import com.java110.intf.fee.IFeeInnerServiceSMO;
import com.java110.intf.report.IReportOweFeeInnerServiceSMO;
import com.java110.intf.store.ISmallWeChatInnerServiceSMO;
import com.java110.intf.store.ISmallWechatAttrInnerServiceSMO;
import com.java110.intf.user.IOwnerAppUserInnerServiceSMO;
+import com.java110.intf.user.IOwnerInnerServiceSMO;
import com.java110.job.quartz.TaskSystemQuartz;
+import com.java110.po.feeCollectionDetail.FeeCollectionDetailPo;
import com.java110.po.logSystemError.LogSystemErrorPo;
import com.java110.service.smo.ISaveSystemErrorSMO;
import com.java110.utils.cache.MappingCache;
@@ -31,6 +39,7 @@
import com.java110.utils.util.DateUtil;
import com.java110.utils.util.ExceptionUtil;
import com.java110.utils.util.StringUtil;
+import com.java110.vo.ResultVo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -40,7 +49,6 @@
import java.math.BigDecimal;
import java.text.ParseException;
-import java.text.SimpleDateFormat;
import java.util.*;
/**
@@ -67,11 +75,20 @@
private IOwnerAppUserInnerServiceSMO ownerAppUserInnerServiceSMOImpl;
@Autowired
+ private IOwnerInnerServiceSMO ownerInnerServiceSMOImpl;
+
+ @Autowired
private IFeeCollectionOrderInnerServiceSMO feeCollectionOrderInnerServiceSMOImpl;
+
+ @Autowired
+ private IFeeCollectionDetailInnerServiceSMO feeCollectionDetailInnerServiceSMOImpl;
@Autowired
private IReportOweFeeInnerServiceSMO reportOweFeeInnerServiceSMOImpl;
+
+ @Autowired
+ private ISmsConfigInnerServiceSMO smsConfigInnerServiceSMOImpl;
@Autowired
private RestTemplate outRestTemplate;
@@ -173,18 +190,38 @@
* @param feeCollectionOrderDto
*/
private void doPushMessage(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto) {
-
+ FeeCollectionDetailPo feeCollectionDetailPo = new FeeCollectionDetailPo();
+ ResultVo resultVo = null;
switch (feeCollectionOrderDto.getCollectionWay()) {
case FeeCollectionOrderDto.COLLECTION_WAY_SMS:
- doSendSms(reportOweFeeDo, feeCollectionOrderDto);
+ resultVo = doSendSms(reportOweFeeDo, feeCollectionOrderDto);
+ feeCollectionDetailPo.setCollectionWay(FeeCollectionOrderDto.COLLECTION_WAY_SMS);
break;
case FeeCollectionOrderDto.COLLECTION_WAY_WECHAT:
- doSendWechat(reportOweFeeDo, feeCollectionOrderDto);
+ resultVo = doSendWechat(reportOweFeeDo, feeCollectionOrderDto);
+ feeCollectionDetailPo.setCollectionWay(FeeCollectionOrderDto.COLLECTION_WAY_WECHAT);
break;
case FeeCollectionOrderDto.COLLECTION_WAY_WECHAT_SMS:
- doSendWechatOrSms(reportOweFeeDo, feeCollectionOrderDto);
+ resultVo = doSendWechatOrSms(reportOweFeeDo, feeCollectionOrderDto, feeCollectionDetailPo);
break;
}
+
+
+ feeCollectionDetailPo.setCollectionName(feeCollectionOrderDto.getCollectionName());
+ feeCollectionDetailPo.setCommunityId(feeCollectionOrderDto.getCommunityId());
+ feeCollectionDetailPo.setDetailId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_detailId));
+ feeCollectionDetailPo.setFeeName(feeCollectionOrderDto.getCollectionName() + "娆犺垂");
+ feeCollectionDetailPo.setOrderId(feeCollectionOrderDto.getOrderId());
+ feeCollectionDetailPo.setOweAmount(reportOweFeeDo.getAmountOwed());
+ feeCollectionDetailPo.setOwnerId(reportOweFeeDo.getOwnerId());
+ feeCollectionDetailPo.setOwnerName(reportOweFeeDo.getOwnerName());
+ feeCollectionDetailPo.setPayerObjId(reportOweFeeDo.getPayerObjId());
+ feeCollectionDetailPo.setPayerObjName(reportOweFeeDo.getPayerObjName());
+ feeCollectionDetailPo.setPayerObjType(reportOweFeeDo.getPayerObjType());
+ feeCollectionDetailPo.setState(resultVo.getCode() == ResultVo.CODE_OK ? FeeCollectionOrderDto.STATE_FINISH : FeeCollectionOrderDto.STATE_ERROR);
+ feeCollectionDetailPo.setRemarks(resultVo.getMsg().length() > 512 ? resultVo.getMsg().substring(0, 450) : resultVo.getMsg());
+ feeCollectionDetailInnerServiceSMOImpl.saveFeeCollectionDetail(feeCollectionDetailPo);
+
}
@@ -194,13 +231,14 @@
* @param reportOweFeeDo
* @param feeCollectionOrderDto
*/
- private void doSendWechatOrSms(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto) {
+ private ResultVo doSendWechatOrSms(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto, FeeCollectionDetailPo feeCollectionDetailPo) {
Map paramInfo = getOwnerAppUserDto(feeCollectionOrderDto.getCommunityId(), reportOweFeeDo.getOwnerId());
if (paramInfo == null) {
- doSendSms(reportOweFeeDo, feeCollectionOrderDto);
- return;
+ feeCollectionDetailPo.setCollectionWay(FeeCollectionOrderDto.COLLECTION_WAY_SMS);
+ return doSendSms(reportOweFeeDo, feeCollectionOrderDto);
}
- doSendWechat(reportOweFeeDo, feeCollectionOrderDto, paramInfo);
+ feeCollectionDetailPo.setCollectionWay(FeeCollectionOrderDto.COLLECTION_WAY_WECHAT);
+ return doSendWechat(reportOweFeeDo, feeCollectionOrderDto, paramInfo);
}
/**
@@ -209,12 +247,12 @@
* @param reportOweFeeDo
* @param feeCollectionOrderDto
*/
- private void doSendWechat(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto) {
+ private ResultVo doSendWechat(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto) {
Map paramInfo = getOwnerAppUserDto(feeCollectionOrderDto.getCommunityId(), reportOweFeeDo.getOwnerId());
if (paramInfo == null) {
- return;
+ return new ResultVo(ResultVo.CODE_ERROR, "涓氫富鏈粦瀹�");
}
- doSendWechat(reportOweFeeDo, feeCollectionOrderDto, paramInfo);
+ return doSendWechat(reportOweFeeDo, feeCollectionOrderDto, paramInfo);
}
/**
@@ -223,16 +261,15 @@
* @param reportOweFeeDo
* @param feeCollectionOrderDto
*/
- private void doSendWechat(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto, Map paramInfo) {
+ private ResultVo doSendWechat(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto, Map paramInfo) {
if (paramInfo == null) {
- return;
+ return new ResultVo(ResultVo.CODE_ERROR, "涓氫富鏈粦瀹�");
}
String templateId = paramInfo.get("templateId").toString();
- String accessToken = paramInfo.get("accessToken").toString();
String url = paramInfo.get("url").toString();
String oweRoomUrl = paramInfo.get("oweCarUrl").toString();
String oweCarUrl = paramInfo.get("oweCarUrl").toString();
- SmallWeChatDto weChatDto = (SmallWeChatDto)paramInfo.get("weChatDto");
+ SmallWeChatDto weChatDto = (SmallWeChatDto) paramInfo.get("weChatDto");
Miniprogram miniprogram = paramInfo.get("oweCarUrl") == null ? null : (Miniprogram) paramInfo.get("oweCarUrl");
List<OwnerAppUserDto> ownerAppUserDtos = (List<OwnerAppUserDto>) paramInfo.get("ownerAppUserDtos");
@@ -278,6 +315,8 @@
}
}
}
+
+ return new ResultVo(ResultVo.CODE_OK, ResultVo.MSG_OK);
}
/**
@@ -286,8 +325,45 @@
* @param reportOweFeeDo
* @param feeCollectionOrderDto
*/
- private void doSendSms(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto) {
+ private ResultVo doSendSms(ReportOweFeeDto reportOweFeeDo, FeeCollectionOrderDto feeCollectionOrderDto) {
+ SmsConfigDto smsConfigDto = new SmsConfigDto();
+ smsConfigDto.setObjId(feeCollectionOrderDto.getCommunityId());
+ smsConfigDto.setSmsBusi(SmsConfigDto.SMS_BUSI_OWE);
+ List<SmsConfigDto> smsConfigDtos = smsConfigInnerServiceSMOImpl.querySmsConfigs(smsConfigDto);
+
+ if (smsConfigDtos == null || smsConfigDtos.size() < 1) {
+ return new ResultVo(ResultVo.CODE_ERROR, "鏈厤缃煭淇′俊鎭�");
+ }
+ Object paramIn = null;
+ if ("ALI".equals(smsConfigDto.getSmsType())) {
+ JSONObject param = new JSONObject();
+ param.put("user", reportOweFeeDo.getOwnerName());
+ param.put("house", reportOweFeeDo.getPayerObjName());
+ param.put("amountOwed", reportOweFeeDo.getAmountOwed());
+ paramIn = param;
+ } else {
+ paramIn = new String[]{
+ reportOweFeeDo.getOwnerName(),
+ reportOweFeeDo.getPayerObjName(),
+ reportOweFeeDo.getAmountOwed()
+ };
+ }
+
+ OwnerDto ownerDto = new OwnerDto();
+ ownerDto.setCommunityId(feeCollectionOrderDto.getCommunityId());
+ ownerDto.setOwnerId(reportOweFeeDo.getOwnerId());
+ List<OwnerDto> ownerDtos = ownerInnerServiceSMOImpl.queryOwners(ownerDto);
+
+ if (ownerDtos == null || ownerDtos.size() < 1) {
+ return new ResultVo(ResultVo.CODE_ERROR, "涓氫富涓嶅瓨鍦�");
+ }
+ ResultVo resultVo = null;
+ for (OwnerDto ownerDto1 : ownerDtos) {
+ resultVo = SendSmsFactory.sendOweFeeSms(ownerDto1.getLink(), smsConfigDto, paramIn);
+ }
+
+ return resultVo;
}
private Map getOwnerAppUserDto(String communityId, String memberId) {
@@ -355,7 +431,6 @@
Map paramInfo = new HashMap();
paramInfo.put("templateId", templateId);
- paramInfo.put("accessToken", accessToken);
paramInfo.put("url", url);
paramInfo.put("miniprogram", miniprogram);
paramInfo.put("oweCarUrl", oweCarUrl);
--
Gitblit v1.8.0