package com.srs.staff.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.srs.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import com.srs.common.core.domain.BaseEntity;


/**
 * 一站式社区-功能房对象 staff_one_stop_room
 *
 * @author chc
 * @date 2024-08-12
 */
@Data
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ApiModel(value = "StaffOneStopRoom对象", description = "一站式社区-功能房")
@TableName("staff_one_stop_room")
public class StaffOneStopRoom extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ApiModelProperty("主键")
    @TableField("room_id")
    private Long roomId;

    /**
     * 功能房编码
     */
    @ApiModelProperty("功能房编码")
    @TableField("room_no")
    //@Excel(name = "功能房编码")
    private String roomNo;

    /**
     * 功能房名
     */
    @ApiModelProperty("功能房名")
    @TableField("room_name")
    @Excel(name = "功能房名")
    private String roomName;

    /**
     * 使用事项
     */
    @ApiModelProperty("使用事项")
    @TableField("room_matter")
    @Excel(name = "使用事项")
    private String roomMatter;

    /**
     * 功能房预约规则
     */
    @ApiModelProperty("功能房预约规则")
    @TableField("room_rule")
    @Excel(name = "功能房预约规则")
    private String roomRule;

    /**
     * 功能房介绍
     */
    @ApiModelProperty("功能房介绍")
    @TableField("room_info")
    @Excel(name = "功能房介绍")
    private String roomInfo;

    /**
     * 功能房用途
     */
    @ApiModelProperty("功能房用途")
    @TableField("room_purp")
    @Excel(name = "功能房用途")
    private String roomPurp;

    /**
     * 开放状态
     */
    @ApiModelProperty("开放状态")
    @TableField("room_status")
    @Excel(name = "开放状态")
    private String roomStatus;

    /**
     * 功能房可承载人数
     */
    @ApiModelProperty("功能房可承载人数")
    @TableField("room_capacity")
    @Excel(name = "功能房可承载人数")
    private String roomCapacity;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    @TableField("room_createTime")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date roomCreatetime;

    /**
     * 更新时间
     */
    @ApiModelProperty("更新时间")
    @TableField("room_upTime")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date roomUptime;

    /**
     * 更新者
     */
    @ApiModelProperty("更新者")
    @TableField("room_upuser")
    @Excel(name = "更新者")
    private String roomUpuser;

    /**
     * 创建者
     */
    @ApiModelProperty("创建者")
    @TableField("room_user")
    @Excel(name = "创建者")
    private String roomUser;

    /**
     * 归属部门、学院
     */
    @ApiModelProperty("归属部门、学院")
    @TableField("room_depar")
    @Excel(name = "归属部门、学院")
    private String roomDepar;

    /**
     * 功能房图片
     */
    @ApiModelProperty("功能房图片")
    @TableField("room_imgs")
    //@Excel(name = "功能房图片")
    private String roomImgs;

    /**
     * 功能房-预约记录
     */
    @ApiModelProperty(value = "功能房-预约记录", hidden = true)
    //@Excel(name = "功能房-预约记录")
    private List<StaffOneStopRoomReservation> staffOneStopRoomReservationList;

    /**
     * 功能房-开放时间
     */
    @ApiModelProperty(value = "功能房-开放时间", hidden = true)
    //@Excel(name = "功能房-开放时间")
    private List<StaffOneStopRoomOpeningHours> staffOneStopRoomOpeningHoursList;
}
