Qual è il modo migliore per rappresentare la quantità in magazzino nel modello di dominio?

0

Un Transaction contiene uno o più LineItem . Uno LineItem ha una relazione con Item . Ogni Item ha un campo numerico che rappresenta la quantità in magazzino.

Utilizzando questo approccio, ogni% di creazione% co_de dovrà ridurre la quantità in Transaction . Se l'utente aggiorna un Item allora la quantità in Transaction dovrà essere aggiustata. Se l'utente cancella un Item allora la quantità in Transaction dovrà essere aumentata.

Qual è il modo migliore per implementare questa regola o comportamento nel livello del modello di dominio? Le operazioni Item (come creare, aggiornare o eliminare) si trovano nel livello di accesso ai dati.

    
posta user91376 18.05.2013 - 06:13
fonte

1 risposta

0

Puoi usare il modello di pubblicazione / sottoscrizione per quello.

Ciò significa che l'oggetto Item sottoscrive tutte le modifiche da fonti che influiscono sul livello dello stock, ad esempio una modifica della quantità nell'oggetto LineItem o la creazione o l'eliminazione dell'oggetto LineItem. L'oggetto Oggetto regola quindi lo stock di conseguenza.

Questo deve accadere all'interno della stessa transazione del database per preservare l'integrità.

Suggerirei un simile approccio solo se hai più editori e abbonati, altrimenti è semplicemente eccessivo. Ad esempio, lo stock può anche essere influenzato eseguendo un inventario fisico e creando documenti con correzioni. O se si mantiene il valore dell'inventario in parallelo con lo stock, anche l'oggetto valore potrebbe essere un sottoscrittore.

Questo modello funziona meglio se hai un framework che usano tutti gli editori e gli abbonati. Fondamentalmente il framework dovrebbe assicurarsi che qualsiasi modifica in qualsiasi oggetto sia disponibile per la sottoscrizione. Inoltre è una buona idea modellare o configurare gli abbonamenti in modo che gli abbonati possano essere rintracciati.

    
risposta data 18.05.2013 - 16:25
fonte

Leggi altre domande sui tag