|
|
@@ -318,21 +318,46 @@ public class AttendanceRecordServiceImpl implements IAttendanceRecordService {
|
|
318
|
318
|
@Override
|
|
319
|
319
|
public List<AttendanceRecordRep> recordList(AttendanceRecordReq dto) {
|
|
320
|
320
|
List<AttendanceRecordRep> result = Lists.newArrayList();
|
|
321
|
|
- AttendanceRecord recordSearch = new AttendanceRecord();
|
|
322
|
|
- recordSearch.setUserId(dto.getUserId());
|
|
|
321
|
+// AttendanceRecord recordSearch = new AttendanceRecord();
|
|
|
322
|
+// recordSearch.setUserId(dto.getUserId());
|
|
|
323
|
+// if (StrUtil.equals("1", dto.getType())) {
|
|
|
324
|
+// // 单日查询场景
|
|
|
325
|
+// Date targetAttendanceDate = dto.getCheckInDate();
|
|
|
326
|
+// // 计算查询时间范围
|
|
|
327
|
+// Date yesterday = DateUtils.addDays(targetAttendanceDate, -1);
|
|
|
328
|
+// // 设置查询条件
|
|
|
329
|
+// recordSearch.setAttendanceDateStart(yesterday);
|
|
|
330
|
+// recordSearch.setAttendanceDateEnd(targetAttendanceDate);
|
|
|
331
|
+// } else {
|
|
|
332
|
+// recordSearch.setAttendanceDateStart(dto.getStartDate());
|
|
|
333
|
+// recordSearch.setAttendanceDateEnd(dto.getEndDate());
|
|
|
334
|
+// }
|
|
|
335
|
+// List<AttendanceRecord> attendanceRecords = attendanceRecordMapper.selectAttendanceRecordList(recordSearch);
|
|
|
336
|
+// if (CollectionUtil.isEmpty(attendanceRecords)) {
|
|
|
337
|
+// return result;
|
|
|
338
|
+// }
|
|
|
339
|
+ List<AttendanceRecord> attendanceRecords;
|
|
323
|
340
|
if (StrUtil.equals("1", dto.getType())) {
|
|
324
|
|
- // 单日查询场景
|
|
325
|
|
- Date targetAttendanceDate = dto.getCheckInDate();
|
|
326
|
|
- // 计算查询时间范围
|
|
327
|
|
- Date yesterday = DateUtils.addDays(targetAttendanceDate, -1);
|
|
328
|
|
- // 设置查询条件
|
|
329
|
|
- recordSearch.setAttendanceDateStart(targetAttendanceDate);
|
|
330
|
|
- recordSearch.setAttendanceDateEnd(targetAttendanceDate);
|
|
|
341
|
+ AttendanceRecord recordSearch = new AttendanceRecord();
|
|
|
342
|
+ recordSearch.setUserId(dto.getUserId());
|
|
|
343
|
+ attendanceRecords = attendanceRecordMapper.selectAttendanceRecordList(recordSearch);
|
|
|
344
|
+ if (CollectionUtil.isEmpty(attendanceRecords)) {
|
|
|
345
|
+ return result;
|
|
|
346
|
+ }
|
|
|
347
|
+ List<AttendanceRecord> tempList = attendanceRecords.stream().filter(record -> record.getAttendanceDate().equals(dto.getCheckInDate())).collect(Collectors.toList());
|
|
|
348
|
+ if (CollectionUtil.isEmpty(tempList)) {
|
|
|
349
|
+ Date attendanceDate = attendanceRecords.get(0).getAttendanceDate();
|
|
|
350
|
+ attendanceRecords = attendanceRecords.stream().filter(record -> record.getAttendanceDate().equals(attendanceDate)).collect(Collectors.toList());
|
|
|
351
|
+ } else {
|
|
|
352
|
+ attendanceRecords = tempList;
|
|
|
353
|
+ }
|
|
331
|
354
|
} else {
|
|
|
355
|
+ AttendanceRecord recordSearch = new AttendanceRecord();
|
|
|
356
|
+ recordSearch.setUserId(dto.getUserId());
|
|
332
|
357
|
recordSearch.setAttendanceDateStart(dto.getStartDate());
|
|
333
|
358
|
recordSearch.setAttendanceDateEnd(dto.getEndDate());
|
|
|
359
|
+ attendanceRecords = attendanceRecordMapper.selectAttendanceRecordList(recordSearch);
|
|
334
|
360
|
}
|
|
335
|
|
- List<AttendanceRecord> attendanceRecords = attendanceRecordMapper.selectAttendanceRecordList(recordSearch);
|
|
336
|
361
|
if (CollectionUtil.isEmpty(attendanceRecords)) {
|
|
337
|
362
|
return result;
|
|
338
|
363
|
}
|