Commit 2ac59f82 authored by Chivy Lim's avatar Chivy Lim
Browse files

[IMP] Ignore broken file resource on importing

refs KIME-4681
parent 94b2bd13
Loading
Loading
Loading
Loading
+7 −4
Changes for Classes/WE/SpreadsheetImport/Command/SpreadsheetImportCommandController.php: 7 added lines, 4 removed lines.
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@ namespace WE\SpreadsheetImport\Command;

use TYPO3\Flow\Annotations as Flow;
use TYPO3\Flow\Cli\CommandController;
use TYPO3\Flow\Exception;
use WE\SpreadsheetImport\Domain\Model\SpreadsheetImport;

/**
@@ -63,14 +64,16 @@ class SpreadsheetImportCommandController extends CommandController {

			// do importing and mark its status as "Completed/Failed"
			$this->spreadsheetImportService->init($spreadsheetImport);
			try {
				$this->spreadsheetImportService->import();

			// mark importing status as "Completed"
				$spreadsheetImport->setImportingStatus(SpreadsheetImport::IMPORTING_STATUS_COMPLETED);
			$this->spreadsheetImportRepository->update($spreadsheetImport);

				$this->outputFormatted('Spreadsheet has been imported. (totalInserted: %d, totalUpdated: %d, totalDeleted: %d, totalSkipped: %d)',
					array($spreadsheetImport->getTotalInserted(), $spreadsheetImport->getTotalUpdated(), $spreadsheetImport->getTotalDeleted(), $spreadsheetImport->getTotalSkipped()));
			} catch (Exception $e) {
				$spreadsheetImport->setImportingStatus(SpreadsheetImport::IMPORTING_STATUS_FAILED);
				$this->outputFormatted('Spreadsheet imported failed.');
			}
			$this->spreadsheetImportRepository->update($spreadsheetImport);
		} else {
			$this->outputFormatted('There is no spreadsheet importing in queue.');
		}
+1 −1
Changes for Classes/WE/SpreadsheetImport/Domain/Repository/SpreadsheetImportRepository.php: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ class SpreadsheetImportRepository extends Repository {
	public function findNextInQueue() {
		$query = $this->createQuery();
		$constraint = $query->logicalAnd(
			$query->lessThanOrEqual('importingStatus', SpreadsheetImport::IMPORTING_STATUS_IN_QUEUE),
			$query->equals('importingStatus', SpreadsheetImport::IMPORTING_STATUS_IN_QUEUE),
			$query->lessThanOrEqual('scheduleDate', new \DateTime())
		);
		return $query->matching($constraint)