From b85a7a62ad8b3233391899350b8ca1cd5924c260 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 23 六月 2020 09:33:40 +0800
Subject: [PATCH] 优化 模板消息推送成功
---
service-job/src/main/java/com/java110/job/task/wechat/PublicWeChatPushMessageTemplate.java | 50 ++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 42 insertions(+), 8 deletions(-)
diff --git a/service-job/src/main/java/com/java110/job/task/wechat/PublicWeChatPushMessageTemplate.java b/service-job/src/main/java/com/java110/job/task/wechat/PublicWeChatPushMessageTemplate.java
index a9cdd0d..27e6c6b 100644
--- a/service-job/src/main/java/com/java110/job/task/wechat/PublicWeChatPushMessageTemplate.java
+++ b/service-job/src/main/java/com/java110/job/task/wechat/PublicWeChatPushMessageTemplate.java
@@ -3,19 +3,19 @@
import com.alibaba.fastjson.JSON;
import com.java110.core.factory.WechatFactory;
import com.java110.core.smo.fee.IFeeInnerServiceSMO;
+import com.java110.core.smo.smallWechatAttr.ISmallWechatAttrInnerServiceSMO;
import com.java110.core.smo.store.ISmallWeChatInnerServiceSMO;
import com.java110.core.smo.user.IOwnerAppUserInnerServiceSMO;
+import com.java110.dto.community.CommunityDto;
import com.java110.dto.fee.BillOweFeeDto;
import com.java110.dto.owner.OwnerAppUserDto;
import com.java110.dto.smallWeChat.SmallWeChatDto;
+import com.java110.dto.smallWechatAttr.SmallWechatAttrDto;
import com.java110.dto.task.TaskDto;
import com.java110.entity.wechat.Content;
import com.java110.entity.wechat.Data;
import com.java110.entity.wechat.PropertyFeeTemplateMessage;
import com.java110.job.quartz.TaskSystemQuartz;
-import com.java110.utils.cache.MappingCache;
-import com.java110.utils.constant.WechatConstant;
-import com.java110.utils.util.StringUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +47,9 @@
private ISmallWeChatInnerServiceSMO smallWeChatInnerServiceSMOImpl;
@Autowired
+ private ISmallWechatAttrInnerServiceSMO smallWechatAttrInnerServiceSMOImpl;
+
+ @Autowired
private IOwnerAppUserInnerServiceSMO ownerAppUserInnerServiceSMOImpl;
@Autowired
@@ -60,24 +63,55 @@
@Override
- protected void process(TaskDto taskDto) throws Exception {
+ protected void process(TaskDto taskDto) {
logger.debug("寮�濮嬫墽琛屽井淇℃ā鏉夸俊鎭帹閫�" + taskDto.toString());
- String templateId = MappingCache.getValue(WechatConstant.WECHAT_DOMAIN, WechatConstant.KEY_PROPERTY_FEE_TEMPLATE_ID);
+ // 鑾峰彇灏忓尯
+ List<CommunityDto> communityDtos = getAllCommunity();
- templateId = StringUtil.isEmpty(templateId) ? DEFAULT_TEMPLATE_ID : templateId;
+ for (CommunityDto communityDto : communityDtos) {
+ try {
+ publishMsg(taskDto, communityDto);
+ } catch (Exception e) {
+ logger.error("鎺ㄩ�佹秷鎭け璐�", e);
+ }
+ }
+ }
+
+ private void publishMsg(TaskDto taskDto, CommunityDto communityDto) throws Exception {
+
+//
+// String templateId = MappingCache.getValue(WechatConstant.WECHAT_DOMAIN, WechatConstant.KEY_PROPERTY_FEE_TEMPLATE_ID);
+//
+// templateId = StringUtil.isEmpty(templateId) ? DEFAULT_TEMPLATE_ID : templateId;
//鏌ヨ鍏紬鍙烽厤缃�
SmallWeChatDto smallWeChatDto = new SmallWeChatDto();
smallWeChatDto.setWeChatType("1100");
+ smallWeChatDto.setObjType(SmallWeChatDto.OBJ_TYPE_COMMUNITY);
+ smallWeChatDto.setObjId(communityDto.getCommunityId());
List<SmallWeChatDto> smallWeChatDtos = smallWeChatInnerServiceSMOImpl.querySmallWeChats(smallWeChatDto);
- if (smallWeChatDtos.size() <= 0 || smallWeChatDto == null) {
+ if (smallWeChatDto == null || smallWeChatDtos.size() <= 0) {
logger.info("鏈厤缃井淇″叕浼楀彿淇℃伅,瀹氭椂浠诲姟鎵ц缁撴潫");
return;
}
-
SmallWeChatDto weChatDto = smallWeChatDtos.get(0);
+
+
+ SmallWechatAttrDto smallWechatAttrDto = new SmallWechatAttrDto();
+ smallWechatAttrDto.setCommunityId(communityDto.getCommunityId());
+ smallWechatAttrDto.setWechatId(weChatDto.getWeChatId());
+ smallWechatAttrDto.setSpecCd(SmallWechatAttrDto.SPEC_CD_OWE_FEE_TEMPLATE);
+ List<SmallWechatAttrDto> smallWechatAttrDtos = smallWechatAttrInnerServiceSMOImpl.querySmallWechatAttrs(smallWechatAttrDto);
+
+ if (smallWechatAttrDtos == null || smallWechatAttrDtos.size() <= 0) {
+ logger.info("鏈厤缃井淇″叕浼楀彿娑堟伅妯℃澘");
+ return;
+ }
+
+ String templateId = smallWechatAttrDtos.get(0).getValue();
+
String accessToken = WechatFactory.getAccessToken(weChatDto.getAppId(), weChatDto.getAppSecret());
if (accessToken == null || accessToken == "") {
--
Gitblit v1.8.0