80 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						|
 | 
						|
namespace App\Imports;
 | 
						|
 | 
						|
use App\Models\Dataset\DatasetTable37;
 | 
						|
use Maatwebsite\Excel\Concerns\ToModel;
 | 
						|
use Maatwebsite\Excel\Concerns\WithStartRow;
 | 
						|
 | 
						|
class DatasetTable37Import implements ToModel,WithStartRow
 | 
						|
{
 | 
						|
    /**
 | 
						|
    * @param array $row
 | 
						|
    *
 | 
						|
    * @return \Illuminate\Database\Eloquent\Model|null
 | 
						|
    */
 | 
						|
    protected $datasetId;
 | 
						|
protected $userId;
 | 
						|
 | 
						|
    public function __construct($datasetId,$userId)
 | 
						|
    {
 | 
						|
        $this->datasetId = $datasetId;
 | 
						|
        $this->userId = $userId;
 | 
						|
    }
 | 
						|
 | 
						|
public function startRow(): int
 | 
						|
    {
 | 
						|
        return 6;
 | 
						|
    }
 | 
						|
 | 
						|
public function model(array $row)
 | 
						|
    {
 | 
						|
 | 
						|
// cek kalau row kosong jangan insert
 | 
						|
        if (
 | 
						|
            $row[0] === null && 
 | 
						|
            $row[1] === null && 
 | 
						|
            $row[2] === null && 
 | 
						|
            $row[3] === null && 
 | 
						|
            $row[4] === null && 
 | 
						|
            $row[5] === null && 
 | 
						|
            $row[6] === null && 
 | 
						|
            $row[7] === null &&
 | 
						|
            $row[8] === null &&
 | 
						|
            $row[9] === null &&
 | 
						|
            $row[10] === null &&
 | 
						|
            $row[11] === null &&
 | 
						|
            $row[12] === null &&
 | 
						|
            $row[13] === null &&
 | 
						|
            $row[14] === null &&
 | 
						|
            $row[15] === null &&
 | 
						|
            $row[16] === null &&
 | 
						|
            $row[17] === null
 | 
						|
        ) {
 | 
						|
            return null; // baris kosong dilewati
 | 
						|
        }
 | 
						|
        return new DatasetTable37([
 | 
						|
            'dataset_id'                => $this->datasetId,
 | 
						|
            'created_by'                => $this->userId,
 | 
						|
            'lokasi'                    => $row[0],
 | 
						|
            'lat'                       => $row[1],
 | 
						|
            'long'                      => $row[2],
 | 
						|
            'lama_pengukuran'           => $row[3],
 | 
						|
            'so2'                       => $row[4],
 | 
						|
            'co'                        => $row[5],
 | 
						|
            'no2'                       => $row[6],
 | 
						|
            'o3'                        => $row[7],
 | 
						|
            'hc'                        => $row[8],
 | 
						|
            'pm10'                      => $row[9],
 | 
						|
            'pm25'                      => $row[10],
 | 
						|
            'tsp'                       => $row[11],
 | 
						|
            'pb'                        => $row[12],
 | 
						|
            'dustfall'                  => $row[13],
 | 
						|
            'total_fluorides'           => $row[14],
 | 
						|
            'fluor_index'               => $row[15],
 | 
						|
            'chlorine_dioxide'          => $row[16],
 | 
						|
            'sulphat_index'             => $row[17],
 | 
						|
        ]);
 | 
						|
    }
 | 
						|
}
 |