Showroom.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package com.izouma.nineth.domain;
  2. import com.izouma.nineth.annotations.Searchable;
  3. import com.izouma.nineth.enums.AuthStatus;
  4. import io.swagger.annotations.ApiModel;
  5. import io.swagger.annotations.ApiModelProperty;
  6. import lombok.AllArgsConstructor;
  7. import lombok.Builder;
  8. import lombok.Data;
  9. import lombok.NoArgsConstructor;
  10. import org.hibernate.annotations.Where;
  11. import javax.persistence.*;
  12. import java.util.List;
  13. @Data
  14. @AllArgsConstructor
  15. @NoArgsConstructor
  16. @Builder
  17. @Entity
  18. @Table(indexes = {
  19. @Index(columnList = "userId"),
  20. @Index(columnList = "assetId"),
  21. @Index(columnList = "likes"),
  22. @Index(columnList = "share")
  23. })
  24. @Where(clause = "del = 0")
  25. @ApiModel("展厅")
  26. public class Showroom extends BaseEntity {
  27. private Long userId;
  28. @Searchable
  29. private String nickname;
  30. private Long assetId;
  31. private String name;
  32. @ApiModelProperty("头像")
  33. private String pic;
  34. private String introduction;
  35. private int likes;
  36. private int share;
  37. private boolean publish;
  38. @ApiModelProperty("最多可放藏品数量")
  39. private int maxCollection;
  40. @ApiModelProperty("头部背景")
  41. private String headBg;
  42. @ApiModelProperty("展厅背景")
  43. private String showroomBg;
  44. private String type;
  45. @Enumerated(EnumType.STRING)
  46. private AuthStatus status;
  47. @ApiModelProperty("拒绝理由")
  48. private String reason;
  49. @Column(columnDefinition = "tinyint unsigned")
  50. private int sort;
  51. private Long settingId;
  52. @Transient
  53. private List<ShowCollection> collections;
  54. @Transient
  55. private boolean liked;
  56. private int heats;
  57. }