1. 10 Oct, 2025 17 commits
  2. 09 Oct, 2025 12 commits
  3. 08 Oct, 2025 6 commits
  4. 07 Oct, 2025 3 commits
  5. 06 Oct, 2025 2 commits
    • 🔎 feat(topup): add order number search for billing history (admin and user) · c7ab5c9a
      Enable searching topup records by trade_no across both admin-wide and user-only views.
      
      Frontend
      - TopupHistoryModal.jsx:
        - Add search input with prefix icon (IconSearch) to filter by order number
        - Send `keyword` query param to backend; works with both endpoints:
          - Admin: GET /api/user/topup?p=1&page_size=10&keyword=...
          - User:  GET /api/user/topup/self?p=1&page_size=10&keyword=...
        - Keep endpoint auto-switching based on role (isAdmin)
        - Minor UI polish: outlined admin action button; keep Coins icon for amount
      
      Backend
      - model/topup.go:
        - Add SearchUserTopUps(userId, keyword, pageInfo)
        - Add SearchAllTopUps(keyword, pageInfo)
        - Both support pagination and `trade_no LIKE %keyword%` filtering (ordered by id desc)
      - controller/topup.go:
        - GetUserTopUps / GetAllTopUps accept optional `keyword` and route to search functions when present
      
      Routes
      - No new endpoints; search is enabled via `keyword` on existing:
        - GET /api/user/topup
        - GET /api/user/topup/self
      
      Affected files
      - model/topup.go
      - controller/topup.go
      - web/src/components/topup/modals/TopupHistoryModal.jsx
      Apple\Apple committed
    • feat(topup): Admin-wide topup listing and route reorganization · 01d18dcb
      Allow administrators to view all platform topup orders and streamline admin-only routes.
      
      Frontend
      - TopupHistoryModal: dynamically switch endpoint by role
        - Admin → GET /api/user/topup (all orders)
        - Non-admin → GET /api/user/topup/self (own orders)
      - Use shared utils `isAdmin()`; keep logic centralized and DRY
      - Minor UI: set admin action button theme to outline for clarity
      
      Backend
      - model/topup.go: add GetAllTopUps(pageInfo) with pagination (ordered by id desc)
      - controller/topup.go: add GetAllTopUps handler returning PageInfo response
      - router/api-router.go:
        - Add admin route GET /api/user/topup (AdminAuth)
        - Move POST /api/user/topup/complete to adminRoute (keeps path stable, consolidates admin endpoints)
      
      Security/Behavior
      - Admin-only endpoints now reside under the admin route group with AdminAuth
      - No behavior change for regular users; no schema changes
      
      Affected files
      - model/topup.go
      - controller/topup.go
      - router/api-router.go
      - web/src/components/topup/modals/TopupHistoryModal.jsx
      Apple\Apple committed