Skip to content

feat: add session management page#29

Merged
darshanbagade merged 1 commit into
mainfrom
feature/session-management-page
Jun 2, 2026
Merged

feat: add session management page#29
darshanbagade merged 1 commit into
mainfrom
feature/session-management-page

Conversation

@darshanbagade

@darshanbagade darshanbagade commented Jun 2, 2026

Copy link
Copy Markdown
Owner

This PR adds the Session Management page for Reconsta.

Changes:

  • Added Session Management page
  • Added reconciliation session list
  • Added session search by session ID
  • Added session summary cards
  • Added quick navigation to dashboard and transactions
  • Added admin-only session delete action
  • Added supervisor view-only cleanup behavior
  • Added DELETE /api/transactions/session/:sessionId integration
  • Fixed apiClient default Content-Type issue so FormData uploads work correctly

User workflow:

  • Admin and supervisor can view uploaded reconciliation sessions
  • Users can inspect batch transaction counts
  • Users can open related dashboard or transaction views
  • Admin can delete demo/test reconciliation sessions
  • Supervisor can view sessions but cannot delete them

Tested:

  • Sessions page loads
  • Session search works
  • Upload new batch button works
  • Dashboard navigation works
  • Transactions navigation works
  • Admin delete session works
  • Supervisor sees admin-only cleanup state
  • CSV upload works after apiClient Content-Type fix
  • Production build passes

Copilot AI review requested due to automatic review settings June 2, 2026 18:37

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new Session Management page in the frontend to let admin/supervisor users browse reconciliation sessions, search by session ID, view summary totals, and (for admins) delete a session via the backend DELETE /api/transactions/session/:sessionId endpoint. It also adjusts the shared Axios client config to avoid forcing a JSON Content-Type, allowing FormData uploads to work correctly.

Changes:

  • Added a new /sessions route and sidebar navigation entry for admin/supervisor users.
  • Implemented SessionManagementPage UI: session list, session ID search, summary cards, navigation actions, and admin-only delete action.
  • Added deleteTransactionSession API helper and removed default Content-Type header from apiClient to support FormData uploads.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
reconsta-frontend/src/services/transactionApi.js Adds deleteTransactionSession() wrapper for the session-delete endpoint.
reconsta-frontend/src/services/apiClient.js Removes default JSON Content-Type so uploads can set multipart boundaries correctly.
reconsta-frontend/src/routes/AppRoutes.jsx Registers the new /sessions route under ProtectedRoute.
reconsta-frontend/src/pages/SessionManagementPage.jsx New Session Management page: list/search/summary + admin-only delete action.
reconsta-frontend/src/layouts/AppLayout.jsx Adds “Sessions” to the role-based sidebar navigation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +359 to +388
<button
type="button"
onClick={() =>
navigate('/dashboard', {
state: {
sessionId:
session.sessionId
}
})
}
className="rc-btn-secondary h-9 px-3 text-sm"
>
Dashboard
</button>

<button
type="button"
onClick={() =>
navigate('/transactions', {
state: {
sessionId:
session.sessionId
}
})
}
className="rc-btn-secondary h-9 px-3 text-sm"
>
Transactions
</button>
</div>
@darshanbagade darshanbagade merged commit 7714a6e into main Jun 2, 2026
1 check passed
@darshanbagade darshanbagade deleted the feature/session-management-page branch June 2, 2026 18:49
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.

2 participants