Add job for function upload record to csv
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
|
||||
use App\Http\Requests\FileRequest;
|
||||
use App\Http\Requests\StorefileRequest;
|
||||
use App\Http\Requests\UpdatefileRequest;
|
||||
use App\Jobs\ImportCSVFileJob;
|
||||
use App\Models\file;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
@@ -14,28 +15,14 @@ class FileController extends Controller
|
||||
{
|
||||
public function uploadFile(FileRequest $request): RedirectResponse
|
||||
{
|
||||
|
||||
//save file in storage/app/public/file_temp
|
||||
$filename = 'new_file.'.$request->file("filetoinsert")->getClientOriginalExtension();
|
||||
$request->file("filetoinsert")->storeAs('file_temp', $filename);
|
||||
|
||||
// Leggi il contenuto del file CSV
|
||||
$contenutoCSV = Storage::get('file_temp/new_file.csv');
|
||||
|
||||
// Analizza il contenuto CSV
|
||||
$righeCSV = str_getcsv($contenutoCSV, "\n");
|
||||
|
||||
// Converte le righe CSV in un array associativo
|
||||
$dati = [];
|
||||
foreach ($righeCSV as $riga) {
|
||||
$dati[] = str_getcsv($riga);
|
||||
}
|
||||
|
||||
// Converte l'array in formato JSON
|
||||
$json = json_encode($dati);
|
||||
|
||||
// Stampa il JSON
|
||||
echo $json;
|
||||
//get file path
|
||||
$filepath = storage_path('app/public/file_temp/new_file.csv');
|
||||
|
||||
dispatch(new ImportCSVFileJob($filepath));
|
||||
|
||||
return redirect('/words');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user