Skip to content
Merged

prod #384

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
package life.mosu.mosuserver.application.application;

import java.util.List;
import java.util.Set;
import life.mosu.mosuserver.application.application.dto.RegisterApplicationCommand;
import life.mosu.mosuserver.application.application.processor.GetApplicationsStepProcessor;
import life.mosu.mosuserver.application.application.processor.RegisterApplicationStepProcessor;
Expand All @@ -14,19 +12,17 @@
import life.mosu.mosuserver.domain.application.repository.ApplicationJpaRepository;
import life.mosu.mosuserver.domain.exam.entity.ExamJpaEntity;
import life.mosu.mosuserver.domain.exam.entity.ExamJpaRepository;
import life.mosu.mosuserver.presentation.application.dto.ApplicationGuestRequest;
import life.mosu.mosuserver.presentation.application.dto.ApplicationRequest;
import life.mosu.mosuserver.presentation.application.dto.ApplicationResponse;
import life.mosu.mosuserver.presentation.application.dto.CreateApplicationResponse;
import life.mosu.mosuserver.presentation.application.dto.ExamApplicationRequest;
import life.mosu.mosuserver.presentation.application.dto.SchoolApplicationCountResponse;
import life.mosu.mosuserver.presentation.application.dto.*;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

와일드카드(*) import는 사용을 지양하는 것이 좋습니다. Google Java Style Guide와 같은 여러 스타일 가이드에서는 클래스를 명시적으로 import하여 코드의 가독성을 높이고, 어떤 클래스가 사용되는지 명확하게 파악하여 유지보수를 용이하게 할 것을 권장합니다. 또한, 이름 충돌 가능성을 줄일 수 있습니다.

Suggested change
import life.mosu.mosuserver.presentation.application.dto.*;
import life.mosu.mosuserver.presentation.application.dto.ApplicationGuestRequest;
import life.mosu.mosuserver.presentation.application.dto.ApplicationRequest;
import life.mosu.mosuserver.presentation.application.dto.ApplicationResponse;
import life.mosu.mosuserver.presentation.application.dto.CreateApplicationResponse;
import life.mosu.mosuserver.presentation.application.dto.ExamApplicationRequest;
import life.mosu.mosuserver.presentation.application.dto.SchoolApplicationCountResponse;

import life.mosu.mosuserver.presentation.common.FileRequest;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;
import java.util.Set;

@Service
@RequiredArgsConstructor
@Slf4j
Expand Down Expand Up @@ -83,7 +79,7 @@ private CreateApplicationResponse handleApplication(
FileRequest admissionTicket
) {
List<ExamJpaEntity> exams = examJpaRepository.findAllById(examIds);
validator.examDateNotPassed(exams);
// validator.examDateNotPassed(exams);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

시험 신청 마감일 검증 로직(validator.examDateNotPassed(exams))이 주석 처리되었습니다. 이 검증을 비활성화하면 마감일이 지난 시험에도 신청이 가능해져 데이터 정합성 문제 및 심각한 비즈니스 로직 오류를 유발할 수 있습니다. 이 코드를 주석 처리한 특별한 이유가 없다면 즉시 복원해야 합니다. 만약 테스트 등의 목적으로 임시 변경한 것이라면, 프로덕션에 배포되기 전에 반드시 원상 복구되어야 합니다.

Suggested change
// validator.examDateNotPassed(exams);
validator.examDateNotPassed(exams);

validator.examNotFull(exams);
validator.examIdsAndLunchSelection(examApplications);
validator.noDuplicateApplication(userId, examIds);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
import java.time.LocalDate;

@Slf4j
@CronJob(cron = "0 0 9 13 10 ?", name = "examNumberGeneratorJob_20251019")
@CronJob(cron = "0 0 10 13 10 ?", name = "examNumberGeneratorJob_20251019")
@DisallowConcurrentExecution
@RequiredArgsConstructor
public class ExamNumberGenerationJobRound1 implements Job {
Expand Down
Loading