<?php

namespace App\Http\Historico;

// Controladores
use App\Http\Controllers\CorridaAreaController;
use App\Http\Controllers\LaboratorioController;
use App\Http\Controllers\AreaController;

// Historico
use App\Http\Historico\Historico;

class CorridaAreaHistorico extends Historico {

    public function store($accion, $obj){

        $this->SetInformacionLog($accion, $obj);
        
        switch($this->accion){
            case "store":
                $no_laboratorio = LaboratorioController::listItem($this->req->id_laboratorio)->no_laboratorio;
                $nom_laboratorio = LaboratorioController::listItem($this->req->id_laboratorio)->nom_laboratorio;
                $area = AreaController::listItem($this->req->id_area)->nom_area;
                $fecha_inicio = $this->req->fecha_inicio;
                $this->tableLog->titulo = "Registro";
                $this->tableLog->descripcion = "laboratorio: $no_laboratorio - $nom_laboratorio, área: $area, fecha de inicio: $fecha_inicio";
            break;
            
            case "update":
                $this->tableLog->titulo = "Actualización";
                
                $no_laboratorio = CorridaAreaController::listItem($this->req->id)->no_laboratorio;
                $nom_laboratorio = CorridaAreaController::listItem($this->req->id)->nom_laboratorio;
                $area = CorridaAreaController::listItem($this->req->id)->nom_area;
                $fecha_inicio = CorridaAreaController::listItem($this->req->id)->fecha_inicio;
                $nom_proyecto = "lab: $no_laboratorio - $nom_laboratorio, área: $area, fecha: $fecha_inicio";

                $new_no_laboratorio = LaboratorioController::listItem($this->req->id_laboratorio)->no_laboratorio;;
                $new_nom_laboratorio = LaboratorioController::listItem($this->req->id_laboratorio)->nom_laboratorio;;
                $new_area = AreaController::listItem($this->req->id_area)->nom_area;;
                $new_fecha_inicio = $this->req->fecha_inicio;;
                $new_nom_proyecto = "lab: $new_no_laboratorio - $new_nom_laboratorio, área: $new_area, fecha: $new_fecha_inicio";

                $this->tableLog->descripcion = "El proyecto $nom_proyecto se actualiza a: $new_nom_proyecto";
                break;

            case "destroy":
                $no_laboratorio = CorridaAreaController::listItem($this->req->id)->no_laboratorio;
                $nom_laboratorio = CorridaAreaController::listItem($this->req->id)->nom_laboratorio;
                $area = CorridaAreaController::listItem($this->req->id)->nom_area;
                $fecha_inicio = CorridaAreaController::listItem($this->req->id)->fecha_inicio;
                $nom_proyecto = "lab: $no_laboratorio - $nom_laboratorio, área: $area, fecha: $fecha_inicio";
                $this->tableLog->titulo = "Eliminación";
                $this->tableLog->descripcion = "proyecto: $nom_proyecto";
                break;

            case "status":
                $no_laboratorio = CorridaAreaController::listItem($this->req->id)->no_laboratorio;
                $nom_laboratorio = CorridaAreaController::listItem($this->req->id)->nom_laboratorio;
                $area = CorridaAreaController::listItem($this->req->id)->nom_area;
                $fecha_inicio = CorridaAreaController::listItem($this->req->id)->fecha_inicio;
                $nom_proyecto = "lab: $no_laboratorio - $nom_laboratorio, área: $area, fecha: $fecha_inicio";
                
                $statusNow = CorridaAreaController::listItem($this->req->id)->estado_corrida_area;
                if($statusNow == 1){
                    $this->tableLog->titulo = "Inactivación";
                    $this->tableLog->descripcion = "proyecto: $nom_proyecto";
                } else {
                    $this->tableLog->titulo = "Reactivación";
                    $this->tableLog->descripcion = "proyecto: $nom_proyecto";
                }
                break;
        }


        $this->tableLog->tabla = 'Proyecto EP09';
        $this->tableLog->save();
    }
}