package jnpf.model.attendance.vo.attendance;

import com.alibaba.excel.annotation.ExcelProperty;
import jnpf.model.attendance.model.LeaveTypeJsonData;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;

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

    @ExcelProperty("已休|应休")
    private String retired = "0|0";

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

    @ExcelProperty("应出勤小时数")
    private BigDecimal shouldAttendHours = 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 makeUpCardTimes = 0;

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

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

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

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

    @ExcelProperty("缺卡天数")
    private BigDecimal absenceCardDays = BigDecimal.ZERO;

    @ExcelProperty("旷工次数")
    private Integer absenceTimes = 0;

    @ExcelProperty("旷工天数")
    private BigDecimal absenceDays = BigDecimal.ZERO;

    @ExcelProperty("出差天数")
    private BigDecimal busDays = BigDecimal.ZERO;

    @ExcelProperty("外出天数")
    private BigDecimal outDays = BigDecimal.ZERO;

    @ExcelProperty("节假日加班小时数")
    private BigDecimal holidaysOvertimeHours = BigDecimal.ZERO;

    @ExcelProperty("公休日加班小时数")
    private BigDecimal publicHolidaysOvertimeHours = BigDecimal.ZERO;

    @ExcelProperty("工作日加班小时数")
    private BigDecimal weekdayOvertimeHours = BigDecimal.ZERO;

    @ExcelProperty("请假天数")
    private BigDecimal leaveDays = BigDecimal.ZERO;

    @ExcelProperty("调休天数")
    private BigDecimal compensationDays = BigDecimal.ZERO;

    @ExcelProperty("自定义假期动态Json")
    private List<LeaveTypeJsonData> customLeaveList;
}
