package com.boman.web.core.service.leave;

import com.alibaba.fastjson.JSONObject;

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

/**
 * @author shiqian
 * @date 2021年06月17日 16:04
 **/
public interface LeaveService {


    /**
     * 功能描述: 直接查询一年的
     *
     * @param yyyy yyyy
     * @return int
     */
    Map<String, Integer> statisticByType(String yyyy);

    /**
     * 当天请假人数
     * @return
     */
    Integer statisticLeave();

    /**
     * 功能描述: 根据deptId获取销假标准
     *
     * @param deptId deptId
     * @return com.alibaba.fastjson.JSONObject
     */
    JSONObject getStandard(Long deptId);

    /**
     * 功能描述: 根据id查找
     *
     * @param id id
     * @return com.alibaba.fastjson.JSONObject
     */
    JSONObject getTempLeave(Long id);

    /**
     * 功能描述: 拿到当前人，当月的总临时时长
     *
     * @param username username
     * @return com.alibaba.fastjson.JSONObject
     */
    BigDecimal sumBeforeTempLeaveTime(String username, String startTime, String endTime, List<Long> idList);

    /**
     * 功能描述: 销假 (自己销自己的)
     *
     * @param idList idList
     * @return com.boman.domain.dto.AjaxResult
     */
    boolean cancelLeave(List<Long> idList);
}
