package jnpf.model.attendance.vo;

import jnpf.model.attendance.vo.attendance.OvertimeRuleVo;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 考勤规则vo
 *
 * @author yanwenfu
 * @create 2023-11-22
 */
@NoArgsConstructor
@Getter
@Setter
public class GroupRuleVo {

    /** 自己的考勤组id */
    private String selfGroupId;
    /** 继承的考勤组id */
    private String groupId;
    /** 出勤换算比(n小时换算为一天) */
    private BigDecimal attendanceRatio;
    /** 内勤是否需要拍照 1:是, 0: 否) */
    private Integer attendancePhoto;
    /** 加班是否发放余额(1不发 2天发 3小时发) */
    private Integer overtimeGrantType;
    /** 加班换算比(n小时换算为一天) */
    private BigDecimal overtimeRatio;
    /** 是否允许外勤打卡(1是 0否) */
    private Integer fieldClockStatus;
    /** 外勤是否需要审批(1: 是, 0: 否) */
    private Integer approveEnable;
    /**外勤是否需要拍照 1:是(默认), 0: 否)*/
    private Integer shouldTakePhoto;
    /** 是否允许补卡(1是 0否) */
    private Integer patchClockStatus;
    /** 每月可以提交补卡次数 */
    private Integer patchClockNumber;
    /** 补卡次数刷新日  */
    private Integer patchRefreshDay;
    /** 考勤组锁定日期(null为未锁定) 暂弃 */
    private Date lockDate;
    /** 补卡周期天数 */
    private Integer patchCycleDay;
    /** 补卡类型(1: 迟到, 2: 早退, 3: 缺卡, 4: 旷工) 例：1,2,3 */
    private String patchType;
    /** 未排班是否可选择班次(0不可选 1可选) */
    private Integer selectRuleEnable;
    /** 调整出勤是否需要审批(0不需要审批 1需要审批) */
    private Integer modifyClockApplyEnable;
    /** 是否需要人脸识别 */
    private boolean face;
    /** 加班规则 */
    private OvertimeRuleVo overtimeRuleVo;
}
