package com.ai.da.mapper.primary.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import io.swagger.v3.oas.annotations.media.Schema;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
public class ToProductImageResult implements Serializable {
    private static final long serialVersionUID = 1L;

    @Schema(description = "ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @Schema(description = "elementId")
    private Long elementId;

    /**
     * 取值类型： DesignOutfit 以design的结果作为图片来源
     * ProductElement 上传的图片
     * ToProductImage 以to product image的结果作为图片来源(relight)
     */
    @Schema(description = "elementType 图片来源：DesignOutfit(design的结果) | ProductElement(上传的图片) | ToProductImage(生成的结果)")
    private String elementType;

    @Schema(description = "url")
    private String url;

    @Schema(description = "isLike 1是0否")
    private Integer isLike;

    @Schema(description = "createTime")
    private LocalDateTime createTime;

    @Schema(description = "toProductImageRecordId")
    private Long toProductImageRecordId;

    @Schema(description = "taskId")
    private String taskId;

    @Schema(description = "userLikeGroupId")
    private Long userLikeGroupId;

    @Schema(description = "generate 结果类型")
    private String resultType;

    private Double brightenValue;

    private BigDecimal imageStrength;

    private String direction;

    private Long projectId;

    private String taskIdBatch;

    private String modelName;

    private String status;

    @Schema(description = "是否删除1:是 0:否")
    @TableField
    private byte isDeleted = 0;
}
