Skip to content

Refactor/mobile remove legacy fields - #146

Merged
yhaeul merged 5 commits into
developfrom
refactor/mobile-remove-legacy-fields
Aug 11, 2026
Merged

yhaeul merged 5 commits into
developfrom
refactor/mobile-remove-legacy-fields

Conversation

@yhaeul

@yhaeul yhaeul commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

작업 내용

  • DB 삭제 예정 필드에 대한 모바일 의존성을 정리했습니다.
    • user_club_review.rating 제거
    • club.articleUploadedAt 제거
    • club.activityCycle 제거
    • club.college 제거
    • 사용하지 않는 사용자·동아리·리뷰 키워드 타입 필드 제거
  • 모집공고 수정 시각을 club.articleUploadedAt 대신 대표 club_recruitment.updatedAt 기준으로 변경했습니다.
  • 활동 기간 계산과 등록·수정 폼을 activityCycle 대신 minActivityPeriod 기준으로 통일했습니다.
  • 동아리 소속 정보를 club.college 대신 collegeMajor 관계로 표시하도록 변경했습니다.
  • 일반 검색 API가 collegeMajor 관계를 함께 반환하도록 검색 쿼리를 수정했습니다.
  • 동아리 요약 문구 생성 로직을 공통 유틸로 분리하고 테스트를 추가했습니다.

동아리 description 표시 규칙

club.description은 이번 PR에서 제거하지 않고 구데이터 호환을 위한 fallback으로 유지했습니다.
기본 동아리 목록·검색·상세·관리 화면은 다음 규칙을 사용합니다.

  1. shortDescription이 있고 소속이 기타가 아닌 경우

    컴퓨터공학부 소속 shortDescription
    
  2. shortDescription이 없는 경우
    이 경우 소속 정보는 함께 표시하지 않습니다.

    description
    
  3. affiliationType이 기타인 경우
    기타 소속 문구는 표시하지 않습니다.

    shortDescription
    

홈의 다음 캐러셀에서는 소속 정보 없이 요약만 표시합니다.

  • 새로운 공고가 올라왔어요
  • 이런 동아리는 어때요?

캐러셀 표시 규칙:
text shortDescription → 없으면 description

description fallback은 기존 데이터 중 short_description이 비어 있는 동아리의 소개가 사라지는 것을 방지하기 위해 유지했습니다. 추후 데이터 백필과 서버 전환이 완료되면 별도로 제거할 수 있습니다.

변경 이유

  • 추후 레거시 DB 컬럼을 삭제하더라도 새 모바일 버전이 영향을 받지 않도록 사전에 의존성을 제거하기 위함입니다.
  • 동아리 소속 정보를 레거시 club.college가 아닌 club.college_major_id → college_major 관계 기준으로 통일하기 위함입니다.
    모집공고와 활동 기간 정보를 각각 club_recruitment, minActivityPeriod 기준으로 통일하기 위함입니다.
    기존 데이터에 short_description이 없는 경우를 고려해 description을 한시적인 fallback으로 유지했습니다.

테스트한 내용

스크린샷 (선택)

체크

  • 정상 동작 확인
  • UI 깨짐 없음
  • 콘솔 에러 없음

@yhaeul
yhaeul merged commit 9ef7ea0 into develop Aug 11, 2026
4 checks passed
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

Successfully merging this pull request may close these issues.

1 participant