Project

General

Profile

Actions

Feature #1145

open
RA

Feature #1133: Implémenter une page de profil utilisateur avec gestion des crédits et des tiers d'abonnement

Fullstack — Page admin (liste filtrable, édition tier, ajustement crédits, historique)

Feature #1145: Fullstack — Page admin (liste filtrable, édition tier, ajustement crédits, historique)

Added by Redmine Admin about 2 months ago. Updated about 2 months ago.

Status:
QA
Priority:
Normal
Assignee:
-
Start date:
06/18/2026
Due date:
% Done:

0%

Estimated time:
spec_ref:

issue:1133 — spec in epic + ticket description

build_status:
build_number:
ci_run_url:
scan_status:
scan_report_url:
deploy_status:
preprod_url:
deployed_at:
branch:
feat/1145-admin-page
pr_url:
https://github.com/omdev-tech/PipeLiner-Client/pull/70
security_key:
severity:
paused:

Description

## Objectif
Interface d'administration OmDev : lister/filtrer les clients, modifier leur tier, ajuster leurs crédits, et consulter l'historique des modifications. Couvre les endpoints admin backend et la page admin frontend.

## Dépendances
Dépend du backend modèle/permissions/historique (#1141) et des notifications email (#1142, pour l'email de changement de tier).

## Portée — Backend (`api/`)
- Endpoints admin (sous garde permission « admin OmDev », 403 sinon) : liste paginée + filtrable des clients (nom, email, tier, crédits restants), modification du tier, ajustement manuel des crédits (+/-), lecture de l'historique.
- Toute mutation écrit une entrée d'historique et émet l'événement correspondant (tier changé → email via #1142).

## Portée — Frontend (`src/`)
- Page admin App Router (visible uniquement pour les admins OmDev) : tableau filtrable des clients, menu déroulant d'édition du tier, contrôle d'ajustement des crédits (optionnel), vue de l'historique des modifications.
- TanStack Query (queries + mutations); i18n `en.ts` ET `fr.ts`.

## Acceptance criteria
- [ ] La page admin liste et filtre les clients (nom, email, tier, crédits).
- [ ] Le tier d'un client est modifiable via un menu déroulant; le changement est persisté.
- [ ] Les crédits d'un client peuvent être ajustés (+/-) depuis l'admin.
- [ ] Chaque modification tier/crédits apparaît dans un historique consultable.
- [ ] Un changement de tier déclenche l'email au client (via #1142).
- [ ] Un utilisateur non-admin OmDev ne peut pas accéder à la page ni aux endpoints (403 / non rendu).
- [ ] Clés i18n cohérentes `en.ts`/`fr.ts`.
- [ ] Backend : pytest verts, `ruff check .`, `mypy src` propres. Frontend : `vitest`, `tsc`, `eslint`, `build` verts.


Files

design-1145-after.png (440 KB) design-1145-after.png Redmine Admin, 06/18/2026 01:06 PM
design-1145-before.png (283 KB) design-1145-before.png Redmine Admin, 06/18/2026 01:06 PM
design-1145-mockup.html (13.4 KB) design-1145-mockup.html Redmine Admin, 06/18/2026 01:06 PM
design-1145-after.png
design-1145-before.png
Actions

Also available in: PDF Atom