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

[Main] V2.2024.08.22.01 #126

Merged
merged 48 commits into from
Aug 22, 2024
Merged

[Main] V2.2024.08.22.01 #126

merged 48 commits into from
Aug 22, 2024

Conversation

Youthhing
Copy link
Member

No description provided.

Youthhing and others added 30 commits July 30, 2024 14:44
* feat: 출석 관련 Entity 구현

- 출석 정보
- 출석 기록

* feat: 세션 장소 및 날짜 필드 추가
- session_place_title -> session_place_name
* feat: 출석 관리 기능, 구조 기본 설정

- 컨트롤러, 서비스, 레파지토리 디렉토리, 파일 생성

* feat: 출석 기능 추가에 따라 세션 생성 시 출석 정보 저장 로직 구현

* feat: 출석 시간 관련 DTO 수정

- sessionDate, attendanceDeadLine Not Nullable
- 출석 시간 JsonFormat 수정

* feat: 출석 정보 수정 기능 구현

* feat: 세션 출석 관리자 API 시큐리티 설정

- ADMIN만 접근 가능

* feat: 출석 마감일자 구조 변경 및 유효성 검사 로직 수정

* feat: 세션 출석 기한 유효성 방식 변경

- 기존 NotNull에서 Compact생성자로 디폴트 값 방식으로 변경
* feat: 관리자가 출석부를 가져오는 기능 구현

feat: 관리자가 출석부를 가져오는 기능 구현

* refactor: 출석 컨트롤러 API명 변경

- member, admin으로 나누지 않고 하나로 통합
- security 설정 변경
- Controller 파일명 변경

refactor: 출석 컨트롤러 API명 변경

* refactor: 출석 정보 기능을 다른 서비스로 분리

- AdminService로 부터 출석기록 정보가 사용되는 부분을 RecordService로 분리

* feat: 출석 목록에 해당하는 멤버 정보 받는 방식 변경

- 기존 멤버 하나씩 정보를 만드는 방식에서 활동 중인 회원 목록을 가져와 Map으로 만들게 변경

feat: 출석 목록에 해당하는 멤버 정보 받는 방식 변경

- 기존 멤버 하나씩 정보를 만드는 방식에서 활동 중인 회원 목록을 가져와 Map으로 만들게 변경

* feat: 출석에 해당하는 출석 기록 조회 기능 구현

* feat: 출석 정보 리스트 조회하는 로직 수정

* refactor: 불필요한 메소드 삭제

* fix: merge 과정에서 발생한 패키징 에러 수정

---------

Co-authored-by: Youth <109585620+Youthhing@users.noreply.github.com>
Co-authored-by: youth <boysoeng@naver.com>
* fix: 세션 추가 양식 변경을 통한 역직렬화 문제 해결

- 중첩 레코드 삭제
- 출석 마감기한 컴팩트 생성자 설정

fix: 세션 추가 양식 변경을 통한 역직렬화 문제 해결

- 중첩 레코드 삭제
- 출석 마감기한 컴팩트 생성자 설정

* refactor: 출석기한 별도 클래스로 분리

* refactor: 출석기한 별도 클래스로 분리

* refactor: 출석 좌표 객체 생성 방식 변경
* refactor: 기수 목록 반환 시 기수 번호 기준으로 오름차순 정렬

* feat: 기수 API Tag 추가

* refactor: 전체 기수 조회 로직 변경

- 기수 번호 1이상인 데이터를 기준으로

* chore: 기수 API 태그 변경
* feat: 기수별 출석 목록 조회 API

* refactor: 기수에 해당하는 세션 목록 조회 함수 변경

* chore: 사용하지 않는 endpoint 값 제거

