package com.bonus.system.att.dao;

import com.bonus.system.att.entity.*;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * 轮休临时外出异常数据-数据访问层
 * @author hongchao
 */
@Repository("attExceptionHandleDao")
public interface AttExceptionHandleDao {

    /**
     * 获取轮休临时外出异常数据
     * @param data 参数
     * @return list bean
     */
    AttExceptionBean selectAttExceptionList(AttExceptionBean data);

    /**
     * 轮休临时外出异常月份
     * @return
     */
    List<Map<String,Object>> selectAttExceptionMonth();

    /**
     * 轮休临时外出异常未处理月份
     * @return
     */
    List<Map<String,Object>> selectAttExceptionNoHandleMonth();

    /**
     * 获取轮休临时外出异常数据详情
     * @param data 参数
     * @return list bean
     */
    List<AttExceptionBean> getDetailException(AttExceptionBean data);

    /**
     * 获取轮休临时外出异常数据详情
     * @param data 参数
     * @return list bean
     */
    List<AttExceptionBean> getDetailAllException(AttExceptionBean data);

    /**
     * 获取轮休异常报表未申请详情
     * @param data 参数
     * @return list bean
     */
    List<AttDetailLeaveBean> getDetailExceptionRest(AttDetailLeaveBean data);

    /**
     * 获取临时外出异常报表未申请详情
     * @param data 参数
     * @return list bean
     */
    List<AttDetailLeaveBean> getDetailExceptionOut(AttDetailLeaveBean data);

    /**
     * 获取轮休和临时外出异常报表未申请详情
     * @param data 参数
     * @return list bean
     */
    List<AttDetailLeaveBean> getDetailExceptionAll(AttDetailLeaveBean data);

    /**
     * 获取部门负责人id数据
     * @param data 参数
     * @return list bean
     */
    AttExRemindBean getOrgUserId(AttExRemindBean data);

    /**
     * 审批提醒
     * @param vo
     * @return
     */
    int examineRemind(AttExRemindBean vo);

    /**
     * 审批提醒
     * @param vo
     * @return
     */
    int examineRemindTemp(AttExRemindBean vo);
}
