Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ 이메일 인증 기능 구현 #28

Closed
uwoobeat opened this issue Jan 28, 2024 · 0 comments · Fixed by #57 or #134
Closed

✨ 이메일 인증 기능 구현 #28

uwoobeat opened this issue Jan 28, 2024 · 0 comments · Fixed by #57 or #134
Assignees
Labels
✨ feature 새로운 기능 추가 및 수정

Comments

@uwoobeat
Copy link
Member

uwoobeat commented Jan 28, 2024

📌 Description

  • 학교 인증 이메일 발송
  • 학교 인증 메일 인증하기
@uwoobeat uwoobeat added the ✨ feature 새로운 기능 추가 및 수정 label Jan 28, 2024
@binary-ho binary-ho reopened this Feb 25, 2024
uwoobeat pushed a commit that referenced this issue Feb 25, 2024
* feat : 이메일과 검증 코드를 저장하는 EmailVerificationCode 객체 구현 (#28)

* feat : 검증 코드 생성기 구현 (#28)

* feat : 인증 메일 내용을 작성하는 VerificationMailContentWriter 구현 (#28)

* feat : EmailVerificationCodeRepository 구현 (#28)

* feat : 다양한 예외 상황에 대한 ErrorCode 구현 (#28)

* refactor : 메일 내용을 쓸 때, 시간을 Duration 객체로 전달하도록 변경 (#28)

* feat : 홍익대학교 지메일 형식을 검증하는 HongikUnivEmailValidator 구현 (#28)

* refactor : EmailVerificationCode의 time to live 값을 외부에서 주입 받도록 변경 (#28)

* feat : mail starter 의존성 추가 (#28)

* feat : Java Mail Sender Config 세팅 (#28)

* feat : 메일을 전송하는 Java Mail Sender 구현 (#28)

* feat : 메일을 전송하고, 인증 코드를 확인하는 UnivEmailVerificationService 구현 (#28)

* chore : 불필요한 주석 제거 (#28)

* chore : 재학생 인증 메일 문구 수정

* refactor : CustomException에 Error Message 지정 생성자 추가

* refactor : Messaging Exception 상황에 따라 다른 CustomException 적용

* refactor : JavaMailSender를 Service에서 Component로 변경

* refactor : 홍익대학교 이메일 Regex를 RegexConstant로 이동

* refactor : 재학생 인증 메일 constant 값을 클래스에 분리

* refactor : 이메일 제목을 외부에서 주입 받도록 변경

* chore : GdscMailConstant 클래스의 이름을 EmailConstant로 변경

* chore : spotless java apply

* chore : spotless java apply

* refactor : Email Property들을 클래스로 분리

* chore: Java Mail Sender Bean 이름 변경

* refactor: JavaMailSenderConfig에 EmailProperty 적용

* chore: HongikUnivEmailValidatorTest에 test Profile 추가

* refactor : 인증 메일 관련 상수를 Constant 클래스로 분리

* refactor : 재학생 인증 메일에 인증 링크를 첨부하도록 변경

* refactor : Email 관련 Property 값들을 Property Class로 관리

* refactor : email 설정 yml 파일 분리

* refactor: verificationLinkUtil의 getLink 메서드의 이름을 createLink로 변경

* refactor: 인증 방식 변경에 따라 EmailVerificationCode 의 key와 value를 서로 변경

* feat: 인증 token을 통해 유저 Univ Email 인증 상태를 변경하는 메서드 구현

* refactor: UnivMailVerificationSevice를 Send 부와 인증 부로 분리

* refactor: Mail 및 재학생 인증 관련 클래스들의 패키지를 목적에 맞게 정리

* chore: spotless java apply

* refactor: MemberUtil의 getCurrentId로 Member를 찾는 부분 getCurrentMemeber로 대체

* refactor: integration 패키지의 이름을 email로 변경

* feat: 학교 인증 메일 API 구현

* chore: SenderService의 이름을 SendService로 변경

* refactor: 유저 email을 request body를 통해 전달 받도록 변경

* refactor: 레디스에 재학생 인증 정보를 저장할 때 memberId도 함께 저장하도록 변경

* refactor: VerificationCodeAndUnivEmail의 이름을 UnivEmailVerification으로 변경

* refactor: email verify 과정에서 Member 조회시 id를 사용하도록 변경

* refactor: 재학생 인증 완료시 Member의 Univ Email을 업데이트하도록 변경

* refactor: 이미 재학생 인증을 마친 이메일로 인증이 요청되는 경우 예외를 발생시킨다.

* chore: email이 univEmail의 맥락으로 쓰인 부분의 이름 변경

* chore: univMail이라고 명명한 클래스의 이름을 univEmail로 변경

* chore: univMail이라고 명명한 클래스의 이름을 univEmail로 변경

* refactor: commit naming suggestion

* refactor: validateUnivEmailNotVerified 로직 잘못된 부분 수정

* refactor: UnivEmailVerificationRepository 불필요한 메서드 제거

* refactor: UnivEmailVerificationLinkSendService 파라미터 정정

* refactor: 과한 객체 분리를 제거하기 위한 MailContentWriter 제거

* refactor: UnivEmailVerificationService의 Transactional 어노테이션사용을 컨벤션에 맞게 변경

* refactor: ErrorCode에서 Univ Email이라는 표현을 맥락에 맞게 변경

* refactor: JavaMailSender의 이름을 JavaEmailSender로 변경

* refactor: JavaMailSender 빈의 이름을 빈 네이밍 컨벤션에 맞게 변경

* refactor: Email Property를 inner record로 변경

* refactor: UnivEmailVerificationLinkSendService에서 사용하지 않는 메서드 제거

* refactor: validateUnivEmailNotVerified에서 ifPresent 제거

* refactor: 온보딩 이메일 인증 컨트롤러 통합

* refactor: custom record Pair 삭제

* refactor: email 패키지 유틸 클래스 global로 이동
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ feature 새로운 기능 추가 및 수정
Projects
None yet
2 participants