package com.zhongshu.card.client.model.attendance;

import com.zhongshu.card.client.type.LeaveQueryType;
import com.zhongshu.card.client.type.LeaveStatus;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.util.List;

@Data
public class LeaveQueryParam {

    @Schema(description = "项目oid")
    private String projectId;

    @Schema(description = "应用场景id")
    private String sceneId;

    @Schema(description = "查询类型")
    private LeaveQueryType leaveQueryType;

    @Schema(description = "开始时间")
    private Long startTime;

    @Schema(description = "结束时间")
    private Long endTime;

    @Schema(description = "请假类型")
    private List<String> leaveType;

    @Schema(description = "请假状态")
    private List<LeaveStatus> leaveStatus;

    @Schema(description = "申请人姓名")
    private String leaveUserName;

    @Schema(description = "申请人电话")
    private String leaveUserPhone;

    @Schema(description = "审批人姓名")
    private String approvalUserName;

    @Schema(description = "审核时间开始")
    private Long approvalStartTime;

    @Schema(description = "审核时间结束")
    private Long approvalEndTime;
}
