Commit dd03fcb5 authored by shiyu's avatar shiyu

消息格式变化

parent 49f66620
...@@ -11,6 +11,7 @@ import com.wwdz.ch.core.util.RedisUtils; ...@@ -11,6 +11,7 @@ import com.wwdz.ch.core.util.RedisUtils;
import com.wwdz.ch.db.dao.FollowFansRecordDao; import com.wwdz.ch.db.dao.FollowFansRecordDao;
import com.wwdz.ch.db.domain.FollowFansRecord; import com.wwdz.ch.db.domain.FollowFansRecord;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto; import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.wx.entity.MessageContentText;
import com.wwdz.ch.wx.entity.request.MessageRequestDto; import com.wwdz.ch.wx.entity.request.MessageRequestDto;
import com.wwdz.ch.wx.entity.vo.FollowFansRecordVo; import com.wwdz.ch.wx.entity.vo.FollowFansRecordVo;
import com.wwdz.ch.wx.service.FollowFansRecordService; import com.wwdz.ch.wx.service.FollowFansRecordService;
...@@ -18,6 +19,7 @@ import com.wwdz.ch.wx.service.MessageService; ...@@ -18,6 +19,7 @@ import com.wwdz.ch.wx.service.MessageService;
import com.wwdz.ch.wx.util.StringUtil; import com.wwdz.ch.wx.util.StringUtil;
import com.xxdxxs.utils.DateUtils; import com.xxdxxs.utils.DateUtils;
import com.xxdxxs.utils.EntityMapper; import com.xxdxxs.utils.EntityMapper;
import com.xxdxxs.utils.JsonUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -78,7 +80,12 @@ public class FollowFansRecordServiceImpl implements FollowFansRecordService { ...@@ -78,7 +80,12 @@ public class FollowFansRecordServiceImpl implements FollowFansRecordService {
messageRequestDto.setSenderId(dto.getFansId()); messageRequestDto.setSenderId(dto.getFansId());
messageRequestDto.setReceiverId(dto.getFollowerId()); messageRequestDto.setReceiverId(dto.getFollowerId());
messageRequestDto.setType(MessageEnum.TypeEnum.FOLLOW.getCode()); messageRequestDto.setType(MessageEnum.TypeEnum.FOLLOW.getCode());
messageRequestDto.setContent("关注了您");
MessageContentText messageContentText = new MessageContentText();
messageContentText.setId(dto.getFansId());
messageContentText.setIdType(MessageEnum.ContentIdTypeEnum.USERID.getCode());
messageContentText.setText("关注了您");
messageRequestDto.setContent(JsonUtils.from(messageContentText));
messageService.add(messageRequestDto); messageService.add(messageRequestDto);
//五分钟内再次关注不会发送消息 //五分钟内再次关注不会发送消息
redisUtils.set(messageKey, LocalDateTime.now(), 60 * 5); redisUtils.set(messageKey, LocalDateTime.now(), 60 * 5);
......
package com.wwdz.ch.wx.impl; package com.wwdz.ch.wx.impl;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.wwdz.ch.core.consts.FollowFansEnum;
import com.wwdz.ch.core.consts.MessageEnum; import com.wwdz.ch.core.consts.MessageEnum;
import com.wwdz.ch.core.consts.ResultCode; import com.wwdz.ch.core.consts.ResultCode;
import com.wwdz.ch.core.type.PageSearchResult; import com.wwdz.ch.core.type.PageSearchResult;
...@@ -16,14 +17,18 @@ import com.wwdz.ch.db.domain.MessageContent; ...@@ -16,14 +17,18 @@ import com.wwdz.ch.db.domain.MessageContent;
import com.wwdz.ch.db.domain.MessageRecord; import com.wwdz.ch.db.domain.MessageRecord;
import com.wwdz.ch.db.dto.MessageRecordRequestDto; import com.wwdz.ch.db.dto.MessageRecordRequestDto;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto; import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.wx.entity.MessageContentText;
import com.wwdz.ch.wx.entity.request.MessageRequestDto; import com.wwdz.ch.wx.entity.request.MessageRequestDto;
import com.wwdz.ch.wx.entity.vo.FollowFansRecordVo; import com.wwdz.ch.wx.entity.vo.FollowFansRecordVo;
import com.wwdz.ch.wx.entity.vo.MessageVo; import com.wwdz.ch.wx.entity.vo.MessageVo;
import com.wwdz.ch.wx.service.FavoritesService;
import com.wwdz.ch.wx.service.MessageService; import com.wwdz.ch.wx.service.MessageService;
import com.xxdxxs.entity.Entity; import com.xxdxxs.entity.Entity;
import com.xxdxxs.service.FormHandler; import com.xxdxxs.service.FormHandler;
import com.xxdxxs.utils.EntityMapper; import com.xxdxxs.utils.EntityMapper;
import com.xxdxxs.utils.JsonUtils;
import com.xxdxxs.validation.Validator; import com.xxdxxs.validation.Validator;
import org.apache.logging.log4j.spi.ObjectThreadContextMap;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -62,6 +67,9 @@ public class MessageServiceImpl implements MessageService { ...@@ -62,6 +67,9 @@ public class MessageServiceImpl implements MessageService {
@Autowired @Autowired
RedisUtils redisUtils; RedisUtils redisUtils;
@Autowired
FavoritesService favoritesService;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
...@@ -141,31 +149,48 @@ public class MessageServiceImpl implements MessageService { ...@@ -141,31 +149,48 @@ public class MessageServiceImpl implements MessageService {
time = new SimpleDateFormat("yyyy-MM-dd").format(messageCreateTime); time = new SimpleDateFormat("yyyy-MM-dd").format(messageCreateTime);
} }
Map<String, Object> contentMap = new HashMap<>(); Map<String, Object> contentMap = new HashMap<>();
String content = messageContentMap.get(m.getMessageId()).getContent();
MessageContentText messageContentText = JsonUtils.to(content, MessageContentText.class);
if (MessageEnum.TypeEnum.SHARE.getCode() == m.getType().intValue()) { if (MessageEnum.TypeEnum.SHARE.getCode() == m.getType().intValue()) {
long itemId = Long.valueOf(messageContentMap.get(m.getMessageId()).getContent()); Object image = null;
Item item = itemDao.findDetails(itemId); if (MessageEnum.ContentIdTypeEnum.COLLECTION_BOOK.getCode() == messageContentText.getIdType().intValue()) {
contentMap.put("item", MediaUtil.getHomePageImage(item.getImages(), item.getVideos())); image = favoritesService.getFavoritesImage(messageContentText.getId());
contentMap.put("msg", "分享了您的藏品"); } else if (MessageEnum.ContentIdTypeEnum.ITEM.getCode() == messageContentText.getIdType().intValue()){
Item item = itemDao.findDetails(messageContentText.getId());
image = MediaUtil.getHomePageImage(item.getImages(), item.getVideos());
}
contentMap.put("image", image);
contentMap.put("id", messageContentText.getId());
contentMap.put("idType", messageContentText.getIdType());
contentMap.put("msg", messageContentText.getText());
} else if (MessageEnum.TypeEnum.COLLECT.getCode() == m.getType().intValue()) { } else if (MessageEnum.TypeEnum.COLLECT.getCode() == m.getType().intValue()) {
long itemId = Long.valueOf(messageContentMap.get(m.getMessageId()).getContent()); contentMap.put("id", messageContentText.getId());
Item item = itemDao.findDetails(itemId); contentMap.put("idType", messageContentText.getIdType());
contentMap.put("item", MediaUtil.getHomePageImage(item.getImages(), item.getVideos())); Object image = null;
contentMap.put("msg", "收藏了您的藏品"); if (MessageEnum.ContentIdTypeEnum.COLLECTION_BOOK.getCode() == messageContentText.getIdType().intValue()) {
image =favoritesService.getFavoritesImage(messageContentText.getId());
} else if (MessageEnum.ContentIdTypeEnum.ITEM.getCode() == messageContentText.getIdType().intValue()){
Item item = itemDao.findDetails(messageContentText.getId());
image = MediaUtil.getHomePageImage(item.getImages(), item.getVideos());
}
contentMap.put("image", image);
contentMap.put("msg", messageContentText.getText());
} }
else if (MessageEnum.TypeEnum.FOLLOW.getCode() == m.getType().intValue()) { else if (MessageEnum.TypeEnum.FOLLOW.getCode() == m.getType().intValue()) {
contentMap.put("msg", "关注了您"); contentMap.put("msg", messageContentText.getText());
//查询关注的人 //查询关注的人
FollowFansRecordRequestDto dto = new FollowFansRecordRequestDto(); FollowFansRecordRequestDto dto = new FollowFansRecordRequestDto();
dto.setFansId(messageRequestDto.getReceiverId()); dto.setFansId(messageRequestDto.getReceiverId());
List<FollowFansRecord> followFansRecordList = followFansRecordDao.findList(dto); List<FollowFansRecord> followFansRecordList = followFansRecordDao.findList(dto);
List<Long> followerIdList = followFansRecordList.stream().map(FollowFansRecord::getFollowerId).collect(Collectors.toList()); List<Long> followerIdList = followFansRecordList.stream().map(FollowFansRecord::getFollowerId).collect(Collectors.toList());
if (followerIdList.contains(messageContentMap.get(m.getMessageId()).getSenderId())) { if (followerIdList.contains(messageContentMap.get(m.getMessageId()).getSenderId())) {
contentMap.put("relation", "互相关注"); contentMap.put("relation", FollowFansEnum.RelationEnum.BOTH_FOLLOWED.getDes());
contentMap.put("isFollowed", true); contentMap.put("isFollowed", true);
int id = followFansRecordList.stream().filter(f->f.getFollowerId().longValue() == messageContentMap.get(m.getMessageId()).getSenderId()).map(FollowFansRecord::getId).findFirst().get(); int id = followFansRecordList.stream().filter(f->f.getFollowerId().longValue() == messageContentMap.get(m.getMessageId()).getSenderId()).map(FollowFansRecord::getId).findFirst().get();
contentMap.put("id", id); contentMap.put("id", id);
contentMap.put("idType", messageContentText.getIdType());
} else { } else {
contentMap.put("relation", "回关"); contentMap.put("relation", FollowFansEnum.RelationEnum.BACK_FOLLOWED.getDes());
contentMap.put("isFollowed", false); contentMap.put("isFollowed", false);
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment