Skip to content

Latest commit

 

History

History
65 lines (50 loc) · 3.68 KB

requirements.md

File metadata and controls

65 lines (50 loc) · 3.68 KB

요구사항

1. 사용자

  • 사용자는 개인 사용자, 기업/기관, 관리자로 구분한다.
  • 개인 사용자, 기업/기관은 게시글, 댓글을 작성할 수 있다.

1.1. 회원가입

  • 모든 사용자는 회원가입시 이메일 인증을 수행해야한다.
  • 기업은 회원가입시 사업자 인증과 상호명을 입력해야하고 추가 정보는 유저 정보 페이지에서 수정/추가하도록 한다.

2. 게시글 작성

  • 게시글에 포함되는 content는 제목, 본문, 모델 파일, 모델에 대한 치수 정보이다.
  • 제목, 본문은 반드시 존재해야하고 모델 파일, 치수 정보는 optional이다. 모델 파일을 포함하는 게시글과 텍스트만 포함하는 게시글로 나눌 수 있다.
  • 모델 파일에 대한 치수 정보는 optional이다. 치수가 존재하지않는 모델이 있을 수 있기 때문이다.
  • 좋아요, 작성일자를 기준으로 정렬할 수 있어야한다.
  • 제목을 기준으로 검색할 수 있어야한다.
  • 카테고리별로 게시글들을 조회할 수 있어야한다.
  • 각 게시글은 무료로 볼 수 있는 게시글인지 유로로 볼 수 있는 게시글인지 알 수 있어야한다.

3. 게시글 수정

  • 각 게시글 유형에 맞게 게시글 데이터를 수정할 수 있다.
    • 텍스트만 포함하는 게시글은 제목, 본문만 수정할 수 있다.
    • 모델 파일을 포함하는 게시글은 제목, 본문, 모델 파일을 수정할 수 있다. 치수 정보를 포함한다면 치수 정보도 수정할 수 있다.
  • 게시글 수정은 작성자만 할 수 있다.

3.1. 파일 수정

  • 모델 파일이 수정되지 않았을 경우 서버에 파일이 전달되지 않도록 한다.
  • 모델 파일이 수정되었을 경우 이전에 저장되어있던 파일(DB, File 모두)을 삭제하고 수정된 파일을 저장한다. 이때 치수 정보도 같이 삭제하고 저장한다.

4. 게시글 삭제

  • 게시글 삭제는 작성자관리자가 할 수 있다.
  • 게시글 삭제시 관계되어있는 댓글, 좋아요, 파일, 치수 정보 등을 모두 삭제한다.

5. 댓글 & 대댓글 작성/삭제

  • 사용자는 게시글에 댓글을 작성하고 삭제할 수 있다.
  • 작성자에 해당하는 댓글만 삭제할 수 있다.
  • 댓글에는 작성자의 닉네임, 생성일시, 본문이 포함되어있어야한다.

6. 좋아요 추가/삭제

  • 작성자를 제외하고 게시글에 좋아요를 추가하거나 삭제할 수 있다.
  • 좋아요를 한 번 추가했었다면 이후에 더 추가하지 못한다. (Toggle 방식)

7. 알람 전송

  • 댓글 추가시 추가된 댓글이 있는 게시글 작성자에게 알람을 전송한다.
  • 알람에는 댓글 작성자, 작성일자가 포함되어야한다.

8. 유저 정보 수정

  • 모든 개인 사용자, 기업/기관는 자신들의 정보를 수정할 수 있다.

8.1. 개인 사용자 정보 수정

  • 닉네임, 비밀번호, 주소, 폰번호를 변경할 수 있다.

8.2. 기업/기관 사용자 정보 수정

  • 닉네임, 비밀번호, 주소, 폰번호, 기업명, 기업 홈페이지를 변경할 수 있다.

9. 구독 기능

  • 사용자는 구독을 통해 각 게시글에대해 볼 수 있는 권한이 주어진다.
  • 구독은 Free(무료), 1개월, 3개월, 6개월, 1년으로 기간을 나누어서 사용자가 선택할 수 있도록한다.
  • 게시글을 무료로 볼 수 있는 경우와 구독해야 볼 수 있는 경우로 나눈다.

10. 정렬 기능

  • 게시글은 좋아요 수, 작성일자를 기준으로 정렬할 수 있다.

11. 검색 기능

  • 제목을 기준으로 게시글을 검색할 수 있다.