CompanyCollection.java 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package com.izouma.nineth.domain;
  2. import com.izouma.nineth.annotations.Searchable;
  3. import com.izouma.nineth.converter.FileObjectConverter;
  4. import com.izouma.nineth.converter.FileObjectListConverter;
  5. import com.izouma.nineth.converter.PrivilegeListConverter;
  6. import com.izouma.nineth.converter.PropertyListConverter;
  7. import com.izouma.nineth.enums.CollectionStatus;
  8. import io.swagger.annotations.ApiModel;
  9. import io.swagger.annotations.ApiModelProperty;
  10. import lombok.AllArgsConstructor;
  11. import lombok.Builder;
  12. import lombok.Data;
  13. import lombok.NoArgsConstructor;
  14. import javax.persistence.*;
  15. import java.math.BigDecimal;
  16. import java.util.List;
  17. @Data
  18. @AllArgsConstructor
  19. @NoArgsConstructor
  20. @Builder
  21. @Entity
  22. @ApiModel("企业申请的藏品")
  23. public class CompanyCollection extends BaseEntity {
  24. private Long userId;
  25. @ApiModelProperty("铸造者")
  26. private String minter;
  27. @ApiModelProperty("名称")
  28. @Searchable
  29. private String name;
  30. @ApiModelProperty("图片")
  31. @Column(columnDefinition = "TEXT")
  32. @Convert(converter = FileObjectListConverter.class)
  33. private List<FileObject> pic;
  34. @Column(columnDefinition = "TEXT")
  35. @Convert(converter = FileObjectConverter.class)
  36. private FileObject model3d;
  37. @ApiModelProperty("详情")
  38. @Column(columnDefinition = "TEXT")
  39. private String detail;
  40. @ApiModelProperty("分类")
  41. private String category;
  42. @ApiModelProperty("发行数量")
  43. private int total;
  44. @ApiModelProperty("价格")
  45. @Column(precision = 10, scale = 2)
  46. private BigDecimal price;
  47. @ApiModelProperty("原价")
  48. @Column(precision = 10, scale = 2)
  49. private BigDecimal originalPrice;
  50. @ApiModelProperty("限购数量")
  51. private int maxCount;
  52. @ApiModelProperty("限购识别码")
  53. private String countId;
  54. @Column(columnDefinition = "TEXT")
  55. @Convert(converter = PropertyListConverter.class)
  56. @ApiModelProperty("特性")
  57. private List<CollectionProperty> properties;
  58. @Column(columnDefinition = "TEXT")
  59. @Convert(converter = PrivilegeListConverter.class)
  60. @ApiModelProperty("特权")
  61. private List<Privilege> privileges;
  62. @ApiModelProperty("是否可转售")
  63. private boolean canResale;
  64. @ApiModelProperty("状态")
  65. @Enumerated(EnumType.STRING)
  66. private CollectionStatus status;
  67. @ApiModelProperty("拒绝理由")
  68. private String reason;
  69. }