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

[FEAT] 과제제안 API 구현 #129

Merged
merged 16 commits into from
Nov 28, 2024
Merged

[FEAT] 과제제안 API 구현 #129

merged 16 commits into from
Nov 28, 2024

Conversation

yesjuhee
Copy link
Contributor

작성자: @yesjuhee
담당: @jcy0308

체크 리스트

  • 적절한 제목으로 수정했나요?
  • 상단에 이슈 번호를 기입했나요?
  • Target Branch를 올바르게 설정했나요?
  • Reviewers/Assignees/Labels을 알맞게 설정했나요?

작업 내역

  • getProposals
  • getProposal
  • getProposalReply
  • createProposal
  • updateProposal
  • deleteProposal
  • createProposalReply
  • updateProposalReply
  • deleteProposalReply

비고

제가 바로 머지 하겠습니다!

jcy0308 and others added 16 commits November 21, 2024 23:01
* [FEAT] Video 관련 API 개발 (#51)

* feat: talk 및 jobInterview 레포지토리 추가

* feat: jobInterview DTO 추가

* feat: add create and get jobinterview api

* feat: add update and delete jobinterview api

* fix: change BaseVideoEntity access level

* refactor: add new line in JobInterview Category

* refactor: change dto name

* fix: change string check annotation to NotBlank

* refactor: change category enum class name

* feat: add enum validator

* refactor: apply dto format discussed in PR #12

* fix: apply static factory method

* chore: remove superbuilder annotation in BaseTimeEntity

* chore: transactional 어노테이션 클래스로 이동

* chore: 엔티티 객체 생성 스타일 변경

* fix: pathVariable 명시

* fix: cascade 옵션 변경

* chore: dirty checking 사용하는 방법으로 update 변경

* feat: change exception to custom BadRequestException

* chore: 접근제어자 제거

* feat: 잡페어 인터뷰 생성 테스트코드 작성

* feat: add JobInterview create Testcode

* fix: ExceptionCode 추가 및 변경사항 대응

* feat: 잡페어 인터뷰 컨트롤러 테스트

* feat: 잡페어 인터뷰 RestDocs

* feat: create QuizRepository

* feat: add Talk Request/Response DTO

* feat: implement talkservice and add exception code

* feat: implement talkController

* feat: implement TalkControllerTest

* feat: implement TalkControllerTest

* feat: 대담영상 api 문서 작성

* feat: 퀴즈 포함 대담 API 구현

* fix: 대담 연관관계 업데이트 버그 수정

* feat: add talker belonging and name field in jobinterview entity

* feat: update jobinterview testcode

* chore: remove status header

* feat: remove HasQuiz And Apply JsonUnwrapped Annotation

* refactor: remove Talks(List) Response DTO

* feat: update TalkController TestCode

* chore: update Talk API Docs

* refactor: 엔티티에서 DTO 사용 제거

* feat: @authuser 적용 및 testcode 수정

* chore: add token to request cookie and header

* fix: change local.yml

* refactor: change video package location

* refactor: test code 패키지 변경

* fix: change db url in local.yml

* [FEAT] Notice/EventNotice 관련 API 개발 (#56)

* feat: Add Notice,EventNotice entity Superbuilder, setter for update

* feat: Implement NoticeDto Inner Static class

* feat: Implement NoticeRepository

* feat: Implement NoticeService interface, NoticeServiceImpl

* feat: Implement NoticeController

* fix: @NoArgsConstructor(access = PROTECTED) for entities

* fix: change url, dto (request) field, add validation

* fix: remove service interface

* fix: change exception to bad request exception

* feat: implement getNoticeList api, minor renaming controller parameter

* fix: move @transactional annotation

* fix: remove @DaTa annotation

* refactor: refactor package structure

* fix: split response, request dto

* fix: Use static factory method instead of builder pattern

* feat: change put/post to return entity value, change update logic (use repository), fix minor naming

* feat: Implement increasing hitCount when getNotice

* fix: change protect constructor of BaseNoticeEntity to use annotation

* fix: Revise static factory method to use `from`

* [FEAT] Global Exception, Test, Restdocs 설정 (#17)

* feat: validator exception handler, BadrequestException 추가

* feat: controller test 설정 추가

* feat: index.adoc 추가

* feat: request field 템플릿 추가

* refactor: request field snippet 들여쓰기 수정

* feat: exception logger 추가

* feat: Implement RestDocs, base test code for NoticeController, change exception

- cherry-pick develop branch's 0f55de6 commit
- only for create notice
- revise to use custom BadRequestException

* fix: Add cascade option in Notice Entity

* fix: Revise parameter naming for pathvariable annotaion

* fix: Fix wrong service method description

* feat: change updateNotice, increaseHitCount to use entity method

* feat: Implement attached files handling, add NoticeListElementResponse

* refactor: rename DTOs

* fix: Revise Notice/EventNotice entity to not inherit BaseNoticeEntity

* minor renaming variables

* feat: Implement Test code/RestDocs for NoticeController

* cherry-pick: revised custom exception code #21

* feat: add custom exceptions for notice, notnull annotation for fileIds field

* refactor: rename NoticeResponse fileReponses field to files

* fix: revise NoticeService to work with request with no fileIds field

* fix: refine controllerTest code for restDocs

* fix: add pageable parameter in controllerTest

* refactor: remove unnecessary annotation

* feat: duplicate notice api for eventNotice api

* refactor: reformat (clean) code

* fix: change exception code number to prevent conflict

* feat: implement fixed notices prioritization

* refactor: change :path to {path} in adoc

* refactor: refactor adoc files

* refactor: remove debugging line for getNoticeList

* feat: new logic for updateNotice file handling (using Cascade=ALL)

* cherrypick: auth commit from develop branch

* refactor: move domain package location

* feat: duplicate eventNotice getList, update code from Notice

* refactor: remove unused import statement

* feat: auth user (admin) for create, update, delete

* feat: revise test code for auth user

* fix: Typo correction

* fix: add application-local.yml for CI

* chore: remove unnecessary comments

* refactor: move notice/eventNotice controller test package

---------

Co-authored-by: yesjuhee <[email protected]>
Co-authored-by: chanyeong <[email protected]>

* [FEAT] EvnetPeriod 관련 API 구현 완료 (#58)

* feat: EventPeriod  리포지터리 생성

* feat: devtools 패키지 추가

* feat: 엔티티에 SupeBuilder 추가

* feat: EventPeriodDto 작성

* feat:EventPeriodController 구현

* feat: EventPeriodService 구현

* refactor: 사용 안하는 import 삭제

* feat: test configurations

* feat: EvnetPeriodController 테스트 코드 작성

* feat: createEventPeriod 테스트코드, restdocs 코드 구현

* feat: GlobalExceptionHandler 추가, validation 실패시 응답바디 포멧 수정

* fix: builder 제거, DTO 분리

* feat: 정적 팩토리 메서드 사용하는 방식으로 createEventPeriod 메서드 수정

* feat: BadRequestExcption 추가

* fix: DTO 구조 변경에 맞춰 테스트 수정

* fix: Bad Request 테스트 수정, 해당 테스트 restdocs에서 제외시킴

* feat: 커스텀 에러 코드를 사용하는 방식으로 Exception Handler 수정

* fix: dto validation에 대한 응답도 ExceptionCode를 사용하도록 수정

* refactor: EventPeriodRequest -> CreateEventPeriodRequest 로 변경

* feat: getEvnetPeriods api 구현

* feat: getEventPeriods API 테스트, restdocs 구현

* fix: gitignore에 static/docs 추가

* feat: deleteEventPeriod controller 작성

* refactor: 컨트롤러 refactor

* feat: deleteEventPeriod service 구현

* feat: deleteEventPeriod test

* refactor: MockMvcRequestBuilders -> RestDocumentationRequestBuilders 로 변경

* feat: restdocs 추가

* refactor: merge conflict resolve 생략된거 해결

* refactor: index.adoc 머지 오류 수정

* fix: 도메인에서 DTO 사용 제외

* fix: createEventPeriod 요청 형식, 로직 수정

* fix: EventPeriod 조회 API 수정(리스트 조회 -> 단건 조회)

* feat: deleteEventPeriod API 삭제, updateEventPeriod API 추가

* feat: Auth 설정 추가

* refactor: event 도메인 폴더 위치 변경

* fix: test, restdocs 수정

* fix: TEST Auth 설정 추가

* fix: getEventPeriods API 복구

* fix: application-local.yml 복구

* chore: 주석 삭제

* chor: 누락된 adoc 파일 추가

* chore: 제안 답변 엔티티 이름 변경

* feat: proposal controller 작성

* feat: proposal repository 작성

* feat: proposal dto 작성

* feat: async config 추가

* feat: controller 수정

* feat: mail 관련 설정추가

* feat: 비동기 mail sender 작성

* feat: proposal 관련 dto 작성

* feat: ProposalService 작성

* feat: mailSender 인터페이스 패턴으로 구성

* refactor: event 이름 변경

* fix: cascade 적요

* feat: getProposalReplies 작성

* feat: restDocs 작성

* feat: 과제 제안 답변 조회 api 작성

* feat: 과제 제안 컨트롤러 테스트코드 작성

* feat: 과제제안 응답에 reply 필드 추가

* feat: 권한 문제 수정 및 과제제안 필드 변경

* fix: 동일성 체크 문제 수정

* fix: 권한 필터조건 수정

* fix: 과제답변 관리자도 등록할수 있도록 수정

* feat: restDocs 세분화

---------

Co-authored-by: Hyunjun Yang <[email protected]>
Co-authored-by: hyzoon <[email protected]>
Co-authored-by: yesjuhee <[email protected]>
@yesjuhee yesjuhee added 🚀 Feature 기능 개발 🎯 API API 개발 관련 Proposal Domain labels Nov 28, 2024
@yesjuhee yesjuhee linked an issue Nov 28, 2024 that may be closed by this pull request
11 tasks
@yesjuhee yesjuhee merged commit a1660cc into develop Nov 28, 2024
1 check passed
@yesjuhee yesjuhee deleted the feat/46-proposal-api/base branch November 28, 2024 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🎯 API API 개발 관련 🚀 Feature 기능 개발 Proposal Domain
Projects
None yet
2 participants