MintOrder.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.izouma.nineth.domain;
  2. import com.fasterxml.jackson.annotation.JsonIgnore;
  3. import com.izouma.nineth.annotations.Searchable;
  4. import com.izouma.nineth.converter.MintMaterialListConverter;
  5. import com.izouma.nineth.enums.MintOrderStatus;
  6. import com.izouma.nineth.enums.PayMethod;
  7. import io.swagger.annotations.ApiModel;
  8. import io.swagger.annotations.ApiModelProperty;
  9. import lombok.AllArgsConstructor;
  10. import lombok.Builder;
  11. import lombok.Data;
  12. import lombok.NoArgsConstructor;
  13. import org.springframework.data.annotation.CreatedBy;
  14. import org.springframework.data.annotation.CreatedDate;
  15. import org.springframework.data.annotation.LastModifiedBy;
  16. import org.springframework.data.annotation.LastModifiedDate;
  17. import javax.persistence.*;
  18. import java.math.BigDecimal;
  19. import java.time.LocalDateTime;
  20. import java.util.List;
  21. @Data
  22. @Entity
  23. @AllArgsConstructor
  24. @NoArgsConstructor
  25. @Builder
  26. @ApiModel("铸造订单")
  27. public class MintOrder extends BaseEntity {
  28. private Long userId;
  29. @Searchable
  30. private String phone;
  31. private Long mintActivityId;
  32. @Column(columnDefinition = "TEXT")
  33. @Convert(converter = MintMaterialListConverter.class)
  34. @ApiModelProperty("铸造材料")
  35. private List<MintMaterial> material;
  36. @ApiModelProperty("收货人")
  37. private String contactName;
  38. @ApiModelProperty("收货电话")
  39. private String contactPhone;
  40. @ApiModelProperty("收货地址")
  41. private String address;
  42. @ApiModelProperty("gas费")
  43. @Column(precision = 10, scale = 2)
  44. private BigDecimal gasPrice;
  45. @ApiModelProperty("状态")
  46. @Enumerated(EnumType.STRING)
  47. private MintOrderStatus status;
  48. @ApiModelProperty("支付方式")
  49. @Enumerated(EnumType.STRING)
  50. private PayMethod payMethod;
  51. @ApiModelProperty("交易ID")
  52. @Searchable
  53. private String transactionId;
  54. @ApiModelProperty("取消时间")
  55. private LocalDateTime cancelTime;
  56. @ApiModelProperty("支付时间")
  57. private LocalDateTime payAt;
  58. @ApiModelProperty("是否消耗藏品")
  59. private boolean consume;
  60. @ApiModelProperty("空投/实物")
  61. private boolean airDrop;
  62. }