Commit 5b4ecf8e authored by 赵啸非's avatar 赵啸非

优化考勤计算

parent 86002fd9
...@@ -44,13 +44,14 @@ public class AttendSummaryService implements IApplicationStartedService { ...@@ -44,13 +44,14 @@ public class AttendSummaryService implements IApplicationStartedService {
Thread.sleep(2000); Thread.sleep(2000);
if (StringUtils.isNotEmpty(query.getSummaryTimeStart()) && StringUtils.isNotEmpty(query.getSummaryTimeEnd())) { if (StringUtils.isNotEmpty(query.getSummaryTimeStart()) && StringUtils.isNotEmpty(query.getSummaryTimeEnd())) {
List<String> dateList = getDatesBetween(query.getSummaryTimeStart(), query.getSummaryTimeEnd()); List<String> dateList = getDatesBetween(query.getSummaryTimeStart(), query.getSummaryTimeEnd());
for (String day : dateList) { dateList.parallelStream().forEach(day->{
// for (String day : dateList) {
AttendanceSummaryQuery temp = new AttendanceSummaryQuery(day); AttendanceSummaryQuery temp = new AttendanceSummaryQuery(day);
if(query.getStaffId()!=null){ if(query.getStaffId()!=null){
temp.setStaffId(query.getStaffId()); temp.setStaffId(query.getStaffId());
} }
attendanceStatService.doAttendanceSummary(temp); attendanceStatService.doAttendanceSummary(temp);
} });
} else { } else {
attendanceStatService.doAttendanceSummary(query); attendanceStatService.doAttendanceSummary(query);
} }
......
...@@ -152,7 +152,11 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -152,7 +152,11 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
query.setAttendanceDateEnd(attendanceDateEnd); query.setAttendanceDateEnd(attendanceDateEnd);
Map<Long, AttendanceRecordEntity> staffRecordMap = attendanceRecordService.find(query).parallelStream().collect(Collectors.toMap(x -> x.getStaffId(), y -> y, (o, n) -> n)); Map<Long, AttendanceRecordEntity> staffRecordMap = attendanceRecordService.find(query).parallelStream().collect(Collectors.toMap(x -> x.getStaffId(), y -> y, (o, n) -> n));
/* AttendanceLeaveRecordQuery leaveRecordQuery = new AttendanceLeaveRecordQuery();
/* AttendanceRecordErrorQuery attendanceRecordErrorQuery = new AttendanceRecordErrorQuery();
attendanceRecordErrorQuery.setProcessStatus(ProcessStatusEnum.已处理.getValue());
AttendanceLeaveRecordQuery leaveRecordQuery = new AttendanceLeaveRecordQuery();
leaveRecordQuery.setAuditResultList(Arrays.asList(1, 4)); leaveRecordQuery.setAuditResultList(Arrays.asList(1, 4));
Map<Long, List<AttendanceLeaveRecordEntity>> leaveRecordGroupMap = attendanceLeaveRecordService.find(leaveRecordQuery).parallelStream().collect(Collectors.groupingBy(x -> x.getLeavePersonId())); Map<Long, List<AttendanceLeaveRecordEntity>> leaveRecordGroupMap = attendanceLeaveRecordService.find(leaveRecordQuery).parallelStream().collect(Collectors.groupingBy(x -> x.getLeavePersonId()));
*/ */
...@@ -162,8 +166,8 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -162,8 +166,8 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
listMap.entrySet().parallelStream().forEach(itemEntry -> { listMap.entrySet().parallelStream().forEach(itemEntry -> {
// }); // });
// for (Map.Entry<Long, List<AttendanceRecordHikEntity>> itemEntry : listMap.entrySet()) { // for (Map.Entry<Long, List<AttendanceRecordHikEntity>> itemEntry : listMap.entrySet()) {
//按人员 todo 改为多线程并行计算 //按人员 todo 改为多线程并行计算
Long staffId = itemEntry.getKey(); Long staffId = itemEntry.getKey();
List<AttendanceRecordHikEntity> recordHikEntityList = itemEntry.getValue(); List<AttendanceRecordHikEntity> recordHikEntityList = itemEntry.getValue();
...@@ -304,7 +308,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte ...@@ -304,7 +308,7 @@ public class AttendanceRecordHikServiceImpl extends AbstractCRUDServiceImpl<Atte
} }
} }
}); });
// } // }
if (!ObjectUtils.isEmpty(saveList)) { if (!ObjectUtils.isEmpty(saveList)) {
log.info("新增考勤记录数:" + saveList.size()); log.info("新增考勤记录数:" + saveList.size());
attendanceRecordService.save(saveList); attendanceRecordService.save(saveList);
......
...@@ -37,8 +37,8 @@ POST {{baseUrl}}/attendance/record/hik/addAttendanceRecord ...@@ -37,8 +37,8 @@ POST {{baseUrl}}/attendance/record/hik/addAttendanceRecord
Content-Type: application/json Content-Type: application/json
{ {
"attendanceDateStart": "2024-06-01", "attendanceDateStart": "2024-08-01",
"attendanceDateEnd": "2024-06-30" "attendanceDateEnd": "2024-08-15"
} }
###海康考勤打卡记录计算1 ###海康考勤打卡记录计算1
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment