package com.lesingle.edu.dto.request;

import com.fasterxml.jackson.annotation.JsonAlias;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.time.LocalDate;
import java.util.List;

@Data
@Schema(description = "成长记录创建请求")
public class GrowthRecordCreateRequest {

    @NotNull(message = "学生 ID 不能为空")
    @Schema(description = "学生 ID")
    private Long studentId;

    @NotBlank(message = "类型不能为空")
    @JsonAlias("recordType")
    @Schema(description = "类型：reading-阅读，behavior-行为，achievement-成就，milestone-里程碑，STUDENT-学生记录")
    private String type;

    @NotBlank(message = "标题不能为空")
    @Schema(description = "标题")
    private String title;

    @Schema(description = "内容")
    private String content;

    @Schema(description = "图片 URL 列表", type = "array", implementation = String.class)
    private List<String> images;

    @Schema(description = "记录日期")
    private LocalDate recordDate;

    @Schema(description = "标签", type = "array", implementation = String.class)
    private List<String> tags;

}
