92 lines
2.8 KiB
Markdown
92 lines
2.8 KiB
Markdown
# Tech Context
|
|
|
|
Derniere mise a jour : 2026-02-19
|
|
|
|
## Stack technique
|
|
|
|
| Composant | Version | Role |
|
|
|-----------|---------|------|
|
|
| PHP | 8.4 | Langage serveur |
|
|
| Laravel | 12 | Framework applicatif |
|
|
| Filament | 5.0 | Panel admin / dashboard |
|
|
| Livewire | 4 | Composants reactifs |
|
|
| Flux UI Free | 2.9+ | Composants UI Livewire |
|
|
| Fortify | 1.30+ | Authentification (existant, non utilise par Filament) |
|
|
| Pest | 4.4+ | Framework de tests |
|
|
| MySQL | - | Base de donnees |
|
|
| Vite | - | Bundler frontend |
|
|
| Tailwind CSS | 4 | Framework CSS |
|
|
|
|
## Dependances principales (composer.json)
|
|
|
|
- `filament/filament: ^5.0`
|
|
- `laravel/framework: ^12.0`
|
|
- `livewire/livewire: ^4.0`
|
|
- `livewire/flux: ^2.9.0`
|
|
- `laravel/fortify: ^1.30`
|
|
|
|
## Configuration
|
|
|
|
### Variables d'environnement specifiques
|
|
|
|
```
|
|
LOGISTICS_API_BASE_URL=http://tse-10-test.esiweb.pro
|
|
LOGISTICS_API_KEY=<cle API>
|
|
LOGISTICS_API_FOLDER=esigescom
|
|
```
|
|
|
|
Fichier de config : `config/logistics.php`
|
|
|
|
### Base de donnees
|
|
|
|
- Connexion : MySQL
|
|
- Base : `api_logistics`
|
|
- Configuration dans `.env` : `DB_CONNECTION=mysql`
|
|
|
|
## API Logistics
|
|
|
|
### Connexion
|
|
|
|
- Serveur : TSE-10-TEST
|
|
- Base URL : `http://tse-10-test.esiweb.pro`
|
|
- Dossier : `esigescom` (minuscules obligatoires)
|
|
- Authentification : Header `X-API-KEY`
|
|
- Methode : POST pour tous les endpoints
|
|
- Port HTTP : 5186 / Port HTTPS : 7126
|
|
|
|
### Structure de reponse
|
|
|
|
```json
|
|
{
|
|
"data": "<resultat>",
|
|
"metadata": { "rowcount": 0, "issuccess": true },
|
|
"error": "<message d'erreur ou null>"
|
|
}
|
|
```
|
|
|
|
### Endpoints
|
|
|
|
| Endpoint | Description | Parametres principaux |
|
|
|----------|-------------|-----------------------|
|
|
| `tables_list` | Liste des tables | - |
|
|
| `column_list/{table}` | Colonnes d'une table | table (URL) |
|
|
| `art_list` | Liste d'articles | select, results, search, barcode |
|
|
| `art_getstk` | Stock d'un article | ARTID |
|
|
| `jnl_list` | Liste des journaux | select, results, TYPE |
|
|
| `document_list` | Liste des documents | select, thirdid |
|
|
| `document_detail` | Detail d'un document | jnl, number |
|
|
| `document_add` | Ajout d'un document | ThirdId, Date, Artid[], Qty[], Saleprice[], JNL, ... |
|
|
| `document_mod` | Modification d'un document | number, Thirdid, Artid[], Qty[], Saleprice[], JNL, ... |
|
|
| `Document_GetStatusList` | Statuts d'un journal | jnl |
|
|
| `Document_GetUnitPriceAndVat` | Prix et TVA | ARTID, QTY, JNL, THIRDID, DATE |
|
|
| `Document_GetDueDate` | Echeance | paydelay, date |
|
|
| `Document_GetAttachListThumbnail` | Miniatures annexes | JNL, NUMBER |
|
|
| `third_list` | Liste des tiers | select, results, search |
|
|
| `third_GetArtHistory` | Historique articles tiers | thirdid |
|
|
| `getserialnumber` | Numero de serie | - |
|
|
| `codes_list` | Donnees par code | code |
|
|
|
|
### Tables accessibles
|
|
|
|
art, attach, barcode, category, codes, cust, docdet, dochead, docpay, file, hist, incodes, jnl, pers, price, stk
|