Skip to content
Merged
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
4 changes: 2 additions & 2 deletions .github/workflows/develop_build_deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ jobs:
done
echo "✅ postgres is ready!"

echo "${{ secrets.SCHEMA_SQL }}" | base64 --decode | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB
echo "${{ secrets.DATA_SQL }}" | base64 --decode | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB
echo "${{ secrets.SCHEMA_SQL }}" | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB
echo "${{ secrets.DATA_SQL }}" | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB

# Gradlew 실행 권한 허용
- name: Grant Execute Permission for Gradlew
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/develop_pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,8 @@ jobs:
done
echo "✅ postgres is ready!"

echo "${{ secrets.SCHEMA_SQL }}" | base64 --decode | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB
echo "${{ secrets.DATA_SQL }}" | base64 --decode | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB
echo "${{ secrets.SCHEMA_SQL }}" | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB
echo "${{ secrets.DATA_SQL }}" | docker exec -i $TEST_POSTGRES_CONTAINER_NAME psql -U $TEST_POSTGRES_USER -d $TEST_POSTGRES_DB

# Gradlew 실행 권한 허용
- name: Grant Execute Permission for Gradlew
Expand Down
15 changes: 15 additions & 0 deletions src/docs/asciidoc/auth.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
=== **1. 유저 로그인**

유저 로그인 api 입니다. (이메일, 패스워드)

==== Request
include::{snippetsDir}/loginUser/1/http-request.adoc[]

==== 성공 Response
include::{snippetsDir}/loginUser/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/loginUser/1/response-fields.adoc[]

==== 실패 Response
include::{snippetsDir}/loginUser/2/http-response.adoc[]
117 changes: 5 additions & 112 deletions src/docs/asciidoc/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
:toclevels: 3
:source-highlighter: highlightjs
:sectlinks:
:snippetsDir: ../../../build/generated-snippets
:snippetsDir: build/generated-snippets

= **FitTheMan API Document**

Expand Down Expand Up @@ -100,119 +100,12 @@ Content-Type: application/json
| 공통 | 500 | INTERNAL_SERVER_ERROR | E500_001 | 서버 측에서 처리하지 못한 예외가 발생하면 모든 api 요청에 대해 공통적으로 반환됨.
|===



== 회원

=== **1. 이메일 중복 확인**

이메일 중복을 확인하는 api입니다.

==== Request
include::{snippetsDir}/emailDuplicationCheck/1/http-request.adoc[]

==== Request Query Parameter Fields
include::{snippetsDir}/emailDuplicationCheck/1/query-parameters.adoc[]

==== 성공 Response
include::{snippetsDir}/emailDuplicationCheck/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/emailDuplicationCheck/1/response-fields.adoc[]

---

= **회원**

=== **2. 이메일 인증 api**

이메일 인증용 코드를 발송하는 api입니다.

==== Request
include::{snippetsDir}/emailAuthentication/1/http-request.adoc[]

==== Request Body Fields
include::{snippetsDir}/emailAuthentication/1/request-fields.adoc[]

==== 성공 Response
include::{snippetsDir}/emailAuthentication/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/emailAuthentication/1/response-fields.adoc[]

==== 실패 Response
실패1.
include::{snippetsDir}/emailAuthentication/2/http-response.adoc[]
실패 2
include::{snippetsDir}/emailAuthentication/3/http-response.adoc[]


=== **3. 이메일 인증 코드 검증 api**

이메일 인증용 코드를 검증하는 api입니다.

==== Request
include::{snippetsDir}/emailCodeVerification/1/http-request.adoc[]

==== Request Body Fields
include::{snippetsDir}/emailCodeVerification/1/request-fields.adoc[]

==== 성공 Response
include::{snippetsDir}/emailCodeVerification/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/emailCodeVerification/1/response-fields.adoc[]


=== **4. 회원가입시 필요한 정보 목록 조회 api**

회원가입시 사용자에게 입력 받는 연령대 정보와 관심 해시태그 정보 옵션들을 조회합니다.


==== Request
include::{snippetsDir}/userSignupOptions/1/http-request.adoc[]

==== 성공 Response
include::{snippetsDir}/userSignupOptions/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/userSignupOptions/1/response-fields.adoc[]


=== **5. 일반 회원가입 api**

일반 회원가입 api입니다.

==== Request
include::{snippetsDir}/generalUserSignUp/1/http-request.adoc[]

==== Request Body Fields
include::{snippetsDir}/generalUserSignUp/1/request-fields.adoc[]

==== 성공 Response
include::{snippetsDir}/generalUserSignUp/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/generalUserSignUp/1/response-fields.adoc[]

==== 실패 Response
실패1.
include::{snippetsDir}/generalUserSignUp/2/http-response.adoc[]
실패 2
include::{snippetsDir}/generalUserSignUp/3/http-response.adoc[]
== 인증/인가

=== **1. 유저 로그인**

유저 로그인 api 입니다. (이메일, 패스워드)

=== Request
include::{snippetsDir}/loginUser/1/http-request.adoc[]

== 성공 Response
include::{snippetsDir}/loginUser/1/http-response.adoc[]
include::user.adoc[]

== Response Body Fields
include::{snippetsDir}/loginUser/1/response-fields.adoc[]
= **인증/인가**

== 실패 Response
include::{snippetsDir}/loginUser/2/http-response.adoc[]
include::auth.adoc[]
97 changes: 97 additions & 0 deletions src/docs/asciidoc/user.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
=== **1. 이메일 중복 확인**

