Commit ed128419 authored by 赵啸非's avatar 赵啸非

优化考勤计算

parent 2d879f6c
......@@ -43,6 +43,7 @@ import org.springframework.util.ObjectUtils;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import java.util.stream.Collectors;
import static com.mortals.xhx.common.key.RedisKey.ATTENDANCE_STAT_TIME;
import static com.mortals.xhx.common.key.RedisKey.STAFF_PERFORM_SUMMARY;
......@@ -247,6 +248,13 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
List<AttendanceStatEntity> updateList = new ArrayList<>();
List<AttendanceStaffStatEntity> addStaffStat = new ArrayList<>();
List<AttendanceStaffStatEntity> updateStaffStat = new ArrayList<>();
AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
attendanceRecordQuery.setAttendanceDateStart(query.getSummaryTime());
attendanceRecordQuery.setAttendanceDateEnd(query.getSummaryTime());
Map<Long, AttendanceRecordEntity> staffRecordMap = recordService.find(attendanceRecordQuery).parallelStream().collect(Collectors.toMap(x -> x.getStaffId(), z -> z, (o, n) -> n));
for (VacationBalanceSummaryVo item : vacationBalanceSummaryVoList) {
String entryDateStr = DateUtils.getStrDate(item.getEntryDate());
if(DateUtils.StrToDate(query.getSummaryTime()).compareTo(DateUtils.StrToDate(entryDateStr)) < 0){
......@@ -314,12 +322,14 @@ public class AttendanceStatServiceImpl extends AbstractCRUDServiceImpl<Attendanc
staffStat.setAttendanceSummary("正常");
//todo 保存详细json信息到remark
AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
/* AttendanceRecordQuery attendanceRecordQuery = new AttendanceRecordQuery();
attendanceRecordQuery.setStaffId(item.getStaffId());
attendanceRecordQuery.setAttendanceDateStart(query.getSummaryTime());
attendanceRecordQuery.setAttendanceDateEnd(query.getSummaryTime());
AttendanceRecordEntity recordEntity = recordService.selectOne(attendanceRecordQuery);
AttendanceRecordEntity recordEntity = recordService.selectOne(attendanceRecordQuery);*/
AttendanceRecordEntity recordEntity = staffRecordMap.get(item.getStaffId());
if(!ObjectUtils.isEmpty(recordEntity)){
AttendanceRecordQuery detailQuery = new AttendanceRecordQuery();
detailQuery.setStaffId(item.getStaffId());
......
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