package com.fs.statis.dto;

import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.stream.Collectors;

@Data
public class StatsWatchLogPageListDTO implements Serializable {

    /**
     * 员工列表
     */
    private List<String> userIds;

    public List<String> getUserIds() {
        if (userIds == null || userIds.isEmpty()) {
            return userIds;
        }

        return userIds.stream()
                .map(id -> {
                    if (id == null) {
                        return null;
                    }
                    // 去除前缀
                    if (id.startsWith("dept_")) {
                        return id.substring(5);
                    } else if (id.startsWith("company_")) {
                        return id.substring(8);
                    } else if (id.startsWith("user_")) {
                        return id.substring(5);
                    }
                    return id;
                })
                .collect(Collectors.toList());
    }

    /**
     * 开始时间
     */
    private String startDate;
    /**
     * 结束世界
     */
    private String endDate;

    /**
     * 营期列表
     */
    private List<String> periodList;

    private Integer pageNum;
    private Integer pageSize;

    /**
     * 不包含空值
     */
    private Boolean excludeNull;

    /**
     * 包含未发课数
     */
    private Boolean includeSend0;

}
