package com.ruoyi.member.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import com.ruoyi.common.core.domain.DlBaseEntity;

/**
 * 通告主认证申请对象 dl_member_apply
 * 
 * @author pqz
 * @date 2025-03-17
 */
@TableName("dl_member_apply")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MemberApply extends DlBaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一主键 */
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;

    /** 申请者用户id */
    @Excel(name = "申请者用户id")
    private Long userId;

    /** 申请者昵称 */
    @Excel(name = "申请者昵称")
    private String nickname;

    /** 申请认证的通告主身份类型（数据字典：dl_identity_type） */
    @Excel(name = "申请认证的通告主身份类型", readConverterExp = "数=据字典：dl_identity_type")
    private String identityType;

    /** 申请描述 */
    @Excel(name = "申请描述")
    private String content;

    /** 备注（保留字段） */
    @Excel(name = "备注", readConverterExp = "保=留字段")
    private String remark;

    /** 图片附件地址，可多个 */
    @Excel(name = "图片附件地址，可多个")
    private String images;

    /** 审核状态(数据字典：dl_approval_status) */
    @Excel(name = "审核状态(数据字典：dl_approval_status)")
    private String approvalStatus;

    /** 审核人id */
    @Excel(name = "审核人id")
    private Long approvalUserId;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date approvalTime;

    /** 审核备注 */
    @Excel(name = "审核备注")
    private String approvalRemark;
    private String applyJson;

}
