import { number } from "vue-types";

export interface GameEventProjectVO {
  scheduleDate: any;
  /**
   * 赛事ID
   */
  eventId: string | number;

  /**
   * 赛事名称
   */
  eventName: string;

  /**
   * 项目ID
   */
  projectId: string | number;
  /**
   * 项目名称
   */
  projectName: string;

  /**
   * 项目类型
   */
  projectType: string;

  /**
   * 归类（0个人项目/1团体项目）
   */
  classification: string;

  /**
   * 裁判组员
   */
  refereeGroups: number[];
  /**
   * 比赛场地
   */
  location: string;

  /**
   * 开始时间
   */
  startTime: string;

  /**
   * 结束时间
   */
  endTime: string;

  /**
   * 更新时间
   */
  updateTime: string;

  /**
   * 参赛组数
   */
  groupNum: number;

  /**
   * 参赛人数
   */
  participateNum: number;

  /**
   * 每个项目限报人数
   */
  limitPerson: number;

  /**
   * 录取名次
   */
  roundType: string;

  /**
   * 排序方式
   */
  orderType: string;

  /**
   * 计算规则
   */
  scoreRule: string;

  /**
   * 积分分值
   */
  scoreValue: string;

  /**
   * 奖项
   */
  award: string;

  /**
   * 比赛轮次
   */
  gameRound: string;

  /**
   * 比赛阶段
   */
  gameStage: string;

  /**
   * 状态（0正常 1停用）
   */
  status: string;

  /**
   * 备注
   */
  remark: string;

  /**
   * 参赛性别
   */
  gender: string;

  /**
   * 参赛组别
   */
  rgName: string;

  /**
   * 排名分组ID
   */
  rgId: string | number;

  /**
   * 参赛人数
   */
  athleteCount: number;
  /**
   * 参赛组数
   */
  groupCount: number;
  /**
   * 代表队数
   */
  teamCount: number;

  /**
   * 计时格式
   */
  timingFormat: string;

  /**
   * 距离模式
   */
  distanceMode: string;

  /**
   * 计数单位
   */
  countUnit: string;

  /**
   * 成绩数量
   */
  scoreCount: number;

  /**
   * 限报男生人数(个人项目总计/团体项目每队)
   */
  limitMale?: number;
  /**
   * 限报女生人数(个人项目总计/团体项目每队)
   */
  limitFemale?: number;
  /**
   * 团体项目限报队伍数
   */
  limitTeam?: number;
}

export interface GameEventProjectForm extends BaseEntity {
  /**
   * 赛事ID
   */
  eventId?: string | number;

  /**
   * 项目ID
   */
  projectId?: string | number;

  /**
   * 项目名称
   */
  projectName?: string;

  /**
   * 项目类型
   */
  projectType?: string;

  /**
   * 归类（0个人项目/1团体项目）
   */
  classification?: string;

  /**
   * 裁判组员
   */
  refereeGroups?: number[];

  /**
   * 比赛场地
   */
  location?: string;

  /**
   * 开始时间
   */
  startTime?: string;

  /**
   * 结束时间
   */
  endTime?: string;

  /**
   * 更新时间
   */
  updateTime?: string;

  /**
   * 参赛组数
   */
  groupNum?: number;

  /**
   * 参赛人数
   */
  participateNum?: number;

  /**
   * 每个项目限报人数
   */
  limitPerson: number;

  /**
   * 录取名次
   */
  roundType?: string;

  /**
   * 排序方式
   */
  orderType?: string;

  /**
   * 计算规则
   */
  scoreRule?: string;

  /**
   * 积分分值
   */
  scoreValue?: string;

  /**
   * 奖项
   */
  award?: string;

  /**
   * 比赛轮次
   */
  gameRound?: string;

  /**
   * 比赛阶段
   */
  gameStage?: string;

  /**
   * 状态（0正常 1停用）
   */
  status?: string;

  /**
   * 备注
   */
  remark?: string;

  /**
   * 参赛性别
   */
  gender?: string;

  /**
   * 参赛组别名称
   */
  rgName?: string;

  /**
   * 排名分组ID
   */
  rgId?: string | number;

  /**
   * 计时格式
   */
  timingFormat?: string;

  /**
   * 距离模式
   */
  distanceMode?: string;

  /**
   * 计数单位
   */
  countUnit?: string;

  /**
   * 成绩数量
   */
  scoreCount?: number;

  /**
   * 限报男生人数(个人项目总计/团体项目每队)
   */
  limitMale?: number;
  /**
   * 限报女生人数(个人项目总计/团体项目每队)
   */
  limitFemale?: number;
  /**
   * 团体项目限报队伍数
   */
  limitTeam?: number;
}

export interface GameEventProjectQuery extends PageQuery {
  /**
   * 赛事ID
   */
  eventId?: string | number;

  /**
   * 赛事名称
   */
  eventName?: string;

  /**
   * 项目ID
   */
  projectId?: string | number;

  /**
   * 项目名称
   */
  projectName?: string;

  /**
   * 项目类型
   */
  projectType?: string;

  /**
   * 归类（0个人项目/1团体项目）
   */
  classification?: string;

  /**
   * 开始时间
   */
  startTime?: string;

  /**
   * 排序方式
   */
  orderType?: string;

  /**
   * 状态（0正常 1停用）
   */
  status?: string;

  /**
   * 限报男生人数(个人项目总计/团体项目每队)
   */
  limitMale?: number;
  /**
   * 限报女生人数(个人项目总计/团体项目每队)
   */
  limitFemale?: number;
  /**
   * 团体项目限报队伍数
   */
  limitTeam?: number;

  /**
   * 日期范围参数
   */
  params?: any;
}
