package org.springblade.modules.martial.pojo.dto;

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

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 小程序提交评分请求DTO
 *
 * @author BladeX
 */
@Data
@Schema(description = "小程序提交评分请求")
public class MiniAthleteScoreDTO implements Serializable {

	private static final long serialVersionUID = 1L;

	@Schema(description = "选手ID")
	private Long athleteId;

	@Schema(description = "评委ID")
	private Long judgeId;

	@Schema(description = "评分")
	private BigDecimal score;

	@Schema(description = "扣分项列表")
	private List<DeductionItem> deductions;

	@Schema(description = "备注")
	private String note;

	/**
	 * 扣分项内部类
	 */
	@Data
	@Schema(description = "扣分项")
	public static class DeductionItem implements Serializable {

		private static final long serialVersionUID = 1L;

		@Schema(description = "扣分项ID")
		private Long deductionId;

		@Schema(description = "扣分项名称")
		private String deductionName;

		@Schema(description = "扣分值")
		private BigDecimal deductionScore;
	}
}
