Trovaprodotti Core: differenze tra le versioni

Da Webmobili Wiki.
Nessun oggetto della modifica
Riga 18: Riga 18:


In pratica ''estendiamo le tabelle'' esistenti, cioè ne creiamo una copia che abbia un campo <code>Context</code> che identifichi il contesto di appartenenza (es. un Trovaprodotti specifico).<br/>
In pratica ''estendiamo le tabelle'' esistenti, cioè ne creiamo una copia che abbia un campo <code>Context</code> che identifichi il contesto di appartenenza (es. un Trovaprodotti specifico).<br/>
Il '''contesto''' rappresenta l'unione delle due tabelle (<code>normale + nomale_ext</code>) come se fossero un'unica tabella integrata nelle logiche Core.
Il '''contesto''' rappresenta l'unione delle due tabelle (<code>normale + nomale_ext</code>) come se fossero un'unica tabella integrata nelle logiche Core.<br/>
Questa ''unione'' viene implementata tramite una '''scalar function''' che prende in input il ''contesto''.

Versione delle 17:17, 9 giu 2023

Il negozio dalla sua backoffice ClientAdmin avrà la possibilità di creare un prodotto a Catalogo valido solo per il suo Trovaprodotti oppure un prodotto Occasione che potrà essere visibile su DesignbestOutlet, Commerce e Trovaprodotti.
Il negozio potrà

  • aggiungere propri Manufacturer
  • aggiungere propri Ambienti
  • aggiungere proprie Tipologie nei nuovi ambienti o in ambienti già esistenti


Manufacturer Custom

Il negozio potrà inserire i propri Marchi specificando: Nome, Immagine/Logo e se sarà in evidenza nella pagine di elenco dei Marchi.


Category Custom

Il negozio potrà inserire tipologie proprie specificando: Nome tipo e Ambiente di appartenenza (che può essere a sua volta custom o esistente).


Strategia di Estensione Contestuale

Per evitare di creare delle logiche circostanziali, poco elastiche e di elevata manutenzione abbiamo deciso di adottare un paradigma simile all'estensione delle classi nella programmazione ad oggetti.

In pratica estendiamo le tabelle esistenti, cioè ne creiamo una copia che abbia un campo Context che identifichi il contesto di appartenenza (es. un Trovaprodotti specifico).
Il contesto rappresenta l'unione delle due tabelle (normale + nomale_ext) come se fossero un'unica tabella integrata nelle logiche Core.
Questa unione viene implementata tramite una scalar function che prende in input il contesto.