Designbest Commerce: differenze tra le versioni
| Riga 139: | Riga 139: | ||
* Negozio ID <-> Nop Vendor ID | * Negozio ID <-> Nop Vendor ID | ||
* Occasione manufacturer ID <-> Nop Manufacturer ID | * Occasione manufacturer ID <-> Nop Manufacturer ID | ||
* Occasione Designer ID <-> Nop Designer (come campo aggiuntivo) | |||
Versione delle 14:40, 11 ott 2019
Nop Commerce
Il framework si adatta alle nostre esigenze.
Ipotesi di integrazione
Su Designbest navigazione tra i prodotti (occasioni) fino all' aggiunta al carrello .
Implementazione su Designbest di un quasi carrello in alto a destra che mostra il numero di prodotti.
Al click si apre la pagina carrello di NopCommerce.
A questo punto si continua col checkout da NopCommerce.
Problemi correlati
- Sincronizzazione di utenti tra NopCommerce e Designbest
- Profili presenti su Designbest e non su Nop
- Viceversa
- Utenti che creano il profilo su Nop
- Cambio password da Designbest o da NopCommerce
- Assenza province italiane durante checkout, aggiornabile tramite inserimento province in tabella
StateProvince
Per affrontare i problemi di sincronizzazione di utenti si potrebbe procedere eliminando totalmente la possibilità di loggarsi su Nop. Designbest si occuperebbe di creare l'utente su Nop e popolare i suoi ordini in modo che la pagina carrello abbia tutto il necessario per procedere.
Note su Nop
- Le password sono cifrate nella tabella CustomerPassword mantenendo uno storico di tutte le password dell'utente
Problemi del framework
- [SOLVED] Le e-mail, dopo le configurazioni, non partono perché a causa di un bug la password nel Database arriva sbagliata. SOLUZIONE Accedendo al database manualmente nella tabella
EmailAccountinserire da Sql Management Studio la password nel campo giusto - [SOLVED] I task schedulati funzionano solo se avviati manualmente, purtroppo l'applicativo sembra non considerarli. Le email ai clienti vengono messe in una coda messaggi dovrebbero essere controllate ogni 60 secondi, ma non partono mai finché non si avvia manualmente il task. SOLUZIONE il problema era legato alla presenza di Basic Authentication di IIS. A quanto pare i task avviano un webservice. Disattivandola tutto torna a funzionare.
- Le email non sono dirette ai singoli vendor configurati ma arrivano tutte allo Store Principale (root).
Interfaccia di Sincronizzazione
Si rende necessaria la creazione di una interfaccia comune alle applicazioni che sia in grado di
- Inserire/modificare/cancellare prodotti in modo sincrono da Designbest e da NopCommerce
- Inserire/modificare/cancellare categorie di prodotti
- Inserire/modificare/cancellare vendor
Questa interfaccia potrà essere utilizzata negli scambi di informazione tra le diverse applicazioni quali Designbest, NopCommerce e EasyStoreWeb.
Potrà essere implementata come una libreria interna condivisa dalle applicazioni (con accesso al Database), oppure come RESTService.
Designbest - Struttura dati attualmente utilizzata
Le informazioni salvate sul nostro database, relative alle occasioni, sono le seguenti
| DATO | TIPO | DESCRIZIONE |
|---|---|---|
| ID* | INT | |
| ShopID | INT | Negozi di appartenenza |
| ModelloID | INT | Tipologia del prodotto, categoria per Nop |
| ListPrice | DECIMAL | Prezzo di listino |
| DiscountPrice | DECIMAL | Prezzo scontato |
| Abilitata | BIT | |
| OrderBy | INT | Ordinamento nel listing |
| InsertDate | DATETIME | Data di creazione |
| ManufacturerID | INT | Produttore del prodotto |
| DesignerID | INT | Designer del prodotto, potrebbe essere un campo aggiuntivo in Nop |
| Pezzi | INT | Pezzi rimasti |
| IvaInclusa | BIT |
Queste le informazioni da culturizzare
| DATO | TIPO | DESCRIZIONE |
|---|---|---|
| ID* | INT | |
| Nome | NVARCHAR(600) | |
| Descrizione | NVARCHAR(4000) | |
| Materiali | NVARCHAR(200) | Campo testuale, bisogna capire se è necessario strutturarlo diversamente per poter dialogare con le tabelle di Nop |
| Misure | NVARCHAR(200) | Campo testuale, bisogna capire se è necessario strutturarlo diversamente per poter dialogare con le tabelle di Nop |
| TrasportoMontaggio | NVARCHAR(300) | Campo testuale, bisogna capire se è necessario strutturarlo diversamente per poter dialogare con le tabelle di Nop |
Mapping ID Designbest <-> Nop
Il progetto dovrà avere un mapping degli ID di Designbest corrispondenti a quelli di Nop.
Qui sotto l'elenco
- Occasioni ID <-> Nop ID prodotto
- Occasione modello ID <-> Nop ID Categoria
- Negozio ID <-> Nop Vendor ID
- Occasione manufacturer ID <-> Nop Manufacturer ID
- Occasione Designer ID <-> Nop Designer (come campo aggiuntivo)