|
|
@@ -27,6 +27,7 @@ import com.goafanti.common.model.User;
|
|
|
import com.goafanti.core.mybatis.BaseMybatisDao;
|
|
|
import com.goafanti.core.mybatis.page.Pagination;
|
|
|
import com.goafanti.core.shiro.token.TokenManager;
|
|
|
+import com.goafanti.message.JGMessageHelper;
|
|
|
import com.goafanti.message.bo.MessageBo;
|
|
|
import com.goafanti.message.bo.MessageListBo;
|
|
|
import com.goafanti.message.enums.ConsumerType;
|
|
|
@@ -42,6 +43,8 @@ public class MessageServiceImpl extends BaseMybatisDao<MessageFromSystemMapper>
|
|
|
private MessageProducerMapper messageProducerMapper;
|
|
|
@Autowired
|
|
|
private JpushEasemobAccountMapper jpushEasemobAccountMapper;
|
|
|
+ @Autowired
|
|
|
+ private JGMessageHelper jgMessageHelper;
|
|
|
@Override
|
|
|
public String selectSendUser(Map<Integer, String> selectMap,Integer type) {
|
|
|
if(selectMap.containsKey(ConsumerType.PERSON_CUSTOMER_RETAIL.getTypeCode())){ //客户散户
|
|
|
@@ -151,36 +154,60 @@ public class MessageServiceImpl extends BaseMybatisDao<MessageFromSystemMapper>
|
|
|
mfs.setProducerId(admin.getId());
|
|
|
}
|
|
|
messageFromSystemMapper.insert(mfs);
|
|
|
- List<MessageProducer> target = new ArrayList<MessageProducer>();
|
|
|
+ List<MessageProducer> producerTarget = new ArrayList<MessageProducer>();
|
|
|
+ List<MessageBo> sendTarget = new ArrayList<MessageBo>();
|
|
|
String[] cids;
|
|
|
if(subject == SubjectType.KE_HU.getTypeCode()){
|
|
|
String tmp = selectSendUser(targetMap,targetType);
|
|
|
if(tmp !=null){
|
|
|
cids = tmp.split(",");
|
|
|
MessageProducer mp;
|
|
|
+ MessageBo bo;
|
|
|
for(String cid : cids){
|
|
|
mp = new MessageProducer();
|
|
|
mp.setId(UUID.randomUUID().toString());
|
|
|
mp.setMessageId(mfs.getId());
|
|
|
mp.setConsumerId(cid);
|
|
|
- target.add(mp);
|
|
|
+ producerTarget.add(mp);
|
|
|
+
|
|
|
+ bo = new MessageBo();
|
|
|
+ bo.setMessageId(mfs.getId());
|
|
|
+ bo.setMessageTitle(mfs.getTitle());
|
|
|
+ bo.setMessageBody(mfs.getBody());
|
|
|
+ bo.setResourceId(mfs.getResourceId());
|
|
|
+ bo.setResourceType(String.valueOf(mfs.getResourceType()));
|
|
|
+ bo.setRegistrationId(cid);
|
|
|
+ sendTarget.add(bo);
|
|
|
}
|
|
|
}
|
|
|
- if(target.size()>0) insertBatchProducer(target);
|
|
|
+ if(producerTarget.size()>0) insertBatchProducer(producerTarget);
|
|
|
+ //推送消息
|
|
|
}else if(subject == SubjectType.YUN_YING.getTypeCode()){
|
|
|
String tmp = selectSendUser(targetMap,targetType);
|
|
|
if(tmp !=null){
|
|
|
cids = tmp.split(",");
|
|
|
MessageProducer mp;
|
|
|
+ MessageBo bo;
|
|
|
for(String cid : cids){
|
|
|
mp = new MessageProducer();
|
|
|
mp.setId(UUID.randomUUID().toString());
|
|
|
mp.setMessageId(mfs.getId());
|
|
|
mp.setConsumerId(cid);
|
|
|
- target.add(mp);
|
|
|
+ producerTarget.add(mp);
|
|
|
+
|
|
|
+ bo = new MessageBo();
|
|
|
+ bo.setMessageId(mfs.getId());
|
|
|
+ bo.setMessageTitle(mfs.getTitle());
|
|
|
+ bo.setMessageBody(mfs.getBody());
|
|
|
+ bo.setResourceId(mfs.getResourceId());
|
|
|
+ bo.setResourceType(String.valueOf(mfs.getResourceType()));
|
|
|
+ bo.setRegistrationId(cid);
|
|
|
+ sendTarget.add(bo);
|
|
|
}
|
|
|
}
|
|
|
- if(target.size()>0) insertBatchProducer(target);
|
|
|
+ if(producerTarget.size()>0) insertBatchProducer(producerTarget);
|
|
|
+ //推送消息
|
|
|
+ if(sendTarget.size()>0) jgMessageHelper.sendSystemMessage(sendTarget);
|
|
|
}
|
|
|
return 1;
|
|
|
}
|
|
|
@@ -192,6 +219,7 @@ public class MessageServiceImpl extends BaseMybatisDao<MessageFromSystemMapper>
|
|
|
List<MessageFromSystem> mfsList = selectRecommend(sourceMap, sourceType);
|
|
|
List<MessageProducer> producerTarget = new ArrayList<MessageProducer>();
|
|
|
List<MessageFromSystem> messageTarget = new ArrayList<MessageFromSystem>();
|
|
|
+ List<MessageBo> sendTarget = new ArrayList<MessageBo>();
|
|
|
if(mfsList != null && mfsList.size()>0){
|
|
|
MessageFromSystem message = null;
|
|
|
for(MessageFromSystem mfs : mfsList){
|
|
|
@@ -218,6 +246,7 @@ public class MessageServiceImpl extends BaseMybatisDao<MessageFromSystemMapper>
|
|
|
//插入消息推送表
|
|
|
if(subject == SubjectType.KE_HU.getTypeCode()||subject == SubjectType.TUI_JIAN.getTypeCode()){ //只推客户
|
|
|
MessageProducer mp = null;
|
|
|
+ MessageBo bo = null;
|
|
|
String tmp = selectSendUser(targetMap,targetType);
|
|
|
String[] cids = null;
|
|
|
if(tmp != null){
|
|
|
@@ -230,6 +259,15 @@ public class MessageServiceImpl extends BaseMybatisDao<MessageFromSystemMapper>
|
|
|
mp.setCreateTime(createTime);
|
|
|
mp.setMessageId(messageId);
|
|
|
producerTarget.add(mp);
|
|
|
+
|
|
|
+ bo = new MessageBo();
|
|
|
+ bo.setMessageId(messageId);
|
|
|
+ bo.setMessageTitle(message.getTitle());
|
|
|
+ bo.setMessageBody(message.getBody());
|
|
|
+ bo.setResourceId(message.getResourceId());
|
|
|
+ bo.setResourceType(String.valueOf(message.getResourceType()));
|
|
|
+ bo.setRegistrationId(cid);
|
|
|
+ sendTarget.add(bo);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -237,14 +275,16 @@ public class MessageServiceImpl extends BaseMybatisDao<MessageFromSystemMapper>
|
|
|
//批量插入
|
|
|
if(messageTarget.size()>0) messageFromSystemMapper.insertBatchMessage(messageTarget);
|
|
|
if(producerTarget.size()>0) messageFromSystemMapper.insertBatchProducer(producerTarget);
|
|
|
+ //推送消息
|
|
|
+ if(sendTarget.size()>0) jgMessageHelper.sendSystemMessage(sendTarget);
|
|
|
return 1;
|
|
|
}
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<MessageBo> selectSendMessage(String uid) {
|
|
|
- return messageFromSystemMapper.selectSendMessage(uid);
|
|
|
+ public List<MessageBo> selectSyncMessage(String uid) {
|
|
|
+ return messageFromSystemMapper.selectSyncMessage(uid);
|
|
|
}
|
|
|
|
|
|
@Override
|