Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
243 commits
Select commit Hold shift + click to select a range
9e538d9
GETP-64 feat: 이메일 인증 엔티티 구현
scv1702 Jan 8, 2024
a7dce20
GETP-64 feat: 이메일 전송 기능 구현
scv1702 Jan 8, 2024
8715431
GETP-64 feat: 회원 가입 시 이메일 인증 코드 전송 기능 구현
scv1702 Jan 8, 2024
e225fc7
GETP-64 feat: 이메일 인증 미실시 에러 코드 추가
scv1702 Jan 8, 2024
abd5587
GETP-64 refactor: 테스트 코드 확장을 위해 Enum을 이용한 예외 처리에서 Class를 이용한 예외 처리로 변경
scv1702 Jan 8, 2024
6b49ce7
GETP-64 chore: Redis 테스트를 위한 testcontainers 설치
scv1702 Jan 11, 2024
35259e3
GETP-56 feat: 회원, 서비스 약관, 서비스 약관 동의 엔티티 구현
scv1702 Jan 11, 2024
d0eb366
GETP-56 feat: 회원, 서비스 약관, 서비스 약관 동의 레포지토리 구현
scv1702 Jan 11, 2024
d443fd0
GETP-56 feat: 서비스 약관 생성 API 구현
scv1702 Jan 11, 2024
efa1727
GETP-56 feat: 서비스 약관 동의 API 구현
scv1702 Jan 11, 2024
8a8a390
GETP-56 feat: 회원 가입 API 구현
scv1702 Jan 11, 2024
9870834
GETP-75 feat: 피플 정보 엔티티 구현
wlgns12370 Jan 13, 2024
53c0769
GETP-75 feat: 피플 조회 시 정렬 기준 enum 구현
wlgns12370 Jan 13, 2024
48aab12
GETP-75 feat: 피플 정보 레포지토리 구현
wlgns12370 Jan 13, 2024
cd732b7
GETP-75 feat: 피플 정보 서비스 생성
wlgns12370 Jan 13, 2024
27cbace
GETP-75 feat: 피플 정보 존재하지 않는 데이터 예외 처리 구현
wlgns12370 Jan 13, 2024
60b9c33
GETP-75 feat: 피플 정보 컨트롤러 서비스간 DTO 구현
wlgns12370 Jan 14, 2024
d11ab54
GETP-75 feat: 피플 정보 서비스 구현
wlgns12370 Jan 14, 2024
dfa69a9
GETP-56 feat: 회원 가입 시 비밀번호 암호화 기능 구현
scv1702 Jan 14, 2024
5f9f3c1
GETP-72 feat: 로그인 시 Access Token 발급 기능 구현
scv1702 Jan 14, 2024
bb79af2
GETP-72 feat: 로그인 에러 처리기 구현
scv1702 Jan 14, 2024
76b7730
GETP-56 fix: Proxy와 Lazy Loading을 위해 ServiceTerm과 ServiceTermAgreemen…
scv1702 Jan 14, 2024
663ebf0
GETP-75 test: 피플 정보 등록을 위한 DTO 분리 후 Repository,Service 피플 정보 등록 테스트 구현
wlgns12370 Jan 15, 2024
761b388
GETP-75 test: 중복 코드 제거를 위해 TestFixture 추가
wlgns12370 Jan 15, 2024
b5f95e6
GETP-75 refacor: 테스트 DisplayName을 문장으로 변경
wlgns12370 Jan 15, 2024
db42c73
GETP-75 test: Repository에서 멤버 ID로 피플 계정 조회 테스트 추가
wlgns12370 Jan 15, 2024
4453df4
GETP-75 feat: 피플 정보 컨트롤러 구현
wlgns12370 Jan 15, 2024
00dcb8a
GETP-75 feat: 피플 정보 목록 조회를 위한 QueryDslRepository 구현
wlgns12370 Jan 17, 2024
4b39ffd
GETP-75 feat: 피플 정보 목록 조회 서비스 코드 추가 :및 QueryDSL 테스트 세팅 구현
wlgns12370 Jan 17, 2024
5e74f8f
GETP-75 feat: 피플 정보 목록 조회 및 QueryDSL 테스트 구현
wlgns12370 Jan 17, 2024
b2ad1f2
GETP-75 feat: 피플 계정 탈퇴 컨트롤러 코드 추가
wlgns12370 Jan 17, 2024
c99b8b2
GETP-56 feat: 회원 가입 시 잘못된 비밀번호인 경우 예외 발생 처리
scv1702 Jan 15, 2024
caffcd3
GETP-77 refactor: 인증 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
a5a6b10
GETP-77 refactor: 회원 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
11ca63f
GETP-77 refactor: 서비스 약관 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
36e7508
GETP-77 refactor: 서비스 약관 동의 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
96a80a8
GETP-64 test: 이메일 인증 Service 테스트 구현
scv1702 Jan 15, 2024
4deffde
GETP-64 test: 이메일 Service 테스트 구현
scv1702 Jan 15, 2024
058cb1f
rename: 테스트 패키지 es.princip.getp.auth.service에서 es.princip.getp.domain…
scv1702 Jan 17, 2024
f79e459
GETP-56 fix: 회원 가입 시 필수 서비스 약관에 동의하지 않으면 회원 엔티티를 생성하지 않도록 변경
scv1702 Jan 17, 2024
5510663
GETP-64 test: 이메일 및 이메일 인증 단위 테스트를 @Nested로 가독성 향상
scv1702 Jan 17, 2024
e715423
GETP-75 refactor: 피플 관련 Exception을 Class에서 Enum으로 변경
wlgns12370 Jan 20, 2024
6c81c1c
GETP-75 test: 피플 관련 Enum Exception 테스트코드 추가
wlgns12370 Jan 20, 2024
5566987
GETP-75 refator: CUD 컨트롤러 서비스 명칭 통일 및 Read 메서드명 변경
wlgns12370 Jan 22, 2024
7dcbc88
GETP-75 refator: DTO명 RequestDTO, ResponseDTO에서 Request, Response로 변경
wlgns12370 Jan 22, 2024
3c1f696
GETP-75 feat: 피플 목록 조회 컨트롤러 구현
wlgns12370 Jan 22, 2024
a668b4e
GETP-75 refactor: ResponseDTO 조립 책임을 Service에서 Controller로 위임
wlgns12370 Jan 22, 2024
d72531b
GETP-75 test: PeopleService 기본 CRUD 테스트 코드 구현
wlgns12370 Jan 22, 2024
ab31265
GETP-75 test: 여러 조건을 테스트하는 경우 assertAll에서 assertSoftly로 변경
wlgns12370 Jan 22, 2024
9b576ea
GETP-64 refactor: 테스트 코드 확장을 위해 Enum을 이용한 예외 처리에서 Class를 이용한 예외 처리로 변경
scv1702 Jan 8, 2024
82c60fa
GETP-64 chore: Redis 테스트를 위한 testcontainers 설치
scv1702 Jan 11, 2024
e8df612
GETP-56 feat: 회원, 서비스 약관, 서비스 약관 동의 엔티티 구현
scv1702 Jan 11, 2024
c8fed4f
GETP-56 feat: 회원, 서비스 약관, 서비스 약관 동의 레포지토리 구현
scv1702 Jan 11, 2024
a5f1e49
GETP-56 feat: 서비스 약관 생성 API 구현
scv1702 Jan 11, 2024
b2551cf
GETP-56 feat: 서비스 약관 동의 API 구현
scv1702 Jan 11, 2024
1748e8f
GETP-56 feat: 회원 가입 API 구현
scv1702 Jan 11, 2024
b64aaf2
GETP-56 feat: 회원 가입 시 비밀번호 암호화 기능 구현
scv1702 Jan 14, 2024
0c388dc
GETP-72 feat: 로그인 에러 처리기 구현
scv1702 Jan 14, 2024
04fd1f7
GETP-56 fix: Proxy와 Lazy Loading을 위해 ServiceTerm과 ServiceTermAgreemen…
scv1702 Jan 14, 2024
e9bb6f9
GETP-56 feat: 회원 가입 시 잘못된 비밀번호인 경우 예외 발생 처리
scv1702 Jan 15, 2024
5f215bd
GETP-77 refactor: 인증 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
fa48be4
GETP-77 refactor: 회원 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
98d983e
GETP-77 refactor: 서비스 약관 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
0b32905
GETP-77 refactor: 서비스 약관 동의 관련 Exception을 Class에서 Enum으로 변경
scv1702 Jan 15, 2024
cccd0f2
GETP-64 test: 이메일 인증 Service 테스트 구현
scv1702 Jan 15, 2024
92239ec
GETP-64 test: 이메일 Service 테스트 구현
scv1702 Jan 15, 2024
9828f0f
rename: 테스트 패키지 es.princip.getp.auth.service에서 es.princip.getp.domain…
scv1702 Jan 17, 2024
844a1ee
GETP-56 fix: 회원 가입 시 필수 서비스 약관에 동의하지 않으면 회원 엔티티를 생성하지 않도록 변경
scv1702 Jan 17, 2024
eb10c11
GETP-64 test: 이메일 및 이메일 인증 단위 테스트를 @Nested로 가독성 향상
scv1702 Jan 17, 2024
52a00ea
refactor: ServiceTermAgreement의 생성 책임을 MemberService로 전가
scv1702 Jan 20, 2024
a8f4972
GETP-71 feat: Refresh Token으로 Access Token 재발급 구현
lsmin3388 Jan 20, 2024
0596834
GETP-71 fix: token의 expire 미적용 오류 수정
lsmin3388 Jan 21, 2024
6c3d3e2
GETP-71 feat: Refresh Token 만료 시 예외 처리 추가
lsmin3388 Jan 21, 2024
900afb3
GETP-71 rename: token reissue 시 Refresh Token의 헤더를 Authorization에서 Re…
scv1702 Jan 21, 2024
2550538
refactor: PeopleRoleType에서 PeopleType으로 변경 및 피플 전체 주석 수정
scv1702 Jan 23, 2024
35218cb
refactor: 인증 컨트롤러의 DTO 매개변수명 변경 및 주석 작성
scv1702 Jan 23, 2024
de7800e
GETP-76 feat: 의뢰자 정보 관련 API 구현 (#20)
wlgns12370 Jan 24, 2024
773e280
GETP-83 feat: 인증, 인가 Exception Handler 구현 (#21)
scv1702 Jan 27, 2024
5311243
fix: 수소 서버 Docker 업데이트로 인한 init.sh의 docker compose 명령어 수정
scv1702 Jan 29, 2024
79bc84c
refactor: entity 변수명 name -> nickname 변경
wlgns12370 Feb 1, 2024
2f770ff
GETP-86 rename: Client의 name 필드명을 nickname으로 변경 (#22)
scv1702 Feb 4, 2024
8683187
GETP-88 feat: 프로젝트 의뢰 API 구현 (#23)
scv1702 Feb 11, 2024
d9bfba9
Revert "GETP-88 feat: 프로젝트 의뢰 API 구현 (#23)" (#24)
scv1702 Feb 11, 2024
24c3e13
GETP-88 feat: 프로젝트 의뢰 API 구현 (#25)
scv1702 Feb 11, 2024
29d75c6
refactor: PeopleQueryDslRepository를 PeopleRepository로 통합
scv1702 Feb 11, 2024
00918db
GETP-88 test: 프로젝트 의뢰 단위 테스트 작성 (#27)
scv1702 Feb 12, 2024
a5010f4
GETP-87 feat: 이메일 인증 코드 재발급 기능 구현
scv1702 Feb 12, 2024
9ffcc86
chore: 환경 변수 설정을 통한 로컬, 개발 및 배포 환경 분리 (#28)
scv1702 Feb 14, 2024
793cc9c
fix: EmailService Bean을 찾지 못해 ApplicationContext 생성하지 못하는 오류 수정
scv1702 Feb 14, 2024
833716e
feat: 프론트엔드 로컬 환경 CORS 허용
scv1702 Feb 14, 2024
2f922c7
chore: Gradle 환경을 위한 환경 변수 설정 스크립트 작성
scv1702 Feb 14, 2024
10c3cc6
fix: EmailService가 Spring Boot가 제공하는 JavaMailSender Bean을 사용하도록 변경
scv1702 Feb 17, 2024
dc33f3d
chore: dev.sh의 환경 변수 파싱 오류 수정
scv1702 Feb 19, 2024
677c3b5
GETP-23 feat: 프로젝트 목록 조회 API 구현 (#30)
scv1702 Feb 19, 2024
de455a2
GETP-85 feat: 피플 프로필 등록 API 구현 (#29)
wlgns12370 Feb 19, 2024
1681a12
rename: auth 도메인 관련 Fixture 폴더 이동
wlgns12370 Feb 20, 2024
a0bedec
GETP-90 feat: 프로젝트 지원 API 구현 (#32)
scv1702 Feb 22, 2024
46573e6
GETP-95 chore: 페이징 최적화를 위한 AOP 설치 (#34)
wlgns12370 Feb 28, 2024
475749e
GETP-94 feat: 프로젝트 상세 조회 API 구현 (#35)
scv1702 Mar 6, 2024
49f693e
GETP-93 feat: 피플 목록 조회 API 구현 (#33)
wlgns12370 Mar 10, 2024
ebe2c83
rename: entity 패키지 명을 domain.entity로 변경 및 domain.values 패키지 추가
scv1702 Mar 10, 2024
1e7afb9
GETP-97 feat: 회원 가입 시 이메일 인증 동시 처리 기능 구현 (#36)
scv1702 Mar 13, 2024
4270aa1
GETP-97 fix: 이메일 인증 시도 시 Reflection으로 EmailVerification를 생성하지 못하는 오류 …
scv1702 Mar 16, 2024
5b16907
GETP-100 feat: 피플 프로필-포트폴리오 등록 API 구현 (#38)
wlgns12370 Mar 16, 2024
1fec839
GETP-101 feat: 피플 프로필-포트폴리오 수정 API 구현 (#40)
wlgns12370 Mar 17, 2024
64b3c39
chore: springdoc-openapi 라이브러리 설치 (#41)
scv1702 Mar 19, 2024
1e5325c
GETP-102 feat: 피플 프로필-포트폴리오 조회 API 구현 (#42)
wlgns12370 Mar 19, 2024
2ab5a67
chore: 커밋 그래프에서 환경변수 제거
scv1702 Mar 19, 2024
209f3f5
GETP-98 refactor: 의뢰자 정보 엔티티를 값 타입으로 분해 (#43)
scv1702 Mar 24, 2024
1784a80
chore: Prometheus와 Grafana 설치 및 설정 (#45)
scv1702 Mar 28, 2024
0d9c986
GETP-75 chore: 요구사항 변경에 따른 피플 정보 수정 (#44)
wlgns12370 Mar 28, 2024
f16ecd1
chore: merge 전 테스트를 위한 Github Actions workflow 작성 (#46)
scv1702 Mar 28, 2024
7883a03
chore: develop 브랜치 자동 배포를 위한 Github Actions workflow 작성 (#47)
scv1702 Mar 28, 2024
d38a626
GETP-99 feat: 피플 정보 엔티티를 값 타입으로 분해 (#48)
scv1702 Apr 1, 2024
3a144e6
chore: 테스트 속도 개선을 위해 JUnit 병렬 실행 단위를 클래스로 설정 (#50)
scv1702 Apr 1, 2024
759d004
GETP-56 fix: 사용자 회원 가입 시 선택할 수 있는 회원 유형을 피플 또는 의뢰자로 제한 (#49)
scv1702 Apr 1, 2024
5068307
GETP-114 feat: 프로젝트 좋아요 기능 구현 (#51)
scv1702 Apr 4, 2024
8bb68da
GETP-112 feat: 피플 좋아요 기능 구현 (#52)
wlgns12370 Apr 6, 2024
a783c9d
fix: env.sh 분리로 인한 환경 변수 인식 오류 수정 (#54)
scv1702 Apr 15, 2024
213aaf4
feat: Github Action 실패 감지 기능 추가 (#55)
scv1702 Apr 15, 2024
c966729
chore: docker compose 버젼업에 따른 docker-compose.yml 수정 (#56)
scv1702 Apr 16, 2024
6f1f9be
chore: Github Action JUnit 테스트 결과 보고서 기능 추가 (#57)
scv1702 Apr 16, 2024
b604e93
chore: Spring REST Docs 설치 및 설정 (#58)
scv1702 May 3, 2024
7c2a39c
feat: 이메일 인증, Access Token, Refresh Token의 만료 시간을 configuration 가능하게 …
scv1702 May 7, 2024
197a6af
feat: 내 사용자 정보 조회 기능 구현 (#60)
scv1702 May 7, 2024
7e8eb60
fix: 내 회원 정보 조회 시 피플 또는 의뢰자 정보를 등록하지 않은 경우 404를 반환하는 오류 수정 (#61)
scv1702 May 10, 2024
357a7e9
feat: 내 프로필 사진 등록 기능 구현 (#62)
scv1702 May 13, 2024
50f5d4b
test: 피플 정보 등록 테스트 작성 및 API 문서 작성 (#63)
scv1702 May 16, 2024
a121a56
chore: API 문서 복사 스크립트 수정
scv1702 May 16, 2024
6997736
test: 피플 상세 정보 조회 기능 컨트롤러 단위 테스트 작성 (#64)
scv1702 May 17, 2024
329588f
refactor: 닉네임, 전화번호, 프로필 사진 URI 필드를 Member로 이동 (#65)
scv1702 Jun 3, 2024
6daeaa0
GETP-143 test: 피플 목록 조회 컨트롤러 단위 테스트 및 API 문서 작성 (#67)
scv1702 Jun 9, 2024
a2ce81e
GETP-141 test: 로그인 컨트롤러 단위 테스트 및 API 문서 작성 (#66)
scv1702 Jun 9, 2024
49b0bbe
GETP-142 test: Access Token과 Refresh Token 재발급 컨트롤러 단위 테스트 및 API 문서 작…
scv1702 Jun 9, 2024
75ef9aa
GETP-144 test: 내 피플 정보 조회 컨트롤러 단위 테스트 및 API 문서 작성 (#68)
scv1702 Jul 9, 2024
c188f42
GETP-145 test: 회원 가입 시 이메일 인증 코드 전송 컨트롤러 단위 테스트 및 API 문서 작성 (#70)
scv1702 Jul 9, 2024
169fbec
refactor: PeopleController에서 내 피플과 내 피플 프로필 기능을 분리 (#71)
scv1702 Jul 9, 2024
a52055a
refactor: DDD 준비를 위한 패키지 이름 변경 (#72)
scv1702 Jul 11, 2024
f66ca69
GETP-113 feat: 피플 좋아요 취소 기능 구현 (#53)
wlgns12370 Jul 11, 2024
be64d6f
refactor: repository 인터페이스를 domain 패키지로 이동 (#73)
scv1702 Jul 11, 2024
fed41f7
refactor: 공통으로 사용하는 도메인 모델을 common 패키지로 추출 (#74)
scv1702 Jul 11, 2024
69547cf
refactor: Domain Driven Design 적용 및 CQRS 패턴 적용 (#76)
scv1702 Jul 19, 2024
dbc5b4d
test: Github Action Self-Hosted Runner 테스트 (#77)
scv1702 Jul 19, 2024
ff7ff0e
feat: 해당 엔티티가 존재하지 않는 예외를 처리하기 위한 EntityNotFoundExceptionHandler 구현 (…
scv1702 Jul 20, 2024
b173e28
refactor: 멤버 도메인에 검증 어노테이션 추가 및 커스텀 예외 처리로 변경 (#79)
scv1702 Jul 20, 2024
4aad090
refactor: 피플 도메인에 검증 어노테이션 추가 및 커스텀 예외 처리로 변경 (#80)
scv1702 Jul 20, 2024
cca5361
fix: JWT 토큰 관련 예외를 사용자에게 알려주지 않던 오류 수정 (#81)
scv1702 Jul 20, 2024
f2bddd0
refactor: 프로젝트 도메인에서 ErrorCode Enum 제거 (#82)
scv1702 Jul 22, 2024
f9435ab
feat: 프로젝트 좋아요 취소 기능 구현 (#83)
scv1702 Jul 22, 2024
5314558
chore: PostgreSQL에서 MySQL로 변경 (#84)
scv1702 Jul 22, 2024
2c60a1f
refactor: 프로젝트 지원에 대한 비즈니스 로직을 PeopleApplicationService에서 분리 (#85)
scv1702 Jul 22, 2024
1d0a67b
GETP-153 feat: 내 프로젝트 목록 조회 기능 구현 (#87)
scv1702 Jul 24, 2024
dd2f5a6
GETP-154 test: 프로젝트 상세 조회 컨트롤러 단위 테스트 작성 (#88)
scv1702 Jul 24, 2024
8dbe8b2
test: 프로젝트 목록 조회 컨트롤러 단위 테스트 작성 (#89)
scv1702 Jul 24, 2024
9c63a17
GETP-158 refactor: 프로젝트 의뢰에 대한 비즈니스 로직을 도메인 서비스로 분리 (#90)
scv1702 Jul 25, 2024
a11bace
feat: 제거했던 내 회원 정보 조회 기능 롤백 (#91)
scv1702 Jul 28, 2024
79f6040
fix: 내 회원 정보 조회에서 닉네임, 프로필 이미지를 등록하지 않은 경우 NPE가 발생하는 오류 수정 (#92)
scv1702 Jul 28, 2024
7587af3
GETP-161 test: 의뢰자 정보 등록 컨트롤러 단위 테스트 작성 (#93)
scv1702 Jul 30, 2024
18bde73
GETP-162 test: 의뢰자 정보 수정 컨트롤러 단위 테스트 작성 (#94)
scv1702 Jul 30, 2024
3f85083
GETP-163 test: 내 의뢰자 정보 조회 컨트롤러 단위 테스트 작성 (#95)
scv1702 Jul 30, 2024
5debd9b
GETP-164 refactor: 의뢰자 도메인 Error Code 제거 및 커스텀 예외로 변경 (#96)
scv1702 Jul 30, 2024
e10cd1f
rename: `@URLValid`에서 `@URLPattern`으로 변경 (#98)
scv1702 Jul 30, 2024
95a76d0
rename: `@Enum`을 infra.annotation에서 domain.common.annotation으로 이동 (#99)
scv1702 Jul 30, 2024
6963650
rename: registerProject에서 commissionProject로 변경 (#100)
scv1702 Jul 30, 2024
33262de
GETP-166 feat: 프로젝트 상세 조회 기능의 프로젝트 좋아요 수 조회 구현 (#101)
scv1702 Aug 2, 2024
29a588e
style: 정적 팩토리 메소드의 이름을 인자 개수가 하나면 `from`, 둘 이상이면 `of`로 수정 (#102)
scv1702 Aug 2, 2024
f25a4c1
GETP-171 feat: 피플 목록 조회 DTO에 소개 필드 추가 (#103)
scv1702 Aug 2, 2024
b5f6ff8
refactor: 피플 도메인의 사용자에게 반환할 에러 메시지에 대한 책임을 사용자 정의 예외로 캡슐화 (#104)
scv1702 Aug 2, 2024
5cf4331
refactor: 프로젝트 도메인의 사용자에게 반환할 에러 메시지에 대한 책임을 사용자 정의 예외로 이동 (#105)
scv1702 Aug 2, 2024
f15325a
refactor: 회원 도메인의 사용자에게 반환할 에러 메시지에 대한 책임을 사용자 정의 예외로 이동 (#106)
scv1702 Aug 2, 2024
45b6ca6
GETP-157 feat: 프로젝트 지원자 미팅 신청 구현 (#107)
scv1702 Aug 4, 2024
df21d89
fix: `MailSender` Bean 중복 등록과 `@DomainService`로 인한 스프링 컨텍스트 로드 실패 오류 수정
scv1702 Aug 4, 2024
493afbd
GETP-174 refactor: 피플 정보 및 프로필을 엔티티에서 VO로 강등 (#109)
scv1702 Aug 6, 2024
d0708b6
GETP-172 feat: 내 피플 정보 조회 DTO에 전화번호 필드 추가 (#110)
scv1702 Aug 6, 2024
2f7ca47
GETP-168 feat: 피플 조회 기능의 피플 좋아요 수 조회 구현 (#111)
scv1702 Aug 6, 2024
6f124ae
GETP-170 feat: 파일 업로드 기능 구현 (#112)
scv1702 Aug 7, 2024
1f5f7dc
feat: Github Action 배포 워크 플로우 클릭을 통해 실행할 수 있도록 `workflow_dispatch` 이벤…
scv1702 Aug 7, 2024
2fa0562
GETP-170 docs: 파일 업로드 API 문서 작성 (#114)
scv1702 Aug 7, 2024
90aaaf2
fix: 사진 삭제 시 URI로부터 잘못된 경로를 생성하는 오류 수정 (#115)
scv1702 Aug 7, 2024
5c0df73
fix: 사진 업로드 시 Tika를 이용한 검증에서 Content-Type을 비교한 검증으로 변경해 사진이 깨지는 오류 수정…
scv1702 Aug 7, 2024
1db140b
GETP-185 fix: 피플 프로필이 미등록 상태임에도 등록할 수 없는 오류 수정 (#118)
scv1702 Aug 13, 2024
93fba37
GETP-186 feat: 의뢰한 프로젝트 목록 조회 API 엔드 포인트를 `/client/me/projects`로 변경 (…
scv1702 Aug 14, 2024
7fac858
GETP-187 feat: DAO 테스트 Entity Manager Factory 캐싱을 통한 속도 개선 (#120)
scv1702 Aug 14, 2024
c2b2bf7
GETP-175 feat: 프로젝트 지원자 목록 조회 기능 구현 (#121)
scv1702 Aug 14, 2024
d154508
GETP-188 fix: 같은 프로젝트에 중복으로 지원이 가능한 오류 수정 (#122)
scv1702 Aug 14, 2024
274ddc6
GETP-190 feat: Application Context 캐싱을 통한 컨트롤러 단위 테스트 속도 개선 (#123)
scv1702 Aug 19, 2024
c9a4862
GETP-192 refactor: auth 컴포넌트에서 ErrorCode에 대한 의존성 제거 (#124)
scv1702 Aug 19, 2024
9ac8445
GETP-177 feat: 지원한 프로젝트 목록 조회 기능 구현 (#117)
wlgns12370 Aug 19, 2024
328e88d
GETP-193 rename: infra 패키지에서 common 패키지에 해당하는 클래스 추출 (#125)
scv1702 Aug 19, 2024
6a5253e
GETP-194 rename: web driving adapter를 api 패키지로 추출 (#126)
scv1702 Aug 19, 2024
ab1cb9e
GETP-195 refactor: Application Out Port 인터페이스 생성 (#127)
wlgns12370 Aug 19, 2024
672b558
GETP-196 refactor: member 컴포넌트 포트-어댑터 아키텍처 적용 (#128)
scv1702 Aug 19, 2024
4c10ce1
GETP-196 fix: `MemberJpaEntity`의 builder에서 초기화 표현식을 무시하지 않도록 `@Builde…
scv1702 Aug 19, 2024
effc068
GETP-198 refactor: service term 도메인에서 persistence adapter 분리 (#130)
scv1702 Aug 21, 2024
b6a1862
GETP-199 refactor: service term 컴포넌트의 persistence adapter 모듈 분리 (#131)
scv1702 Aug 21, 2024
5904118
GETP-200 refactor: member 컴포넌트의 profile image 기능을 application 모듈로 리팩토…
scv1702 Aug 21, 2024
4405531
GETP-201 refactor: auth 컴포넌트의 application 모듈 분리 (#134)
scv1702 Aug 21, 2024
c09a93f
GETP-202 rename: test fixture를 fixture 모듈로 추출 (#135)
scv1702 Aug 21, 2024
884f562
GETP-203 refactor: client 컴포넌트 포트-어댑터 아키텍쳐 적용 (#137)
scv1702 Aug 21, 2024
19a9353
GETP-197 refactor: ProjectMeeting 컴포넌트 포트-아키텍처 적용 (#136)
wlgns12370 Aug 27, 2024
f522b7a
GETP-206 refactor: project commission 컴포넌트 포트-어댑터 아키텍쳐 적용 (#138)
scv1702 Aug 27, 2024
fbb4aad
GETP-208 refactor: project apply 컴포넌트 포트-어댑터 아키텍쳐 적용 (#139)
scv1702 Aug 27, 2024
ca681d4
GETP-210 refactor: infra 컴포넌트 포트-어댑터 아키텍쳐 적용 (#140)
scv1702 Aug 30, 2024
0c63b1f
GETP-211 refactor: people 컴포넌트 포트-어댑터 아키텍쳐 적용 (#141)
scv1702 Sep 3, 2024
bd30a99
GETP-209 refactor: like 컴포넌트의 persistence adapter 모듈 분리 (#142)
wlgns12370 Sep 5, 2024
36cdd94
GETP-216 refactor: common 컴포넌트 분해 (#143)
scv1702 Sep 5, 2024
a39c85d
GETP-224 fix: people_like 테이블과 project_like 테이블의 primary key 이름을 JPA …
scv1702 Sep 10, 2024
803257c
GETP-225 chore: 데이터베이스 마이그레이션을 위한 Flyway 도입 (#148)
scv1702 Sep 10, 2024
fab4f62
GETP-220 feat: E2E 테스트용 데이터베이스 더미 데이터 적재 스크립트 작성 (#149)
scv1702 Sep 10, 2024
2a75fdc
GETP-234 refactor: member 도메인 모델의 ID를 클래스로 변경 (#153)
scv1702 Sep 17, 2024
18387bc
GETP-235 refactor: people 도메인 모델의 ID를 클래스로 변경 (#154)
scv1702 Sep 18, 2024
0fe6b01
GETP-236 refactor: client 도메인 모델의 ID를 클래스로 변경 (#155)
scv1702 Sep 18, 2024
7217aa3
GETP-236 refactor: project 도메인 모델의 ID를 클래스로 변경 (#156)
scv1702 Sep 19, 2024
af0d4a4
GETP-238 refactor: project application 도메인 모델의 ID를 클래스로 변경 (#157)
scv1702 Sep 19, 2024
4cb384c
GETP-232 feat: 피플 상세 조회 DTO에 좋아요 여부 필드 추가 (#158)
scv1702 Sep 19, 2024
3452ac7
GETP-241 feat: 프로젝트 의뢰 모집 인원 필드 추가 (#159)
scv1702 Sep 21, 2024
18f8f64
GETP-242 feat: 프로젝트 상세 조회 DTO에 지원자 수 필드 추가 (#160)
scv1702 Sep 21, 2024
8e47829
GETP-243 feat: 프로젝트 지원의 팀원 추가 기능 구현 (#161)
scv1702 Sep 21, 2024
59cc17d
GETP-120 feat: 좋아요한 프로젝트 목록 조회 기능 구현 (#162)
scv1702 Sep 24, 2024
03c674a
GETP-120 fix: 프로젝트 목록 조회의 필터링 적용 시 회원 ID를 비교하지 않던 오류 수정 (#163)
scv1702 Sep 24, 2024
7a46512
GETP-121 feat: 좋아요한 피플 목록 조회 기능 구현 (#164)
scv1702 Sep 24, 2024
50572cb
GETP-275 feat: 의뢰자 정보 도메인 모델에서 계좌 필드 삭제 (#165)
wlgns12370 Sep 25, 2024
7f2ed9f
GETP-270 feat: 피플 닉네임으로 검색 기능 구현 (#166)
scv1702 Sep 26, 2024
b854d8b
GETP-295 feat: 팀원 검색 기능 구현 (#168)
scv1702 Sep 30, 2024
2dab605
GETP-271 feat: 팀원 승인 신청 전송 기능 구현 (#169)
scv1702 Oct 1, 2024
c7d94b2
GETP-292 feat: 프로젝트 카테고리에 기타 필드 추가 (#171)
scv1702 Oct 2, 2024
38cbfea
GETP-296 feat: 팀원 승인 기능 구현 (#170)
scv1702 Oct 2, 2024
6df3b3f
chore: OAS 자동 생성을 위한 restdocs-api-spec 도입 및 API 문서 구조 정리 (#172)
scv1702 Oct 3, 2024
d9fb8b8
chore: CORS 허용 출처에 api.principes.xyz 추가 (#173)
scv1702 Oct 6, 2024
9b56396
GETP-276 feat: 프로젝트 상세 조회 DTO에 좋아요 여부 필드 추가 (#167)
wlgns12370 Oct 9, 2024
fa35933
GETP-301 feat: 피플 목록 조회 모자이크 기능 추가 (#174)
wlgns12370 Oct 13, 2024
dfe520c
GETP-308 fix: 피플 좋아요 여부 메소드에 member 객체 null 체크 추가 (#175)
scv1702 Oct 13, 2024
093061a
GETP-278 feat: 프로젝트 지원자 목록 조회 API 구현 (#176)
scv1702 Oct 29, 2024
da8a58e
GETP-293 feat: 프로젝트 지원 내역 조회 API 구현 (#177)
scv1702 Oct 29, 2024
543e636
GETP-217 feat: 프로젝트 지원서 조회 API 구현 (#178)
scv1702 Oct 29, 2024
5b41660
GETP-310 feat: 파일 업로드 최대 용량 5MB로 변경 (#179)
scv1702 Nov 3, 2024
ed2a825
GETP-323 refactor: 단위 모듈 프로젝트를 멀티 모듈로 분리 (#180)
scv1702 Nov 7, 2024
33b1a3e
GETP-325 feat: 프로젝트 지원 테이블 인덱스 설계를 통해 프로젝트 목록 조회 API 성능 약 2.35배 개선 (#…
scv1702 Nov 12, 2024
cb99a51
GETP-324 feat: 프로젝트 테이블 인덱스 설계를 위한 배치 프로그램 작성 (#181)
scv1702 Nov 13, 2024
3d6e7f2
GETP-330 fix: 프로젝트 조회 시 의뢰자 정보 미등록한 경우 NPE 발생 오류 해결 (#183)
scv1702 Nov 19, 2024
9ebf979
chore: 테스트 서버 배포 스크립트 작성 (#184)
scv1702 Dec 25, 2024
1addf36
chore: 충돌 해결
scv1702 Mar 11, 2025
93e28bb
chore: 기존 프로젝트 폴더 삭제
scv1702 Mar 11, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
41 changes: 41 additions & 0 deletions .github/workflows/deploy-test-toothless.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: deploy to toothlessdev

on:
workflow_dispatch:
push:
branches: [ develop ]

jobs:
deploy:
environment: development
runs-on: toothlessdev
permissions:
checks: write
pull-requests: write
steps:
- uses: actions/checkout@v4

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: 17

- name: Create .env.dev file
run: |
touch .env.dev
echo "${{ secrets.ENV }}" >> .env.dev

- name: Cache Gradle packages
uses: gradle/actions/setup-gradle@v3
with:
cache-read-only: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/develop' }}

- name: Build with Gradle
run: ./dev.sh

- name: Publish Unit Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
files: build/test-results/**/*.xml
20 changes: 10 additions & 10 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ derby.log
# Gradle artifacts
.gradle
.gradletasknamecache
/build
buildSrc/build
/spring-*/build
/framework-*/build
/integration-tests/build
/src/asciidoc/build
spring-test/test-output/
**/build
**/buildSrc/build
**/spring-*/build
**/framework-*/build
**/integration-tests/build
**/src/asciidoc/build
**/spring-test/test-output/

# Maven artifacts
pom.xml
Expand Down Expand Up @@ -104,9 +104,9 @@ local.sh
.run/

# Static Resources
src/main/resources/static/*
src/test/resources/static/*
./storage
**/src/main/resources/static/docs/*
**/src/main/resources/static/oas/*
storage/*

# Yml File
local-docker-compose.yml
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
FROM openjdk:17-jdk

ARG JAR_FILE=build/libs/*.jar
ARG JAR_FILE=get-p-api/build/libs/*.jar
ADD ${JAR_FILE} app.jar

ENTRYPOINT ["java", "-Duser.timezone=GMT+9", "-Djava.security.egd=file:/dev/./urandom", "-Dspring.profiles.active=dev", "-jar", "/app.jar"]
167 changes: 53 additions & 114 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,137 +2,76 @@ plugins {
id 'java'
id 'org.springframework.boot' version '3.1.4'
id 'io.spring.dependency-management' version '1.1.3'
id 'org.asciidoctor.jvm.convert' version '4.0.2'
id 'java-library'
id 'java-test-fixtures'
id 'maven-publish'
}

group = 'es.princip'
version = '0.0.1-SNAPSHOT'
allprojects {
group = 'es.princip'
version = '0.0.1-SNAPSHOT'

java {
sourceCompatibility = '17'
}

repositories {
mavenCentral()
}

configurations {
compileOnly {
extendsFrom annotationProcessor
repositories {
mavenCentral()
}
asciidoctorExt
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
developmentOnly 'org.springframework.boot:spring-boot-devtools'

// Validation
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'org.apache.tika:tika-core:2.9.1'

// Jpa
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'

// Security
implementation 'org.springframework.boot:spring-boot-starter-security'
testImplementation 'org.springframework.security:spring-security-test'

// Jwt
implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
implementation 'io.jsonwebtoken:jjwt-impl:0.11.5'
implementation 'io.jsonwebtoken:jjwt-jackson:0.11.5'

// Database
runtimeOnly 'com.mysql:mysql-connector-j:9.0.0'
implementation 'org.flywaydb:flyway-core'
implementation 'org.flywaydb:flyway-mysql'

// Lombok
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'

// WebSocket
implementation 'org.springframework:spring-websocket:6.0.13'

// QueryDSL
implementation "com.querydsl:querydsl-jpa:5.0.0:jakarta"
annotationProcessor "com.querydsl:querydsl-apt:5.0.0:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"

// Redis
implementation 'org.springframework.boot:spring-boot-starter-data-redis'

// Mail
implementation 'com.sun.mail:jakarta.mail:2.0.1'
implementation 'org.springframework.boot:spring-boot-starter-mail:3.2.1'

// MapStruct
implementation 'org.mapstruct:mapstruct:1.6.0'
annotationProcessor 'org.mapstruct:mapstruct-processor:1.6.0'

// AOP
implementation 'org.springframework.boot:spring-boot-starter-aop'

// Test Containers
testImplementation 'org.springframework.boot:spring-boot-testcontainers'
testImplementation 'org.testcontainers:testcontainers:1.19.3'
testImplementation 'org.testcontainers:junit-jupiter:1.19.3'
testImplementation 'org.testcontainers:mysql:1.20.0'
subprojects {
apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'java-library'
apply plugin: 'java-test-fixtures'
apply plugin: 'maven-publish'

java {
sourceCompatibility = '17'
targetCompatibility = '17'
}

implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.16.1'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}

// Swagger
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.4.0'
test {
useJUnitPlatform()
}

// Monitoring
implementation 'org.springframework.boot:spring-boot-starter-actuator'
implementation 'io.micrometer:micrometer-registry-prometheus'
tasks.register('copyTestResults', Copy) {
from 'build/test-results'
into '../build/test-results'
include '**/*.xml'
}

// Spring REST Docs
asciidoctorExt 'org.springframework.restdocs:spring-restdocs-asciidoctor'
testImplementation 'org.springframework.restdocs:spring-restdocs-mockmvc'
}
test.finalizedBy(copyTestResults)

ext {
snippetsDir = file('build/generated-snippets')
}
dependencies {
// Lombok 라이브러리
compileOnly 'org.projectlombok:lombok:1.18.34'
annotationProcessor 'org.projectlombok:lombok:1.18.34'
testCompileOnly 'org.projectlombok:lombok:1.18.34'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.34'

test {
outputs.dir snippetsDir
useJUnitPlatform()
}
// MapStruct 라이브러리
implementation 'org.mapstruct:mapstruct:1.6.0'
annotationProcessor 'org.mapstruct:mapstruct-processor:1.6.0'

asciidoctor {
inputs.dir snippetsDir
configurations 'asciidoctorExt'
dependsOn test
sources {
include('**/index.adoc')
}
baseDirFollowsSourceFile()
}
// Jackson 라이브러리
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.16.1'

tasks.register('copyDocument', Copy) {
dependsOn asciidoctor
doFirst {
delete file('src/main/resources/static/docs')
// 테스트 프레임워크
testImplementation 'org.springframework.boot:spring-boot-starter-test:3.3.5'
testImplementation 'org.junit.jupiter:junit-jupiter:5.9.2'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}
from asciidoctor.outputDir
into file('src/main/resources/static/docs')
}

build {
dependsOn copyDocument
bootJar {
enabled = false
}

bootJar {
dependsOn copyDocument
from ("${asciidoctor.outputDir}") {
into 'static/docs'
}
jar {
enabled = true
}
Loading
Loading