-
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
|
## 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
|
**Stato progetto:** Migrazione Oracle APEX → .NET + React TypeScript in corso
|
||||||
|
|
||||||
**Lavoro completato nell'ultima sessione:**
|
**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
|
- **NUOVA FEATURE: Sistema Codici Automatici Configurabili** - COMPLETATO
|
||||||
- **Obiettivo:** Sistema admin per configurare la generazione automatica di codici (articoli, magazzini, movimenti, ecc.)
|
- **Obiettivo:** Sistema admin per configurare la generazione automatica di codici (articoli, magazzini, movimenti, ecc.)
|
||||||
- **Backend implementato:**
|
- **Backend implementato:**
|
||||||
@@ -2025,3 +2057,21 @@ public interface IWarehouseService
|
|||||||
if (code != null)
|
if (code != null)
|
||||||
article.Code = code;
|
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