From bb2bb93293c385fca2d127123e81a515053082a1 Mon Sep 17 00:00:00 2001 From: wanghu Date: Wed, 23 Sep 2026 17:19:45 +0800 Subject: [PATCH] =?UTF-8?q?=E9=98=85=E8=AF=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yunhai/familyactivity/service/impl/ActivityService.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/yunhai/familyactivity/service/impl/ActivityService.java b/src/main/java/com/yunhai/familyactivity/service/impl/ActivityService.java index b37dd30..e17f1ad 100644 --- a/src/main/java/com/yunhai/familyactivity/service/impl/ActivityService.java +++ b/src/main/java/com/yunhai/familyactivity/service/impl/ActivityService.java @@ -1201,11 +1201,15 @@ public class ActivityService implements IActivityService { activityReadRepository.save(read); } - /** confirm 模式:家长打开活动即自动确认(未回执 → 已确认) */ + /** confirm 模式:家长打开活动即自动确认(未回执 → 已确认)。 + * 仅报名截止时间内生效(活动处于「报名中」态):超过截止时间(转「已截止/已结束」)后打开只标已读,不再自动确认。 */ private void autoConfirmIfNeeded(Activity activity, Integer studentId) { if (!ReceiptModeEnum.CONFIRM.getCode().equalsIgnoreCase(activity.getReceiptMode())) { return; } + if (deriveStatus(activity, LocalDateTime.now()) != ActivityStatusEnum.SIGNUP) { + return; + } activitySignupRepository.findByActivityIdAndStudentId(activity.getId(), studentId) .ifPresent(record -> { if (SignupStatusEnum.NONE.getCode().equalsIgnoreCase(record.getStatus())) {