Article.java 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. package com.backendsys.modules.cms.article.entity;
  2. import com.backendsys.config.Mybatis.handler.timezone.LocalDateTimeAdapter;
  3. import com.backendsys.entity.validator.RangeArray;
  4. import com.baomidou.mybatisplus.annotation.*;
  5. import com.google.gson.annotations.JsonAdapter;
  6. import jakarta.validation.constraints.NotEmpty;
  7. import jakarta.validation.constraints.NotNull;
  8. import lombok.Data;
  9. import java.time.LocalDateTime;
  10. import java.util.List;
  11. @Data
  12. @TableName("cms_article")
  13. public class Article {
  14. public static interface Detail{}
  15. public static interface Create{}
  16. public static interface Update{}
  17. public static interface Delete{}
  18. public static interface DeleteBatch{}
  19. @TableField(exist = false)
  20. private String lang;
  21. @TableId(type = IdType.AUTO)
  22. private Long id;
  23. @TableField("id")
  24. @NotNull(message="article_id 不能为空", groups = { Detail.class, Update.class, Delete.class })
  25. private Long article_id;
  26. private String uid;
  27. private String thumb;
  28. @TableField(exist = false)
  29. @NotNull(message="article_id 不能为空", groups = { Delete.class })
  30. private List<Long> article_ids;
  31. @TableField(exist = false)
  32. private String title;
  33. @TableField(exist = false)
  34. private String description;
  35. @TableField(exist = false)
  36. private String content;
  37. @TableField(exist = false)
  38. private String meta_keyword;
  39. @TableField(exist = false)
  40. private String meta_description;
  41. @TableField(exist = false)
  42. @NotEmpty(message="内容不能为空", groups = { Create.class, Update.class})
  43. private List<ArticleI18n> translations;
  44. private Long user_id;
  45. private Long category_id;
  46. @RangeArray(message="资讯状态取值有误,范围应是(-1禁用, 1启用)", value = {"-1", "1"}, groups = { Create.class, Update.class})
  47. private Integer status;
  48. private Integer is_top;
  49. private String create_time;
  50. private String update_time;
  51. @TableField(value = "create_time")
  52. @JsonAdapter(LocalDateTimeAdapter.class)
  53. private LocalDateTime create_time_local;
  54. @TableField(value = "update_time")
  55. @JsonAdapter(LocalDateTimeAdapter.class)
  56. private LocalDateTime update_time_local;
  57. }