mirror of
https://github.com/siop-spelev/siop2.git
synced 2026-08-08 12:41:54 +00:00
feat(r3.4): corrections de recette (8 écarts) + recherche globale ⌘K
Arbitrage du référent sur la revue pixel : tout corriger, activer la recherche. - Stock : filtre fournisseur, sous-seuil en tête, « Entrée de stock » depuis la liste ; fiche pièce : fournisseur → lien Tiers. - Statistiques : période 3/6/12 mois (paramètre months au contrat). - Tiers : rattachements syndic→site (migration r3_recette_fixes, Location.partnerId gardé CLIENT), éditable sur la fiche site, seedé. - Bibliothèque : filtre « Rattaché à » + glisser-déposer (modale préremplie, rattachement toujours requis). - Recherche globale : GET /search (73 opérations) — familles OT/ ascenseurs/sites filtrées par la matrice, « voir autre » respecté ; topbar ⌘K, debounce, résultats groupés, navigation clavier. 74 tests API (8 nouveaux sur le scoping de la recherche), 14/14 Playwright dont un parcours « recette corrigée », 18/18 contrôles en navigateur réel, zéro erreur console. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -49,6 +49,7 @@ import {
|
||||
DocumentSchema,
|
||||
DocumentsResponseSchema,
|
||||
} from './schemas/documents';
|
||||
import { SearchResponseSchema } from './schemas/search';
|
||||
import {
|
||||
ConsumePartSchema,
|
||||
LaborTimeCreateSchema,
|
||||
@@ -116,7 +117,7 @@ export interface ApiOperation {
|
||||
/** Paramètres de chemin (`{id}` dans path) — `id`/`…Id` = UUID. */
|
||||
pathParams?: string[];
|
||||
/** Paramètres de requête (?a=…&b=…). */
|
||||
queryParams?: { name: string; required?: boolean }[];
|
||||
queryParams?: { name: string; required?: boolean; description?: string }[];
|
||||
/** Upload multipart/form-data : champs déclarés ('file' = binaire). */
|
||||
multipartFields?: Record<string, 'file' | 'string'>;
|
||||
/** Réponse 200 binaire (téléchargement streamé). */
|
||||
@@ -502,10 +503,22 @@ export const API_CONTRACT: ApiOperation[] = [
|
||||
path: '/analytics/summary',
|
||||
summary: 'Le tableau de la direction : coûts, pannes par organe (bilans), préventif, top équipements',
|
||||
tags: ['analytics'],
|
||||
queryParams: [{ name: 'months', description: 'Période en mois : 3, 6 ou 12 (défaut)' }],
|
||||
responses: {
|
||||
200: { description: 'Synthèse', name: 'AnalyticsSummary', schema: AnalyticsSummarySchema },
|
||||
},
|
||||
},
|
||||
{
|
||||
operationId: 'globalSearch',
|
||||
method: 'get',
|
||||
path: '/search',
|
||||
summary: 'Recherche globale (OT, ascenseurs, sites) — chaque famille filtrée par la matrice',
|
||||
tags: ['search'],
|
||||
queryParams: [{ name: 'q', required: true, description: '2 caractères minimum' }],
|
||||
responses: {
|
||||
200: { description: 'Résultats (5 max par famille)', name: 'SearchResponse', schema: SearchResponseSchema },
|
||||
},
|
||||
},
|
||||
|
||||
// ————— R3 · Gestion (stock, achats, tiers, coûts) —————
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user