package jnpf.model.attendance.vo;

import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 考勤组信息vo
 *
 * @author yanwenfu
 * @create 2023-11-22
 */
@NoArgsConstructor
@Getter
@Setter
public class GroupInfoVo {

    /** 日期 */
    private Date day;
    /** 考勤组id */
    private String groupId;
    /** 考勤组名称 */
    private String groupName;
    /** 考勤组锁定时间 */
    private Date lockedDate;
    /** 是否自己的考勤组(1: 是, 0: 否) */
    private Integer selfGroup;
    /** 用户id */
    private String userId;
    /** 打卡方式 */
    private ClockInMethodVo clockInMethodVo = new ClockInMethodVo();
    /** 考勤组规则 */
    private GroupRuleVo groupRule;
    /** 出勤规则列表 */
    private List<AttendanceRuleVo> attendanceRuleList = new ArrayList<>();
    /** 审批列表 */
    private List<DailyApprovalVo> approvalList = new ArrayList<>();
    /** 打卡列表 */
    List<DailyClockInVo> clockInList = new ArrayList<>();

    public GroupInfoVo(Date day, String groupId, String groupName, Date lockedDate, Integer selfGroup, String userId) {
        this.day = day;
        this.groupId = groupId;
        this.groupName = groupName;
        this.lockedDate = lockedDate;
        this.selfGroup = selfGroup;
        this.userId = userId;
    }

    public GroupInfoVo(String groupId, String groupName) {
        this.groupId = groupId;
        this.groupName = groupName;
    }
}
