package co.yixiang.yshop.module.product.controller.admin.campaigninfo.vo;

import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;

import java.time.LocalDateTime;

import org.springframework.format.annotation.DateTimeFormat;

import static co.yixiang.yshop.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 活动信息 Excel 导出 Request VO，参数和 CampaignInfoPageReqVO 是一致的")
@Data
public class CampaignInfoExportReqVO {

    @Schema(description = "活动名称", example = "赵六")
    private String name;

    @Schema(description = "活动类型：1、拼团，2、秒杀，3、限时折扣", example = "2")
    private Integer type;

    @Schema(description = "备注", example = "你猜")
    private String remark;

    @Schema(description = "活动开始时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private String[] startTime;

    @Schema(description = "活动结束时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private String[] endTime;

    @Schema(description = "商品限购 1-不限购 2-限购")
    private Integer ifLimit;

    @Schema(description = "限购几件/人")
    private Integer limitNumber;

    @Schema(description = "活动预热   1-停用  2-启用")
    private Integer ifEnable;

    @Schema(description = "预热几分钟前")
    private Integer enableTime;

    @Schema(description = "活动状态 0-未开始 1-进行中 2-已结束")
    private Integer state;

    @Schema(description = "成团人数")
    private Integer person;

    @Schema(description = "成团有效时间几（分钟）")
    private Integer effectiveTime;

    @Schema(description = "是否虚拟成团:0-否，1-是", required = true)
    private Integer isVirtually;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}
