TeamFILL-IN / server-renew

spring base

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gallery feature

daehwan2da opened this issue · comments

요구사항

모든 api 에 header token 이 Mandatory 로 기존 api docs 에 정의됨

  • 이미지 다건 조회 (GET /photo)
    • FilmType 별로 사전에 정의된 이미지들을 내려준다.
    • FilmType 별로 이미지 조회가 가능하다.
      • 기획 Q. 본인의 이미지인지, 전체 이미지가 노출되는것인지? 답변 완료
        • 전체 이미지 노출, 우선 mock 으로 구성 요청
      • 기획 Q. 정렬은 어떻게 되는지?
    • Film 종류를 조회할 수 있다.
    • Film 종류 조회시 해당 Film 종류의 이미지 개수를 노출한다.
  • 이미지 리액션
    • 이미지에 좋아요를 등록할 수 있다.
    • 이미지에 좋아요를 취소할 수 있다.
  • 이미지 단건 조회 (GET /photo/{photoId})
    • 이미지 단건 조회를 할 수 있다.
    • 이미지 단건 조회시 좋아요 개수를 노출한다.
    • 이미지에 대해 내가 좋아요했는지 여부를 노출한다.
    • 이미지 필름종류도 조회된다
    • 이미지 작성자 정보를 내려줘야한다.
      • 이미지의 owner 인지 여부를 내려줘야한다.
      • 이미지 작성자인지 여부에 따라 노출되는 메뉴가 달라짐
  • 이미지 수정
    • 작성자만 가능하다.
      • 기획 Q. 어디까지 수정이 가능한지? (이미지의 필름, 스튜디오 정도의 데이터 수정인지, 이미지 자체를 바꿀 수 있는 건지?)
  • 이미지 등록
    • 이미지 등록이 가능하다.
      • 클라 Q. 이미지 등록 전 선 업로드가 수행되면 사용자 이탈시 댕글링 포인트가 발생하는데, 어떻게 대처할지? (시나리오 논의 필요)
    • 이미지의 필름을 선택을 해야한다.
    • 이미지의 스튜디오를 선택해야한다.
  • 이미지 제거
    • 작성자만 가능하다.

영역 구분

  • Film Curation 영역
    • 기획 Q. 어떤 이미지들이 노출되어야할지? 답변 완료
      • 서비스 자체적으로 정의된 이미지 노출 (이후 이미지 미리 공유받아야함, 우선 mock 으로 구성 요청)
    • 서버에서는 특정 이미지들을 셔플해서 3~4개 제공
    • api 추가로 필요
  • Film Type 별 영역
    • photo 다건 조회 api 그대로 사용
      • 전체 이미지 노출 (페이징 처리 우선 필요없을듯?)

API

이미지 다건 조회

GET /photo

{
 "data" : {
    "photos" : [
      {
         "nickname": "계획적인 노트북",
          "userImageUrl": "user image url here",
          "photoId": 12,
          "imageUrl": "photo image url here",
          "filmId": 1,
           "filmName": "Agfa vista 200",
           "likeCount": 0,
           "isLiked": true,
           "isGaro": true,
           "isOwner" : true, // 신규 추가 필드
      }
   ]
  }
}

이미지 단건 조회

이미지 수정

이미지 제거