Aucune image disponible

Bulk Price Updater

Add functionality to bulk update product prices

Developed by Novanta

Get This Module Free on GitHub
PS 1.7 – 9.x License: GPL-3.0 Status: Active Health: Excellent

Info updated 1 month ago

Sources
Stars: 6 Forks: 3 Last commit: Jul 10, 2024
Type
Module

Info checked: Mar 2, 2026

Bulk Price Updater

Modulo Prestashop per l'aggiornamento massivo dei prezzi dei prodotti. Aggiunge le funzionalità per:

  • Creazione di un file di esportazione prodotti selezionabili per Categoria e Fornitore
  • Importazione del file csv creato per l'aggiornamento massivo dei prezzi

-------------

Implementazione tecnica

L'intero modulo è stato sviluppato utilizzando quanto più possibile i concetti della "Modern Architecture" di Prestashop. Questo modulo vuole essere un esempio pratico dei nuovi concetti introdotti a partire dalla versione 1.7, come i Symfony Controller, Service Container, CQRS, Grid Components, ecc..

Esportazione

Il processo di esportazione permette all'utente di generare un file csv contenente la lista dei prodotti recuperati in base a determinate categorie e fornitori scelti dall'utente.

Il processo di esportazione viene gestito tramite il controller Symfony <code>ExportController</code> che si occupa di mostrare la form di esportazione e di generare il CSV. L' <code>ExportController</code> ha solamente l'azione <code>indexAction</code> che quando viene invocata in <code>GET</code> mostra la form, mentre quando invocata in <code>POST</code> genera il file CSV con la lista prodotti. In questo processo è stato utilizzato in pattern CQRS, in particolare viene utilizzata la query <code>GetProductsForBulkPriceUpdate</code> che, gestita dal <code>GetProductsForBulkPriceUpdateHandler</code>, restutisce la lista prodotti che verrà utilizzata per la creazione del CSV. L'handler verrà invocato tramite il Query Bus secondo i principi del CQRS:

$productQuery = new GetProductsForBulkPriceUpdate($filters); $products = $this->get('prestashop.core.query_bus')->handle($productQuery);

Importazione

Il processo di importazione permette all'utente di reimportare il file csv (generato precedentemente) con i prezzi modificati; il modulo si occuperà di aggiornare i prezzi massivamente.

Il processo di importazione utilizza parte dei componenti di Prestashop che vengono utilizzati per l'importazione dei file CSV dei Prodotti, Categorie, ecc.. Lato FrontEnd sono stati utilizzati i componenti <code>Uploader</code> e <code>Importer</code> che si occupano rispettivamente di caricare effettuare l'upload del file CSV e l'importazione massiva dei prezzi. La logica di importazione è gestita tramite il controller Symfony <code>ImportController</code> che utilizza alcuni servizi di importazione del core registrati all'interno del Container (<code>prestashop.core.import.importer</code>, <code>prestashop.core.import.file_uploader</code>) ed altri servizi specifici definiti dal modulo stesso contenenti la logica di aggiornamento dei prezzi.

Il codice Javascript viene gestito, compilato e ottimizzato tramite npm e webpack. I sorgenti js si trovano all'interno dell cartella _dev

  • Référence
    bulkpriceupdater

  • License
    GPL-3.0
  • PS Compatibility
    1.7.x
    8.x
    9.x
  • Status
    Actif

Commentaires (0)

Aucun avis n'a été publié pour le moment.
Chargement...