SysMessage.java 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. package com.aizuda.boot.modules.system.entity;
  2. import com.aizuda.core.ApiConstants;
  3. import com.aizuda.core.bean.SuperEntity;
  4. import com.aizuda.core.validation.Create;
  5. import com.baomidou.mybatisplus.annotation.FieldFill;
  6. import com.baomidou.mybatisplus.annotation.SqlCondition;
  7. import com.baomidou.mybatisplus.annotation.TableField;
  8. import com.baomidou.mybatisplus.annotation.TableName;
  9. import com.fasterxml.jackson.annotation.JsonFormat;
  10. import io.swagger.v3.oas.annotations.media.Schema;
  11. import jakarta.validation.constraints.NotNull;
  12. import jakarta.validation.constraints.PositiveOrZero;
  13. import jakarta.validation.constraints.Size;
  14. import lombok.Getter;
  15. import lombok.Setter;
  16. import java.util.Date;
  17. /**
  18. * 系统消息表
  19. *
  20. * @author 青苗
  21. * @since 2023-10-03
  22. */
  23. @Getter
  24. @Setter
  25. @Schema(name = "SysMessage", description = "系统消息表")
  26. @TableName("sys_message")
  27. public class SysMessage extends SuperEntity {
  28. /**
  29. * 创建人ID
  30. */
  31. @TableField(fill = FieldFill.INSERT)
  32. protected Long createId;
  33. /**
  34. * 创建人
  35. */
  36. @TableField(fill = FieldFill.INSERT, condition = SqlCondition.LIKE)
  37. protected String createBy;
  38. /**
  39. * 创建时间
  40. */
  41. @JsonFormat(pattern = ApiConstants.DATE_MM)
  42. @TableField(fill = FieldFill.INSERT)
  43. protected Date createTime;
  44. /**
  45. * 修改人
  46. */
  47. @TableField(fill = FieldFill.UPDATE)
  48. protected String updateBy;
  49. /**
  50. * 修改时间
  51. */
  52. @JsonFormat(pattern = ApiConstants.DATE_MM)
  53. @TableField(fill = FieldFill.UPDATE)
  54. protected Date updateTime;
  55. @Schema(description = "标题")
  56. @Size(max = 255)
  57. @TableField(condition = SqlCondition.LIKE)
  58. private String title;
  59. @Schema(description = "内容")
  60. @Size(max = 800)
  61. private String content;
  62. @Schema(description = "类别 0,通知 1,消息 2,待办")
  63. @NotNull(groups = Create.class)
  64. @PositiveOrZero
  65. private Integer category;
  66. @Schema(description = "接收人ID")
  67. @PositiveOrZero
  68. private Long userId;
  69. @Schema(description = "接收人")
  70. @Size(max = 50)
  71. private String username;
  72. @Schema(description = "已查看 0,否 1,是")
  73. @PositiveOrZero
  74. private Integer viewed;
  75. @Schema(description = "发送状态 0,未发送 1,成功 2,失败")
  76. @PositiveOrZero
  77. private Integer sendStatus;
  78. @Schema(description = "发送失败原因")
  79. @Size(max = 255)
  80. private String sendFailure;
  81. @Schema(description = "发送时间")
  82. private Date sendTime;
  83. }