diff --git a/README.md b/README.md index 9e62054..dccc3f5 100644 --- a/README.md +++ b/README.md @@ -153,6 +153,7 @@ class UploadUsage extends \Connect\UsageAutomation date_default_timezone_set('UTC'); //reporting must be always based on UTC $usages = []; array_push($usages, new Connect\Usage\FileUsageRecord([ + 'record_id' => 'unique record value', 'item_search_criteria' => 'item.mpn', //Possible values are item.mpn or item.local_id 'item_search_value' => 'SKUA', //Value defined as MPN on vendor portal 'quantity' => 1, //Quantity to be reported diff --git a/src/Usage/FileUsageRecord.php b/src/Usage/FileUsageRecord.php index b47f5c1..0cc00fe 100644 --- a/src/Usage/FileUsageRecord.php +++ b/src/Usage/FileUsageRecord.php @@ -14,6 +14,7 @@ */ class FileUsageRecord extends \Connect\Model { + public $record_id; public $item_search_criteria; public $item_search_value; public $quantity; diff --git a/src/UsageAutomation.php b/src/UsageAutomation.php index 9d2834b..2b5c7bd 100644 --- a/src/UsageAutomation.php +++ b/src/UsageAutomation.php @@ -210,9 +210,10 @@ public function createUsageFile(Usage\File $usageFile) } + /** * @return Spreadsheet - * @throws Usage\FileCreationException + * @throws \PhpOffice\PhpSpreadsheet\Exception */ private function createUsageSpreadSheet() { @@ -293,16 +294,14 @@ private function uploadSpreadSheet( /** * @param $fileusagerecords * @return Spreadsheet - * @throws Usage\FileCreationException * @throws \PhpOffice\PhpSpreadsheet\Exception */ - private function createAndPopulateSpreadSheet( - $fileusagerecords - ) { + private function createAndPopulateSpreadSheet( $fileusagerecords ) + { $spreadSheet = $this->createUsageSpreadSheet(); $spreadSheet->setActiveSheetIndexByName('usage_records'); for ($i = 0; $i < count($fileusagerecords); $i++) { - $spreadSheet->getActiveSheet()->setCellValue('A' . ($i + 2), $i + 1); + $spreadSheet->getActiveSheet()->setCellValue('A' . ($i + 2), $fileusagerecords[$i]->record_id); $spreadSheet->getActiveSheet()->setCellValue('B' . ($i + 2), $fileusagerecords[$i]->item_search_criteria); $spreadSheet->getActiveSheet()->setCellValue('C' . ($i + 2), $fileusagerecords[$i]->item_search_value); $spreadSheet->getActiveSheet()->setCellValue('D' . ($i + 2), $fileusagerecords[$i]->quantity); diff --git a/tests/Unit/UsageAutomationHelper.php b/tests/Unit/UsageAutomationHelper.php index edbbea0..f9091fc 100644 --- a/tests/Unit/UsageAutomationHelper.php +++ b/tests/Unit/UsageAutomationHelper.php @@ -109,6 +109,7 @@ public function processUsageForListing($listing) date_default_timezone_set('UTC'); $usages = []; array_push($usages, new FileUsageRecord([ + 'record_id' => '123', 'item_search_criteria' => 'item.mpn', 'item_search_value' => 'SKUA', 'quantity' => 1,