RockteMQ-AI commented on issue #3291:
URL: 
https://github.com/apache/rocketmq-dashboard/issues/3291#issuecomment-5549525201

   **Issue Evaluation**
   
   Category: `enhancement` | Status: **Evaluated**
   
   **Feasibility:** Feasible
   **Scope:** Frontend `ClientsPage` (`web/src/pages/cluster/clients.tsx`), 
service layer already supports the parameters
   **Compatibility:** No breaking changes — backend already accepts `clusterId` 
and `type` as optional query params
   
   Verified against the current codebase:
   
   1. **Backend** (`ClientController.java`): `/api/clients` already accepts 
`clusterId` and `type` as optional `@RequestParam` filters.
   2. **API layer** (`web/src/api/connections.ts`): `ClientConnectionQuery` 
interface already defines `clusterId?` and `type?`, and `listConnections()` 
passes them as query params.
   3. **Service layer** (`web/src/services/connectionsService.ts`): Already 
filters by `clusterId` and `type` in both mock and real modes.
   4. **Page** (`web/src/pages/cluster/clients.tsx`): Calls `listConnections({ 
namesrvAddr: selectedEndpoint })` — only passes `namesrvAddr`, ignoring the 
available filters.
   
   The fix is well-scoped:
   - Pass `clusterId` when `clusterFilter !== "ALL"` to the `listConnections()` 
call
   - Add a page-level type selector (Producer/Consumer) and pass it as `type`
   - Reset to page 1 when either filter changes
   - Avoid redundant API calls when only local column filters change (current 
table `onFilter` is client-side only)
   - Keep existing diagnostics, export, and error behavior intact
   
   This is a good first issue for contributors familiar with the React frontend.
   
   ---
   *Automated evaluation by github-manager*


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to