Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Impl MEE 006 008 010 api #1217

Open
wants to merge 8 commits into
base: dev
Choose a base branch
from
Open

Conversation

ChaeyeonAhn
Copy link
Contributor

@ChaeyeonAhn ChaeyeonAhn commented Nov 19, 2024

요약 *

It closes #1215

  • MEE006 구현
  • MEE008 구현
  • MEE010 구현
  • 테스트

스크린샷

이후 Task *

  • 없음

@ChaeyeonAhn ChaeyeonAhn linked an issue Nov 19, 2024 that may be closed by this pull request
2 tasks
@ChaeyeonAhn ChaeyeonAhn self-assigned this Nov 19, 2024
@ChaeyeonAhn ChaeyeonAhn marked this pull request as ready for review November 20, 2024 15:13
Copy link
Contributor

@Engineer-JJHaMa Engineer-JJHaMa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 궁금한 사항들 남겨두었고, 안건 모듈을 만들어서 다시 확인해보면 좋을 것 같아요!

packages/api/src/feature/meeting/meeting.service.ts Outdated Show resolved Hide resolved
packages/api/src/feature/meeting/meeting.repository.ts Outdated Show resolved Hide resolved
packages/api/src/feature/meeting/meeting.service.ts Outdated Show resolved Hide resolved
@ChaeyeonAhn
Copy link
Contributor Author

ChaeyeonAhn commented Nov 24, 2024

Update 11/25

  1. meeting schema 변경:
  • Meeting 테이블에 statusEnum 추가했습니다. (공고 게시 = 1 (디폴트), 안건 공개 = 2, 회의 종료 = 3) db에도 반영했어요.
  • Meeting Mapping 테이블에 createdAt, updatedAt, deletedAt 추가
  1. agenda 폴더 새로 생성해서 MEE 6, 8, 10은 그리로 옮겼습니다.
  2. 하마 오빠 코멘트 반영 repository 코드 수정!
  3. 테스트 완료
  • Meeting과 Agenda의 매핑 생성 (Meeting의 statusEnum이 1에서 2 되는지 확인 완료)
  • MeetingMapping row 지우면
    • MeetingMapping의 row에서 deletedAt 업데이트 되는지 확인 완료
    • 그 Meeting과의 모든 매핑이 지워졌을 경우 Meeting에서 statusEnum이 2에서 1 되는지 확인 완료)
  • 그 외 기본적인 post, patch, delete 확인 완료
  • (놓친 게 있을 지도 모르긴 합니다만..! 최대만 여러번 돌려봤어요.)

주요 변경 사항은 // CHACHA: 이런 식으로 써 놓아서, 거기 위주로 봐 주시면 됩니다.
최종 머지하기 전엔 코멘트 지울게요! 🚀

@Engineer-JJHaMa

Copy link
Contributor

@Engineer-JJHaMa Engineer-JJHaMa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 👍 주석도 너무 잘 달아줘서 고맙고 지울 필요는 없어요! 본인이 고민했다는 것은 분명 나중에 이 코드를 보는분들도 고민할 것 같으니까요! 코멘트 확인하고 머지해주세요:)

Comment on lines +454 to +457
const getEveryMappingDeletedAt = await tx
.select({ isDeleted: MeetingMapping.deletedAt }) // CHACHA: 만약 모든 Meeting과 Agenda mapping이 deleted -> 그 Meeting은 공고 게시 상태로!
.from(MeetingMapping)
.where(and(eq(MeetingMapping.meetingId, meetingId)));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💊 아마 하나의 미팅에 포함된 아젠다 개수가 그렇게 많지는 않을거라(많아야 20개 정도?) 크게 문제는 되지 않지만, soft delete 된 row 개수가 궁금한 거라면 count 이용하면 응답을 더 깔끔하게 받을 수 있을것 같아요!

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❓ 원래는 서비스 + 컨트롤러 + 레포지토리가 전부 모듈 안으로 들어오는게 좋다고 생각했는데, 이번에는 한 쿼리가 agenda가 아닌 테이블도 건드리다 보니까 그 범위가 애매하다고 느껴집니다. 가능한 한 agendarepository 안으로 가져오고, 한 트랜잭션으로 묶이지 않아도 괜찮을 것 같은 쿼리를 분리하는 것에 대해 어떻게 생각해요?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Impl MEE 006 008 010 API
2 participants