Your Name 4 years ago
parent
commit
4d7ca900ad

+ 4
- 1
src/main/java/com/huiju/estateagents/common/WxUtils.java View File

@@ -101,9 +101,12 @@ public class WxUtils {
101 101
         return service;
102 102
     }
103 103
 
104
-    public static String sendTemplateMessage(WxMpService mpService, String toUser, String templateId, String url, List<WxMpTemplateData> datas) throws WxErrorException {
104
+    public static String sendTemplateMessage(WxMpService mpService, String toUser, String templateId, String miniAppId, String miniPage, String url, List<WxMpTemplateData> datas) throws WxErrorException {
105
+        WxMpTemplateMessage.MiniProgram miniProgram = new WxMpTemplateMessage.MiniProgram(miniAppId, miniPage, true);
106
+
105 107
         WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()
106 108
                 .toUser(toUser)
109
+                .miniProgram(miniProgram)
107 110
                 .templateId(templateId)
108 111
                 .url(url)
109 112
                 .build();

+ 25
- 44
src/main/java/com/huiju/estateagents/property/service/impl/TpTicketServiceImpl.java View File

@@ -120,7 +120,7 @@ public class TpTicketServiceImpl extends ServiceImpl<TpTicketMapper, TpTicket> i
120 120
     WxUtils wxUtils;
121 121
 
122 122
     @Value("${wx.miniapp.ticket}")
123
-    String miniAppTicket;
123
+    String miniAppTicketPage;
124 124
 
125 125
     @Autowired
126 126
     private TaMpMiniappMapper taMpMiniappMapper;
@@ -394,52 +394,33 @@ public class TpTicketServiceImpl extends ServiceImpl<TpTicketMapper, TpTicket> i
394 394
 
395 395
         // 对应表数据
396 396
         TaMpInfo mpInfo = iTaMpInfoService.getByOrgId(ticket.getOrgId());
397
-
398 397
         TaMiniapp taMiniapp = iMiniAppService.getAppByOrg(mpInfo.getOrgId());
399
-
400
-        WxMpKefuMessage kefuMessage = WxMpKefuMessage.MINIPROGRAMPAGE().appId(taMiniapp.getMiniappId())
401
-                .toUser(person.getMpOpenid())
402
-                .title("您有一个新的工单待处理")
403
-                .pagePath(miniAppTicket + ticket.getId())
404
-                .thumbMediaId(mpInfo.getMiniappMedia())
405
-                .build();
398
+        TaMpTemplate mpTemplate = iTaMpTemplateService.getByCode(ticket.getOrgId(), CommConstant.TP_MESSAGE_TICKET);
399
+        if (null == mpTemplate) {
400
+            return;
401
+        }
406 402
 
407 403
         try {
408
-            mpService.getKefuService().sendKefuMessage(kefuMessage);
409
-        } catch (WxErrorException e) {
410
-            e.printStackTrace();
411
-
412
-            // 如果客服消息发送失败, 则发送普通模板消息
413
-//            List<TaMpTemplate> mpTemplateList = iTaMpTemplateService.getAvailableList(ticket.getOrgId(), CommConstant.TP_MESSAGE_TICKET);
414
-//            if (null == mpTemplateList || mpTemplateList.size() < 1) {
415
-//                return;
416
-//            }
417
-            TaMpTemplate mpTemplate = iTaMpTemplateService.getByCode(ticket.getOrgId(), CommConstant.TP_MESSAGE_TICKET);
418
-            if (null == mpTemplate) {
419
-                return;
420
-            }
421
-
422
-            try {
423
-                TaPerson propOwner = iTaPersonService.getById(ticket.getPersonId());
424
-                String message = String.format("业主电话: %s ; 报修内容: %s", propOwner.getPhone(), ticket.getTicketTitle());
425
-                String remark = String.format("请及时进入【%s】小程序进行处理", taMiniapp.getName());
426
-
427
-                WxUtils.sendTemplateMessage(mpService,
428
-                        person.getMpOpenid(),
429
-                        mpTemplate.getTemplateCode(),
430
-                        null,
431
-                        new ArrayList<WxMpTemplateData>(){{
432
-                            add(new WxMpTemplateData("first", "工单提醒"));
433
-                            add(new WxMpTemplateData("keyword1", "您有一个新的工单"));
434
-                            add(new WxMpTemplateData("keyword2", DateUtils.today()));
435
-                            add(new WxMpTemplateData("keyword3", message));
436
-                            add(new WxMpTemplateData("remark", remark));
437
-                        }}
438
-                );
439
-            } catch (Exception e2) {
440
-                e2.printStackTrace();
441
-            }
442
-
404
+            TaPerson propOwner = iTaPersonService.getById(ticket.getPersonId());
405
+            String message = String.format("业主电话: %s ; 报修内容: %s", propOwner.getPhone(), ticket.getTicketTitle());
406
+            String remark = String.format("请及时进入【%s】小程序进行处理", taMiniapp.getName());
407
+
408
+            WxUtils.sendTemplateMessage(mpService,
409
+                    person.getMpOpenid(),
410
+                    mpTemplate.getTemplateCode(),
411
+                    taMiniapp.getMiniappId(),
412
+                    miniAppTicketPage + ticket.getId(),
413
+                    null,
414
+                    new ArrayList<WxMpTemplateData>(){{
415
+                        add(new WxMpTemplateData("first", "工单提醒"));
416
+                        add(new WxMpTemplateData("keyword1", "您有一个新的工单"));
417
+                        add(new WxMpTemplateData("keyword2", DateUtils.today()));
418
+                        add(new WxMpTemplateData("keyword3", message));
419
+                        add(new WxMpTemplateData("remark", remark));
420
+                    }}
421
+            );
422
+        } catch (Exception e2) {
423
+            e2.printStackTrace();
443 424
         }
444 425
     }
445 426