package com.bonus.system.leaveReporting.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.bonus.common.core.web.domain.BaseBean;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDate;
import java.util.Date;
import java.util.List;

/**
 *
 * @author lsun
 */
@Data
public class LeaveReportingBean  extends BaseBean {

    /**
     * 编号
     */
    @Excel(name = "序号", width = 10.0,height = 20.0, orderNum = "0")
    private long id;

    /**
     * 所属部门编号
     */
    private Long orgId;


    /**
     * 请假人用户编号
     */
    private Long userId;

    /**
     * 请假人姓名
     */
    @Excel(name = "姓名", width = 10.0,height = 20.0, orderNum = "1")
    private String userName;

    /**
     * 职务
     */
    @Excel(name = "职务", width = 20.0,height = 20.0, orderNum = "2")
    private String postName;

    /**
     * 所属部门名称
     */
    @Excel(name = "所属部门", width = 20.0,height = 20.0, orderNum = "3")
    private String orgName;

    /**
     * 休假类型
     */
    private String leaveType;

    /**
     * 休假开始时间1上午2下午
     */
    @Excel(name = "休假开始时间", width = 20.0,height = 20.0, orderNum = "5")
    private String leaveStartInterval;


    /**
     * 休假结束时间1上午2下午
     */
    @Excel(name = "休假结束时间", width = 20.0,height = 20.0, orderNum = "6")
    private String leaveEndInterval;

    /**
     * 休假时长（天）
     */
    @Excel(name = "休假时长（天）", width = 20.0,height = 20.0, orderNum = "7")
    private Double leaveDuration;

    /**
     * 请假开始日期
     */
    private LocalDate leaveStartDate;

    /**
     * 请假结束日期
     */
    private LocalDate leaveEndDate;

    /**
     * 请假事由
     */
    private String leaveReason;

    /**
     * 请假日期
     */
    private String leaveDate;

    /**
     * 数据来源1新增2导入
     */
    private String source;

    /**
     * 审批意见
     */
    private String examineOpinion;
    /**
     * 审批状态0审核中1通过2不通过
     */
    private String examineStatus;
    /**
     * 审批时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date examineTime;
    /**
     * 审批人编号
     */
    private Long examineUserId;

    /**
     * 导出类型 1 查询 2 审批
     */
    private String exportType;

    /**
     * 是否干部 1是 0不是
     */
    private String isCadre;

    /**
     * 是否请示领导 1 是 0 否
     */
    private String isAgree;

    /**
     * 备注
     */
    private String breamks;

    /**
     * 代理主持工作人员（多个自动隔开）
     */
    private String hostUserId;
    private String hostUserName;

    /**
     * 地点
     */
    private String location;

    /**
     * 休假类型
     */
    @Excel(name = "休假类型", width = 10.0,height = 20.0, orderNum = "4")
    private String type;

    /**
     * 自己项目部所在分公司下的所有项目部id
     */
    private List<String> orgList;

    private String date;
    private String name;

}
