package com.ruoyi.base.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 访客预约记录对象 robot_ops_appointment_record
 *
 * @author ruoyi
 * @date 2026-04-28
 */

public class RobotOpsAppointmentRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 预约单号 */
    @Excel(name = "预约单号")
    private String appointmentNo;

    /** 访客姓名 */
    @Excel(name = "访客姓名")
    private String visitorName;

    /** 访客手机号 */
    @Excel(name = "访客手机号")
    private String mobile;

    /** 被访人/被访对象 */
    @Excel(name = "被访人/被访对象")
    private String visitedPerson;

    /** 预约到访时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预约到访时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date appointmentTime;

    /** 预约状态 */
    @Excel(name = "预约状态")
    private Long status;

    /** 同步到本地时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "同步到本地时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date syncTime;

    /** 来源平台 */
    @Excel(name = "来源平台")
    private String sourcePlatform;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setAppointmentNo(String appointmentNo)
    {
        this.appointmentNo = appointmentNo;
    }

    public String getAppointmentNo()
    {
        return appointmentNo;
    }

    public void setVisitorName(String visitorName)
    {
        this.visitorName = visitorName;
    }

    public String getVisitorName()
    {
        return visitorName;
    }

    public void setMobile(String mobile)
    {
        this.mobile = mobile;
    }

    public String getMobile()
    {
        return mobile;
    }

    public void setVisitedPerson(String visitedPerson)
    {
        this.visitedPerson = visitedPerson;
    }

    public String getVisitedPerson()
    {
        return visitedPerson;
    }

    public void setAppointmentTime(Date appointmentTime)
    {
        this.appointmentTime = appointmentTime;
    }

    public Date getAppointmentTime()
    {
        return appointmentTime;
    }

    public void setStatus(Long status)
    {
        this.status = status;
    }

    public Long getStatus()
    {
        return status;
    }

    public void setSyncTime(Date syncTime)
    {
        this.syncTime = syncTime;
    }

    public Date getSyncTime()
    {
        return syncTime;
    }

    public void setSourcePlatform(String sourcePlatform)
    {
        this.sourcePlatform = sourcePlatform;
    }

    public String getSourcePlatform()
    {
        return sourcePlatform;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("appointmentNo", getAppointmentNo())
            .append("visitorName", getVisitorName())
            .append("mobile", getMobile())
            .append("visitedPerson", getVisitedPerson())
            .append("appointmentTime", getAppointmentTime())
            .append("status", getStatus())
            .append("syncTime", getSyncTime())
            .append("sourcePlatform", getSourcePlatform())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
