Copyright.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. package com.izouma.zhirongip.domain.supply;
  2. import com.alibaba.excel.annotation.ExcelIgnore;
  3. import com.alibaba.excel.annotation.ExcelProperty;
  4. import com.izouma.zhirongip.annotations.EnumFormat;
  5. import com.izouma.zhirongip.annotations.Searchable;
  6. import com.izouma.zhirongip.converter.StringArrayConverter;
  7. import com.izouma.zhirongip.domain.BaseEntity;
  8. import com.izouma.zhirongip.enums.ApplyStatus;
  9. import com.izouma.zhirongip.enums.CommissionType;
  10. import com.izouma.zhirongip.enums.CopyrightType;
  11. import com.izouma.zhirongip.enums.TradingMethod;
  12. import com.izouma.zhirongip.utils.excel.EnumExcelConverter;
  13. import io.swagger.annotations.ApiModel;
  14. import io.swagger.annotations.ApiModelProperty;
  15. import lombok.AllArgsConstructor;
  16. import lombok.Builder;
  17. import lombok.Data;
  18. import lombok.NoArgsConstructor;
  19. import org.hibernate.annotations.Where;
  20. import javax.persistence.*;
  21. import java.math.BigDecimal;
  22. import java.time.LocalDate;
  23. import java.util.List;
  24. @Data
  25. @AllArgsConstructor
  26. @NoArgsConstructor
  27. @Builder
  28. @Entity
  29. @ApiModel(value = "版权/软著")
  30. @Where(clause = "del = 0")
  31. public class Copyright extends BaseEntity {
  32. private Long userId;
  33. @Searchable
  34. @ApiModelProperty(value = "作品名称")
  35. private String name;
  36. @ApiModelProperty(value = "登记号")
  37. private String code;
  38. @ApiModelProperty(value = "登记日期")
  39. private LocalDate registrationTime;
  40. /*
  41. 作品类型-3 软著类型-4
  42. */
  43. @ExcelIgnore
  44. @ApiModelProperty(value = "作品类型/软著类型")
  45. private Long workType;
  46. /*
  47. 软著没有作者
  48. */
  49. @ApiModelProperty(value = "作者")
  50. @ElementCollection
  51. private List<String> author;
  52. @ApiModelProperty(value = "著作权人")
  53. @ElementCollection
  54. private List<String> owner;
  55. @ApiModelProperty(value = "交易方式")
  56. private String tradingMethod;
  57. @ApiModelProperty(value = "交易方式")
  58. private Long tradingMethodId;
  59. @ExcelIgnore
  60. @Convert(converter = StringArrayConverter.class)
  61. @Column(columnDefinition = "TEXT")
  62. @ApiModelProperty(value = "附图")
  63. private List<String> img;
  64. /*
  65. (万元)
  66. */
  67. @ApiModelProperty(value = "期望价(万元)")
  68. private BigDecimal expectedPrice;
  69. @ApiModelProperty(value = "面议")
  70. private Boolean negotiateDirectly;
  71. @ApiModelProperty(value = "底价(万元)")
  72. private BigDecimal basePrice;
  73. @EnumFormat(value = CommissionType.class,
  74. fromExcel = {"佣金", "百分比"},
  75. toJavaEnum = {"COMMISSION", "PERCENTAGE"})
  76. @ExcelProperty(value = "佣金类型", converter = EnumExcelConverter.class)
  77. @Enumerated(EnumType.STRING)
  78. @ApiModelProperty(value = "佣金类型")
  79. private CommissionType commissionType;
  80. @ApiModelProperty(value = "佣金(万元)")
  81. private BigDecimal commission;
  82. @ApiModelProperty(value = "联系人")
  83. private String contact;
  84. @ApiModelProperty(value = "电话")
  85. private String phone;
  86. @ApiModelProperty(value = "邮箱")
  87. private String email;
  88. @ApiModelProperty(value = "所在地区")
  89. private String address;
  90. @ExcelIgnore
  91. @ApiModelProperty(value = "版权/软著")
  92. @Enumerated(EnumType.STRING)
  93. private CopyrightType type;
  94. @ApiModelProperty(value = "浏览量")
  95. private long view;
  96. @Enumerated(EnumType.STRING)
  97. private ApplyStatus status;
  98. @Transient
  99. private String workName;
  100. }