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

☂️ 서클 별 도서 추천 기능 #678

Closed
6 tasks done
nyj001012 opened this issue Aug 18, 2023 · 0 comments
Closed
6 tasks done

☂️ 서클 별 도서 추천 기능 #678

nyj001012 opened this issue Aug 18, 2023 · 0 comments
Assignees
Labels
☂️ umbrella 여러 이슈 관리

Comments

@nyj001012
Copy link
Contributor

nyj001012 commented Aug 18, 2023

이슈 및 할 일 추가

할 일

Preview Give feedback
  1. enhancement
    nyj001012
  2. 2 of 2
    enhancement
    nyj001012
  3. 3 of 3
    enhancement
    nyj001012
  4. 3 of 3
    enhancement
    nyj001012
  5. 5 of 5
    enhancement
    nyj001012
  6. 1 of 2
    enhancement
    nyj001012

API

메인 페이지 서클 별 도서 추천 API

URL

  • /api/books/recommand

Request

전부 not required

  • path:

    • name: limit
    • type: number
    • description: 책 정보를 가져올 때 몇 개까지 항목을 보여줄 것인지를 결정
    • default: 4
    • ex) /api/books/recommand&limit=4
  • path:

    • name: circle
    • type: number
    • description: 서클 번호. 아우터의 경우, -1
    • ex) /api/books/recommand&circle=0 (libft 서클)
  • path:

    • name: subject
    • type: string
    • description: 과제 이름
    • ex) /api/books/recommand&subject=libft

Response

  • 변경점: subject는 string 배열
[
        items: {
	      {
		      id: book_info.id
		      title: 책 이름
		      author: 저자
		      publisher: 출판사
		      image: 이미지 url
		      publishedAt: 발행연월
		      subject: [관련과제 이름 배열]
	      }, 
	      {
		      id: 150
		      title: 시작하세요! 도커/쿠버네티스
		      author: 용찬호
		      publisher: 위키북스
		      publishedAt: 2020-10-23
		      subject: [inception]
	      },
        },
      meta: [
          "0서클 | libft",
          "1서클 | printf",
          ....
          "outer | ft_ping",
          ....
      ]
]

도서 수정 API

URL

  • 기존과 동일

Request

  • Request body에 circle 및 subject 추가 예정
    • ex) { ..., circle: 5, subject: inception}

기능

  • 기존과 동일
  • 도서의 서클 정보 변경 시, json파일에 bookInfoId, circle, subject 정보만 입력될 것
  • 만약 도서의 서클 정보에 null이 들어간다면 json에서 해당 도서의 서클 정보 없앨 것

플로우 차트

서클 별 도서 추천 - 초기 화면

변경점

  1. 로그인하지 않았을 시, 서클을 기준으로 랜덤하게 데이터 조회
  2. 진행 중인 과제가 있다면, 서클 대신 과제를 기준으로 조회
flowchart TD
START(시작)
--> B{사용자가 로그인 했는가?}
	B -- 아니오 --> L[랜덤으로 서클의 정보를 가져온다] --> E
	B -- 예 --> C[GET /v2/cursus_users 호출]
	--> D[사용자의 서클 정보를 가져온다]
	--> G{현재 진행 중인 과제가 있는가?}
		G -- 아니오 --> H[마지막으로 진행한 과제의 서클을 탐색한다] 
		--> I{그 서클에 더 이상 진행할 과제가 있는가?}
		I -- 예 --> J[이미 끝난 과제를 제외하여 서클의 정보를 가져온다] --> E[json 파일에서 서클 정보에 맞는 book_info.id를 가져온다] --> END
		I -- 아니오 --> K[그 다음 서클의 정보를 가져온다] --> E
		G -- 예 --> M[현재 진행 중인 과제에 맞는 책 정보를 json파일에서 가져온다]
--> END(종료)
Loading

서클 별 도서 추천 - 서클 및 과제 선택 시

  • 선택된 서클 및 과제에 맞는 도서 정보를 json에서 가져온다

비고

  • 서클 및 과제 정보에 맞는 도서 정보 json 파일 생성 필요

Originally posted by @nyj001012 in jiphyeonjeon-42/discussion#15 (comment)

@nyj001012 nyj001012 added the ☂️ umbrella 여러 이슈 관리 label Aug 18, 2023
@nyj001012 nyj001012 self-assigned this Aug 18, 2023
@nyj001012 nyj001012 moved this from Todo to In Progress in 집현전 검색 기능 TF팀 Sep 2, 2023
@github-project-automation github-project-automation bot moved this from In Progress to Done in 집현전 검색 기능 TF팀 Sep 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
☂️ umbrella 여러 이슈 관리
Projects
Status: Done
Development

No branches or pull requests

1 participant