Message.java 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  1. package com.uas.ps.message.domain;
  2. import java.io.Serializable;
  3. import java.util.Date;
  4. import java.util.Set;
  5. import javax.persistence.CascadeType;
  6. import javax.persistence.Column;
  7. import javax.persistence.Entity;
  8. import javax.persistence.FetchType;
  9. import javax.persistence.GeneratedValue;
  10. import javax.persistence.GenerationType;
  11. import javax.persistence.Id;
  12. import javax.persistence.JoinColumn;
  13. import javax.persistence.JoinTable;
  14. import javax.persistence.ManyToMany;
  15. import javax.persistence.OrderBy;
  16. import javax.persistence.Table;
  17. import org.hibernate.annotations.Cache;
  18. import org.hibernate.annotations.CacheConcurrencyStrategy;
  19. /**
  20. * 消息
  21. * Created by wangyc on 2018/1/13.
  22. *
  23. * @version 2018/1/13 11:26 wangyc
  24. */
  25. @Entity
  26. @Table(name = "messages")
  27. public class Message implements Serializable {
  28. private static final long serialVersionUID = -1150575839820149569L;
  29. @Id
  30. @Column(name = "ms_id")
  31. @GeneratedValue(strategy = GenerationType.AUTO)
  32. private Long id;
  33. /**
  34. * 消息类型
  35. */
  36. @Column(name = "ms_type")
  37. private String type;
  38. /**
  39. * 消息内容
  40. */
  41. @Column(name = "ms_content")
  42. private String content;
  43. /**
  44. * 备注
  45. */
  46. @Column(name = "ms_remark")
  47. private String remark;
  48. /**
  49. * 消息来源id
  50. */
  51. @Column(name = "ms_sourceid")
  52. private Long sourceId;
  53. /**
  54. * 消息接受者json信息
  55. */
  56. @Column(name = "ms_receiver", columnDefinition = "TEXT")
  57. private String receiver;
  58. /**
  59. * 消息接收者uu
  60. */
  61. @Column(name = "ms_receiveruu")
  62. private Long receiverUu;
  63. /**
  64. * 消息接收者企业uu
  65. */
  66. @Column(name = "ms_receiverenuu")
  67. private Long receiverEnuu;
  68. /**
  69. * 消息发送者json信息
  70. */
  71. @Column(name = "ms_sender", columnDefinition = "TEXT")
  72. private String sender;
  73. /**
  74. * 消息发送者
  75. */
  76. @Column(name = "ms_senderuu")
  77. private Long senderUu;
  78. /**
  79. * 消息发送者企业uu
  80. */
  81. @Column(name = "ms_senderenuu")
  82. private Long senderEnuu;
  83. /**
  84. * 阅读状态
  85. * 1 已阅
  86. * 0 未读
  87. */
  88. @Column(name = "ms_isread")
  89. private Short isRead;
  90. /**
  91. * 来源应用id
  92. */
  93. @Column(name = "ms_producerApp")
  94. private Long producerApp;
  95. /**
  96. * 消费类型
  97. */
  98. @Column(name = "ms_consumeType")
  99. private String consumeType;
  100. /**
  101. * 生成时间
  102. */
  103. @Column(name = "ms_createTime")
  104. private Date createTime;
  105. /**
  106. * 推送方式类型
  107. */
  108. @Column(name = "ms_smsType")
  109. private String smsType;
  110. /**
  111. * 邮件模板id
  112. */
  113. @Column(name = "ms_mailtemplate")
  114. private String mailTemplate;
  115. /**
  116. * 短息模板id
  117. */
  118. @Column(name = "ms_smtemplate")
  119. private String smTemplate;
  120. /**
  121. * 是否已推送
  122. * 1 已阅
  123. * 0 未读
  124. */
  125. @Column(name = "ms_issent")
  126. private Short isSent;
  127. /**
  128. * 接收应用
  129. */
  130. @ManyToMany(cascade = { CascadeType.REFRESH, CascadeType.REMOVE }, fetch = FetchType.EAGER)
  131. @JoinTable(name = "message$consumeapp", joinColumns = @JoinColumn(name = "ms_id", referencedColumnName = "ms_id"), inverseJoinColumns = @JoinColumn(name = "app_id", referencedColumnName = "app_id"))
  132. @OrderBy("id")
  133. @Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
  134. private Set<App> consumerApp;
  135. public Long getId() {
  136. return id;
  137. }
  138. public void setId(Long id) {
  139. this.id = id;
  140. }
  141. public String getType() {
  142. return type;
  143. }
  144. public void setType(String type) {
  145. this.type = type;
  146. }
  147. public String getContent() {
  148. return content;
  149. }
  150. public void setContent(String content) {
  151. this.content = content;
  152. }
  153. public String getRemark() {
  154. return remark;
  155. }
  156. public void setRemark(String remark) {
  157. this.remark = remark;
  158. }
  159. public Long getSourceId() {
  160. return sourceId;
  161. }
  162. public void setSourceId(Long sourceId) {
  163. this.sourceId = sourceId;
  164. }
  165. public Long getReceiverUu() {
  166. return receiverUu;
  167. }
  168. public void setReceiverUu(Long receiverUu) {
  169. this.receiverUu = receiverUu;
  170. }
  171. public Long getReceiverEnuu() {
  172. return receiverEnuu;
  173. }
  174. public void setReceiverEnuu(Long receiverEnuu) {
  175. this.receiverEnuu = receiverEnuu;
  176. }
  177. public String getReceiver() {
  178. return receiver;
  179. }
  180. public void setReceiver(String receiver) {
  181. this.receiver = receiver;
  182. }
  183. public Long getSenderUu() {
  184. return senderUu;
  185. }
  186. public void setSenderUu(Long senderUu) {
  187. this.senderUu = senderUu;
  188. }
  189. public Long getSenderEnuu() {
  190. return senderEnuu;
  191. }
  192. public void setSenderEnuu(Long senderEnuu) {
  193. this.senderEnuu = senderEnuu;
  194. }
  195. public String getSender() {
  196. return sender;
  197. }
  198. public void setSender(String sender) {
  199. this.sender = sender;
  200. }
  201. public Short getIsRead() {
  202. return isRead;
  203. }
  204. public void setIsRead(Short isRead) {
  205. this.isRead = isRead;
  206. }
  207. public Long getProducerApp() {
  208. return producerApp;
  209. }
  210. public void setProducerApp(Long producerApp) {
  211. this.producerApp = producerApp;
  212. }
  213. public String getConsumeType() {
  214. return consumeType;
  215. }
  216. public void setConsumeType(String consumeType) {
  217. this.consumeType = consumeType;
  218. }
  219. public Date getCreateTime() {
  220. return createTime;
  221. }
  222. public void setCreateTime(Date createTime) {
  223. this.createTime = createTime;
  224. }
  225. public String getSmsType() {
  226. return smsType;
  227. }
  228. public void setSmsType(String smsType) {
  229. this.smsType = smsType;
  230. }
  231. public String getMailTemplate() {
  232. return mailTemplate;
  233. }
  234. public void setMailTemplate(String mailTemplate) {
  235. this.mailTemplate = mailTemplate;
  236. }
  237. public String getSmTemplate() {
  238. return smTemplate;
  239. }
  240. public void setSmTemplate(String smTemplate) {
  241. this.smTemplate = smTemplate;
  242. }
  243. public Short getIsSent() {
  244. return isSent;
  245. }
  246. public void setIsSent(Short isSent) {
  247. this.isSent = isSent;
  248. }
  249. public Set<App> getConsumerApp() {
  250. return consumerApp;
  251. }
  252. public void setConsumerApp(Set<App> consumerApp) {
  253. this.consumerApp = consumerApp;
  254. }
  255. }