이메일 중복을 확인하는 api입니다.

==== Request
include::{snippetsDir}/emailDuplicationCheck/1/http-request.adoc[]

==== Request Query Parameter Fields
include::{snippetsDir}/emailDuplicationCheck/1/query-parameters.adoc[]

==== 성공 Response
include::{snippetsDir}/emailDuplicationCheck/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/emailDuplicationCheck/1/response-fields.adoc[]

---

=== **2. 이메일 인증 api**

이메일 인증용 코드를 발송하는 api입니다.

==== Request
include::{snippetsDir}/emailAuthentication/1/http-request.adoc[]

==== Request Body Fields
include::{snippetsDir}/emailAuthentication/1/request-fields.adoc[]

==== 성공 Response
include::{snippetsDir}/emailAuthentication/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/emailAuthentication/1/response-fields.adoc[]

==== 실패 Response
실패1.
include::{snippetsDir}/emailAuthentication/2/http-response.adoc[]
실패 2
include::{snippetsDir}/emailAuthentication/3/http-response.adoc[]

---

=== **3. 이메일 인증 코드 검증 api**

이메일 인증용 코드를 검증하는 api입니다.

==== Request
include::{snippetsDir}/emailCodeVerification/1/http-request.adoc[]

==== Request Body Fields
include::{snippetsDir}/emailCodeVerification/1/request-fields.adoc[]

==== 성공 Response
include::{snippetsDir}/emailCodeVerification/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/emailCodeVerification/1/response-fields.adoc[]

---

=== **4. 회원가입시 필요한 정보 목록 조회 api**

회원가입시 사용자에게 입력 받는 연령대 정보와 관심 해시태그 정보 옵션들을 조회합니다.


==== Request
include::{snippetsDir}/userSignupOptions/1/http-request.adoc[]

==== 성공 Response
include::{snippetsDir}/userSignupOptions/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/userSignupOptions/1/response-fields.adoc[]

---

=== **5. 일반 회원가입 api**

일반 회원가입 api입니다.

==== Request
include::{snippetsDir}/generalUserSignUp/1/http-request.adoc[]

==== Request Body Fields
include::{snippetsDir}/generalUserSignUp/1/request-fields.adoc[]

==== 성공 Response
include::{snippetsDir}/generalUserSignUp/1/http-response.adoc[]

==== Response Body Fields
include::{snippetsDir}/generalUserSignUp/1/response-fields.adoc[]

==== 실패 Response
실패1.
include::{snippetsDir}/generalUserSignUp/2/http-response.adoc[]
실패 2
include::{snippetsDir}/generalUserSignUp/3/http-response.adoc[]

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.ftm.server.domain.dto.command;
package com.ftm.server.application.dto.command;

import com.ftm.server.adapter.dto.request.EmailAuthenticationRequest;
import com.ftm.server.web.dto.request.EmailAuthenticationRequest;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.ftm.server.domain.dto.command;
package com.ftm.server.application.dto.command;

import lombok.Data;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.ftm.server.domain.dto.command;
package com.ftm.server.application.dto.command;

import com.ftm.server.entity.enums.AgeGroup;
import com.ftm.server.entity.enums.HashTag;
import com.ftm.server.domain.enums.AgeGroup;
import com.ftm.server.domain.enums.HashTag;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.ftm.server.domain.dto.command;
package com.ftm.server.application.dto.command;

import com.ftm.server.adapter.dto.request.GeneralUserSignupRequest;
import com.ftm.server.entity.enums.AgeGroup;
import com.ftm.server.entity.enums.HashTag;
import com.ftm.server.domain.enums.AgeGroup;
import com.ftm.server.domain.enums.HashTag;
import com.ftm.server.web.dto.request.GeneralUserSignupRequest;
import java.util.List;
import lombok.Data;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.ftm.server.domain.dto.command;
package com.ftm.server.application.dto.command;

import com.ftm.server.adapter.dto.request.UserLoginRequest;
import com.ftm.server.web.dto.request.UserLoginRequest;
import lombok.Getter;

@Getter
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package com.ftm.server.domain.dto.query;
package com.ftm.server.application.dto.query;

import com.ftm.server.adapter.dto.request.EmailCodeVerificationRequest;
import com.ftm.server.web.dto.request.EmailCodeVerificationRequest;
import lombok.Data;

@Data
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.ftm.server.domain.dto.query;
package com.ftm.server.application.dto.query;

import com.ftm.server.common.exception.CustomException;
import com.ftm.server.common.response.enums.ErrorResponseCode;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.ftm.server.domain.dto.query;
package com.ftm.server.application.dto.query;

import lombok.Getter;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.ftm.server.domain.dto.query;
package com.ftm.server.application.dto.query;

import lombok.Getter;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.ftm.server.domain.dto.query;
package com.ftm.server.application.dto.query;

import lombok.Data;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package com.ftm.server.adapter.gateway;
package com.ftm.server.application.port;

import com.ftm.server.domain.dto.command.UserLoginCommand;
import com.ftm.server.application.dto.command.UserLoginCommand;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.security.core.Authentication;

/** 시큐리티 인증 관련 작업 Gateway */
public interface AuthenticationGateway {
public interface AuthenticationPort {

// 일반 유저 인증 객체 생성
Authentication createAuthenticationFromCredentials(UserLoginCommand command);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package com.ftm.server.application.port;

public interface MailSenderPort {

void sendEmail(String to, String code);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package com.ftm.server.application.port;

/** Redis Caching 관련 작업 Gateway */
public interface RedisCachePort {}
Loading