@@ -1201,11 +1201,15 @@ public class ActivityService implements IActivityService {
|
|||||||
activityReadRepository.save(read);
|
activityReadRepository.save(read);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** confirm 模式:家长打开活动即自动确认(未回执 → 已确认) */
|
/** confirm 模式:家长打开活动即自动确认(未回执 → 已确认)。
|
||||||
|
* 仅报名截止时间内生效(活动处于「报名中」态):超过截止时间(转「已截止/已结束」)后打开只标已读,不再自动确认。 */
|
||||||
private void autoConfirmIfNeeded(Activity activity, Integer studentId) {
|
private void autoConfirmIfNeeded(Activity activity, Integer studentId) {
|
||||||
if (!ReceiptModeEnum.CONFIRM.getCode().equalsIgnoreCase(activity.getReceiptMode())) {
|
if (!ReceiptModeEnum.CONFIRM.getCode().equalsIgnoreCase(activity.getReceiptMode())) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (deriveStatus(activity, LocalDateTime.now()) != ActivityStatusEnum.SIGNUP) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
activitySignupRepository.findByActivityIdAndStudentId(activity.getId(), studentId)
|
activitySignupRepository.findByActivityIdAndStudentId(activity.getId(), studentId)
|
||||||
.ifPresent(record -> {
|
.ifPresent(record -> {
|
||||||
if (SignupStatusEnum.NONE.getCode().equalsIgnoreCase(record.getStatus())) {
|
if (SignupStatusEnum.NONE.getCode().equalsIgnoreCase(record.getStatus())) {
|
||||||
|
|||||||
Reference in New Issue
Block a user