package com.seer.teach.mp.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.seer.teach.common.entity.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;

/**
 * <p>
 * 经销商申请表
 * </p>
 *
 * @author Wang
 * @since 2025-08-04 13:45:07
 */
@Getter
@Setter
@TableName("mp_dealer_applications")
@Schema(name = "MpDealerApplicationsEntity对象", description = "经销商申请表")
public class MpDealerApplicationsEntity extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 申请人userId
     */
    @TableField("applicant_user_id")
    private Integer applicantUserId;

    /**
     * 申请人姓名(真实姓名)
     */
    @TableField("applicant_name")
    private String applicantName;

    /**
     * 申请人手机号
     */
    @TableField("phone")
    private String phone;

    /**
     * 营业执照号码
     */
    @TableField("business_license_number")
    private String businessLicenseNumber;

    /**
     * 营业执照照片路径或Base64
     */
    @TableField("business_license_image")
    private String businessLicenseImage;

    /**
     * 身份证号码
     */
    @TableField("id_card_number")
    private String idCardNumber;

    /**
     * 身份证正面照片的Base64
     */
    @TableField("id_card_front_image")
    private String idCardFrontImage;

    /**
     * 身份证反面照片的Base64
     */
    @TableField("id_card_back_image")
    private String idCardBackImage;

    /**
     * 描述
     */
    @TableField("`description`")
    private String description;

    /**
     * 申请状态，0-待审核，1-审核通过，2-审核拒绝
     */
    @TableField("`status`")
    private Integer status;

    /**
     * 申请类型，申请类型：1-经销商，2-个人，3-企业
     */
    @TableField("apply_type")
    private Integer applyType;

    /**
     * 申请时间
     */
    @TableField("apply_time")
    private LocalDateTime applyTime;

    /**
     * 审核人userId
     */
    @TableField("audit_user_id")
    private Integer auditUserId;

    /**
     * 审核时间
     */
    @TableField("audit_time")
    private LocalDateTime auditTime;

    /**
     * 审核备注：拒绝时需说明原因（如"身份证照片模糊，请重新上传"
     */
    @TableField("audit_remark")
    private String auditRemark;
}