ProjectPublishEvent.java 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package com.uas.console.donate.event;
  2. import com.uas.console.donate.model.Message;
  3. import com.uas.console.donate.model.MessageDetail;
  4. import com.uas.console.donate.model.Project;
  5. import java.util.List;
  6. /**
  7. * 发布项目时时生成消息事件
  8. * Created by dongbw
  9. * 2018年1月5日
  10. */
  11. public class ProjectPublishEvent extends PublishEvent<MessageDetail, Project> {
  12. /**
  13. *
  14. */
  15. private static final long serialVersionUID = 1L;
  16. public ProjectPublishEvent(List<Project> savedList) {
  17. super(savedList);
  18. }
  19. /**
  20. * 生成对应消息记录
  21. *
  22. * @param project 项目
  23. * @return 消息
  24. */
  25. @Override
  26. public MessageDetail release(Project project) {
  27. //TODO 新项目发布时,产生消息
  28. // 发起人UU
  29. Long userUU = project.getUserUU();
  30. // 类型
  31. String type = "消息提醒";
  32. // 来源表
  33. String table = "donate$project";
  34. // 来源id
  35. Long sourceId = project.getId();
  36. // url
  37. String url = "/project#/detail/" + project.getId();
  38. // 标题
  39. String title = "一元捐消息提醒";
  40. // 内容
  41. String context = "新项目发布:" + project.getName() + "(" + project.getCode() + ")";
  42. // 接收对象
  43. String receiver = "所有人";
  44. Message message = new Message(userUU, title, context, type, table, sourceId, url, receiver);
  45. MessageDetail messageDetail = new MessageDetail();
  46. messageDetail.setMessage(message);
  47. return messageDetail;
  48. }
  49. }