Skip to content

✨ Feature - Implement project sharing collaboration features #20

Closed

Description

@parksomii

πŸ› οΈ Issue Description

ν”„λ‘œμ νŠΈλ₯Ό 외뢀에 μ•ˆμ „ν•˜κ²Œ κ³΅μœ ν•  수 μžˆλŠ” 토큰 기반 곡유 μ‹œμŠ€ν…œμ„ κ΅¬ν˜„ν•©λ‹ˆλ‹€. ν”„λ‘œμ νŠΈ 멀버가 토큰을 μƒμ„±ν•˜κ³ , ν•΄λ‹Ή 토큰을 κ°€μ§„ μ‚¬μš©μžλ§Œ ν”„λ‘œμ νŠΈ 정보와 블둝 μ•„ν‚€ν…μ²˜λ₯Ό μ‘°νšŒν•  수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€.

πŸ’­ Functional role

  • 토큰 기반 곡유 (/api/projects/{projectId}/share-token): ν”„λ‘œμ νŠΈ 멀버가 곡유 토큰 생성/쑰회
  • 곡개 ν”„λ‘œμ νŠΈ 쑰회 (/view/{projectId}?token={token}): 토큰을 ν†΅ν•œ ν”„λ‘œμ νŠΈ 정보 및 μ•„ν‚€ν…μ²˜ 쑰회
  • λ³΄μ•ˆμ„±: 토큰을 λͺ¨λ₯΄λŠ” μ‚¬μš©μžλŠ” ν”„λ‘œμ νŠΈμ— μ ‘κ·Όν•  수 μ—†μŒ
  • μ œν•œμ  곡유: νŠΉμ • μ‚¬λžŒμ—κ²Œλ§Œ ν”„λ‘œμ νŠΈ 정보λ₯Ό 곡유 κ°€λŠ₯
  • μžλ™ 만료: 30일 ν›„ 토큰 μžλ™ 만료둜 λ³΄μ•ˆμ„± μœ μ§€
  • ν˜‘μ—… 지원: νŒ€ μ™ΈλΆ€ 인원과도 μ•ˆμ „ν•˜κ²Œ ν”„λ‘œμ νŠΈ 곡유 κ°€λŠ₯

πŸ“ check-lists

  • ProjectShareToken μ—”ν‹°ν‹° 생성: 토큰 정보, 만료일, ν™œμ„±ν™” μƒνƒœ 관리
  • ProjectShareTokenRepository μΈν„°νŽ˜μ΄μŠ€: 토큰 쑰회 및 μœ νš¨μ„± 검증 λ©”μ„œλ“œ
  • ProjectShareTokenService μ„œλΉ„μŠ€: 토큰 생성 및 관리 λΉ„μ¦ˆλ‹ˆμŠ€ 둜직
  • ProjectShareTokenController: 토큰 생성/쑰회 API μ—”λ“œν¬μΈνŠΈ
  • ProjectViewService μ„œλΉ„μŠ€: 곡개 쑰회 μ„œλΉ„μŠ€ 둜직
  • ProjectViewController: 곡개 쑰회 API μ—”λ“œν¬μΈνŠΈ
  • ProjectShareTokenResponseDto: 토큰 응닡 DTO
  • ProjectViewResponseDto: 곡개 쑰회 응닡 DTO
  • 토큰 μœ νš¨μ„± 검증 둜직: 만료일 및 ν™œμ„±ν™” μƒνƒœ 확인
  • 곡유 URL 생성 둜직: ν”„λ‘œμ νŠΈλ³„ 고유 곡유 링크 생성
  • SecurityConfig μˆ˜μ •: /view/ 경둜 permitAll μ„€μ •
  • Project μ—”ν‹°ν‹° μˆ˜μ •: ProjectShareToken과의 관계 λ§€ν•‘ μΆ”κ°€

Activity

  1. self-assigned this
    on Oct 22, 2025
  2. changed the title [-]✨ Feature - ν”„λ‘œμ νŠΈ ν˜‘μ—…βˆ˜κ³΅μœ  κΈ°λŠ₯ κ΅¬ν˜„[/-] [+]✨ Feature - Feat: Implement project sharing collaboration features[/+] on Oct 22, 2025
  3. changed the title [-]✨ Feature - Feat: Implement project sharing collaboration features[/-] [+]✨ Feature - Implement project sharing collaboration features[/+] on Oct 22, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions