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")
    @NotEmpty(message = "应用场景不能为空")
    @NotNull(message = "应用场景不能为null")
    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;
}
