Edward Lopez
Edward Lopez
Comparte:

Mostrar total de registros realizados en un import con Laravel-Excel

Hola a todos, quisiera saber como puedo obtener el total de registros realizados en una importación con laravel-excel
Controlador
$colaboradores = (new CumpleColaboradorImport($request->cumple_agremiacion_id))->import($request->file('excel-colaboradores'));
Importable

class CumpleColaboradorImport implements ToModel, WithStartRow
{
    use Importable;
    
    public $count       = 0;
    public $agremiacion = null;
    public function __construct($agremiacion)
    {
        $this->agremiacion = $agremiacion;
    }
    /**
    * @param array $row
    *
    * @return \Illuminate\Database\Eloquent\Model|null
    */
    public function model(array $row)
    {
        if( $row[0] === '' && strlen($row[0]) <= 5 && $this->formatoDocumento($row[1]) >= 1000 ){
            return null;
        }
        
        $this->count++;
        $documento        = $this->formatoDocumento($row[1]);
        $fecha_nacimiento = $this->getDateFromExcel($row[2]);
        $fecha_nacimiento = \Carbon\Carbon::createFromFormat('Y-m-d', $fecha_nacimiento);
        return CumpleColaborador::updateOrCreate([
            "documento" => $documento,
        ],[
            "agremiacion_id"     => $this->agremiacion,
            "nombre"             => \trim($row[0]),
            "fecha_nacimiento"   => $fecha_nacimiento->format('Y-m-d'),
            "mes_cumple"         => $fecha_nacimiento->month,
            "dia_cumple"         => $fecha_nacimiento->day,
            "correo_personal"    => \trim($row[3]),
            "correo_corporativo" => \trim($row[4]),
        ]);
    }
    /**
    * @return int
    */
    public function startRow() : int {
        return 2;
    }
}