package com.izouma.nineth.domain;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer"}, ignoreUnknown = true)
public class Privilege {
    private Long   id;

    @ApiModelProperty("特权名称")
    private String name;

    @ApiModelProperty("特权描述")
    private String description;

    @ApiModelProperty("简介说明")
    private String remark;

    @ApiModelProperty("详情")
    private String detail;

    @ApiModelProperty("类型")
    private String type;

    @ApiModelProperty("图标")
    private List<String> icon;

    @ApiModelProperty("已开启")
    private boolean opened;

    @ApiModelProperty("开启时间")
    private LocalDateTime openTime;

    @ApiModelProperty("只能打开一次")
    private boolean once;

    @ApiModelProperty("每次交易刷新")
    private boolean refreshOnTransfer;

    @ApiModelProperty("结束时间")
    private LocalDateTime endTime;

    private Long openedBy;
}
