public function importData(Vendor $vendor) { $this->currentVendor = $vendor; $baseActiveSheet = $vendor->getActiveSheet(); while (!$vendor->endReached()) { $vendorItemData = $vendor->getNextLine(); if (isset($vendorItemData['item']) && $vendorItemData['item'] != "") { $itemIds = $this->baseData->getItemIds($vendorItemData['item'], $vendor->getBaseDataColumn()); if (!empty($itemIds)) { foreach ($itemIds as $itemId) { $itemData = $this->findItem($itemId); if (!isset($itemData['row'])) { $itemData['row'] = $this->counter; $this->counter++; } else { $vendorItemData['price'] = $vendorItemData['price'] > $itemData['price'] ? $vendorItemData['price'] : $itemData['price']; $vendorItemData['qty'] += $itemData['qty']; } $this->excel->setActiveSheetIndex($baseActiveSheet)->setCellValue('A' . $itemData['row'], $itemId); $vendorConfig = $vendor->getConfig(); $this->excel->setActiveSheetIndex($baseActiveSheet)->setCellValue($vendorConfig['master-file-item-column'] . $itemData['row'], $vendorItemData['item']); $this->excel->setActiveSheetIndex($baseActiveSheet)->setCellValue($vendorConfig['master-file-price-column'] . $itemData['row'], $vendorItemData['price']); $this->excel->setActiveSheetIndex($baseActiveSheet)->setCellValue($vendorConfig['master-file-qty-column'] . $itemData['row'], $vendorItemData['qty']); } } } } }
public function importData(Vendor $vendor) { $vendorConfig = $vendor->getConfig(); while (!$vendor->endReached()) { $vendorItemData = $vendor->getNextLine(); if (isset($vendorItemData['item']) && $vendorItemData['item'] != "") { $itemIds = $this->baseData->getItemIds($vendorItemData['item'], $vendor->getBaseDataColumn()); if (!empty($itemIds)) { foreach ($itemIds as $itemId) { $query = "INSERT INTO " . $this->config['master-table'] . " (" . "item_id," . $vendorConfig['master-file-item-column-name'] . "," . $vendorConfig['master-file-price-column-name'] . "," . $vendorConfig['master-file-qty-column-name'] . ") VALUES (" . "'" . $itemId . "'," . "'" . $vendorItemData['item'] . "'," . $vendorItemData['price'] . "," . $vendorItemData['qty'] . ") ON DUPLICATE KEY UPDATE " . $vendorConfig['master-file-item-column-name'] . "='" . $vendorItemData['item'] . "'," . $vendorConfig['master-file-price-column-name'] . "= IF (" . $vendorConfig['master-file-price-column-name'] . "<" . $vendorItemData['price'] . "," . $vendorItemData['price'] . "," . $vendorConfig['master-file-price-column-name'] . ")," . $vendorConfig['master-file-qty-column-name'] . "=" . $vendorConfig['master-file-qty-column-name'] . "+" . $vendorItemData['qty']; db_query($query); } } } } }