Skip to content

feat(graphql): add organization/generation member queries and mutations#48

Open
BBAK-jun wants to merge 4 commits intomainfrom
feature/gql-organization-generation-member-query
Open

feat(graphql): add organization/generation member queries and mutations#48
BBAK-jun wants to merge 4 commits intomainfrom
feature/gql-organization-generation-member-query

Conversation

@BBAK-jun
Copy link
Copy Markdown
Contributor

@BBAK-jun BBAK-jun commented Jan 7, 2026

Summary

  • 조직원 조회 및 역할 변경 GraphQL API 추가
  • organizationsgenerations 쿼리에서 members 필드 로드 지원

Changes

1. 조직원 쿼리 기능 추가

  • pendingOrganizationMembers(organizationSlug) - PENDING 상태인 가입 신청자 목록 조회
  • organizationMembers(organizationSlug, status?) - 조직원 목록 조회 (상태 필터 지원)

2. 조직원 역할 변경 Mutation 추가

  • changeMemberRole(organizationSlug, memberDiscordId, newRole) - 조직원 역할 변경
  • 지원 역할: OWNER, ADMIN, MEMBER

3. Organizations 쿼리에서 members 로드

  • 이전: organizations.membersnull
  • 변경: organizations.members → 조직원 목록 반환

4. Generations 쿼리에서 members 로드

  • 이전: generations.membersnull
  • 변경: generations.members → 기수원 목록 반환

Test Plan

  • pendingOrganizationMembers 쿼리로 PENDING 상태 멤버 조회 확인
  • changeMemberRole mutation으로 역할 변경 확인
  • organizations 쿼리 시 members 필드 반환 확인
  • generations 쿼리 시 members 필드 반환 확인

🤖 Generated with Claude Code

BBAK-jun and others added 4 commits January 7, 2026 15:36
Add queries to look up organization members with filtering by status.

- Add `pendingOrganizationMembers(organizationSlug)` to query PENDING members
- Add `organizationMembers(organizationSlug, status?)` to query all members with optional status filter
- Add organization-member.mapper.ts for domain to GraphQL transformation
- Update mappers and resolvers index to export new modules

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Add mutation to change organization member role.

- Add ChangeMemberRoleCommand to handle role changes
- Add `changeMemberRole(organizationSlug, memberDiscordId, newRole)` mutation
- Supports OWNER, ADMIN, MEMBER roles
- Update commands index to export new command

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Load organization members when querying organizations.

- Add helper function `mapToGqlOrganizationMember` for transformation
- Update `organizations` query to load all members for each organization
- Update `activeOrganizations` query to load members
- Update `organization(slug)` query to load members
- Previously `organizations.members` returned null, now returns member list

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Load generation members when querying generations.

- Add helper function `mapToGqlGenerationMember` for transformation
- Add `generationMemberRepo` and `memberRepo` instances
- Update `generations` query to load all members for each generation
- Update `generation(id)` query to load members
- Update `activeGeneration` query to load members
- Update `addGeneration` mutation to load members after creation
- Previously `generations.members` returned null, now returns member list

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
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