Anons79 Mini Shell

Directory : /home/aplikasiposinfo/www/demo-keuangan-sekolah.aplikasipos.info/app/Imports/
Upload File :
Current File : /home/aplikasiposinfo/www/demo-keuangan-sekolah.aplikasipos.info/app/Imports/TabungansImport.php

<?php

namespace App\Imports;

use App\Models\Siswa;
use App\Models\Tabungan;
use Carbon\Carbon;
use Maatwebsite\Excel\Concerns\ToModel;

class TabungansImport implements ToModel
{   
    public $errorMessage = [];
    public $totalData = 0;
    /**
    * @param array $row
    *
    * @return \Illuminate\Database\Eloquent\Model|null
    */
    public function model(array $row)
    {   
        if(strtolower(trim($row[0])) == "tanggal" || strtolower(trim($row[0])) == ""){
            return null;
        }
        $cekSiswa = Siswa::where('nis', $row[1])->where('nama_siswa', $row[2])->first();
        if(!$cekSiswa){
            $this->errorMessage[] = 'Data Siswa dengan NIS '.$row[1].' dan Nama '.$row[2].' tidak ditemukan';
            return null;
        }
        $tanggal = $row[0];
        if(is_numeric($row[0])){
            $tanggal = \PhpOffice\PhpSpreadsheet\Shared\Date::excelToDateTimeObject($row[0])->format('Y-m-d');
        }
        $tabungan = Tabungan::create([
            'user_id'=>auth()->user()->id,
            'nis'=> $row[1],
            'nama_siswa'=> $row[2],
            'jenis_kelamin'=>$cekSiswa->jenis_kelamin,
            'no_hp'=>$cekSiswa->no_hp,
            'proses_tabungan'=>strtolower($row[3]),
            'tanggal_tabungan'=>$tanggal,
            'jumlah_tabungan'=>$row[4],
            'keterangan_tabungan'=>str_replace('.', '', $row[5]),
        ]);
        $tabungan->siswas()->attach($cekSiswa->id);
        $this->totalData++;
        return $tabungan;
    }
}

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]