package com.kym.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.kym.entity.BaseEntity;

import java.time.LocalDateTime;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 *
 * </p>
 *
 * @author skyline
 * @since 2023-10-18
 */
@Getter
@Setter
@TableName("t_activity")
@Accessors(chain = true)
public class Activity extends BaseEntity {

    public final static String DISCOUNT_TYPE_优惠券 = "Coupon";
    public final static String DISCOUNT_TYPE_洗车日 = "WashDay";

    public final static int APPLY_STATION_全部站点 = 0;
    public final static int APPLY_STATION_部分站点 = 1;

//    public final static int TARGET_USERS_全部用户 = 0;
//    public final static int TARGET_USERS_新用户 = 1;
//    public final static int TARGET_USERS_指定用户 = 2;

    public final static int STATUS_未开始 = 0;
    public final static int STATUS_进行中 = 1;
    public final static int STATUS_已结束 = 2;
    public final static int STATUS_已取消 = 3;



    private static final long serialVersionUID = 1L;

    /**
     * 活动名称
     */
    private String name;

    /**
     * 活动描述
     */
    private String activityDesc;

    /**
     * 活动描述页面
     */
    private String activityDescPage;

    /**
     * 开始时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime startTime;

    /**
     * 结束时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime endTime;

    /**
     * 优惠方式：0-服务费折扣权益 1-优惠券
     */
    private String discountType;

    /**
     * 目标用户：0-全部，1-新用户，2-部分用户
     */
//    private Integer targetUsers;

    /**
     * 适用站点：0-全部，1-部分站点（详见活动-站点关联表）
     */
    private Integer applyStation;

    /**
     * 优惠允许叠加：0-不允许，1-允许
     */
//    private Integer allowStacke;

    /**
     * 数量限制
     */
//    private Integer quantity;

    /**
     * 活动状态：0-未开始，1-进行中，2-已结束，3-已取消
     */
    private Integer status;

    /**
     * 备注
     */
    private String remark;
}
