package org.dromara.system.domain.vo;

import org.dromara.system.domain.GameAthlete;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 参赛队员视图对象 game_athlete
 *
 * @author zlt
 * @date 2025-07-30
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = GameAthlete.class)
public class GameAthleteVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ExcelProperty(value = "主键")
    private Long athleteId;

    /**
     * 用户ID
     */
    @ExcelProperty(value = "用户ID")
    private Long userId;

    /**
     * 赛事ID
     */
    @ExcelProperty(value = "赛事ID")
    private Long eventId;

    /**
     * 队伍ID
     */
    @ExcelProperty(value = "队伍ID")
    private Long teamId;

    /**
     * 运动员编号
     */
    @ExcelProperty(value = "运动员编号")
    private String athleteCode;

    /**
     * 姓名
     */
    @ExcelProperty(value = "姓名")
    private String name;

    /**
     * 性别
     */
    @ExcelProperty(value = "性别")
    private String gender;

    /**
     * 年龄
     */
    @ExcelProperty(value = "年龄")
    private Long age;

    /**
     * 单位
     */
    @ExcelProperty(value = "单位")
    private String unit;

    /**
     * 证件号
     */
    @ExcelProperty(value = "证件号")
    private String idCard;

    /**
     * 芯片号
     */
    @ExcelProperty(value = "芯片号")
    private String chipCode;

    /**
     * 手机号
     */
    @ExcelProperty(value = "手机号")
    private String phone;

    /**
     * 居住地址
     */
    @ExcelProperty(value = "居住地址")
    private String location;

    /**
     * T恤尺码
     */
    @ExcelProperty(value = "T恤尺码")
    private String tshirtSize;

    /**
     * 组别
     */
    @ExcelProperty(value = "组别")
    private String groupType;

    /**
     * 号码
     */
    @ExcelProperty(value = "号码")
    private String number;

    /**
     * 参与项目列表
     */
    @ExcelProperty(value = "参与项目列表")
    private String projectValue;

    /**
     * 状态（0正常 1停用）
     */
    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(readConverterExp = "0=正常,1=停用")
    private String status;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;


}
