package com.emotion.dto.request; import lombok.Data; import lombok.EqualsAndHashCode; import javax.validation.constraints.NotBlank; import javax.validation.constraints.Size; import java.util.Map; /** * 爽文剧本创建请求 * * @author huazhongmin * @date 2025-12-22 */ @Data @EqualsAndHashCode(callSuper = true) public class EpicScriptCreateRequest extends BaseRequest { /** * 剧本标题 */ @NotBlank(message = "剧本标题不能为空") @Size(max = 200, message = "剧本标题长度不能超过200个字符") private String title; /** * 剧本主题/渴望 */ private String theme; /** * 剧本风格: career-职场逆袭, love-情感圆满, fantasy-玄幻觉醒 */ private String style; /** * 篇幅长度: medium-标准篇, long-长篇 */ private String length; /** * 序幕:低谷回响 */ private String plotIntro; /** * 转折:契机出现 */ private String plotTurning; /** * 高潮:命运抉择 */ private String plotClimax; /** * 结局:新的开始 */ private String plotEnding; /** * 完整剧情JSON结构 */ private Map plotJson; /** * 是否当前选中 */ private Boolean isSelected; }