<?php
namespace App\Imports;
use App\Models\Kabupaten;
use Maatwebsite\Excel\Concerns\ToModel;
use Illuminate\Support\Facades\Auth;
use App\Models\UserLog;
// use Session;
use Exception;
use Illuminate\Support\Facades\Session;
class DataKabupatenImport implements ToModel
{
public function transformDate($value, $format = 'Y-m-d')
{
try {
return \Carbon\Carbon::instance(\PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($value))->format($format);
} catch (\ErrorException $e) {
return date($format,strtotime($value));
}
}
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
public function model(array $row)
{
$user = Auth::user();
if(isset($row[0]) && strlen($row[0]) > 0){
$kabupaten = Kabupaten::where('nama_kabupaten',$row[0])->first();
if($kabupaten){
$s = Session::get('alert_import',[]);
$s[] = 'data warga dari excel dengan nama Kabupaten '.$row[0].' tidak bisa di input karena data dengan nama Kabupaten tersebut sudah ada / pernah diinput';
Session::put('alert_import', $s);
} else {
// $kelurahan_id = $cek->id;
$data = [
'nama_kabupaten'=>$row[0],
];
if($row[1]) {
$data['id'] = $row[1];
}
$msg = 'Berhasil menambah data kabupaten dari excel';
UserLog::create(['user_id'=>$user->id,'keterangan'=>$msg]);
return new Kabupaten($data);
}
}
}
}
Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]