<?php
/**
 * Created by PhpStorm.
 * User: sunil
 * Date: 12/11/18
 * Time: 2:02 PM
 */

namespace App\Imports;

use App\BulkPayments;
use App\Console\Commands\TallyBridge;
use App\Http\Controllers\Admin\ConsumerApplicationController;
use App\Hypothecation;
use App\LoanManagement;
use App\Mandate;
use App\MandateLogs;
use App\PaymentTransaction;
use App\ProFormaInvoice;
use App\Settlement;
use App\Slack;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Collection;
use Maatwebsite\Excel\Concerns\Importable;
use Maatwebsite\Excel\Concerns\ToCollection;

class HypothecationBulkUpload implements ToCollection
{

    use Importable;
    private $request;

    public function __construct(Request $request){
        $this->request = $request;
    }

    /**
     * @param Collection $collection
     */
    public function collection(Collection $collection)
    {
        $data = $collection->toArray();

        unset($data[0]);
        $payload = [];
        $date = Carbon::now()->toDateTimeString();
        foreach ($data as $item){
            $payload[] = [
                'application_id' => $item[0],
                'lender' => $item[1],
                'start_date' => $item[2] ?? null,
                'end_date' => $item[3] ?? null,
                'user_id' => 107,
                'file' => $this->request->get('file_path'),
                'created_at' => $date
            ];
        }

        if($payload) {
            Hypothecation::insert($payload);
        }
    }
}