<?php


namespace App\Http\Historico;


// Modelos
use App\Log;


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


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


class LaboratorioHistorico extends Historico {    

    public function store($accion, $obj){

        $this->SetInformacionLog($accion, $obj);
        
        switch($this->accion){
            case "store":
                $no_laboratorio = $this->req->no_laboratorio;
                $nom_laboratorio = $this->req->nom_laboratorio;
                $this->tableLog->titulo = "Registro";
                $this->tableLog->descripcion = "número: $no_laboratorio, nombre: $nom_laboratorio";
                break;

            case "update":
                $no_laboratorio = LaboratorioController::listItem($this->req->id)->no_laboratorio;
                $nom_laboratorio = LaboratorioController::listItem($this->req->id)->nom_laboratorio;
                
                switch($this->req->campo){
                    case "no_laboratorio":
                        $new_no_laboratorio = $this->req->no_laboratorio;
                        $this->tableLog->titulo = "Modificación de número";
                        $this->tableLog->descripcion = "Para el laboratorio $no_laboratorio - $nom_laboratorio se actualiza a: $new_no_laboratorio";
                    break;
                    case "nom_laboratorio":
                        $new_nom_laboratorio = $this->req->nom_laboratorio;
                        $this->tableLog->titulo = "Modificación de nombre";
                        $this->tableLog->descripcion = "Para el laboratorio $no_laboratorio - $nom_laboratorio se actualiza a: $new_nom_laboratorio";
                    break;
                }
                break;

            case "destroy":
                $no_laboratorio = LaboratorioController::listItem($this->req->id)->no_laboratorio;
                $nom_laboratorio = LaboratorioController::listItem($this->req->id)->nom_laboratorio;
                $this->tableLog->titulo = "Eliminación";
                $this->tableLog->descripcion = "laboratorio: $no_laboratorio - $nom_laboratorio";
                break;

            case "status":
                $no_laboratorio = LaboratorioController::listItem($this->req->id)->no_laboratorio;
                $nom_laboratorio = LaboratorioController::listItem($this->req->id)->nom_laboratorio;
                $statusNow = LaboratorioController::listItem($this->req->id)->estado;
                if($statusNow == 1){
                    $this->tableLog->titulo = "Inactivación";
                    $this->tableLog->descripcion = "laboratorio: $no_laboratorio - $nom_laboratorio";
                } else {
                    $this->tableLog->titulo = "Reactivación";
                    $this->tableLog->descripcion = "laboratorio: $no_laboratorio - $nom_laboratorio";
                }

                break;
        }

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