package cn.iocoder.yudao.module.bpm.controller.admin.meeting.reserve.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.util.*;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import com.alibaba.excel.annotation.*;

@Schema(description = "管理后台 - 会议室预定管理信息 Response VO")
@Data
@ExcelIgnoreUnannotated
public class OaMeetingReserveRespVO {

    @Schema(description = "主键id")
    // @ExcelProperty("主键id")
    private Long id;

    @Schema(description = "预定uuid")
    // @ExcelProperty("预定uuid")
    private String reserveUuid;

    @Schema(description = "会议室id")
    // @ExcelProperty("会议室id")
    private Long roomId;

    @Schema(description = "会议室名称", example = "上海会议室")
    @ExcelProperty("会议室名称")
    private String roomName;

    @Schema(description = "会议名称")
    @ExcelProperty("会议名称")
    private String meetingName;

    @Schema(description = "会议开始时间")
    @ExcelProperty("会议开始时间")
    private String startTime;

    @Schema(description = "会议结束时间")
    @ExcelProperty("会议结束时间")
    private String endTime;

    @Schema(description = "申请人id")
    // @ExcelProperty("申请人id")
    private Long applyEmployeeId;

    @Schema(description = "申请人名字")
    @ExcelProperty("申请人名字")
    private String applyEmployeeName;

    @Schema(description = "申请人手机号")
    @ExcelProperty("申请人手机号")
    private String applyEmployeePhone;

    @Schema(description = "申请人部门")
    // @ExcelProperty("申请人部门")
    private Long deptId;

    @Schema(description = "申请人部门名称")
    @ExcelProperty("申请人部门名称")
    private String depName;

    @Schema(description = "参会人数")
    @ExcelProperty("参会人数")
    private String number;

    @Schema(description = "参会人员id集合")
    // @ExcelProperty("参会人员id集合")
    private List<Long> participants;

    @Schema(description = "参会人员名字，逗号分隔")
    // @ExcelProperty("参会人员名字，逗号分隔")
    private String participantsName;

    @Schema(description = "发送类型：1站内信 2短信 3邮件，目前仅1启用")
    // @ExcelProperty("发送类型：1站内信 2短信 3邮件，目前仅1启用")
    private String sendType;

    @Schema(description = "会议预定状态：1未开始 2进行中 3已结束 4已取消", example = "2")
    // @ExcelProperty("会议预定状态：1未开始 2进行中 3已结束 4已取消")
    private String status;

    @Schema(description = "会议预定状态描述：1未开始 2进行中 3已结束 4已取消", example = "2")
    @ExcelProperty("会议预定状态描述：1未开始 2进行中 3已结束 4已取消")
    private String statusDesc;

    @Schema(description = "会议内容")
    @ExcelProperty("会议内容")
    private String meetingContent;

    @Schema(description = "创建时间")
    @ExcelProperty("创建时间")
    private LocalDateTime createTime;

}