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.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper = false)
@TableName("lb_assessment_apply")
@Schema(description = "申请评估表")
public class LbAssessmentApply implements Serializable {

    private static final long serialVersionUID = 1L;

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

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

    @TableField("applicant_name")
    @Schema(description = "申请人")
    private String applicantName;

    @TableField("applicant_phone")
    @Schema(description = "申请人电话")
    private String applicantPhone;

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

    @TableField("work_experience")
    @Schema(description = "从业经历")
    private String workExperience;

    @TableField("colleague_name")
    @Schema(description = "同事姓名")
    private String colleagueName;

    @TableField("colleague_phone")
    @Schema(description = "同事电话")
    private String colleaguePhone;

    @TableField("team_leader_name")
    @Schema(description = "团队长姓名")
    private String teamLeaderName;

    @TableField("team_big_leader_name")
    @Schema(description = "全收益团队长姓名")
    private String teamBigLeaderName;

    @TableField("assessment_teacher_name")
    @Schema(description = "评估老师姓名")
    private String assessmentTeacherName;

    @TableField("moderator_name")
    @Schema(description = "主持人姓名")
    private String moderatorName;

    @TableField("meeting_number")
    @Schema(description = "会议号")
    private String meetingNumber;

    @TableField("notification_text")
    @Schema(description = "评估会议通知文案")
    private String notificationText;

    @TableField("application_datetime")
    @Schema(description = "申请日期时间")
    @JsonFlexibleLocalDateTime
    private LocalDateTime applicationDatetime;

    @TableField("created_at")
    @Schema(description = "创建时间")
    @JsonFlexibleLocalDateTime
    private LocalDateTime createdAt;

    @TableField("updated_at")
    @Schema(description = "修改时间")
    @JsonFlexibleLocalDateTime
    private LocalDateTime updatedAt;
}
