Skip to content

fix: 마음 기록 오류 수정 및 블러 추가#172

Merged
Neibce merged 2 commits intomainfrom
fe/fix/maum-log
Aug 21, 2025
Merged

fix: 마음 기록 오류 수정 및 블러 추가#172
Neibce merged 2 commits intomainfrom
fe/fix/maum-log

Conversation

@Neibce
Copy link
Owner

@Neibce Neibce commented Aug 21, 2025

Summary by CodeRabbit

  • New Features

    • 본인 업로드한 사진에 한해 선명한 이미지와 상세 오버레이(프로필 이미지, 코멘트, 업로더명, 유효한 경우에만 위치)를 표시하고, 미소유 콘텐츠는 블러로 보호합니다.
    • 카드 크기 및 슬라이드 뷰(viewport) 조정으로 가독성과 스와이프 경험을 개선했습니다.
    • 감정 코드가 로컬라이즈된 텍스트로 표시되며, 코멘트는 선택적(비어있을 수 있음)으로 처리됩니다.
  • Bug Fixes

    • 가족 사진 여부 판별 시 업로더 이름 기준으로 비교하여 잘못된 분류를 수정했습니다.

@coderabbitai
Copy link

coderabbitai bot commented Aug 21, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

MaumLogDto가 업로더 문자열에서 새 User 객체로 변경되고 comment가 nullable로 전환되었습니다. JSON 파싱과 생성자 시그니처가 이에 맞게 수정되었고, 감정 코드 변환용 formattedEmotions 게터가 추가되었습니다. 포토 화면들은 uploader.name 기반 비교로 변경되었고, PhotoDateScreen은 소유 여부(hasUploadedOwn)에 따른 블러/오버레이 렌더링과 폭 기반 카드 레이아웃으로 재구성되었습니다.

Changes

Cohort / File(s) Change summary
Data model (MaumLog & User)
frontend/ongi/lib/models/maum_log.dart
User 클래스 추가(필드: uuid, email, name, isParent, profileImageId, createdAt, updatedAt) 및 User.fromJson. MaumLogDto에서 uploader: String → User, comment: String → String?, 생성자 파라미터 변경. fromJson에서 comment 기본값 제거(json['comment']) 및 uploaderUser.fromJson(json['uploader'] ?? {})로 파싱. List<String> get formattedEmotions 게터 추가.
Photo screens (detail/date)
frontend/ongi/lib/screens/photo/detail_record_screen.dart, frontend/ongi/lib/screens/photo/photo_date_screen.dart
Detail: familyPhotos 필터가 log.uploader.name 비교로 변경. Date: 카드/콘텐츠 사이징을 폭 기준으로 변경(컨텐츠 너비 계산, viewportFraction: 0.90, cardHeight = cardWidth * 1.2). hasUploadedOwn 도입으로 isActive+소유 시 선명 표시, 그 외에는 Stack + ShaderMask + ImageFilter(blur)로 레이어드 처리. 상단 좌측 서브포토도 동일 정책. 하단 오버레이는 소유 시에만 표시되며, 프로필 이미지 조회에 maumLog.uploader.name 사용, 코멘트/업로더명(오렌지) 표시, 위치는 유효할 때만 노출. dart:ui 임포트 추가.

Sequence Diagram(s)

sequenceDiagram
  actor Server as API
  participant Parser as MaumLogDto.fromJson
  participant User as User.fromJson
  participant Model as MaumLogDto

  Server-->>Parser: JSON (includes uploader, comment, emotions)
  activate Parser
  Parser->>User: User.fromJson(json['uploader'] ?? {})
  activate User
  User-->>Parser: User instance
  deactivate User
  Parser->>Model: construct MaumLogDto(comment:String?, uploader:User, emotions...)
  Note right of Model: formattedEmotions<br/>maps emotion codes → strings
  Parser-->>Model: MaumLogDto instance
  deactivate Parser
Loading
sequenceDiagram
  participant VM as PhotoDateScreen State
  participant Data as _maumLogResponse
  participant UI as Card Renderer

  VM->>Data: determine hasUploadedOwn (by uploader.name)
  Data-->>VM: true/false
  alt isActive && hasUploadedOwn
    VM->>UI: render front/back images (clear)
    UI-->>VM: show bottom overlay (profile, comment, name, location?)
  else not owned or not active
    VM->>UI: render layered blur (Stack + ShaderMask + ImageFilter)
    UI-->>VM: hide bottom overlay
  end
  Note over UI: top-left sub-photo follows same ownership rule
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Poem

(\_/)
(•ᴗ•) “이제 난 업로더가 아니라 이름을 가진 토끼!”
🥕 선명하면 보여줄게, 아니면 살짝 블러로 숨겨둘래.
코멘트는 가볍게, 위치는 조심스레 꺼내네.
감정은 말로 바뀌어, 기록은 또 한 걸음.


📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Free

💡 Knowledge Base configuration:

  • Jira integration is disabled
  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 6cb209d and 551d110.

📒 Files selected for processing (1)
  • frontend/ongi/lib/screens/photo/detail_record_screen.dart (1 hunks)

Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Join our Discord community for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@Neibce Neibce merged commit a4867e7 into main Aug 21, 2025
3 of 4 checks passed
@Neibce Neibce deleted the fe/fix/maum-log branch August 21, 2025 20:26
Neibce added a commit to 2025-PNU-SW-Hackathon/PNUSW-2025-OnGi-10 that referenced this pull request Aug 25, 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

Successfully merging this pull request may close these issues.

1 participant