* Fix: 세션 추가 양식 변경을 통한 역직렬화 문제 해결 (#82)

* fix: 세션 추가 양식 변경을 통한 역직렬화 문제 해결

- 중첩 레코드 삭제
- 출석 마감기한 컴팩트 생성자 설정

fix: 세션 추가 양식 변경을 통한 역직렬화 문제 해결

- 중첩 레코드 삭제
- 출석 마감기한 컴팩트 생성자 설정

* refactor: 출석기한 별도 클래스로 분리

* refactor: 출석기한 별도 클래스로 분리

* refactor: 출석 좌표 객체 생성 방식 변경

* feat: 기수별 출석 목록 조회 API

* refactor: 기수에 해당하는 세션 목록 조회 함수 변경

* chore: 사용하지 않는 endpoint 값 제거

* feat: 출석 엔티티 컬럼명 변경

- startTime -> 출석 마감 시간
- endTime -> 지각 마감 시간

* chore: 사용하지 않는 패키지 제거

* refactor: 출결 마감 시간 관련 상수 별도의 Enum 처리

* feat: 시간에 따른 출결 상태를 나타내는 Enum 추가

* feat: 출결 정보 반환 시 출결 상태 반환 로직 수정

- 기존: 열린다, 닫힌다
- 개선: AttendanceOpenStatus 반환

* fix: 출석 시작에 관한 기준 오류 수정

* fix: 출석 상태 시간 범위 수정

---------

Co-authored-by: GiHun Nam <52378919+gikhoon@users.noreply.github.com>
* chore: 사용하지 않는 컨트롤러 제거

* refactor: 시간에 따른 출석 오픈 상태 반환 메서드 유틸화

* feat: 위치에 따른 대면 출석 확인 로직 구현

- 정확도 기준 값 (임시) : 0.1
- 다형성을 활용한 구현

* feat: 비대면 출석 로직 구현

* style: 사용하지 않는 패키지 정리

* fix: 현재 시간에 기준에 따른 출결 입력 에러 수정

* feat: 출결 입력 시간 판단 기준 변경

- 요청 파라미터를 기준으로 판단

* feat: 출석 기본 초 설정

- 설정한 시간의 59초 추가

* refactor: 출결 시간 수정 dto 파라미터 변경

* style: 사용하지 않는 import 문 제거

* style: 코드 간격 조정

* test: 출석 유틸 테스트

* refactor: early-return을 활용한 else제거

* feat: 비대면에서 대면으로 전환하는 기능 구현

* feat: 출석 기록 (멤버, 출석) unique 제약 조건 추가

* style: 코드 간격 조정

* feat: 비대면, 대면 출결 전환 로직 구현

* chore: 사용하지 않는 테스트 코드 주석 제거
* feat: 범위를 벗어난 출결 시간에 대한 에러 처리

* test: 시간 예외 검증 로직 테스트

* feat: 출결 시간 변경 시 기존 데이터 최신화 작업

* feat: 출결 입력 시간 컬럼 추가
* refactor: 출결 결과 컬럼명 변경

- 출결 상태 -> 출결 결과로 변경

* refactor: 출결 열림 상태 반환 메서드명 변경

- openStatus로 명시적으로 변경

* feat: 출결 열림 상태에 '시작 전' 상태 추가

* feat: 출결 시작 전 상태 판단 로직 추가

* feat: 출석 목록에서 부원의 출결 기록을 조회하는 JPA 메서드 추가

* feat: 멤버의 기수별 출결 목록 반환

* feat: 출석 기록 반환 값에 출결 형식 추가

* test: 기준 시간이전이면 출석이 '이전'인지에 대한 테스트

* fix: 기존 브랜치 병합에 따른 컨플릭 수정

* refactor: 출결 상태가 고정된 경우 파라미터 대신 생성자에 값을 고정
* feat: 회원 가입 시 생성된 member_id 반환

* feat: 회원 가입 시 필요한 회원 정책 목록 반환

* refactor: 체크하지 않은 필수 정책 파라미터 변경
* feat: 프로젝트 관련 Entity 구현

* refactor: 프로젝트 관련 엔티티 수정

- 프로젝트 서비스 url 칼럼 추가
- unique 제약 조건 삭제

* refactor: builder에 project_url 추가

* style: 코드 스타일 통일
* refactor: 웹소켓 핸드쉐이크 파일 위치 변경

* refactor: 코드 리펙토링

- 사용하지 않는 코드 삭제
- 퀴즈 상태 전체 끄기 메소드 위치 이동 및 쿼리 최적화
- Transactional 삭제

* refactor: 소켓 토큰 발급 시 AuthenticationPrincipal 활용

* refactor: 교육 시작 시 캐시에 정답 저장 메서드 위치 변경

* refactor: 교육 열기 메소드 명 변경

* refactor: 사용하지 않는 메소드, 필드 제거

---------

Co-authored-by: youth <boysoeng@naver.com>
* feat: 출결 반환 필드 세션 PK 추가

* refactor: online, offline 필드명 변경
* Feature: 프로젝트 관련 테이블 생성 (#93)

* feat: 프로젝트 관련 Entity 구현

* refactor: 프로젝트 관련 엔티티 수정

- 프로젝트 서비스 url 칼럼 추가
- unique 제약 조건 삭제

* refactor: builder에 project_url 추가

* style: 코드 스타일 통일

* Refactor: 웹소켓 서비스 코드 분리 (#94)

* refactor: 웹소켓 핸드쉐이크 파일 위치 변경

* refactor: 코드 리펙토링

- 사용하지 않는 코드 삭제
- 퀴즈 상태 전체 끄기 메소드 위치 이동 및 쿼리 최적화
- Transactional 삭제

* refactor: 소켓 토큰 발급 시 AuthenticationPrincipal 활용

* refactor: 교육 시작 시 캐시에 정답 저장 메서드 위치 변경

* refactor: 교육 열기 메소드 명 변경

* refactor: 사용하지 않는 메소드, 필드 제거

---------

Co-authored-by: youth <boysoeng@naver.com>

* Feature: 출석 정보 반환 필드 세션 ID 추가 (#97)

* feat: 출결 반환 필드 세션 PK 추가

* refactor: online, offline 필드명 변경

---------

Co-authored-by: Yun Ha Park <127095481+yunhacandy@users.noreply.github.com>
Co-authored-by: GiHun Nam <52378919+gikhoon@users.noreply.github.com>
* feat: 특정 프로젝트 상세 정보 반환 기능 구현

- 프로젝트 더보기 페이지에 반환할 정보
- 이름, 소개글, 깃허브 링크, 비헨스 링크, 프로젝트 링크, 기수, 사진 목록, 멤버 목록

* refactor: 코드 명확성 및 일관성 개선

- 일관된 트랜잭션 관리를 위해 getProjectDetail 클래스에 @transactional 어노테이션을 적용했습니다.

- ProjectDetailResponse에서 generationNumber도 반환되게 수정

- 코드 일관성을 위해 project 관련 repository 메소드 호출 방식 변경
* refactor: S3에 사진 넣을 때 S3에서 지정한 확장자명이 아닐 때 예외 발생하게 수정

* feat: 이미지 업로드 시 메타데이터 지정 작업 추가

* refactor: 파일 업로드 S3Uploader 로그 단순화 및 파일 처리 개선

- 가독성을 위해 불필요한 Optional 사용 제거
- 로그 메시지의 단순화
- 가독성 개선을 위한 코드 통합

* refactor: 이미지 파일 업로드 시 메타 데이터 추가 로직 간소화

* refactor: 파일 업로드 로직 간소화

* refactor: 이미지 확장자 목록 상수를 배열에서 리스트로 변경

* refactor: S3 예외 처리 로직 글로벌 예외처리로 분리
- convert 에러 -> IMAGE_CONVERT_FAIL 로 변경
- AmazonS3Exception 이 기존의 IMAGE_PROCESSING_FAIL 사용
- 확장자가 없을 때 예외 메세지 변경
- 프로젝트 페이지에 반환할 정보
- 프로젝트마다 이름, 소개글, 기수, 로고 사진 url 가져오기
* refactor: 출결 입력 시간 관련 에러 코드 수정

* feat: 부원 출결 기록 반환 필드 세션PK 추가

* feat: 부원 출결 기록 반환 필드 출석 PK 추가
* feat: 대문자 파일 확장자 이미지 리스트에 추가

* refactor: 대문자 파일 확장자 이미지 추가 방식 변경

- 리스트에 추가 -> toLowerCase도 변경
gikhoon and others added 18 commits August 19, 2024 11:02
* feat: 세션 수정 요청에 장소, 출석 정보 항목 추가

* refactor: 출결 기록 반환 API 양식 변경

* refactor: 세션 수정 시 출석 정보 변경 생성 방식 개선

* refactor: 세션 시간 스웨거 표현 방식 변경

* refactor: 중복된 API 삭제

* refactor: 출석 정보 변경 로직 메소드 분리

* docs: 스웨거에 세션 컨트롤러 안 API 설명 추가

* feat: 세션 날짜 및 시간 변경에 따른 수정 로직 분리

---------

Co-authored-by: youth <boysoeng@naver.com>
* feat: 출석 시작 구독 신청 API

* feat: 기본 타임 아웃 시간 설정

* feat: 별도의 sender 클래스 분리

* feat: 최초 연결 시 현재 출결 상태 반환 기능 구현

* refactor: 초기 설정 메서드 분리

- emitter 저장
- callback 설정

* chore: cors 시큐리티 설정 수정

* feat: 출결 상태 알림 시 출석 PK 전달

* chore: 로컬 개발 환경 로깅 레벨 변경

* feat: 개별 접근 권한 에러 처리 핸들러 구현

* feat: 출결 구독 emitter 관리 클래스 구현

* feat: sse event 전송을 위한 래핑 해제

* feat: 출결 이벤트 전송 클래스 구현

- 최초 연결 요청 시 출결 상태 전송

* feat: 출결 이벤트 서비스 레이어 구현

* style: import 문 재정렬

* style: 패키지명 대문자 제거

* chore: 스케줄러 서비스 패키지 이동

* feat: 동적 스케줄링을 위한 Task Scheduler 빈 등록

* feat: 출결 구독 중인 모든 emitter를 반환하는 메서드 구현

- findAll

* feat: 세션 시간에 따라 시작 알림을 전송하는 동적 스케줄러 구현

* feat: 세션 등록 시 동적 스케줄러 추가

* refactor: 컨트롤러에서 반환하는 예외 제거

* refactor: deprecate된 date 필즈 제거

* refactor: 반환하지 않는 에러 제거
[Release] V2 2024.08.20.01
* feat: 세션 시간 반환 기능 구현

* feat: 세션 목록 반환 시 세션 장소 추가

* docs: 세션 시간 반환 API 스웨거 설명 변경

* refactor: 세션 시간 반환 API 패키지 변경 및 메소드 명 변경
* refactor: 멤버 관련 필드명 통일

- 이름: name
- 포지션: position

* refactor: 회원 API 토큰 반환 로직 변경

- AuthPrincipal 이용
[Release] V2.2024.08.20.03
[Release] V2.2024.08.21.01
[Release] V2 2024.08.21.02
Chore: 정확도 관련 로그 추가 (#122)
* chore: 정확도 관련 로그 추가

* feat: 출결 입력 request 검증
[Release] V2.2024.08.22.02
@Youthhing Youthhing merged commit 1f45487 into main Aug 22, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants