diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java index 2a525fa7c0..a59a55e67e 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java @@ -36,11 +36,12 @@ public interface WxmpResiUserSubscribeDao extends BaseDao msgList) { logger.info("待发送订阅消息数量:{}", msgList.size()); + if (!(msgList.size()>NumConstant.ZERO)){ + throw new RenException("待发送消息不能为空"); + } int succecssCount = 0; +// 获取templateId + CustomerTemplateListFormDTO customerTemplateListFormDTO = new CustomerTemplateListFormDTO(); + customerTemplateListFormDTO.setCustomerId(msgList.get(0).getCustomerId()); + customerTemplateListFormDTO.setPublicId(WxmpMessageConstant.TEMPLATE_TYPE); + List customerTemplateListResultDTOS = customerTemplateList(customerTemplateListFormDTO); + for (WxSubscribeMessageFormDTO msg : msgList) { try { String userId = msg.getUserId(); @@ -142,7 +151,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { throw new WxSubscribeException("clientType有误", "", openId); } } catch (Exception e) { - throw new WxSubscribeException("连接User服务失败", "", ""); + throw new WxSubscribeException("连接User服务失败"+e.getMessage(), "", ""); } if (StringUtils.isBlank(openId)) { @@ -162,7 +171,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { try { authorizerRefreshToken = wxmpMessageRedis.getAuthorizerRefreshToken(key.toString()); } catch (Exception e) { - throw new WxSubscribeException("连接缓存服务器失败", "", openId); + throw new WxSubscribeException("连接缓存服务器失败"+e.getMessage(), "", openId); } String accessToken = (String) authorizerRefreshToken.get(WxmpMessageConstant.AUTHORIZER_ACCESS_TOKEN); if (StringUtils.isBlank(accessToken)) { @@ -170,15 +179,6 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { } //获取模板id -// if (WxmpMessageConstant.RESI.equals(clientType)) { -// templateId = wxmpResiUserSubscribeDao.getResiSubscribeTemplateId(openId, customerId); -// } else if (WxmpMessageConstant.GOV_DB.equals(clientType)) { -// templateId = wxmpWorkUserSubscribeDao.getWorkSubscribeTemplateId(openId, customerId); -// } - CustomerTemplateListFormDTO customerTemplateListFormDTO = new CustomerTemplateListFormDTO(); - customerTemplateListFormDTO.setCustomerId(customerId); - customerTemplateListFormDTO.setPublicId(WxmpMessageConstant.TEMPLATE_TYPE); - List customerTemplateListResultDTOS = customerTemplateList(customerTemplateListFormDTO); if (customerTemplateListResultDTOS.size() > NumConstant.ZERO) { for (CustomerTemplateListResultDTO customerTemplateListResultDTO : customerTemplateListResultDTOS) { if (WxmpMessageConstant.GOV_REDIS.equals(customerTemplateListResultDTO.getClientType())){ @@ -197,9 +197,9 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { //判断用户是否有次数 Integer count = null; if (WxmpMessageConstant.RESI.equals(clientType)) { - count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId); + count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId,userId); } else if (WxmpMessageConstant.GOV_DB.equals(clientType)) { - count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId); + count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId,userId); } if (count == null) { //用户未订阅 diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml index 842e3a9e70..52d7fd71fc 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml @@ -12,6 +12,7 @@ and customer_id = #{customerId} and template_id = #{templateId} and wx_open_id = #{openId} + and user_id = #{userId} and wx_subscribe_status = 'subscribe' diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml index b1e092a166..cd25e8c5d2 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml @@ -18,8 +18,10 @@ from Wxmp_Work_User_Subscribe where del_flag =0 + and customer_id = #{customerId} and template_id = #{templateId} and wx_open_id = #{openId} + and user_id = #{userId} and wx_subscribe_status = 'subscribe'