package org.dromara.system.domain;

import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serial;

/**
 * 赛事项目对象 game_event_project
 *
 * @author zlt
 * @date 2025-07-30
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("game_event_project")
public class GameEventProject extends TenantEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "project_id",type = IdType.AUTO)
    private Long projectId;

    /**
     * 赛事ID
     */
    private Long eventId;

    /**
     * 项目名称
     */
    private String projectName;

    /**
     * 项目类型（个人/团体）
     */
    private String projectType;

    /**
     * 项目组别
     */
    private String groupType;

    /**
     * 裁判员ID
     */
    private Long refereeId;

    /**
     * 比赛场地
     */
    private String location;

    /**
     * 开始时间
     */
    private Date startTime;

    /**
     * 结束时间
     */
    private Date endTime;

    /**
     * 参赛组数
     */
    private Long groupNum;

    /**
     * 参赛人数
     */
    private Long participateNum;

    /**
     * 轮次
     */
    private String roundType;

    /**
     * 排序方式
     */
    private String orderType;

    /**
     * 计算规则
     */
    private String scoreRule;

    /**
     * 积分分值
     */
    private String scoreValue;

    /**
     * 奖项
     */
    private String award;

    /**
     * 计时点名称
     */
    private String timePoint;

    /**
     * 控制盒编号
     */
    private String boxCode;

    /**
     * 状态（0正常 1停用）
     */
    private String status;

    /**
     * 删除标志（0代表存在 1代表删除）
     */
    @TableLogic
    private String delFlag;

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


}
