package com.emotion.dto.request;

import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.List;

/**
 * 生命事件创建请求
 *
 * @author huazhongmin
 * @date 2025-12-22
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class LifeEventCreateRequest extends BaseRequest {

    /**
     * 事件类型: daily_log-日常记录, milestone-里程碑
     */
    private String eventType;

    /**
     * 事件日期 (ISO格式字符串)
     */
    private String eventDate;

    /**
     * 事件标题
     */
    @NotBlank(message = "事件标题不能为空")
    @Size(max = 200, message = "事件标题长度不能超过200个字符")
    private String title;

    /**
     * 事件内容
     */
    @NotBlank(message = "事件内容不能为空")
    private String content;

    /**
     * AI疗愈回复
     */
    private String aiReply;

    /**
     * 情绪类型
     */
    private String emotionType;

    /**
     * 情绪评分
     */
    private Double emotionScore;

    /**
     * 标签列表
     */
    private List<String> tags;
}
