Skip to content

마이페이지 API 개발 #71

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

Open
Zerohertz opened this issue May 10, 2025 · 0 comments
Open

마이페이지 API 개발 #71

Zerohertz opened this issue May 10, 2025 · 0 comments
Assignees

Comments

@Zerohertz
Copy link
Member

Zerohertz commented May 10, 2025

개요

사용자의 마이페이지에 필요한 API 개발이 필요합니다. 마이페이지에서는 사용자가 좋아요한 장소/코스, 저장한 장소/코스, 방문 일정, 리뷰 등의 정보를 볼 수 있어야 합니다.

필요한 기능

  • 사용자가 좋아요한 장소/코스 목록 조회
  • 사용자가 저장(북마크)한 장소/코스 목록 조회
  • 사용자의 방문 일정 조회
  • 사용자가 작성한 리뷰 목록 조회
  • 사용자 프로필 정보 조회 및 수정
  • 색상 테마 설정 기능 (UI에 보이는 색상 선택 기능)

API 엔드포인트

  • GET /api/users/me: 사용자 프로필 정보 조회
  • PUT /api/users/me: 사용자 프로필 정보 수정
  • GET /api/users/me/liked/places: 좋아요한 장소 목록 조회
  • GET /api/users/me/liked/courses: 좋아요한 코스 목록 조회
  • GET /api/users/me/bookmarks/places: 저장한 장소 목록 조회
  • GET /api/users/me/bookmarks/courses: 저장한 코스 목록 조회
  • GET /api/users/me/reviews: 작성한 리뷰 목록 조회
  • GET /api/users/me/visits: 방문 일정 목록 조회
  • PUT /api/users/me/preferences/theme: 색상 테마 설정

응답 형식 (예시)

// 사용자 프로필 정보
{
  "id": 1,
  "nickname": "사용자 닉네임",
  "profileImage": "이미지 URL",
  "email": "[email protected]",
  "theme": "PURPLE",
  "createdAt": "2023-01-01T00:00:00"
}

// 좋아요/저장한 장소 목록
{
  "content": [
    {
      "id": 1,
      "name": "장소 이름",
      "thumbnail": "이미지 URL",
      "category": {
        "id": 1,
        "name": "카테고리"
      },
      "likeCount": 10,
      "reviewCount": 5,
      "averageRating": 4.5
    }
  ],
  "pageable": {
    "pageNumber": 0,
    "pageSize": 10,
    "sort": {
      "empty": false,
      "sorted": true,
      "unsorted": false
    }
  },
  "totalElements": 100,
  "totalPages": 10,
  "last": false,
  "size": 10,
  "number": 0,
  "sort": {
    "empty": false,
    "sorted": true,
    "unsorted": false
  },
  "numberOfElements": 10,
  "first": true,
  "empty": false
}

// 테마 설정
{
  "theme": "PURPLE"
}

추가 고려 사항

  • 페이지네이션 및 정렬 옵션 제공
  • 필터링 기능 (카테고리별, 날짜별)
  • 효율적인 데이터 로딩을 위한 쿼리 최적화
  • 사용자 테마 색상 저장을 위한 엔티티 및 DB 스키마 설계

참고 이미지

첨부된 UI 디자인 이미지를 참고하여 필요한 데이터 구조 설계

  • 마이페이지 화면에서 좋아요/저장 목록
  • 리뷰 작성 화면
  • 테마 색상 선택 화면
@Zerohertz Zerohertz self-assigned this May 10, 2025
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

No branches or pull requests

1 participant