From 4db93360932dcee2efddae48152a4ba1f9d7f28b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 19 一月 2021 12:02:20 +0800
Subject: [PATCH] 优化业主查询报错问题

---
 service-job/src/main/java/com/java110/job/task/wechat/WeChatPushMessageTemplate.java |   29 +++++++++++++++++++++++++----
 1 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/service-job/src/main/java/com/java110/job/task/wechat/WeChatPushMessageTemplate.java b/service-job/src/main/java/com/java110/job/task/wechat/WeChatPushMessageTemplate.java
index 923f471..0673e83 100644
--- a/service-job/src/main/java/com/java110/job/task/wechat/WeChatPushMessageTemplate.java
+++ b/service-job/src/main/java/com/java110/job/task/wechat/WeChatPushMessageTemplate.java
@@ -14,6 +14,7 @@
 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.community.INoticeInnerServiceSMO;
 import com.java110.intf.community.IRoomInnerServiceSMO;
@@ -273,7 +274,7 @@
             data.setFirst(new Content(noticeDto.getTitle()));
             data.setKeyword1(new Content(noticeDto.getTitle()));
             data.setKeyword2(new Content(noticeDto.getStartTime()));
-            data.setKeyword3(new Content(noticeDto.getContext()));
+            data.setKeyword3(new Content(StringUtil.delHtmlTag(noticeDto.getContext())));
             data.setRemark(new Content("濡傛湁鐤戦棶璇疯仈绯荤浉鍏崇墿涓氫汉鍛�"));
             templateMessage.setData(data);
             templateMessage.setUrl(wechatUrl + noticeDto.getNoticeId());
@@ -290,6 +291,8 @@
         }
         ResponseEntity<String> paramOut = outRestTemplate.getForEntity(url, String.class);
 
+        logger.info("鑾峰彇鐢ㄦ埛杩斿洖:{}", paramOut);
+
         if (paramOut.getStatusCode() != HttpStatus.OK) {
             throw new IllegalArgumentException(paramOut.getBody());
         }
@@ -298,10 +301,21 @@
         if (paramOutObj.containsKey("errcode")) {
             throw new IllegalArgumentException(paramOut.getBody());
         }
+
+        if (!paramOutObj.containsKey("data")) {
+            return;
+        }
         JSONObject dataObj = paramOutObj.getJSONObject("data");
         JSONArray openids = dataObj.getJSONArray("openid");
         nextOpenid = paramOutObj.getString("next_openid");
-        String wechatUrl = MappingCache.getValue("OWNER_WECHAT_URL") + "/#/pages/notice/detail/detail?noticeId=";
+        String wechatUrl = MappingCache.getValue("OWNER_WECHAT_URL");
+        Miniprogram miniprogram = null;
+        if (wechatUrl.startsWith("https://") || wechatUrl.startsWith("http://")) {
+
+        } else {
+            miniprogram = new Miniprogram();
+            miniprogram.setAppid(wechatUrl);
+        }
         for (int openIndex = 0; openIndex < openids.size(); openIndex++) {
             String openId = openids.getString(openIndex);
             Data data = new Data();
@@ -311,10 +325,17 @@
             data.setFirst(new Content(noticeDto.getTitle()));
             data.setKeyword1(new Content(noticeDto.getTitle()));
             data.setKeyword2(new Content(noticeDto.getStartTime()));
-            data.setKeyword3(new Content(noticeDto.getContext()));
+            data.setKeyword3(new Content(StringUtil.delHtmlTag(noticeDto.getContext())));
             data.setRemark(new Content("濡傛湁鐤戦棶璇疯仈绯荤浉鍏崇墿涓氫汉鍛�"));
             templateMessage.setData(data);
-            templateMessage.setUrl(wechatUrl + noticeDto.getNoticeId());
+            if (!StringUtil.isEmpty(wechatUrl)) {
+                if (miniprogram == null) {
+                    templateMessage.setUrl(wechatUrl + "/#/pages/notice/detail/detail?noticeId=" + noticeDto.getNoticeId());
+                } else {
+                    miniprogram.setPagepath("/pages/notice/detail/detail?noticeId=" + noticeDto.getNoticeId());
+                    templateMessage.setMiniprogram(miniprogram);
+                }
+            }
             logger.info("鍙戦�佹ā鏉挎秷鎭唴瀹�:{}", JSON.toJSONString(templateMessage));
             ResponseEntity<String> responseEntity = outRestTemplate.postForEntity(sendMsgUrl + accessToken, JSON.toJSONString(templateMessage), String.class);
             logger.info("寰俊妯℃澘杩斿洖鍐呭:{}", responseEntity);

--
Gitblit v1.8.0