-
This commit is contained in:
52
CLAUDE.md
52
CLAUDE.md
@@ -46,12 +46,44 @@ XX. **Nome Problema (FIX/IMPLEMENTATO DATA):** - **Problema:** Descrizione breve
|
||||
|
||||
## Quick Start - Session Recovery
|
||||
|
||||
**Ultima sessione:** 30 Novembre 2025
|
||||
**Ultima sessione:** 29 Novembre 2025 (pomeriggio)
|
||||
|
||||
**Stato progetto:** Migrazione Oracle APEX → .NET + React TypeScript in corso
|
||||
|
||||
**Lavoro completato nell'ultima sessione:**
|
||||
|
||||
- **FIX: Campo Codice Readonly e Codice Alternativo** - COMPLETATO
|
||||
- **Obiettivo:** Il campo "Codice" deve essere sempre auto-generato (non modificabile), aggiungere campo "Codice Alternativo" opzionale
|
||||
- **Backend modificato:**
|
||||
- `WarehouseArticle.cs` - Aggiunto `AlternativeCode`
|
||||
- `WarehouseLocation.cs` - Aggiunto `AlternativeCode`
|
||||
- `WarehouseArticleCategory.cs` - Aggiunto `AlternativeCode`
|
||||
- `Cliente.cs` - Aggiunto `Codice` e `CodiceAlternativo`
|
||||
- `Articolo.cs` - Aggiunto `CodiceAlternativo`
|
||||
- `AutoCodeService.cs` - Aggiornato per gestire unicità `Cliente.Codice`
|
||||
- `ClientiController.cs` - Auto-generazione codice alla creazione
|
||||
- `ArticoliController.cs` - Auto-generazione codice alla creazione
|
||||
- `WarehouseArticlesController.cs` - Fix DTOs per rimuovere `Code` obbligatorio:
|
||||
- `CreateArticleDto` - Rimosso `Code`, aggiunto `AlternativeCode`
|
||||
- `UpdateArticleDto` - Rimosso `Code`, aggiunto `AlternativeCode`
|
||||
- `ArticleDto` - Aggiunto `AlternativeCode`
|
||||
- `MapFromDto` - Rimossa assegnazione Code (generato da service)
|
||||
- `UpdateFromDto` - Rimossa modifica Code (immutabile)
|
||||
- Migration `AddAlternativeCodeFields` creata e applicata
|
||||
- **Frontend modificato:**
|
||||
- `frontend/src/modules/warehouse/types/index.ts` - Aggiunto `alternativeCode` ai DTOs
|
||||
- `frontend/src/types/index.ts` - Aggiunto `codice` e `codiceAlternativo` a Cliente/Articolo
|
||||
- `ArticleFormPage.tsx` - Campo Codice readonly con "(Generato al salvataggio)"
|
||||
- `WarehouseLocationsPage.tsx` - Campo Codice readonly
|
||||
- `ArticoliPage.tsx` - Campo Codice readonly
|
||||
- `ClientiPage.tsx` - Campo Codice readonly
|
||||
- **Comportamento UI:**
|
||||
- In creazione: campo Codice mostra "(Generato al salvataggio)" in corsivo
|
||||
- In modifica: campo Codice mostra il valore reale, sempre disabled
|
||||
- Campo "Codice Alternativo" sempre modificabile (opzionale)
|
||||
|
||||
**Lavoro completato nelle sessioni precedenti (30 Novembre 2025):**
|
||||
|
||||
- **NUOVA FEATURE: Sistema Codici Automatici Configurabili** - COMPLETATO
|
||||
- **Obiettivo:** Sistema admin per configurare la generazione automatica di codici (articoli, magazzini, movimenti, ecc.)
|
||||
- **Backend implementato:**
|
||||
@@ -2025,3 +2057,21 @@ public interface IWarehouseService
|
||||
if (code != null)
|
||||
article.Code = code;
|
||||
```
|
||||
|
||||
36. **Campo Codice Readonly e Codice Alternativo (FIX 29/11/2025 pomeriggio):**
|
||||
- **Problema:** Errore 400 Bad Request "The Code field is required" quando si creava un nuovo articolo di magazzino
|
||||
- **Causa:** Il `CreateArticleDto` nel backend richiedeva il campo `Code` come obbligatorio, ma il frontend non lo inviava (correttamente, perché dovrebbe essere auto-generato)
|
||||
- **Soluzione:**
|
||||
- Backend: Modificato `CreateArticleDto` per rimuovere `Code` e aggiungere `AlternativeCode` opzionale
|
||||
- Backend: Modificato `UpdateArticleDto` per rimuovere `Code` e aggiungere `AlternativeCode`
|
||||
- Backend: Aggiunto `AlternativeCode` ad `ArticleDto` per la risposta
|
||||
- Backend: Aggiornato `MapFromDto` per non settare `Code` (viene generato da `WarehouseService.CreateArticleAsync`)
|
||||
- Backend: Aggiornato `UpdateFromDto` per non modificare `Code` (immutabile dopo creazione)
|
||||
- Backend: Aggiornato `MapToDto` per includere `AlternativeCode`
|
||||
- Frontend: I tipi erano già corretti, il form già mostrava "(Generato al salvataggio)"
|
||||
- **File modificati:**
|
||||
- `src/Apollinare.API/Modules/Warehouse/Controllers/WarehouseArticlesController.cs`
|
||||
- **Comportamento risultante:**
|
||||
- Creazione: `Code` generato automaticamente (es. `WA000001`), `AlternativeCode` opzionale
|
||||
- Modifica: `Code` non modificabile, `AlternativeCode` modificabile
|
||||
- UI: Campo Codice sempre disabled, mostra placeholder in creazione
|
||||
|
||||
Reference in New Issue
Block a user