Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • A Ahad Mobile
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • holatech
  • Ahad Mobile
  • Merge requests
  • !66

feat(admin): implement card list, card detail and user cards integration

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Đặng Hiển requested to merge feature/admin-cards into develop Sep 15, 2026
  • Overview 0
  • Commits 1
  • Pipelines 1
  • Changes 22

📌 Overview

Merge Request này triển khai chức năng Quản lý Thẻ (Cards Management) trên trang Admin Portal (admin/):

  • Trang danh sách thẻ (Cards List) theo dõi số dư, trạng thái hoạt động và bộ lọc thẻ Reap.
  • Trang chi tiết thẻ (Card Detail Page) hiển thị đầy đủ thông tin hạn mức, số dư và user liên kết.
  • Tích hợp danh sách thẻ vào trang chi tiết người dùng (User Detail).
  • Chuẩn hóa phân trang đa ngôn ngữ (i18n) và sắp xếp server-side cho bảng thẻ.

🚀 Key Changes

1. Cards Management (admin/src/features/cards/)

  • Cards List Page (/cards): Hiển thị danh sách thẻ, hỗ trợ filter theo trạng thái (ACTIVE, INACTIVE, BLOCKED,...), sắp xếp theo số dư / ngày tạo và phân trang.
  • Card Detail Page (/cards/:cardId): Xem chi tiết thông tin thẻ, trạng thái hoạt động, hạn mức (lifetime/monthly limits), số dư đã lưu và người sở hữu.
  • Schemas & Service:
    • card-balance-schema.ts: Zod schemas cho thông tin thẻ và chi tiết số dư.
    • reap-cards.service.ts: Gọi API Reap Cards từ backend.
    • use-card-balances.ts, use-card-detail.ts, query-keys.ts: React Query hooks quản lý cache dữ liệu.
    • card-balances-filter-store.ts: Quản lý state bộ lọc danh sách thẻ.

2. User Detail Integration (admin/src/features/users/)

  • Bổ sung bảng danh sách thẻ của user trong trang chi tiết user (user-detail-page.tsx).
  • Thêm hook use-user-cards.ts lấy danh sách thẻ gắn với userId.

3. Routing & i18n

  • Đăng ký routes /cards và /cards/:cardId trong routes.tsx.
  • Thêm formatters date-time.ts và decimal.ts cho số dư và thời gian.
  • Hỗ trợ đa ngôn ngữ cho toàn bộ nhãn thẻ và điều khiển phân trang trong vi.json và en.json.

🧪 Verification

  • TypeScript type-check thành công (pnpm type-check).
  • Vite build thành công (pnpm build).
  • Đã cập nhật đầy đủ file ngôn ngữ (vi.json và en.json).
  • Không dính file hoặc thay đổi từ các module khác (lending, dashboard).
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: feature/admin-cards