package com.mcwl.communityCenter.domain.vo;

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

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * 社区返回数据
 */
@Data
@ApiModel(value = "社区详情返回数据")
public class CommunityDetailVo {
    /**
     * 社区id
     */
    @ApiModelProperty(value = "社区id")
    private Long id;

    /**
     * 租户id
     */
    @ApiModelProperty(value = "租户id")
    private Long tenantId;

    /**
     * 社区图片
     */
    @ApiModelProperty(value = "社区图片")
    private String imageUrl;

    /**
     * 社区名称
     */
    @ApiModelProperty(value = "社区名称")
    private String communityName;

    /**
     * 社区标签
     */
    @ApiModelProperty(value = "社区标签")
    private Integer communityTag;

    /**
     * 价格
     */
    @ApiModelProperty(value = "价格")
    private Double price;

    /**
     * 描述
     */
    @ApiModelProperty(value = "描述")
    private String description;

    /**
     * 社区类型
     */
    @ApiModelProperty(value = "社区类型")
    private Integer type;

    /**
     * 有效期天数
     */
    @ApiModelProperty(value = "有效期天数")
    private Integer validityDay;

    /**
     * 创建天数
     */
    @ApiModelProperty(value = "创建天数")
    private Long createDay;

    /**
     * 成员数
     */
    @ApiModelProperty(value = "成员数")
    private Integer userNum;

    /**
     * 成员头像
     */
    @ApiModelProperty(value = "成员头像")
    private List<String> avatarList;

    /**
     * 更新内容数
     */
    @ApiModelProperty(value = "更新内容数")
    private Integer updateNum;

    /**
     * 最近更新时间
     */
    @ApiModelProperty(value = "最近更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date lastUpdateTime;

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

}
