Le but du catalogue de tablesinventory_stock

10

Je vois que dans les versions par défaut de Magento 1.0 à 1.8 (ce), il y a un tableau appelé cataloginventory_stockqui contient un seul enregistrement.

stock_id    stock_name
1           Default

En relation avec cela, dans le Mage_CatalogInventory_Model_Stock_Itemmodèle il y a cette méthode

public function getStockId()
{
    return 1;
}

avec un commentaire au-dessus @todo multi stock.

Je suppose que quelqu'un voulait implémenter la fonctionnalité multi-actions et a décidé de ne pas le faire (comme beaucoup d'autres "fonctionnalités") mais je ne suis pas sûr.

Donc ma question est ... Y a-t-il un autre but à ce tableau, affecte-t-il d'autres sections du code ou est-il juste comme point de départ pour une nouvelle fonctionnalité?

Marius
la source
Magento 2 est sorti. Cette table est toujours là et inutile.
DucTM

Réponses:

7

En examinant les index de cette table, elle semble fonctionner complètement comme un ajout autonome à la base de données, pour le moment .

Si vous regardez la assignProduct()méthode autour de la ligne 263, app/code/core/Mage/CatalogInventory/Model/Stock/Item.phpvous remarquerez qu'elle fait référence à la méthode elle-même:

 Mage::getSingleton('cataloginventory/stock_status')
        ->assignProduct($product, $this->getStockId(), $this->getStockStatus());

Je suppose que oui, comme vous l'avez mentionné, la future plateforme pourra gérer un système d'inventaire de nature multi-stock.

Edit: pour développer ma réponse, Magento référence la getStockId()méthode dans un total de 5 fichiers, à savoir:

  • app\code\core\Mage\CatalogInventory\Model\Observer.php sur la ligne 204,
  • app\code\core\Mage\CatalogInventory\Model\Indexer\Stock.php à la ligne 37,
  • app\code\core\Mage\CatalogInventory\Model\Resource\Stock\Item.php sur la ligne 57,
  • app\code\core\Mage\CatalogInventory\Model\Stock\Item.php aux lignes 167 et 275, et enfin
  • app\code\core\Mage\CatalogInventory\Model\Stock\Status.php aux lignes 36, 191, 192, 265, 266 et 376

Veuillez noter que c'est à partir de Magento 1.7.0.2

élan
la source
Merci à votre avis et à la fouille de code. Vous venez de confirmer mes soupçons.
Marius