Skip to content

Commit

Permalink
Develop -> Main 머지 (#96)
Browse files Browse the repository at this point in the history
* feat: 공지사항 생성, 공지사항 읽기 기능 추가 (#1)

* ✨ 패키지 및 엔티티 생성

* ✨ BaseTimeEntity 생성, PostEntity 기본 내용 작성

* ✨ PostController 생성 및 기본 내용 작성

* ✨ postService 생성

* ✨ Exceptions.kt 생성

* ✨ postDto 생성

* ✨ postRepository 생성 및 기본 내용 작성

* 💚 application.yaml 로컬 환경에서 작동하도록 설정

* feat: createPost 기능 생성

* refactor: 리뷰 주신 거 수정

* refactor: post -> notice 수정 등

* chore: .idea 디렉토리 삭제

* chore: PR 템플릿 생성 (#2)

* feat: 로컬 db용 docker-compose 파일 추가 및 application.yaml 수정 (#4)

* feat: 공지사항 수정, 삭제, 태그 기능 추가 (#3)

* fix: ExceptionHandler 추가

* feat: updateNotice 추가, valid 추가

* feat: deleteNotice 추가

* feat: enrollTag 기능 추가, noticeTag 연관 엔티티 추가

* feat: 공지사항 작성할 때 태그 생성 및 수정

* fix: 로컬 db 없앰

* fix: pr 리뷰 수정

* fix: pr 리뷰 수정

* fix: noticeTag assign

* feat: 구성원(교수) 생성 및 조회 API 구현  (#8)

* feat: 교수 엔티티 및 DTO 설계

* feat: 교수 생성 및 조회

* Docs: Swagger 추가 (#7)

* Docs: Add swagger dependency

* Docs: Add basic config for swagger

* Docs: Add basic configuration for swagger.

* feat: 페이지네이션+검색 기능 추가 (#5)

* feat: isPublic, isSlide, isPinned 추가

* feat: queryDsl 적용 위해 gradle 추가 fix: javax -> jakarta 변경

* feat: queryDsl 도입

* feat: 키워드+태그 검색 추가

* feat: search query에 isDeleted, isPublic 추가 및 isPinned 우선순위 설정

* fix: requestBody -> requestParam 수정

* feat: 페이지네이션 추가

* fix: 키워드 booleanBuilder 추가, application.yaml 수정

* fix: searchNotice readOnly 추가

* fix: SearchRequest 삭제

* fix: NoticeDto tags 추가

* fix: pr 리뷰 수정 / feat: 검색 기능 보강 및 수정

* fix:코드 수정

* fix: SearchResponse isPinned 추가

* fix: SearchResponse에 total 추가

* fix: 페이지 개수 수정

* fix: searchNotice queryDsl 오류 수정

* fix: local 설정 변경

* CICD: 배포 자동화 (#6)

* CICD: Change expose port and added image tag

* CICD: Change ddl-auto to create in prod profile for test

* CICD: Added Deploy github action

* CICD: Merge jobs to one job

* Fix: Change checkout order to first step

* CICD: Add context for docker build action

* Fix: Change spring profile arg position

* CICD: Change openjdk version to 17

* CICD: Change docker compose build image tag to latest

* CICD: Change to use ghcr repository.

* Fix: change list to string in docker push tags.

* Fix: Change registry to ghcr.io

* Fix: change env to pass to github action instead of ssh export command

* Fix: unwrap bracket.

* Fix: wrap Profile with ""

* CICD: Add .env file

* CICD: Change prod ddl-auto to create (for developing), and add TODO comment.

* CICD: Remove cicd/deploy branch for condition.

* feat: 구성원(교수) 수정 및 삭제 API (#9)

* feat: 교수 조회시 최종학력이 앞으로 오게끔 정렬

* feat: 교수 수정 및 삭제 API

* feat: 학력과 경력 엔티티 필드 변경, 수정 API 구현

* feat: 구성원(행정직원) CRUD API (#10)

* feat: 행정직원 엔티티 및 DTO 설계

* feat: 행정직원 CRUD

* feat: 교수 조회시 이름순 정렬

* fix: 교수 연구 분야 Set -> List 로 변경

* feat: 행정직원 주요업무 업데이트 구현

* feat: news 패키지 추가, 디벨롭 및 프론트에 맞게 엔티티 변경 (#12)

* feat: news 패키지 생성

* feat: readNews 생성, news 패키지 추가로 인한 명칭 변경

* feat: createNews, enrollTag(새소식) 추가, news 패키지로 인한 명칭 추가 변경

* feat: updateNews, deleteNews 추가

* fix: searchNotice 관련 명칭 변경

* feat: searchNews 추가

* fix: develop 브랜치 반영, 프론트 요구사항 반영

* feat: readNotice, readNews에 이전글 다음글 추가

* 태그 업데이트 코드 리팩터링중

* refactor: 코드 수정, 이전제목 추가

* fix: 게시글 하나일때 read 가능

* fix: prevNext null 없애기

* fix: 이전글 다음글 null 수정

* fix: main에서 develop으로 pr (#16)

* feat: merge develop to main (#13)

* feat: 공지사항 생성, 공지사항 읽기 기능 추가 (#1)

* ✨ 패키지 및 엔티티 생성

* ✨ BaseTimeEntity 생성, PostEntity 기본 내용 작성

* ✨ PostController 생성 및 기본 내용 작성

* ✨ postService 생성

* ✨ Exceptions.kt 생성

* ✨ postDto 생성

* ✨ postRepository 생성 및 기본 내용 작성

* 💚 application.yaml 로컬 환경에서 작동하도록 설정

* feat: createPost 기능 생성

* refactor: 리뷰 주신 거 수정

* refactor: post -> notice 수정 등

* chore: .idea 디렉토리 삭제

* chore: PR 템플릿 생성 (#2)

* feat: 로컬 db용 docker-compose 파일 추가 및 application.yaml 수정 (#4)

* feat: 공지사항 수정, 삭제, 태그 기능 추가 (#3)

* fix: ExceptionHandler 추가

* feat: updateNotice 추가, valid 추가

* feat: deleteNotice 추가

* feat: enrollTag 기능 추가, noticeTag 연관 엔티티 추가

* feat: 공지사항 작성할 때 태그 생성 및 수정

* fix: 로컬 db 없앰

* fix: pr 리뷰 수정

* fix: pr 리뷰 수정

* fix: noticeTag assign

* feat: 구성원(교수) 생성 및 조회 API 구현  (#8)

* feat: 교수 엔티티 및 DTO 설계

* feat: 교수 생성 및 조회

* Docs: Swagger 추가 (#7)

* Docs: Add swagger dependency

* Docs: Add basic config for swagger

* Docs: Add basic configuration for swagger.

* feat: 페이지네이션+검색 기능 추가 (#5)

* feat: isPublic, isSlide, isPinned 추가

* feat: queryDsl 적용 위해 gradle 추가 fix: javax -> jakarta 변경

* feat: queryDsl 도입

* feat: 키워드+태그 검색 추가

* feat: search query에 isDeleted, isPublic 추가 및 isPinned 우선순위 설정

* fix: requestBody -> requestParam 수정

* feat: 페이지네이션 추가

* fix: 키워드 booleanBuilder 추가, application.yaml 수정

* fix: searchNotice readOnly 추가

* fix: SearchRequest 삭제

* fix: NoticeDto tags 추가

* fix: pr 리뷰 수정 / feat: 검색 기능 보강 및 수정

* fix:코드 수정

* fix: SearchResponse isPinned 추가

* fix: SearchResponse에 total 추가

* fix: 페이지 개수 수정

* fix: searchNotice queryDsl 오류 수정

* fix: local 설정 변경

* CICD: 배포 자동화 (#6)

* CICD: Change expose port and added image tag

* CICD: Change ddl-auto to create in prod profile for test

* CICD: Added Deploy github action

* CICD: Merge jobs to one job

* Fix: Change checkout order to first step

* CICD: Add context for docker build action

* Fix: Change spring profile arg position

* CICD: Change openjdk version to 17

* CICD: Change docker compose build image tag to latest

* CICD: Change to use ghcr repository.

* Fix: change list to string in docker push tags.

* Fix: Change registry to ghcr.io

* Fix: change env to pass to github action instead of ssh export command

* Fix: unwrap bracket.

* Fix: wrap Profile with ""

* CICD: Add .env file

* CICD: Change prod ddl-auto to create (for developing), and add TODO comment.

* CICD: Remove cicd/deploy branch for condition.

* feat: 구성원(교수) 수정 및 삭제 API (#9)

* feat: 교수 조회시 최종학력이 앞으로 오게끔 정렬

* feat: 교수 수정 및 삭제 API

* feat: 학력과 경력 엔티티 필드 변경, 수정 API 구현

* feat: 구성원(행정직원) CRUD API (#10)

* feat: 행정직원 엔티티 및 DTO 설계

* feat: 행정직원 CRUD

* feat: 교수 조회시 이름순 정렬

* fix: 교수 연구 분야 Set -> List 로 변경

* feat: 행정직원 주요업무 업데이트 구현

* feat: news 패키지 추가, 디벨롭 및 프론트에 맞게 엔티티 변경 (#12)

* feat: news 패키지 생성

* feat: readNews 생성, news 패키지 추가로 인한 명칭 변경

* feat: createNews, enrollTag(새소식) 추가, news 패키지로 인한 명칭 추가 변경

* feat: updateNews, deleteNews 추가

* fix: searchNotice 관련 명칭 변경

* feat: searchNews 추가

* fix: develop 브랜치 반영, 프론트 요구사항 반영

* feat: readNotice, readNews에 이전글 다음글 추가

* 태그 업데이트 코드 리팩터링중

* refactor: 코드 수정, 이전제목 추가

* fix: 게시글 하나일때 read 가능

* fix: prevNext null 없애기

* fix: 이전글 다음글 null 수정

---------

Co-authored-by: Jo Seonggyu <[email protected]>
Co-authored-by: 우혁준 (HyukJoon Woo) <[email protected]>

* hotfix: 사용하지않는 Dto 및 엔티티 삭제 (#14)

---------

Co-authored-by: Junhyeong Kim <[email protected]>
Co-authored-by: 우혁준 (HyukJoon Woo) <[email protected]>

* feat: seminar 패키지 추가 (#17)

* feat: createSeminar, readSeminar, updateSeminar 추가

* feat: deleteSeminar, searchSeminar 추가

* fix: distinct 삭제

* hotfix: 불필요한 dto 삭제 (#20)

* hotfix: 불필요한 dto 삭제

* build.gradle 수정

* fix: 이미지 uri 필드 추가 및 프론트 요구사항 반영 (#21)

* feat: 이미지 uri 필드 추가 및 isActive 대신 status 추가

* fix: 행정직원 전체 조회 응답에서 task 삭제

* fix: 교수진 페이지 응답 수정

* feat: introduction 패키지, undergraduate 패키지 추가 (#22)

* feat: createUndergraduate, readUndergraduate 추가

* feat: readAllCourses, createCourse, readCourse 추가

* introduction 패키지 추가

* fix: dto에서 postType 삭제

* fix: postType pathVariable->requestBody 수정, 오타 수정

* fix: 프론트와 협의하여 이름 등 변경

* feat: academics 패키지 대학원도 가능하도록 추가

* feat: 장학제도 세부 장학금 create, read 추가

* fix: 수정

* fix:수정

* feat: admissions, research 패키지 추가 (#23)

* feat: admissions-학부 에서 create, read 추가

* feat: admissions-대학원도 작성 가능하도록 추가

* feat: createResearch 추가

* feat: createLab 추가

* fix: 다른 패키지에 맞게 수정

* research-groups, research-centers에서 read, update 추가

* fix: admissions, research에서 프론트와 협의하여 이름 등 수정

* fix: 오타 수정

* fix: enum 추가, pr 리뷰 반영

* feat: oidc 로그인 (#27)

* feat: oidc 로그인

* feat: TaskEntity name 추가

* feat: 배포 설정

* feat: 유저 정보에 학번 추가, 로그인 시 sub claim 확인

* feat: 배포 테스트 위해 redirect-uri 변경

* fix: groups claim 소문자로 수정

* feat: idsnucse 다운 되었을때 에러 처리

* feat: idsnucse 다운 되었을때 에러 처리

* feat: cors 설정 (#30)

* fix: cors 추가 설정 (#32)

* feat: cors 설정

* feat: cors 설정

* fix: CORS (#34)

* feat: cors 설정

* feat: cors 설정

* feat: cors 설정

* fix: about, academics, admissions 패키지 수정 (#25)

* fix: admissions, about 컨트롤러 변경

* fix: academics 컨트롤러 수정

* 커밋중

* fix: pr 리뷰 반영

* feat: readMain 추가

* pr 리뷰 반영

* feat: 일반 예약 및 정기 예약 API (#28)

* feat: oidc 로그인

* feat: TaskEntity name 추가

* feat: 배포 설정

* feat: 유저 정보에 학번 추가, 로그인 시 sub claim 확인

* feat: 배포 테스트 위해 redirect-uri 변경

* fix: groups claim 소문자로 수정

* feat: 예약 엔티티 및 DTO 설계

* feat: 일반 예약 및 정기 예약

* feat: 예약 조회 API (#39)

* feat: 권한 관리 위해 커스텀 어노테이션 생성

* feat: 예약 단건, 주별, 월별 조회 API

* fix: 로컬 DB 설정 수정

* feat: 유저 조회 중복 쿼리 방지

* feat: 예약 응답에 recurrenceId 추가

* feat: 동시 예약 방지

* fix: 시큐리티 로그 다시 로컬에서만 보이도록 변경

* feat: 목데이터 날라가지 않도록 ddl-auto 수정

* feat: about, member, news, seminar 메인 이미지 업로드 추가 (#38)

* feat: uploadImage 추가

* feat: about, member 사진 업로드 추가

* feat: news, seminar 사진 업로드 추가

* refactor: imageEntity 추가 리팩토링

* fix: gif 삭제

* fix: application.yaml 수정

* fix: newsService 태그 -> 이미지로 순서 변경

* fix: pr 리뷰 수정

* fix: extension 없애고, mainImage로 바꾸고, uuid 없애기

* fix: var 삭제

---------

Co-authored-by: Junhyeong Kim <[email protected]>

* CICD: Change deploy port to 8080 (#40)

* [Merge] (#41) (#42)

* feat: 공지사항 생성, 공지사항 읽기 기능 추가 (#1)

* ✨ 패키지 및 엔티티 생성

* ✨ BaseTimeEntity 생성, PostEntity 기본 내용 작성

* ✨ PostController 생성 및 기본 내용 작성

* ✨ postService 생성

* ✨ Exceptions.kt 생성

* ✨ postDto 생성

* ✨ postRepository 생성 및 기본 내용 작성

* 💚 application.yaml 로컬 환경에서 작동하도록 설정

* feat: createPost 기능 생성

* refactor: 리뷰 주신 거 수정

* refactor: post -> notice 수정 등

* chore: .idea 디렉토리 삭제

* chore: PR 템플릿 생성 (#2)

* feat: 로컬 db용 docker-compose 파일 추가 및 application.yaml 수정 (#4)

* feat: 공지사항 수정, 삭제, 태그 기능 추가 (#3)

* fix: ExceptionHandler 추가

* feat: updateNotice 추가, valid 추가

* feat: deleteNotice 추가

* feat: enrollTag 기능 추가, noticeTag 연관 엔티티 추가

* feat: 공지사항 작성할 때 태그 생성 및 수정

* fix: 로컬 db 없앰

* fix: pr 리뷰 수정

* fix: pr 리뷰 수정

* fix: noticeTag assign

* feat: 구성원(교수) 생성 및 조회 API 구현  (#8)

* feat: 교수 엔티티 및 DTO 설계

* feat: 교수 생성 및 조회

* Docs: Swagger 추가 (#7)

* Docs: Add swagger dependency

* Docs: Add basic config for swagger

* Docs: Add basic configuration for swagger.

* feat: 페이지네이션+검색 기능 추가 (#5)

* feat: isPublic, isSlide, isPinned 추가

* feat: queryDsl 적용 위해 gradle 추가 fix: javax -> jakarta 변경

* feat: queryDsl 도입

* feat: 키워드+태그 검색 추가

* feat: search query에 isDeleted, isPublic 추가 및 isPinned 우선순위 설정

* fix: requestBody -> requestParam 수정

* feat: 페이지네이션 추가

* fix: 키워드 booleanBuilder 추가, application.yaml 수정

* fix: searchNotice readOnly 추가

* fix: SearchRequest 삭제

* fix: NoticeDto tags 추가

* fix: pr 리뷰 수정 / feat: 검색 기능 보강 및 수정

* fix:코드 수정

* fix: SearchResponse isPinned 추가

* fix: SearchResponse에 total 추가

* fix: 페이지 개수 수정

* fix: searchNotice queryDsl 오류 수정

* fix: local 설정 변경

* CICD: 배포 자동화 (#6)

* CICD: Change expose port and added image tag

* CICD: Change ddl-auto to create in prod profile for test

* CICD: Added Deploy github action

* CICD: Merge jobs to one job

* Fix: Change checkout order to first step

* CICD: Add context for docker build action

* Fix: Change spring profile arg position

* CICD: Change openjdk version to 17

* CICD: Change docker compose build image tag to latest

* CICD: Change to use ghcr repository.

* Fix: change list to string in docker push tags.

* Fix: Change registry to ghcr.io

* Fix: change env to pass to github action instead of ssh export command

* Fix: unwrap bracket.

* Fix: wrap Profile with ""

* CICD: Add .env file

* CICD: Change prod ddl-auto to create (for developing), and add TODO comment.

* CICD: Remove cicd/deploy branch for condition.

* feat: 구성원(교수) 수정 및 삭제 API (#9)

* feat: 교수 조회시 최종학력이 앞으로 오게끔 정렬

* feat: 교수 수정 및 삭제 API

* feat: 학력과 경력 엔티티 필드 변경, 수정 API 구현

* feat: 구성원(행정직원) CRUD API (#10)

* feat: 행정직원 엔티티 및 DTO 설계

* feat: 행정직원 CRUD

* feat: 교수 조회시 이름순 정렬

* fix: 교수 연구 분야 Set -> List 로 변경

* feat: 행정직원 주요업무 업데이트 구현

* feat: news 패키지 추가, 디벨롭 및 프론트에 맞게 엔티티 변경 (#12)

* feat: news 패키지 생성

* feat: readNews 생성, news 패키지 추가로 인한 명칭 변경

* feat: createNews, enrollTag(새소식) 추가, news 패키지로 인한 명칭 추가 변경

* feat: updateNews, deleteNews 추가

* fix: searchNotice 관련 명칭 변경

* feat: searchNews 추가

* fix: develop 브랜치 반영, 프론트 요구사항 반영

* feat: readNotice, readNews에 이전글 다음글 추가

* 태그 업데이트 코드 리팩터링중

* refactor: 코드 수정, 이전제목 추가

* fix: 게시글 하나일때 read 가능

* fix: prevNext null 없애기

* fix: 이전글 다음글 null 수정

* fix: main에서 develop으로 pr (#16)

* feat: merge develop to main (#13)

* feat: 공지사항 생성, 공지사항 읽기 기능 추가 (#1)

* ✨ 패키지 및 엔티티 생성

* ✨ BaseTimeEntity 생성, PostEntity 기본 내용 작성

* ✨ PostController 생성 및 기본 내용 작성

* ✨ postService 생성

* ✨ Exceptions.kt 생성

* ✨ postDto 생성

* ✨ postRepository 생성 및 기본 내용 작성

* 💚 application.yaml 로컬 환경에서 작동하도록 설정

* feat: createPost 기능 생성

* refactor: 리뷰 주신 거 수정

* refactor: post -> notice 수정 등

* chore: .idea 디렉토리 삭제

* chore: PR 템플릿 생성 (#2)

* feat: 로컬 db용 docker-compose 파일 추가 및 application.yaml 수정 (#4)

* feat: 공지사항 수정, 삭제, 태그 기능 추가 (#3)

* fix: ExceptionHandler 추가

* feat: updateNotice 추가, valid 추가

* feat: deleteNotice 추가

* feat: enrollTag 기능 추가, noticeTag 연관 엔티티 추가

* feat: 공지사항 작성할 때 태그 생성 및 수정

* fix: 로컬 db 없앰

* fix: pr 리뷰 수정

* fix: pr 리뷰 수정

* fix: noticeTag assign

* feat: 구성원(교수) 생성 및 조회 API 구현  (#8)

* feat: 교수 엔티티 및 DTO 설계

* feat: 교수 생성 및 조회

* Docs: Swagger 추가 (#7)

* Docs: Add swagger dependency

* Docs: Add basic config for swagger

* Docs: Add basic configuration for swagger.

* feat: 페이지네이션+검색 기능 추가 (#5)

* feat: isPublic, isSlide, isPinned 추가

* feat: queryDsl 적용 위해 gradle 추가 fix: javax -> jakarta 변경

* feat: queryDsl 도입

* feat: 키워드+태그 검색 추가

* feat: search query에 isDeleted, isPublic 추가 및 isPinned 우선순위 설정

* fix: requestBody -> requestParam 수정

* feat: 페이지네이션 추가

* fix: 키워드 booleanBuilder 추가, application.yaml 수정

* fix: searchNotice readOnly 추가

* fix: SearchRequest 삭제

* fix: NoticeDto tags 추가

* fix: pr 리뷰 수정 / feat: 검색 기능 보강 및 수정

* fix:코드 수정

* fix: SearchResponse isPinned 추가

* fix: SearchResponse에 total 추가

* fix: 페이지 개수 수정

* fix: searchNotice queryDsl 오류 수정

* fix: local 설정 변경

* CICD: 배포 자동화 (#6)

* CICD: Change expose port and added image tag

* CICD: Change ddl-auto to create in prod profile for test

* CICD: Added Deploy github action

* CICD: Merge jobs to one job

* Fix: Change checkout order to first step

* CICD: Add context for docker build action

* Fix: Change spring profile arg position

* CICD: Change openjdk version to 17

* CICD: Change docker compose build image tag to latest

* CICD: Change to use ghcr repository.

* Fix: change list to string in docker push tags.

* Fix: Change registry to ghcr.io

* Fix: change env to pass to github action instead of ssh export command

* Fix: unwrap bracket.

* Fix: wrap Profile with ""

* CICD: Add .env file

* CICD: Change prod ddl-auto to create (for developing), and add TODO comment.

* CICD: Remove cicd/deploy branch for condition.

* feat: 구성원(교수) 수정 및 삭제 API (#9)

* feat: 교수 조회시 최종학력이 앞으로 오게끔 정렬

* feat: 교수 수정 및 삭제 API

* feat: 학력과 경력 엔티티 필드 변경, 수정 API 구현

* feat: 구성원(행정직원) CRUD API (#10)

* feat: 행정직원 엔티티 및 DTO 설계

* feat: 행정직원 CRUD

* feat: 교수 조회시 이름순 정렬

* fix: 교수 연구 분야 Set -> List 로 변경

* feat: 행정직원 주요업무 업데이트 구현

* feat: news 패키지 추가, 디벨롭 및 프론트에 맞게 엔티티 변경 (#12)

* feat: news 패키지 생성

* feat: readNews 생성, news 패키지 추가로 인한 명칭 변경

* feat: createNews, enrollTag(새소식) 추가, news 패키지로 인한 명칭 추가 변경

* feat: updateNews, deleteNews 추가

* fix: searchNotice 관련 명칭 변경

* feat: searchNews 추가

* fix: develop 브랜치 반영, 프론트 요구사항 반영

* feat: readNotice, readNews에 이전글 다음글 추가

* 태그 업데이트 코드 리팩터링중

* refactor: 코드 수정, 이전제목 추가

* fix: 게시글 하나일때 read 가능

* fix: prevNext null 없애기

* fix: 이전글 다음글 null 수정

---------




* hotfix: 사용하지않는 Dto 및 엔티티 삭제 (#14)

---------




* feat: seminar 패키지 추가 (#17)

* feat: createSeminar, readSeminar, updateSeminar 추가

* feat: deleteSeminar, searchSeminar 추가

* fix: distinct 삭제

* hotfix: 불필요한 dto 삭제 (#20)

* hotfix: 불필요한 dto 삭제

* build.gradle 수정

* fix: 이미지 uri 필드 추가 및 프론트 요구사항 반영 (#21)

* feat: 이미지 uri 필드 추가 및 isActive 대신 status 추가

* fix: 행정직원 전체 조회 응답에서 task 삭제

* fix: 교수진 페이지 응답 수정

* feat: introduction 패키지, undergraduate 패키지 추가 (#22)

* feat: createUndergraduate, readUndergraduate 추가

* feat: readAllCourses, createCourse, readCourse 추가

* introduction 패키지 추가

* fix: dto에서 postType 삭제

* fix: postType pathVariable->requestBody 수정, 오타 수정

* fix: 프론트와 협의하여 이름 등 변경

* feat: academics 패키지 대학원도 가능하도록 추가

* feat: 장학제도 세부 장학금 create, read 추가

* fix: 수정

* fix:수정

* feat: admissions, research 패키지 추가 (#23)

* feat: admissions-학부 에서 create, read 추가

* feat: admissions-대학원도 작성 가능하도록 추가

* feat: createResearch 추가

* feat: createLab 추가

* fix: 다른 패키지에 맞게 수정

* research-groups, research-centers에서 read, update 추가

* fix: admissions, research에서 프론트와 협의하여 이름 등 수정

* fix: 오타 수정

* fix: enum 추가, pr 리뷰 반영

* feat: oidc 로그인 (#27)

* feat: oidc 로그인

* feat: TaskEntity name 추가

* feat: 배포 설정

* feat: 유저 정보에 학번 추가, 로그인 시 sub claim 확인

* feat: 배포 테스트 위해 redirect-uri 변경

* fix: groups claim 소문자로 수정

* feat: idsnucse 다운 되었을때 에러 처리

* feat: idsnucse 다운 되었을때 에러 처리

* feat: cors 설정 (#30)

* fix: cors 추가 설정 (#32)

* feat: cors 설정

* feat: cors 설정

* fix: CORS (#34)

* feat: cors 설정

* feat: cors 설정

* feat: cors 설정

* fix: about, academics, admissions 패키지 수정 (#25)

* fix: admissions, about 컨트롤러 변경

* fix: academics 컨트롤러 수정

* 커밋중

* fix: pr 리뷰 반영

* feat: readMain 추가

* pr 리뷰 반영

* feat: 일반 예약 및 정기 예약 API (#28)

* feat: oidc 로그인

* feat: TaskEntity name 추가

* feat: 배포 설정

* feat: 유저 정보에 학번 추가, 로그인 시 sub claim 확인

* feat: 배포 테스트 위해 redirect-uri 변경

* fix: groups claim 소문자로 수정

* feat: 예약 엔티티 및 DTO 설계

* feat: 일반 예약 및 정기 예약

* feat: 예약 조회 API (#39)

* feat: 권한 관리 위해 커스텀 어노테이션 생성

* feat: 예약 단건, 주별, 월별 조회 API

* fix: 로컬 DB 설정 수정

* feat: 유저 조회 중복 쿼리 방지

* feat: 예약 응답에 recurrenceId 추가

* feat: 동시 예약 방지

* fix: 시큐리티 로그 다시 로컬에서만 보이도록 변경

* feat: 목데이터 날라가지 않도록 ddl-auto 수정

* feat: about, member, news, seminar 메인 이미지 업로드 추가 (#38)

* feat: uploadImage 추가

* feat: about, member 사진 업로드 추가

* feat: news, seminar 사진 업로드 추가

* refactor: imageEntity 추가 리팩토링

* fix: gif 삭제

* fix: application.yaml 수정

* fix: newsService 태그 -> 이미지로 순서 변경

* fix: pr 리뷰 수정

* fix: extension 없애고, mainImage로 바꾸고, uuid 없애기

* fix: var 삭제

---------



* CICD: Change deploy port to 8080 (#40)

---------

Co-authored-by: 우혁준 (HyukJoon Woo) <[email protected]>
Co-authored-by: Jo Seonggyu <[email protected]>

* feat: 장학제도 GET API 및 장학제도 페이지 응답 수정 (#44)

* feat: 장학제도 GET API

* feat: 장학제도 메인페이지 GET API 응답 수정

* feat: custom metadata 설정 + 리다이렉트 엔드포인트 변경 (#45)

* feat: yml 파일에 custom metadata endpoint 추가

* feat: 로그인/로그아웃 성공 리다이렉트 엔드포인트 변경

* feat: attachments 패키지 추가, news와 seminar request에 attachments 추가 (#43)

* feat: attachments 추가, news request에 attachments 추가

* feat: seminar request에 attachments 추가

* fix: mappedBy 추가 + bringAttachments null 없앰

* fix: 경로 분리

* fix: isDeleted false로 수정

---------

Co-authored-by: Junhyeong Kim <[email protected]>

* feat: Top Conference List GET API (#47)

* feat: Top Conference List GET API

* feat: db에서 가져올때 정렬

* feat: 파일 서빙, 다운로드, 삭제 API (#48)

* feat: 파일 서빙, 다운로드, 삭제 API

* fix: extension 중복, 경로 수정

* feat: 공지사항 글쓴이 추가 (#49)

* CI/CD: Https 적용 및 백엔드, 데이터베이스, 프록시 서버 배포 분리 (#50)

* Config: Add gitignore for caddy files.

* CICD: Add caddy config file

* CICD: Seperate docker compose file for db and backend server.

* CICD: Docker Compose file for caddy proxy server.

* CICD: Add path condition for only act when source file has changed.

* CICD: Add workflow for deploying database changes.

* CICD: Add workflow for proxy server changes.

* Refactor: Add /api/v1 in front of all endpoints (except swagger-ui)

* Refactor: Add v1 to Main Image url.

* Refactor: change backend, frontend, login redirect uri to get from env.

* CICD: Add url to .env

* Fix: Change job name of database workflow, fix indent level.

* Fix: Remove duplicated restcontroller mapping.

* Fix: Set reverse proxy for swagger-ui/* for swagger.

* Docs: Set swagger to only scan /api/**

* Fix: add caddy to reverse api-docs/* for springdoc.

* Fix: Add login uris for reverse proxying to backend server.

* CICD: Remove testing branch condition.

* CICD: Add logout uri to reverse proxy to backend server.

* CICD: Remove test branch

* fix: 프론트랑 협의하여 내용 변경 + news, seminar에 image, attachments update 추가 (#51)

* feat: attachments 추가, news request에 attachments 추가

* feat: seminar request에 attachments 추가

* feat: about request에 attachments 추가

* feat: academics request에 attachments 추가

* fix: isPinned 삭제

* fix: image -> mainImage 변경, about에 greetings 추가

* fix: news, seminar update 수정

* fix: 전체적으로 image -> mainImage 변경

* fix: research 패키지 프론트에 맞춰 협의 (#52)

* fix: professor, staff에 uploadImage 추가

* fix: research에서 isPublic 제거, feat: lab에서 attachments 추가

* fix: attachments -> attachmentResponses 변경

* feat: LabProfessorResponse 추가

* fix: pdf를 list가 아닌 단일항목으로 수정

* feat: readLab 추가

* feat: ResearchLabReponse 추가 및 주석 삭제

* fix: researchDetail에 사진, 첨부파일 업로드 추가

* fix: pr 리뷰 수정

* fix: 오타 수정

* [Refactor] 로그인, file uri 배포 환경에 맞게 수정 (#53)

* Refactor: Change mapping of file to append /api/v1 in front.

* Refactor: Change login, logout redirect uri

* fix: https 적용 관련 로그인 수정 (#56)

* fix: notice 패키지 프론트에 맞게 협의 (#54)

* fix: professor, staff에 uploadImage 추가

* fix: research에서 isPublic 제거, feat: lab에서 attachments 추가

* fix: attachments -> attachmentResponses 변경

* feat: LabProfessorResponse 추가

* fix: pdf를 list가 아닌 단일항목으로 수정

* feat: readLab 추가

* feat: ResearchLabReponse 추가 및 주석 삭제

* fix: researchDetail에 사진, 첨부파일 업로드 추가

* feat: notice에 attachments 추가

* fix: fix_with_front1 변경 사항에 맞게 수정

* feat: isImportant 추가

* feat: NoticeSearchDto에 hasAttachment 추가

* fix: update에서 attachmetnts가 null일 때 빈 목록 반환

* feat: 공지사항 선택 고정해제, 선택 삭제 추가

* fix: news, seminar에 isImportant 추가

* fix: pr 리뷰 수정

* fix: 수정했던거 다시 복구

* feat: 신임교수초빙 (#59)

* feat: 행정실 권한 체크 API (#60)

* [CICD] mainImage, attachment 경로 mount 설정 (#55)

* CICD: Add mainImage, attachment directory for mounting

* CICD: Add volumes to mount with server directory. (for attachment)

* [Feat] 예전 url과 비슷하게 이전 파일(사진)들 접근할 수 있도록 controller 생성 (#58)

* Config: Add oldFiles path for properties.

* Feat: Add deprecated file controller for getting old files temporarily.

* CICD: Add volume mounting for old files.

* CICD: Add dir to mount for old files.

* Refactor: Change api to /sites/default/files/{PATH}

* CICD: Add reverse proxy for old file serving.

* fix: 예약 dto에 지도교수, 반복 횟수 추가 (#61)

* fix: 로그아웃 엔드포인트 변경 (#64)

* fix: 로그아웃 엔드포인트 변경

* fix: 로그아웃 성공 리다이렉트 엔드포인트 변경

* [Fix] Notice, News Description TEXT type으로 변환 (#65)

* Fix: Change notice and news entity description type as TEXT.

* Fix: Change to mediumtext

* fix: newsSearchResponse, seminarSearchResponse 수정 (#66)

* fix: newsSearchResponse 수정

* fix: SeminarSearchResponse 수정

* fix: 오타수정

* fix: 파일 업로드 경로 통일 (#68)

* fix: 갯수만 fetch하도록 최적화 (#70)

* Fix: Change type of additionalNote column on SeminarEntity to "TEXT" (#71)

* fix: academics 패키지 프론트에 맞춰 협의, admin 패키지 추가 (#69)

* fix: professor, staff에 uploadImage 추가

* fix: research에서 isPublic 제거, feat: lab에서 attachments 추가

* fix: attachments -> attachmentResponses 변경

* feat: LabProfessorResponse 추가

* fix: pdf를 list가 아닌 단일항목으로 수정

* feat: readLab 추가

* feat: ResearchLabReponse 추가 및 주석 삭제

* fix: researchDetail에 사진, 첨부파일 업로드 추가

* feat: notice에 attachments 추가

* fix: fix_with_front1 변경 사항에 맞게 수정

* feat: isImportant 추가

* feat: NoticeSearchDto에 hasAttachment 추가

* fix: update에서 attachmetnts가 null일 때 빈 목록 반환

* feat: 공지사항 선택 고정해제, 선택 삭제 추가

* fix: news, seminar에 isImportant 추가

* fix: pr 리뷰 수정

* fix: 수정했던거 다시 복구

* fix: course response 수정

* feat: academics에서 연도별로 주는 response 추가

* feat: academics YearResponses 추가

* fix: createScholarship 합치기

* fix: scholarship 패키지의 내용을 academics 하위로 옮김

* feat: createScholarshipDetail 추가

* fix: 필수 교양과목 response 변경

* feat: admin 패키지에서 readAllSlides 추가

* feat: admin 패키지 readAllImportants 추가

* feat: admin 패키지 중요안내 추가

* Refactor: HTML로부터 텍스트 추출 함수 Utils로 이동 (#73)

* Feat: Add cleanTextFromHtml.

* Refactor: Remove private clean method, replace to Utils.cleanTextFromHtml.

* Refactor: Remove unused imports.

* Feat: Add plain text description for notice (#74)

* Feat: Add cleanTextFromHtml.

* Refactor: Remove private clean method, replace to Utils.cleanTextFromHtml.

* Refactor: Remove unused imports.

* Feat: Add plainTextDescription.

* Feat: Add plainTextDescription in createNotice.

* Feat: add updating plainTextDescription when updating description.

* fix: admissions 패키지 프론트에 맞게 협의 (#76)

* fix: admissions 프론트에 맞게 협의

* fix: seminarEntity time 삭제

* fix: admissionsEntity pageName 추가

* fix: 불필요한 파일 삭제

* 커밋

* fix: 이전 글 다음 글만 fetch 하도록 쿼리 최적화 (#75)

* fix: 이전 글 다음 글만 fetch 하도록 쿼리 최적화

* fix: distinct 수정

* fix: 쿼리 최적화

* fix: total Long 타입으로 수정

* CI/CD: Test 설정 (#77)

* Config: Add kotest, mockk, h2 db for testing.

* Config: Add test profile.

* Config: Add testconfig for jpaqueryfactory.

* CICD: Add build, test workflow

* Fix: Revert local datasource url change.

* [Test] Notice create, update 시 plainTextDescription 동작 테스트 (#78)

* Config: Add test profile.

* Test: Add Tests for Create, Update Notice, in perspective of plainTextDescription

* Fix: Change life cycle hook resolution to container.

* [Feat] Seminar plain text field 추가 (#79)

* Feat: Add plain text column for description, introduction, additionalnote.

* Feat: Add description, introduction, additionalnote for dto -> entity.

* Feat: Change to update plain description, introduction, additional note.

* Feat: Use plainTextDesription for searchdto.

* Test: Test for create, update of plain texts.

* Test: Fix seminar service test.

* Feat: News plain text field 추가 (#80)

* Feat: Add plainTextDescription field for news entity

* Feat: Add to create, and update plainTextDescription.

* Feat: Change to use plainTextDescription when making newssearchdto.

* Test: Test for create/update plainTextDescription.

* Feat: 구성원 검색 위한 table 추가. (#81)

* Feat: MemberSearchEntity 추가.

* Feat: MemberSearchRepository 추가

* Feat: MemberSearchService 추가

* Feat: ProfessorEntity, StaffEntity에 MemberSearch 추가.

* Feat: ProfessorStatus에 한글 값 추가.

* Feat: professor create, update 시 memberSearch도 반영하도록 추가.

* Feat: seminar create, update 시 memberSearch도 반영하도록 추가.

* Test: ProfessorService 테스트 추가.

* Test: StaffServiceTest 추가.

* fix: 새소식 세미나 쿼리 수정 (#82)

* refactor: 유틸 패키지 생성 및 FixedPageRequest 분리

* feat: 새소식 세미나 이전 다음 글 및 total 쿼리 최적화

* fix: pageNum 값으로 usePageBtn 값 설정

* fix: import 경로 수정

* fix: local db port 3306

* 중복 삭제

* fix: prod endpoint https로 변경

* fix: main 프론트에 맞게 협의, notice 태그 enum 추가 (#83)

* fix: mainResponse 다시 작성

* feat: TagInNoticeEnum 추가

* feat: notice enum 추가

* fix: 코드 수정

* fix: isPublic -> isPrivate으로 정리 (#86)

* fix: rebase 정리

* fix: 오타 수정

* feat: 로컬 로그인 테스트용 엔드포인트로 임시 변경 (#87)

* Feat: 구성원 검색 API 추가 (#85)

* Feat: Add mysql custom dialect with MATCH AGAINST BOOLEAN MODE function.

* CICD: Add config for mysql db

* CICD: Add volumes for config file.

* CICD: Add db_config for condition for db deploy

* Feat: Add search top, and search query.

* Feat: Add DTOs

* Feat: Add Controller for member search only top, and page.

* Feat: Add dialect config for application.yaml

* Feat: Add controller for member search.

* Refactor: Change exception message to korean.

---------

Co-authored-by: Jo Seonggyu <[email protected]>

* fix: 세미나 시간 타입 변경 (#91)

* fix: 세미나 시간 LocalDateTime으로 변경

* test: 테스트 수정

* fix: 태그 항목 수정 (#92)

* fix: news tag 추가 (#90)

* fix: news tag 추가

* fix: 일반인은 isPrivate = false인 것만, 직원은 모든 게시글 보여주기

* feat: 졸업생 창업 진로, 졸업생 진로 response 추가 (#94)

* fix: news tag 추가

* fix: 일반인은 isPrivate = false인 것만, 직원은 모든 게시글 보여주기

* feat: about  졸업생 read 추가

* fix: 오타 수정

* fix: conference 주소 추가 (#95)

---------

Co-authored-by: Junhyeong Kim <[email protected]>
Co-authored-by: 우혁준 (HyukJoon Woo) <[email protected]>
  • Loading branch information
3 people authored Sep 11, 2023
1 parent deb8683 commit 41460a9
Show file tree
Hide file tree
Showing 11 changed files with 148 additions and 6 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.wafflestudio.csereal.core.about.api

import com.wafflestudio.csereal.core.about.dto.AboutDto
import com.wafflestudio.csereal.core.about.dto.CompanyDto
import com.wafflestudio.csereal.core.about.dto.FutureCareersPage
import com.wafflestudio.csereal.core.about.service.AboutService
import jakarta.validation.Valid
import org.springframework.http.ResponseEntity
Expand Down Expand Up @@ -50,5 +52,9 @@ class AboutController(
fun readAllDirections() : ResponseEntity<List<AboutDto>> {
return ResponseEntity.ok(aboutService.readAllDirections())
}
@GetMapping("/future-careers")
fun readFutureCareers(): ResponseEntity<FutureCareersPage> {
return ResponseEntity.ok(aboutService.readFutureCareers())
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package com.wafflestudio.csereal.core.about.database

import com.wafflestudio.csereal.common.config.BaseTimeEntity
import jakarta.persistence.Entity

@Entity(name = "company")
class CompanyEntity(
var name: String,
var url: String,
var year: Int,
) : BaseTimeEntity() {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package com.wafflestudio.csereal.core.about.database

import org.springframework.data.jpa.repository.JpaRepository

interface CompanyRepository: JpaRepository<CompanyEntity, Long> {
fun findAllByOrderByYearDesc(): List<CompanyEntity>
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.wafflestudio.csereal.core.about.database

import com.wafflestudio.csereal.common.config.BaseTimeEntity
import jakarta.persistence.Entity
import jakarta.persistence.EnumType
import jakarta.persistence.Enumerated

@Entity(name = "stat")
class StatEntity(
var year: Int,

@Enumerated(EnumType.STRING)
var degree: Degree,
var name: String,
var count: Int,
): BaseTimeEntity() {
}

enum class Degree {
BACHELOR, MASTER, DOCTOR
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package com.wafflestudio.csereal.core.about.database

import org.springframework.data.jpa.repository.JpaRepository

interface StatRepository: JpaRepository<StatEntity, Long> {
fun findAllByYearAndDegree(year: Int, degree: Degree): List<StatEntity>
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.wafflestudio.csereal.core.about.dto

data class CompanyDto(
val name: String,
val url: String,
val year: Int,
) {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.wafflestudio.csereal.core.about.dto

data class CompanyNameAndCountDto(
val id: Long,
val name: String,
val count: Int
) {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.wafflestudio.csereal.core.about.dto

data class FutureCareersPage(
val description: String,
val stat: List<StatDto>,
val companies: List<CompanyDto>
) {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package com.wafflestudio.csereal.core.about.dto

data class StatDto(
val year: Int,
val bachelor: List<CompanyNameAndCountDto>,
val master: List<CompanyNameAndCountDto>,
val doctor: List<CompanyNameAndCountDto>
) {
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
package com.wafflestudio.csereal.core.about.service

import com.wafflestudio.csereal.common.CserealException
import com.wafflestudio.csereal.core.about.database.AboutEntity
import com.wafflestudio.csereal.core.about.database.AboutPostType
import com.wafflestudio.csereal.core.about.database.AboutRepository
import com.wafflestudio.csereal.core.about.database.LocationEntity
import com.wafflestudio.csereal.core.about.dto.AboutDto
import com.wafflestudio.csereal.core.about.database.*
import com.wafflestudio.csereal.core.about.dto.*
import com.wafflestudio.csereal.core.resource.attachment.service.AttachmentService
import com.wafflestudio.csereal.core.resource.mainImage.service.MainImageService
import org.springframework.stereotype.Service
Expand All @@ -18,11 +15,15 @@ interface AboutService {
fun readAllClubs() : List<AboutDto>
fun readAllFacilities() : List<AboutDto>
fun readAllDirections(): List<AboutDto>
fun readFutureCareers(): FutureCareersPage

}

@Service
class AboutServiceImpl(
private val aboutRepository: AboutRepository,
private val companyRepository: CompanyRepository,
private val statRepository: StatRepository,
private val mainImageService: MainImageService,
private val attachmentService: AttachmentService,
) : AboutService {
Expand Down Expand Up @@ -96,6 +97,61 @@ class AboutServiceImpl(
return directions
}

@Transactional
override fun readFutureCareers(): FutureCareersPage {
val description = "컴퓨터공학을 전공함으로써 벤처기업을 창업할 수 있을 뿐 " +
"아니라 시스템엔지니어, 보안전문가, 소프트웨어개발자, 데이터베이스관리자 등 " +
"많은 IT 전문 분야로의 진출이 가능하다. 또한 컴퓨터공학은 바이오, 전자전기, " +
"로봇, 기계, 의료 등 이공계 영역뿐만 아니라 정치, 경제, 사회, 문화의 다양한 분야와 " +
"결합되어 미래 지식정보사회에 대한 새로운 가능성을 제시하고 있고 새로운 학문적 과제가 " +
"지속적으로 생산되기 때문에 많은 전문연구인력이 필요하다.\n" +
"\n" +
"서울대학교 컴퓨터공학부의 경우 학부 졸업생 절반 이상이 대학원에 진학하고 있다. " +
"대학원에 진학하면 여러 전공분야 중 하나를 선택하여 보다 깊이 있는 지식의 습득과 연구과정을 거치게 되며 " +
"그 이후로는 국내외 관련 산업계, 학계에 주로 진출하고 있고, 새로운 아이디어로 벤처기업을 창업하기도 한다."

val statList = mutableListOf<StatDto>()
for(i: Int in 2021 downTo 2011) {
val bachelor = statRepository.findAllByYearAndDegree(i, Degree.BACHELOR).map {
CompanyNameAndCountDto(
id = it.id,
name = it.name,
count = it.count
)
}
val master = statRepository.findAllByYearAndDegree(i, Degree.MASTER).map {
CompanyNameAndCountDto(
id = it.id,
name = it.name,
count = it.count,
)
}
val doctor = statRepository.findAllByYearAndDegree(i, Degree.DOCTOR).map {
CompanyNameAndCountDto(
id = it.id,
name = it.name,
count = it.count,
)
}
statList.add(
StatDto(
year = i,
bachelor = bachelor,
master = master,
doctor = doctor,
)
)
}
val companyList = companyRepository.findAllByOrderByYearDesc().map {
CompanyDto(
name = it.name,
url = it.url,
year = it.year
)
}
return FutureCareersPage(description, statList, companyList)
}

private fun makeStringToEnum(postType: String) : AboutPostType {
try {
val upperPostType = postType.replace("-","_").uppercase()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.RequestMapping
import org.springframework.web.bind.annotation.RestController

@RequestMapping("/conference")
@RequestMapping("/api/v1/conference")
@RestController
class ConferenceController(
private val conferenceService: ConferenceService
Expand Down

0 comments on commit 41460a9

Please sign in to comment.