Add validation to importers to fix invalid/empty columns #222

This commit is contained in:
Nabeel Shahzad
2018-03-30 17:27:29 -05:00
parent bd30b1f900
commit 63544088cd
21 changed files with 124 additions and 68 deletions

View File

@@ -83,7 +83,7 @@ class ImportService extends Service
{
$reader = $this->openCsv($file_path);
$cols = $importer->getColumns();
$cols = array_keys($importer->getColumns());
$first_header = $cols[0];
$first = true;
@@ -111,6 +111,14 @@ class ImportService extends Service
return trim($val);
})->toArray();
# Try to validate
$validator = Validator::make($row, $importer->getColumns());
if($validator->fails()) {
$errors = 'Error in row '.$offset.','.implode(';', $validator->errors()->all());
$importer->errorLog($errors);
continue;
}
$importer->import($row, $offset);
}