|
@@ -3,6 +3,8 @@ package com.usoftchina.smartschool.wechat.service;
|
|
|
import com.rabbitmq.client.Channel;
|
|
import com.rabbitmq.client.Channel;
|
|
|
|
|
|
|
|
import com.usoftchina.smartschool.base.Result;
|
|
import com.usoftchina.smartschool.base.Result;
|
|
|
|
|
+import com.usoftchina.smartschool.wechat.auth.context.TransfersContextHodler;
|
|
|
|
|
+import com.usoftchina.smartschool.wechat.dto.MessageInfoDTO;
|
|
|
import com.usoftchina.smartschool.wechat.mapper.BrokerMessageLogMapper;
|
|
import com.usoftchina.smartschool.wechat.mapper.BrokerMessageLogMapper;
|
|
|
import com.usoftchina.smartschool.wechat.po.MessageInfo;
|
|
import com.usoftchina.smartschool.wechat.po.MessageInfo;
|
|
|
import com.usoftchina.smartschool.wechat.po.MessagePackage;
|
|
import com.usoftchina.smartschool.wechat.po.MessagePackage;
|
|
@@ -60,6 +62,8 @@ public class ReceiveService {
|
|
|
int count = 0;
|
|
int count = 0;
|
|
|
for (MessageInfo msg : data) {
|
|
for (MessageInfo msg : data) {
|
|
|
if (!msg.getSend()) {
|
|
if (!msg.getSend()) {
|
|
|
|
|
+ //处理openid,如果不存在openid,则直接忽略
|
|
|
|
|
+ getOpenId(msg);
|
|
|
result = wxPushService.wechatPush(msg);
|
|
result = wxPushService.wechatPush(msg);
|
|
|
if (result.isSuccess()) {
|
|
if (result.isSuccess()) {
|
|
|
msg.setSend(true);
|
|
msg.setSend(true);
|
|
@@ -92,4 +96,15 @@ public class ReceiveService {
|
|
|
//重新返回队列 重新消费
|
|
//重新返回队列 重新消费
|
|
|
//channel.basicNack(deliveryTag,false,true);
|
|
//channel.basicNack(deliveryTag,false,true);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ private void getOpenId(MessageInfo msg) {
|
|
|
|
|
+ String openId = msg.getTouser();
|
|
|
|
|
+ Long school = TransfersContextHodler.getSchoolId();
|
|
|
|
|
+ if (msg.getUserType() == MessageInfoDTO.UserType.PARENT) {
|
|
|
|
|
+ openId = brokerMessageLogMapper.SelectParentOpenId(msg.getTouser(), school);
|
|
|
|
|
+ }else if(msg.getUserType() == MessageInfoDTO.UserType.TEACHER) {
|
|
|
|
|
+ openId = brokerMessageLogMapper.SelectTeacherOpenId(msg.getTouser(), school);
|
|
|
|
|
+ }
|
|
|
|
|
+ msg.setTouser(openId);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|