package com.lesingle.creation.dto.review;

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

import jakarta.validation.constraints.DecimalMin;
import jakarta.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 创建评分请求 DTO
 */
@Data
@Schema(description = "创建评分请求")
public class CreateScoreDTO {

    @NotNull(message = "分配 ID 不能为空")
    @Schema(description = "分配 ID")
    private Long assignmentId;

    @NotNull(message = "作品 ID 不能为空")
    @Schema(description = "作品 ID")
    private Long workId;

    @NotNull(message = "分数不能为空")
    @DecimalMin(value = "0", message = "分数不能小于 0")
    @Schema(description = "分数")
    private BigDecimal score;

    @Schema(description = "评语")
    private String comment;

    @Schema(description = "各维度评分（JSON）")
    private String dimensionScores;
}
