package com.izouma.immall.domain; import com.alibaba.excel.annotation.ExcelIgnore; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import java.io.Serializable; import java.time.LocalDateTime; /** * @author build by Wilhelm * @version 1.0 * @date 2020/3/6 14:34 */ @Data @AllArgsConstructor @NoArgsConstructor @Entity @Builder @JsonIgnoreProperties(value = {"hibernateLazyInitializer"}) @ApiModel(value = "用户套餐", description = "用户购买套餐记录") public class UserSet extends BaseEntity implements Serializable { @ApiModelProperty("订单Num") private String orderNum; @ApiModelProperty("用户id") private Long userId; @ApiModelProperty("套餐id") private Long goodsId; @ApiModelProperty("待领取数量") private Integer unclaimedPieces; @ApiModelProperty("可领取数量") private Integer availablePieces; @ApiModelProperty("未领取数量") private Integer takenPieces; @ApiModelProperty("是否可用") private boolean isDisabled; @JsonIgnore @ApiModelProperty("上次增加时间") private LocalDateTime increaseTime; @ExcelIgnore @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "goodsId", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) private Goods goodsInfo; }