package shop.alien.entity.store.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * 店铺端会员中心状态
 */
@Data
@ApiModel("平台会员卡当前状态")
public class PlatformShopMembershipStatusVo {

    @ApiModelProperty("是否有效会员")
    private Boolean active;

    @ApiModelProperty("剩余天数（无效为0）")
    private Integer remainingDays;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("当前周期开始")
    private Date currentPeriodStart;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("当前到期时间")
    private Date expiryDate;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("首次开通时间")
    private Date firstOpenTime;

    @ApiModelProperty("是否签约（基于 store_info.renew_contract_status == 1）")
    private Boolean signed;

    @ApiModelProperty("是否入驻（基于 store_info.store_application_status == 1）")
    private Boolean settled;

    @ApiModelProperty("当前有效会员对应的方案权益；非会员或无法解析方案时为 null")
    private PlatformShopMembershipBenefitsVo benefits;
}
