commit
Some checks failed
API接口参数变更检测 / api-param-check (push) Has been cancelled

This commit is contained in:
2026-06-05 16:18:40 +08:00
parent 1ca34c6bb2
commit 3cba3bb74e
4393 changed files with 450030 additions and 103 deletions

View File

@@ -0,0 +1,149 @@
package jnpf.attendance.service;
import jnpf.model.attendance.model.*;
import jnpf.model.attendance.vo.attendance.DayStatisticsQueryVo;
import jnpf.model.common.DateRangeDto;
import jnpf.permission.vo.v2.user.UserBoundVO;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 统计公共方法服务
*
* @author shitou
* @date 2023/11/22
*/
public interface StatisticsUtilService {
/**
* 获取用户考勤情况
*
* @param userId 用户ID
* @param selectDateRangeDto 日期范围
* @param dateArrayList 月日期集合
* @param dayStatisticsQueryVoList 用户日统计数据
* @return List<ClockInfo>
*/
List<ClockInfo> getUserClockDateArrayList(String userId, DateRangeDto selectDateRangeDto,
List<Date> dateArrayList, List<DayStatisticsQueryVo> dayStatisticsQueryVoList);
/**
* 获取请假记录
*
* @param userMap 用户信息
* @param ratioMap 出勤换算比
* @param userIds 用户集合
* @param dateRangeDto 日期范围
* @return 请假记录 Key是用户ID+考勤组ID
*/
Map<String, List<LeaveRecord>> getLeaveMap(Map<String, UserBoundVO> userMap, Map<String, BigDecimal> ratioMap, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取迟到记录集合
*
* @param userMap 用户信息
* @param sealMap 用户是否封账
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 迟到记录 Key是用户ID+考勤组ID
*/
Map<String, List<LateRecord>> getLateMap(Map<String, UserBoundVO> userMap, Map<String, Boolean> sealMap, List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取早退记录集合
*
* @param userMap 用户信息
* @param sealMap 用户是否封账
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 早退记录 Key是用户ID+考勤组ID
*/
Map<String, List<EarlyLeaveRecord>> getEarlyMap(Map<String, UserBoundVO> userMap, Map<String, Boolean> sealMap, List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取缺卡记录集合
*
* @param userMap 用户信息
* @param sealMap 用户是否封账
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 缺卡记录 Key是用户ID+考勤组ID
*/
Map<String, List<AbsenceCardRecord>> getAbsenceCardMap(Map<String, UserBoundVO> userMap, Map<String, Boolean> sealMap, List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取缺勤记录集合
*
* @param groupIds 考勤组集合
* @param sealMap 用户是否封账
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 缺勤记录 Key是用户ID+考勤组ID
*/
Map<String, List<AbsenceRecord>> getAbsenceMap(List<String> groupIds, Map<String, Boolean> sealMap, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取补卡记录集合
*
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 补卡记录 Key是用户ID+考勤组ID
*/
Map<String, List<MakeUpCardRecord>> getMakeUpCardMap(List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取外勤记录集合
*
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 外勤记录 Key是用户ID+考勤组ID
*/
Map<String, List<OutworkRecord>> getOutworkRecordList(List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取加班记录集合
*
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 加班记录 Key是用户ID+考勤组ID
*/
Map<String, List<OvertimeRecord>> getOvertimeRecordList(List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取借调记录集合
*
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 借调记录 Key是用户ID+考勤组ID
*/
Map<String, List<SecondRecord>> getSecondRecordList(List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取出差记录集合
*
* @param groupIds 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 出差记录 Key是用户ID+考勤组ID
*/
Map<String, List<BusOrOutRecord>> getBusRecordList(List<String> groupIds, List<String> userIds, DateRangeDto dateRangeDto);
/**
* 获取外出记录集合
*
* @param ratioMap 考勤组集合
* @param userIds 用户集合
* @param dateRangeDto 筛选时间范围
* @return 外出记录 Key是用户ID+考勤组ID
*/
Map<String, List<BusOrOutRecord>> getOutRecordList(Map<String, BigDecimal> ratioMap, List<String> userIds, DateRangeDto dateRangeDto);
}