Refactor error handling and enhance API interactions across Filament pages
- Introduced `ApiErrorTranslator` to normalize and translate API error messages, providing clearer feedback in French. - Updated all Filament pages (Articles, Documents, Divers, Journaux, Tiers, TablesExplorer) to utilize the new error translation mechanism, improving user experience during API interactions. - Added validation for required fields before API calls, ensuring users receive immediate feedback when mandatory inputs are missing. - Implemented tracking properties to distinguish between "never searched" and "searched without results," enhancing the user interface. - Removed the obsolete `$results` property from the Articles page and added a new `$barcode` property to align with API requirements. - Updated documentation to reflect changes in API behavior and error handling, including new metadata returned by the `art_list` endpoint. - Added new tests to verify the functionality of the barcode handling and validation logic.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Tech Context
|
||||
|
||||
Dernière mise à jour : 2026-02-21
|
||||
Dernière mise à jour : 2026-02-23
|
||||
|
||||
## Stack technique
|
||||
|
||||
@@ -98,7 +98,7 @@ Réponse `column_list` : chaque colonne a `name`, `dataType` (C/N/T/D/L/M), `len
|
||||
|----------|----------------|------|-------------|-----------------------|
|
||||
| `tables_list` | `tablesList()` | Lecture | Liste des tables | - |
|
||||
| `column_list/{table}` | `columnList(string)` | Lecture | Colonnes d'une table | table (URL) |
|
||||
| `art_list` | `artList(array)` | Lecture | Liste d'articles | select, results, search, barcode |
|
||||
| `art_list` | `artList(array)` | Lecture | Liste d'articles (max 5 résultats, limite fixe serveur) | select, search, barcode (results sans effet) |
|
||||
| `art_getstk` | `artGetStock(string)` | Lecture | Stock d'un article | ARTID |
|
||||
| `jnl_list` | `jnlList(array)` | Lecture | Liste des journaux | select, results, TYPE |
|
||||
| `document_list` | `documentList(array)` | Lecture | Liste des documents | select, thirdid |
|
||||
@@ -108,7 +108,7 @@ Réponse `column_list` : chaque colonne a `name`, `dataType` (C/N/T/D/L/M), `len
|
||||
| `Document_GetDueDate` | `documentGetDueDate(string, string)` | Lecture | Échéance | paydelay, date |
|
||||
| `Document_GetAttachListThumbnail` | `documentGetAttachListThumbnail(string, string)` | Lecture | Miniatures annexes | JNL, NUMBER |
|
||||
| `Document_GetPDF` | `documentGetPdf(string, string, string)` | Lecture | Génération PDF | JNL, NUMBER, LAYOUT |
|
||||
| `third_list` | `thirdList(array)` | Lecture | Liste des tiers | select, results, search |
|
||||
| `third_list` | `thirdList(array)` | Lecture | Liste des tiers (max 10 résultats, limite fixe serveur) | select, search (results sans effet) |
|
||||
| `third_GetArtHistory` | `thirdGetArtHistory(string)` | Lecture | Historique articles tiers | thirdid |
|
||||
| `getserialnumber` | `getSerialNumber()` | Lecture | Numéro de série | - |
|
||||
| `codes_list` | `codesList(array)` | Lecture | Données par code | code |
|
||||
|
||||
Reference in New Issue
Block a user