package jnpf.model.attendance.vo.attendance;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.alibaba.excel.annotation.ExcelProperty;
import java.math.BigDecimal;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ConfirmDetailsInfo {
    @ExcelProperty("考勤月份")
    private String month;

    @ExcelProperty("存休天数")
    private BigDecimal saveRest = BigDecimal.ZERO;

    @ExcelProperty("使用假时长")
    private BigDecimal leaveDurationHours = BigDecimal.ZERO;

    @ExcelProperty("应出勤天数")
    private BigDecimal shouldAttendDays = BigDecimal.ZERO;

    @ExcelProperty("应出勤工时")
    private BigDecimal shouldAttendHours = BigDecimal.ZERO;

    @ExcelProperty("实际出勤天数")
    private BigDecimal actualAttendDays = BigDecimal.ZERO;

    @ExcelProperty("实际出勤工时")
    private BigDecimal actualAttendHours = BigDecimal.ZERO;

    @ExcelProperty("有效出勤天数")
    private BigDecimal effectiveAttendDays = BigDecimal.ZERO;

    @ExcelProperty("有效出勤工时")
    private BigDecimal effectiveAttendHours = BigDecimal.ZERO;

    @ExcelProperty("迟到次数")
    private Integer lateTimes = 0;

    @ExcelProperty("迟到分钟数")
    private BigDecimal lateMinutes = BigDecimal.ZERO;

    @ExcelProperty("早退次数")
    private Integer earlyLeaveTimes = 0;

    @ExcelProperty("早退分钟数")
    private BigDecimal earlyLeaveMinutes = BigDecimal.ZERO;

    @ExcelProperty("缺卡次数")
    private Integer absenceCardTimes = 0;

    @ExcelProperty("缺卡小时数")
    private BigDecimal absenceCardHours = BigDecimal.ZERO;

    @ExcelProperty("缺勤次数")
    private Integer absenceTimes = 0;

    @ExcelProperty("缺勤小时数")
    private BigDecimal absenceHours = BigDecimal.ZERO;

    @ExcelProperty("补卡次数")
    private Integer makeUpCardTimes = 0;

    @ExcelProperty("外勤次数")
    private Integer outworkTimes = 0;

    @ExcelProperty("出差次数")
    private Integer busTimes = 0;

    @ExcelProperty("出差时长")
    private BigDecimal busDays = BigDecimal.ZERO;

    @ExcelProperty("外出次数")
    private Integer outTimes = 0;

    @ExcelProperty("外出时长")
    private BigDecimal outDays = BigDecimal.ZERO;

    @ExcelProperty("加班次数")
    private Integer overtimeTimes = 0;

    @ExcelProperty("加班时长")
    private BigDecimal overtimeHours = BigDecimal.ZERO;

    @ExcelProperty("请假时长")
    private BigDecimal leaveHours = BigDecimal.ZERO;

    @ExcelProperty("未抵扣请假时长")
    private BigDecimal unDeductedLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("事假")
    private BigDecimal thingLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("病假")
    private BigDecimal illnessLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("工伤假")
    private BigDecimal injuryLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("年假")
    private BigDecimal annualLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("婚假")
    private BigDecimal marriageLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("产假")
    private BigDecimal maternityLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("陪产假")
    private BigDecimal paternityLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("丧假")
    private BigDecimal funeralLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("探亲假")
    private BigDecimal homeLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("小儿照护假")
    private BigDecimal childcareLeaveHours = BigDecimal.ZERO;

    @ExcelProperty("其他")
    private BigDecimal otherLeaveHours = BigDecimal.ZERO;
}
