Search
Duplicate

Hobby Hop

TEAM A10
팀원 소개 !
Search
이름
태그
MBTI
BLOG
GITHUB
한 마디!
개인 일정
부리더
ISTJ
(목)오후 2~3시 알고리즘 스터디
팀원
INTJ
내가 유저를 어떻게 하지… → 내가 유저 해냄
(목)오후 2~3시, 나머지 평일 오후 7~8시 기술 면접 및 알고리즘 스터디
Daily Scrum
😻 개인 하루 계획표 🥰
Search
목요일
5
금요일
4
토요일
1
일요일
0
월요일
1
화요일
0
수요일
0
TEAM GITHUB
시연 영상
발표 자료
Ground Rule
약속
목표
시간 약속
링크 모음 !
기술 면접
참고
회의록 & 코드 리뷰 & 메모 & 기술 멘토링 노트
회의록
코드 리뷰
메모
기술면접
진행 상황
프론트 자료
기술 멘토링
스웨거 테스트
영수증
- 기술면접 이후에 바로 이어서 팀 회의 진행하는게 정말 좋아보입니다. :) - 역할 분담은 아주 중요한 배포를 맡아주실 분이 빠져있습니다. 댓글과 대댓글은 개발 스코프가 크지 않으니 한분이 진행 하시고 다른 한분이 배포를 맡아주시는게 좋지 않을까 생각합니다. - ERD는 괜찮습니다 다만 다대다 매핑 테이블을 전부 주 키를 잡아주셨는데 이를 복합키로 변경하는걸 추천드립니다. 마지막 프로젝트니 만큼 완성도를 높이면 좋겠습니다. - API를 보니 Page 처리를 안해놓으신거 같습니다. 전체를 조회하는 부분은 pagable을 사용해 페이지, 정렬 처리를 추가하는걸 추천드립니다. - 추가 구현 스펙에 있는 기능중 알림, 채팅은 꼭 진행해보는걸 추천합니다. - API상에서 복수형이 붙었다가 안붙었다가 합니다. 모두 복수형으로 처리해주시면 감사하겠습니다. - 회원 탈퇴와 같이 Delete 메소드를 사용하는건 뒤에 /withdraw를 안붙여도 모두 알아볼 수 있기때문에 생략하는걸 추천드립니다. - 회원 탈퇴와 회원 강퇴가 같이 있는데 이는 API를 한개로 합치고 내부적으로 권한이 있는지 확인후에 진행하는게 좋아보입니다. 그럼 최종 프로젝트 응원하겠습니다.
Plain Text
복사
S.A.
프로젝트 소개 !
프로젝트
사용한 기술
기획 관련 메모
Project Rules
인프라 아키텍쳐(1.19일 기준)
개발 일정
개발 일정
역할(WBS & Tasks)
권준혁
김한준
송지헌
정유진
홍효정
기획
ERD Diagram
Wire Frame
Search
담당자
진행 상황
우선순위
분류
기능
method
URL
request
response
요구사항
Token
request header
response header
에러 코드
유진
완료
필수
유저
POST
/api/users/signup
{ "email" : “email@email.com", "username" : "유저네임", "password" : "password", "confirmPassword" : “password” }
{ "message" : "회원가입 성공" }
username : 한글, 영어, 숫자 (1~50자) email : ^(?:\w+\.?)*\w+@(?:\w+\.)+\w (7~50자) password : ^[a-zA-Z0-9]+$ (8~15자)
완료
필수
유저
POST
/api/users/login
{ "email" : “email@email.com", "password" : "password" }
{ "message" : "로그인 성공" }
{ "Authorization": Bearer tokenvalue }
완료
필수
유저
GET
/api/users/logout
-
{ "message" : "로그아웃 성공" }
{ "Authorization": Bearer tokenvalue }
완료
1순위
유저
GET
/api/users/login/kakao/callback
-
{ "message" : "카카오 로그인 성공" }
완료
2순위
유저
POST
/api/users/withdrawal
{ "password" : "password" }
{ "message" : "회원 탈퇴 성공" }
{ "Authorization": Bearer tokenvalue }
완료
필수
유저
PATCH
/api/users/update
{ "email" : “email@email.com", "username" : "유저네임" "oldPassword" : "이전 비밀번호", "newPassword" : "새 비밀번호", ”confirmPassword” : “새 비밀번호” }
{ "message" : "사용자 정보 수정 성공" }
{ "Authorization": Bearer tokenvalue }
{ "Authorization": Bearer tokenvalue }
완료
2순위
유저
GET
/api/users/profile
-
{    "success": true,     "httpStatus": "OK",     "errorMessages": null,     "data": {         "username": "username", "email": “email@email.com"     } }
{ "Authorization": Bearer tokenvalue }
완료
2순위
유저
GET
/api/users/profile/{otherUserId}
-
{    "success": true,     "httpStatus": "OK",     "errorMessages": null,     "data": {         "username": "username"     } }
{ "Authorization": Bearer tokenvalue }
준혁
완료
필수
모임
POST
/api/clubs
{ ”groupName" : "그룹명", "groupDescription" : "설명", ”groupCategory : “카테고리”, }
{ ”groupName" : "그룹명", "groupDescription" : "설명", ”groupCategory : “카테고리”, "createdAt" : "2024/01/04 12:53PM", "modifiedAt" : "2024/01/04 12:53PM" }
완료
필수
모임
GET
/api/clubs
{ ”page”:1, ”totalCount”:20, “data” : [ { "groupId": 1, ”groupName" : "그룹명", "groupDescription" : "설명", ”groupCategory : “카테고리”, }, { ”page”:1, ”totalCount”:20, "groupId": 2, ”groupName" : "그룹명", "groupDescription" : "설명", ”groupCategory : “카테고리”, } ] }
완료
필수
모임
GET
/api/clubs/{clubId}
{ "groupId": 1 ”groupName" : "그룹명", "groupDescription" : "설명", ”groupCategory : “카테고리”, }
완료
필수
모임
POST
/api/clubs/{clubId}
{ “username”: “유저네임”, “email”:”email@email.com” }
{ "message" : "모임 가입 성공" }
완료
필수
모임
DELETE
/api/clubs/{clubId}
{ "message" : "모임 삭제 성공" }
완료
1순위
모임
PATCH
/api/clubs/{clubId}
{ ”groupName" : "그룹명", "groupDescription" : "설명", ”groupCategory : “카테고리”, }
{ "message" : "모임 정보 변경 성공" }
완료
1순위
모임
DELETE
/api/clubs/{clubId}
{ “message” : “회원 탈퇴 성공” }
완료
1순위
모임
PATCH
/api/clubs/{clubId}/category
{ ”groupCategory : “카테고리” }
완료
2순위
모임
PATCH
/api/clubs/{clubId}/email
{ “email”:”email@email.com” }
한준
완료
필수
게시글
POST
/api/clubs/{clubId}/posts
{ “postTitle” : “제목” “postContent” : “내용” ”imageUrl” : "myfolder/img.jpg” }
{ “postTitle” : ”제목”, “postContent” : “내용”, ”imageUrl” : "myfolder/img.jpg” ”viewCount”: 0, "createdAt" : "2024/01/04 12:53PM", "modifiedAt" : "2024/01/04 12:53PM" }
완료
필수
게시글
GET
/api/clubs/{clubId}/posts/{postId}
{ “postTitle” : “제목” “postContent” : “내용” ”imageUrl” : "myfolder/img.jpg”, ”viewCount”: 1, "createdAt" : "2024/01/04 12:53PM", "modifiedAt" : "2024/01/04 12:53PM" }
완료
필수
게시글
GET
/api/clubs/{clubId}/posts?page=1&size=5
{ “page” : 1, “size” : 10 }
{ ”page”:1, ”totalCount”:20, “data” : [ { ”postTitle" : "제목", ”imageUrl” : "myfolder/img.jpg”, ”viewCount”: 1, "createdAt" : "2024/01/04 12:53PM", "modifiedAt" : "2024/01/04 12:53PM" }, { ”postTitle" : "제목", ”imageUrl” : "myfolder/img.jpg”, ”viewCount”:1, "createdAt" : "2024/01/04 12:53PM", "modifiedAt" : "2024/01/04 12:53PM" }, ] }
완료
필수
게시글
PATCH
/api/clubs/{clubId}/posts/{postId}
{ “postTitle” : “제목” “postContent” : “내용” ”imageUrl” : "myfolder/img.jpg” }
{ "message" : "게시글 수정 완료" }
완료
필수
게시글
DELETE
/api/clubs/{clubId}/posts/{postId}
{ “message” : “게시글 삭제 완료” }
완료
2순위
게시글
POST
/api/clubs/{clubId}/posts/{postId}/like
{ “message” : “게시글 좋아요 완료” }
완료
2순위
게시글
DELETE
/api/clubs/{clubId}/posts/{postId}/like
{ “message” : “게시글 좋아요 삭제 완료” }
효정
완료
필수
댓글
POST
/api/groups/{groupId}/posts/{postId}/comments
{ “comment” : ”댓글” }
{ “comment” : “댓글”, "writer" : "작성자", ”likes”:1, "createdAt" : "2024/01/04 12:53PM" }
완료
필수
댓글
GET
/api/groups/{groupId}/posts/{postId}/comments?page=1&size=2
{ ”page”:1, ”totalCount”:20, “data” : [ { “comment” : “댓글”, "writer" : "작성자", ”likes”:1, "createdAt" : "2024/01/04 12:53PM" }, { “comment” : “댓글” , "writer" : "작성자", ”likes” : 1, "createdAt" : "2024/01/04 12:53PM" } ] }
완료
필수
댓글
PATCH
/api/groups/{groupId}/posts/{postId}/comments/{commentId}
{ “comment” : ”댓글” }
{ “message” : “댓글 수정 완료” }
완료
필수
댓글
DELETE
/api/groups/{groupId}/posts/{postId}/comments/{commentId}
{ “message” : “댓글 삭제 완료” }
완료
2순위
댓글
POST
/api/groups/{groupId}/posts/{postId}/comments/{commentId}/likes
{ “comment” : “댓글”, "username" : "작성자", ”likes”:1, "createdAt" : "2024/01/04 12:53PM" }
완료
2순위
댓글
DELETE
/api/groups/{groupId}/posts/{postId}/comments/{commentId}/likes/{likeId}
{ “message” : “댓글 좋아요 삭제 완료” }
지헌
완료
필수
대댓글
POST
/api/groups/{groupId}/posts/{postId}/comments/{commentId}/replies
{ “comment” : “댓글” }
완료
필수
대댓글
GET
/api/groups/{groupId}/posts/{postId}/comments/{commentId}/replies
{ “page” : 1, “size” : 10, “totalCount” : 100 “comment” : [ { “comment” : “댓글”, "username" : "작성자", "createdAt" : "2024/01/04 12:53PM" }, { “comment” : “댓글”, "username" : "작성자", "createdAt" : "2024/01/04 12:53PM" } ] }
완료
필수
대댓글
PATCH
/api/groups/{groupId}/posts/{postId}/comments/{commentId}/replies/{replyId}
{ “comment” : “댓글” }
완료
필수
대댓글
DELETE
/api/groups/{groupId}/posts/{postId}/comments/{commentId}/replies/{replyId}
{ “message” : “대댓글 삭제 완료” }