package cn.iocoder.yudao.module.system.dal.dataobject.reservation;

import lombok.*;

import java.time.LocalDate;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 长者预约床位 DO
 *
 * @author 系统管理员
 */
@TableName("elderly_reservation_bed")
@KeySequence("elderly_reservation_bed_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ReservationBedDO extends BaseDO {

    /**
     * 主键ID
     */
    @TableId
    private Long id;
    /**
     * 长者名称
     */
    private String elderName;
    /**
     * 长者性别
     */
    private Integer elderSex;
    /**
     * 出生日期
     */
    private LocalDate birthday;
    /**
     * 年龄
     */
    private Integer age;
    /**
     * 证件类型
     */
    private Integer idType;
    /**
     * 证件号码
     */
    private String idNumber;
    /**
     * 证件地址
     */
    private String certificateAddress;
    /**
     * 居住地址
     */
    private String address;
    /**
     * 托养人姓名
     */
    private String relativeName;
    /**
     * 托养人手机号
     */
    private String relativePhone;
    /**
     * 关系
     */
    private Integer relation;
    /**
     * 预约入住时间
     */
    private LocalDate reservationCheckInTime;
    /**
     * 床位ID
     */
    private Long bedId;
    /**
     * 销售人员
     */
    private String salesperson;
    /**
     * 来源渠道
     */
    private Integer sourceChannel;
    /**
     * 预约说明
     */
    private String instructions;
    /**
     * 状态
     */
    private Integer status;
    /**
     * 系统类型
     */
    private Integer orgType;

    /**
     * 缴费状态，0：未缴费 1：已缴费
     */
    private Integer payStatus;
    /**
     * 缴费时间
     */
    private Date payTime;
    /**
     * 收款人姓名
     */
    private String payeeName;

    /**
     * 预约目的
     */
    private String purposeType;

    private Long tenantId;
}