package com.rj.entity;

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

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

/**
 * 个人恋爱/择偶自我介绍画像表（love_whoI）
 *
 * @author system
 * @since 2026-04-05
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("love_whoI")
@Schema(description = "个人恋爱/择偶自我介绍画像表")
public class LoveWhoI implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "主键，UUID")
    @TableId("id")
    private String id;

    @Schema(description = "租户ID")
    @TableField("tenant_id")
    private String tenantId;

    @Schema(description = "手机号码")
    @TableField("my_phone")
    private String myPhone;

    @Schema(description = "名字")
    @TableField("name")
    private String name;

    @Schema(description = "称呼")
    @TableField("salutation")
    private String salutation;

    @Schema(description = "性别： 下拉框，男或 女")
    @TableField("gender")
    private String gender;

    @Schema(description = "年龄")
    @TableField("age")
    private Integer age;

    @Schema(description = "行业")
    @TableField("industry")
    private String industry;

    @Schema(description = "收入水平")
    @TableField("income_level")
    private String incomeLevel;

    @Schema(description = "居住区域")
    @TableField("residential_area")
    private String residentialArea;

    @Schema(description = "性格")
    @TableField("personality")
    private String personality;

    @Schema(description = "兴趣爱好")
    @TableField("hobbies")
    private String hobbies;

    @Schema(description = "喜欢的美食")
    @TableField("favorite_food")
    private String favoriteFood;

    @Schema(description = "喜欢的电影类型")
    @TableField("favorite_movie_genres")
    private String favoriteMovieGenres;

    @Schema(description = "最近关系的小事")
    @TableField("recent_relationship_note")
    private String recentRelationshipNote;

    @Schema(description = "学历")
    @TableField("education")
    private String education;

    @Schema(description = "专业")
    @TableField("major")
    private String major;

    @Schema(description = "身高（厘米）")
    @TableField("height_cm")
    private Integer heightCm;

    @Schema(description = "体重（千克）")
    @TableField("weight_kg")
    private BigDecimal weightKg;

    @Schema(description = "健康状况")
    @TableField("health_status")
    private String healthStatus;

    @Schema(description = "对自己的评价")
    @TableField("self_evaluation")
    private String selfEvaluation;

    @Schema(description = "父亲职业")
    @TableField("father_occupation")
    private String fatherOccupation;

    @Schema(description = "母亲职业")
    @TableField("mother_occupation")
    private String motherOccupation;

    @Schema(description = "兄妹几个")
    @TableField("siblings_desc")
    private String siblingsDesc;

    @Schema(description = "房子（有无、贷款等）")
    @TableField("house_situation")
    private String houseSituation;

    @Schema(description = "车子（有无等）")
    @TableField("car_situation")
    private String carSituation;

    @Schema(description = "备注")
    @TableField("remark")
    private String remark;

    @Schema(description = "创建时间")
    @TableField("create_time")
    private LocalDateTime createTime;

    @Schema(description = "修改时间")
    @TableField("update_time")
    private LocalDateTime updateTime;
}
