package com.yaoai.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.apache.ibatis.type.Alias;

import java.time.LocalDateTime;

@Data
@TableName("characters")
@Alias("ProjectCharacter")
public class Character {

    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    private Long projectId;
    private Long tenantId;

    private String name;
    private String roleType;
    private String gender;
    private String age;
    private String personality;
    private String background;
    private String costume;
    private String visualHint;

    /** Base prompt for standardized character image generation. */
    private String imagePrompt;
    /** Keep the primary image for backward compatibility; this points to the front view. */
    private String imageUrl;
    private String imageTosKey;

    private String frontImageUrl;
    private String frontImageTosKey;
    private String sideImageUrl;
    private String sideImageTosKey;
    private String backImageUrl;
    private String backImageTosKey;

    /** draft / generating / ready / failed */
    private String status;

    private LocalDateTime createdAt;
    private LocalDateTime updatedAt;
}
