26 lines
1.2 KiB
Markdown
26 lines
1.2 KiB
Markdown
# Implementer — CLUB-006
|
|
|
|
## Resumen
|
|
Panel de administración del Club de Clientes.
|
|
|
|
## Backend
|
|
- `src/modules/club/domain/club.ts` — tipos `ClubMemberWithUser`, `PaginatedClubMembers`
|
|
- `src/modules/club/domain/ports.ts` — порты: `listMembers`, `findMemberById`
|
|
- `src/modules/club/infrastructure/pg-club-repository.ts` — implementación con JOIN a identity_users para email
|
|
- `src/modules/club/application/club-service.ts` — `listMembers()`, `getMemberById()`, `listMemberTransactions()`
|
|
- `src/modules/club/api/club.routes.ts` — 3 endpoints admin nuevos + serializeMemberWithUser
|
|
|
|
## Frontend admin
|
|
- `apps/admin/src/lib/api-client.ts` — `clubAdminApi.listMembers`, `getMember`, `getMemberMovements`
|
|
- `apps/admin/src/app/(dashboard)/club/page.tsx` — lista con búsqueda, filtro y paginación
|
|
- `apps/admin/src/app/(dashboard)/club/[id]/page.tsx` — detalle + movimientos
|
|
- `apps/admin/src/lib/permissions.ts` — añadido "🎫 Club" al sidebar
|
|
|
|
## Validación
|
|
- `cd project && npm run typecheck` ✅
|
|
- `cd project && npm run build` ✅
|
|
- `cd project/apps/admin && npm run build` ✅ (club pages visible)
|
|
- `npx vitest run src/modules/club/tests/` ✅ (4 tests)
|
|
- `git diff --check` ✅
|
|
- `./scripts/verify.sh` ✅
|