🐛 应收应付变更记录同一次提交共用调整时间

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-10-14 10:58:42 +08:00
parent 5bd7c8d755
commit 19c5bc64f1
@@ -481,8 +481,10 @@ public class ReceivablePayableDetailServiceImpl
} }
List<ReceivablePayableCargoFee> afterRows = activeCargoFees(detail.getId()); List<ReceivablePayableCargoFee> afterRows = activeCargoFees(detail.getId());
List<String> changes = reconcileUpdatedFeeAmounts(beforeRows, afterRows); List<String> changes = reconcileUpdatedFeeAmounts(beforeRows, afterRows);
LocalDateTime adjustTime = LocalDateTime.now();
for (int index = 0; index < changes.size(); index++) { for (int index = 0; index < changes.size(); index++) {
saveChangeRecord(detail, changes.get(index), request.getAdjustReason(), String.format("%04d", index + 1)); saveChangeRecord(detail, changes.get(index), request.getAdjustReason(),
String.format("%04d", index + 1), adjustTime);
} }
} }
} }
@@ -650,8 +652,9 @@ public class ReceivablePayableDetailServiceImpl
if (changes.isEmpty()) { if (changes.isEmpty()) {
throw new ServiceException("未修改任何费用数据"); throw new ServiceException("未修改任何费用数据");
} }
LocalDateTime adjustTime = LocalDateTime.now();
for (int i = 0; i < changes.size(); i++) { for (int i = 0; i < changes.size(); i++) {
saveChangeRecord(detail, changes.get(i), changeReasons.get(i), String.format("%04d", i + 1)); saveChangeRecord(detail, changes.get(i), changeReasons.get(i), String.format("%04d", i + 1), adjustTime);
} }
refreshAdjustedDetail(detail, allRows); refreshAdjustedDetail(detail, allRows);
} }
@@ -2661,10 +2664,15 @@ public class ReceivablePayableDetailServiceImpl
} }
private void saveChangeRecord(ReceivablePayableDetail detail, String content, String reason) { private void saveChangeRecord(ReceivablePayableDetail detail, String content, String reason) {
saveChangeRecord(detail, content, reason, "0001"); saveChangeRecord(detail, content, reason, "0001", LocalDateTime.now());
} }
private void saveChangeRecord(ReceivablePayableDetail detail, String content, String reason, String lineNo) { private void saveChangeRecord(ReceivablePayableDetail detail, String content, String reason, String lineNo) {
saveChangeRecord(detail, content, reason, lineNo, LocalDateTime.now());
}
private void saveChangeRecord(ReceivablePayableDetail detail, String content, String reason, String lineNo,
LocalDateTime adjustTime) {
if (!hasMeaningfulChange(content)) { if (!hasMeaningfulChange(content)) {
return; return;
} }
@@ -2676,7 +2684,7 @@ public class ReceivablePayableDetailServiceImpl
record.setAdjustUser(AuthUtil.getUserId()); record.setAdjustUser(AuthUtil.getUserId());
record.setAdjustUserName(AuthUtil.getUserName()); record.setAdjustUserName(AuthUtil.getUserName());
record.setAdjustReason(reason); record.setAdjustReason(reason);
record.setAdjustTime(LocalDateTime.now()); record.setAdjustTime(adjustTime == null ? LocalDateTime.now() : adjustTime);
changeRecordMapper.insert(record); changeRecordMapper.insert(record);
} }