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

import lombok.*;

import java.io.Serializable;
import java.util.*;
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("org_build_room")
@KeySequence("org_build_room_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BuildRoomDO implements Serializable {

    /**
     * id
     */
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;

    /**
     * 房间编码
     */
    private String roomCode;

    /**
     * 房间名称
     */
    private String roomName;
    /**
     * 房间用途
     */
    private String roomUsage;
    /**
     * 房间朝向
     */
    @TableField(updateStrategy = FieldStrategy.ALWAYS)
    private String orientation;
    /**
     * 房间设置
     */
    private String roomSettings;
    /**
     * 房间区域
     */
    @TableField(updateStrategy = FieldStrategy.ALWAYS)
    private String roomArea;
    /**
     * 长者类型
     */
    @TableField(updateStrategy = FieldStrategy.ALWAYS)
    private String elderType;
    /**
     * 楼层id
     */
    private Long floorId;
    /**
     * 全景URL
     */
    private String panoramicUrl;
    /**
     * 房间图片
     */
    private String roomImage;


    @TableField(exist = false)
    private List<String> roomImageList;
    /**
     * 房间视频
     */
    private String roomVideo;
    /**
     * 更新人
     */
    private String updateBy;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 封面图
     */
    private String coverImage;


    /**
     * 房间使用状态，0：空闲 1：入住 2：临时占用
     */
    private Integer status;


    private Long tenantId;

    private Integer orgType;

    @TableField(exist = false)
    private List<BuildBedDO> bedList;

}