package com.ai.da.model.dto;

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

import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

@Data
public class DesignSingleIncludeLayersDTO implements Serializable {

    @Schema(description = "designItemId")
    @NotNull(message = "designItemId.cannot.be.empty")
    private Long designItemId;

    @NotNull
    @Schema(description = "designSingleItemDTOList")
    private List<DesignSingleItemDTO> designSingleItemDTOList;

    @NotNull(message = "isPreview.cannot.be.empty")
    @Schema(description = "preview -> true  submit -> false")
    private Boolean isPreview;

    @NotNull(message = "processId.cannot.be.empty")
    @Schema(description = "进度")
    private String processId;

    @Schema(description = "性别")
    private String gender;

    @NotBlank(message = "timeZone.cannot.be.empty")
    @Schema(description = "本地时区,比如 'Asia/Tokyo' 东京时间 , 'Asia/Shanghai' 北京时间 由js本地获取")
    private String timeZone;

    @Schema(description = "模特id 每套衣服允许有一个单独的模特")
    private Long modelId;

    @Schema(description = "模特类型 System || Library")
    private String modelType;

    @Schema(description = "项目id")
    private Long projectId;

    @Override
    public String toString() {
        return "DesignSingleIncludeLayersDTO{" +
                "designItemId=" + designItemId +
                ", designSingleItemDTOList=" + designSingleItemDTOList +
                ", isPreview=" + isPreview +
                ", processId='" + processId + '\'' +
                ", timeZone='" + timeZone + '\'' +
                '}';
    }
}
