feat(wms): 新增考勤比对功能

- 创建 AttendanceCheckBo 数据传输对象用于考勤比对参数传递
- 定义 IWmsAttendanceCheckService 接口及其实现类
- 创建 WmsAttendanceCheck 实体类存储考勤比对结果数据
- 开发 WmsAttendanceCheckController 提供考勤比对接口
- 实现考勤比对核心逻辑,支持上下班时间段考勤检查
- 集成打卡记录查询和考勤规则应用功能
- 添加考勤状态判断和扣款计算逻辑
- 实现连续旷工天数统计功能
- 创建考勤比对结果的增删改查接口
- 配置 MyBatis 映射文件和 Excel 导出功能
This commit is contained in:
2026-05-12 16:29:54 +08:00
parent 736b786ff9
commit 693de2ad5e
9 changed files with 695 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.klp.mapper.WmsAttendanceCheckMapper">
<resultMap type="com.klp.domain.WmsAttendanceCheck" id="WmsAttendanceCheckResult">
<result property="checkId" column="check_id"/>
<result property="scheduleId" column="schedule_id"/>
<result property="userId" column="user_id"/>
<result property="employeeName" column="employee_name"/>
<result property="workDate" column="work_date"/>
<result property="shiftId" column="shift_id"/>
<result property="shiftName" column="shift_name"/>
<result property="shiftType" column="shift_type"/>
<result property="p1StartTime" column="p1_start_time"/>
<result property="p1EndTime" column="p1_end_time"/>
<result property="p1FirstCheck" column="p1_first_check"/>
<result property="p1LastCheck" column="p1_last_check"/>
<result property="p1LateMinutes" column="p1_late_minutes"/>
<result property="p1EarlyMinutes" column="p1_early_minutes"/>
<result property="p1Status" column="p1_status"/>
<result property="p1Deduct" column="p1_deduct"/>
<result property="p2StartTime" column="p2_start_time"/>
<result property="p2EndTime" column="p2_end_time"/>
<result property="p2FirstCheck" column="p2_first_check"/>
<result property="p2LastCheck" column="p2_last_check"/>
<result property="p2LateMinutes" column="p2_late_minutes"/>
<result property="p2EarlyMinutes" column="p2_early_minutes"/>
<result property="p2Status" column="p2_status"/>
<result property="p2Deduct" column="p2_deduct"/>
<result property="absentType" column="absent_type"/>
<result property="continuousAbsentDays" column="continuous_absent_days"/>
<result property="totalDeduct" column="total_deduct"/>
<result property="overallStatus" column="overall_status"/>
<result property="remark" column="remark"/>
<result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="updateBy" column="update_by"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
</resultMap>
</mapper>