diff --git a/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java b/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java index 94c1dc2e4..a1b3f41c0 100644 --- a/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryArchiveItemWrapper.java @@ -245,7 +245,11 @@ public class SalaryArchiveItemWrapper extends Service implements SalaryArchiveIt if (CollectionUtils.isNotEmpty(listAll)) { listAll.removeIf(a -> a.getId().equals(m.getId())); } - Optional optional = listAll.stream().filter(f -> f.getSalaryArchiveId().equals(m.getSalaryArchiveId()) && f.getSalaryItemId().equals(m.getSalaryItemId())).findFirst(); + Optional optional = listAll.stream() + .filter(f -> f.getSalaryArchiveId().equals(m.getSalaryArchiveId())) + .filter(f ->f.getSalaryItemId().equals(m.getSalaryItemId())) + .filter(f->f.getEffectiveTime().before(m.getEffectiveTime())) + .findFirst(); m.setAdjustBefore(optional.isPresent() ? optional.get().getAdjustAfter() : ""); m.setAdjustReason(SalaryArchiveItemAdjustReasonEnum.getDefaultLabelByValue(m.getAdjustReason()));