Files
zentral/docs/development/devlog/2025-12-12-125000_magazzino_gruppi_merceologici.md

1.8 KiB

Implementazione Gruppi Merceologici Magazzino

Richiesta

Implementare la gestione dei gruppi merceologici per la categorizzazione degli articoli nel modulo magazzino, sia backend che frontend.

Stato Attuale

  • Esiste già una gestione di "Categorie Articoli" (WarehouseArticleCategory) che è gerarchica.
  • "Gruppi Merceologici" (WarehouseProductGroup) sarà una nuova entità, probabilmente una classificazione parallela non gerarchica (o piatta) spesso usata per fini statistici o contabili, o semplicemente come raggruppamento alternativo.

Piano di Lavoro

Backend

  1. Domain Layer
    • Creare entità WarehouseProductGroup in Zentral.Domain.Entities.Warehouse.
    • Campi: Code, Name, Description, IsActive.
    • Aggiornare WarehouseArticle aggiungendo FK ProductGroupId e navigation property.
  2. Infrastructure Layer
    • Aggiungere DbSet<WarehouseProductGroup> in ApplicationDbContext.
    • Configurare le relazioni entity framework se necessario.
    • Creare Migrazione AddWarehouseProductGroups.
  3. Service Layer
    • Aggiornare IWarehouseService e WarehouseService con i metodi CRUD per i gruppi merceologici.
  4. API Layer
    • Creare WarehouseProductGroupsController.
    • Aggiornare DTOs degli articoli per includere ProductGroupId.

Frontend

  1. Services
    • Creare productGroupService.ts per chiamare le API.
  2. Pages
    • Creare ProductGroupsPage per elenco e gestione (CRUD).
  3. Components
    • Aggiornare il form di creazione/modifica articolo per permettere la selezione del gruppo merceologico.
  4. Routing & Navigation
    • Aggiungere rotta per ProductGroupsPage.
    • Aggiungere voce di menu nella sidebar del magazzino.

Note

  • L'implementazione seguirà lo stile esistente del modulo Warehouse, usando Services e Controllers.