diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerMonthAttendanceStatisticsServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerMonthAttendanceStatisticsServiceImpl.java index f34652e7b..46bbf01f3 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerMonthAttendanceStatisticsServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/WorkerMonthAttendanceStatisticsServiceImpl.java @@ -610,16 +610,28 @@ public class WorkerMonthAttendanceStatisticsServiceImpl extends ServiceImpl endDate.getTime()) { + boolean flag = false; + for (int i = 0; i < list.size(); i++) { + EntityMap map = list.get(i); + if (map.get("createTime") != null) { + Date attendanceTime = sdf.parse(map.get("createTime").toString()); + if (attendanceTime.getTime() > startDate.getTime() && attendanceTime.getTime() < endDate.getTime()) { + flag = true; + break; + } + } + } + if (flag) { attendanceType = 1; //正常 } else { attendanceType = 0; //缺勤 @@ -658,14 +670,14 @@ public class WorkerMonthAttendanceStatisticsServiceImpl extends ServiceImpl endDate.getTime() && maxDate.getTime() > endDate.getTime()) { attendanceType = 0; //缺勤 - } else if (minDate.getTime() > startDate.getTime()) { - attendanceType = 2; //迟到 } else if (maxDate.getTime() < endDate.getTime()) { if (yesAdvanceDate != null && maxDate.getTime() < yesAdvanceDate.getTime()) { attendanceType = 0; //缺勤 } else { attendanceType = 3; //早退 } + } else if (minDate.getTime() > startDate.getTime()) { + attendanceType = 2; //迟到 } else { attendanceType = 1; //正常 }