feat(oa): 新增考勤汇总功能

- 新增考勤汇总主表和明细表的插入接口
- 实现根据用户ID数组和日期范围计算出勤、加班、出差小时数的功能
- 优化数据结构,将用户ID类型从String改为Long
- 添加日期格式注解,规范日期格式
- 重构部分代码,提高可读性和可维护性
This commit is contained in:
2025-08-07 14:56:43 +08:00
parent f536104e39
commit 72bdffc284
18 changed files with 142 additions and 10 deletions

View File

@@ -33,7 +33,7 @@ public class GearAttendanceRecord extends BaseEntity {
/**
* 用户ID
*/
private String userId;
private Long userId;
/**
* 记录日期
*/

View File

@@ -10,6 +10,7 @@ import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.gear.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 考勤汇总对象 gear_attendance_summary
@@ -36,10 +37,12 @@ public class GearAttendanceSummary extends BaseEntity {
/**
* 汇总开始日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startDate;
/**
* 汇总结束日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endDate;
/**
* 删除标志

View File

@@ -35,7 +35,7 @@ public class GearAttendanceSummaryDetail extends BaseEntity {
/**
* 用户ID
*/
private String userId;
private Long userId;
/**
* 正常出勤小时数
*/

View File

@@ -27,7 +27,7 @@ public class GearAttendanceRecordBo extends BaseEntity {
/**
* 用户ID
*/
private String userId;
private Long userId;
/**
* 记录日期

View File

@@ -9,8 +9,11 @@ import javax.validation.constraints.*;
import java.util.Date;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.gear.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;
/**
* 考勤汇总业务对象 gear_attendance_summary
@@ -36,11 +39,13 @@ public class GearAttendanceSummaryBo extends BaseEntity {
/**
* 汇总开始日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startDate;
/**
* 汇总结束日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date endDate;
/**
@@ -48,5 +53,7 @@ public class GearAttendanceSummaryBo extends BaseEntity {
*/
private String remark;
//user_id数组
private List<Long> userIds;
}

View File

@@ -35,7 +35,7 @@ public class GearAttendanceSummaryDetailBo extends BaseEntity {
/**
* 用户ID
*/
private String userId;
private Long userId;
/**
* 正常出勤小时数

View File

@@ -34,7 +34,7 @@ public class GearAttendanceRecordVo {
* 用户ID
*/
@ExcelProperty(value = "用户ID")
private String userId;
private Long userId;
/**
* 记录日期

View File

@@ -38,7 +38,7 @@ public class GearAttendanceSummaryDetailVo {
* 用户ID
*/
@ExcelProperty(value = "用户ID")
private String userId;
private Long userId;
/**
* 正常出勤小时数

View File

@@ -7,6 +7,8 @@ import com.alibaba.excel.annotation.ExcelProperty;
import com.gear.common.annotation.ExcelDictFormat;
import com.gear.common.convert.ExcelDictConvert;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@@ -38,12 +40,14 @@ public class GearAttendanceSummaryVo {
/**
* 汇总开始日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ExcelProperty(value = "汇总开始日期")
private Date startDate;
/**
* 汇总结束日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@ExcelProperty(value = "汇总结束日期")
private Date endDate;