package org.jeecg.modules.app.vo.game;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@Schema(description="赛事详情返回参数")
public class FindByIdResponse {
    @Schema(description = "主键id")
    private String id;
    @Schema(description = "封面")
    private String cover;
    @Schema(description = "赛事名称")
    private String name;
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @Schema(description = "开始时间")
    private Date startTime;
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @Schema(description = "结束时间")
    private Date endTime;
    @Schema(description = "主办单位")
    private String organizers;
    @Schema(description = "图片说明")
    private String reminder;
    @Schema(description = "背景图")
    private String backgroundImage;
    @Schema(description = "背景图集合")
    private List<String> backgroundImageList;
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @Schema(description = "报名结束时间")
    private Date applicationEndTime;
    @Schema(description = "地址")
    private String address;
    @Schema(description = "产品类型 0-报名中 1-报名结束")
    private String isEntry;
    @Schema(description = "KM")
    private Double km;
    @Schema(description ="经度")
    private BigDecimal longitude;
    @Schema(description ="纬度")
    private BigDecimal latitude;
    @Schema(description ="手机号")
    private String phone;
    @Schema(description = "赛事类型 0-个人赛 1-团队赛 2-个人/团队赛")
    private Integer  type;
    @Schema(description = "比赛项目")
    private List<GamePriceRulesVO> gamePriceRulesVOList;
    @Schema(description = "赛程")
    private List<GameScheduleVO> gameScheduleVOList;


    @Schema(description = "报名总数")
    private Integer  orderNum;
    @Schema(description = "最新20个报名用户")
    private List<GameOrderVo>  gameOrderVoList;
}
