From cfcbad727fb115b62202412da4a110df0a6ee726 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期五, 24 九月 2021 18:27:00 +0800
Subject: [PATCH] 身份认证增加订阅通知

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComPensionAuthRecordServiceImpl.java |   29 +++++++++++++++++++++++++++++
 1 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComPensionAuthRecordServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComPensionAuthRecordServiceImpl.java
index 4c5c62b..e291b33 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComPensionAuthRecordServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComPensionAuthRecordServiceImpl.java
@@ -10,10 +10,14 @@
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
 
 import javax.annotation.Resource;
 
+import com.panzhihua.common.utlis.WxUtil;
+import com.panzhihua.common.utlis.WxXCXTempSend;
+import com.panzhihua.service_community.dao.ComActActSignDAO;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
@@ -83,6 +87,8 @@
     private ComPensionAuthStatisticsDAO comPensionAuthStatisticsDAO;
     @Resource
     private SysConfMapper sysConfDao;
+    @Resource
+    private ComActActSignDAO comActActSignDAO;
     @Value("${domain.aesKey:}")
     private String aesKey;
 
@@ -125,6 +131,9 @@
         BeanUtils.copyProperties(comPensionAuthRecordVO, comPensionAuthRecordDO);
         if (comPensionAuthRecordVO.getApprovalStatus().equals(PASS_THROUGH.getStatus())) {
             comPensionAuthRecordDO.setAuthStatus(CERTIFIED.getStatus());
+            sendAuthSubscribe(comPensionAuthRecordDO.getSubmitUserId(), "养老认证", "认证成功!");
+        } else {
+            sendAuthSubscribe(comPensionAuthRecordDO.getSubmitUserId(), "养老认证", comPensionAuthRecordVO.getRejectReason());
         }
         comPensionAuthRecordDO.setApprovalDate(new Date());
         int nub = comPensionAuthRecordDAO.updateById(comPensionAuthRecordDO);
@@ -132,6 +141,23 @@
             return R.fail("审核失败");
         }
         return R.ok();
+    }
+
+    private void sendAuthSubscribe(Long userId, String name, String result) {
+        //发送订阅通知
+        Map<String, String> map = comActActSignDAO.getUserOpenId(userId);
+        if (map != null) {
+            String openid = map.get("openid");
+            try {
+                WxXCXTempSend util = new WxXCXTempSend();
+                String accessToken = util.getAppAccessToken();
+                WxUtil.sendSubscribeRZSH(openid, accessToken, name,
+                        DateUtils.format(new Date(), DateUtils.ymdhms_format),
+                        result);
+            } catch (Exception e) {
+                log.error("推送审核状态订阅消息失败,失败原因:" + e.getMessage());
+            }
+        }
     }
 
     @Override
@@ -456,6 +482,9 @@
         if (this.baseMapper.insert(comPensionAuthRecordDO) < 0) {
             return R.fail("认证失败,请重新尝试");
         }
+        if (addIdentityAuthDTO.getAuthMethod().intValue() == FACE_AUTH.getMethod()) {
+            sendAuthSubscribe(comPensionAuthRecordDO.getSubmitUserId(), "养老认证", "认证成功!");
+        }
         return R.ok();
     }
 

--
Gitblit v1.7.1