package jnpf.model.attendance.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 日考勤本列表VO - 单天记录
 * 
 * 说明：由于是按员工分组的，员工信息（userId、realName、positionName）在父级 BookRecordDayListVo 中已有，
 * 此处不再重复包含，避免数据冗余。
 * 
 * @author Generated
 * @create 2026-04-16
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "日考勤本记录VO")
public class BookRecordDayVo {

    @Schema(description = "记录ID")
    private String id;

    @Schema(description = "考勤日期（yyyy-MM-dd）")
    private String day;

    @Schema(description = "时段类型（1:上班卡 2:下班卡）")
    private Integer periodType;

    @Schema(description = "时段类型名称")
    private String periodTypeName;

    @Schema(description = "考勤状态（1:正常 2:迟到 3:早退 4:缺卡 5:请假 6:出差 7:外出 8:加班）")
    private Integer attendanceStatus;

    @Schema(description = "考勤状态名称")
    private String attendanceStatusName;

    @Schema(description = "请假类型ID（与保存接口一致，可为空）")
    private String leaveType;

    @Schema(description = "请假/假期类型名称（展示用，与 leaveType 对应）")
    private String leaveTypeName;

    @Schema(description = "备注")
    private String remark;

    @Schema(description = "是否被修改过")
    private Boolean changed;

    @Schema(description = "离组状态（-1为已离 0为未入 1正常 2借调）")
    private Integer isOutGroup;
}
