<?php

namespace App\Model;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

class TramiteResolucion extends Model
{
    use SoftDeletes;
    protected $table = 'tramite_resolucion';

    protected $dates = ['created_at','deleted_at','updated_at'];

    protected $fillable = [
        'plazo_presentacion',
        'plazo_resolucion',
        'id_autoridad',
        'id_tramite_procedimiento',
        'id_tramite_resolucion_tipo',
    ];

    public function tramite_resolucion()
    {
        return TramiteResolucion::leftJoin('dependencia as autoridad', 'autoridad.id', '=', 'tramite_resolucion.id_autoridad')
            ->leftJoin('tramite_procedimiento', 'tramite_procedimiento.id', '=', 'tramite_resolucion.id_tramite_procedimiento')
            ->select(
                'tramite_resolucion.id as id',
                'tramite_resolucion.plazo_presentacion as plazo_presentacion',
                'tramite_resolucion.plazo_resolucion as plazo_resolucion',
                'tramite_resolucion.id_autoridad as id_autoridad',
                'tramite_resolucion.id_tramite_procedimiento as id_tramite_procedimiento',
                'tramite_resolucion.id_tramite_resolucion_tipo as id_tramite_resolucion_tipo',
                'autoridad.id as autoridad_id',
                'autoridad.nombre as autoridad_nombre',
                'tramite_procedimiento.id as tramite_procedimiento_id',
                'tramite_procedimiento.codigo as tramite_procedimiento_codigo',
                'tramite_procedimiento.cuenta_contable as tramite_procedimiento_cuenta_contable',
                'tramite_procedimiento.nombre as tramite_procedimiento_nombre',
                'tramite_procedimiento.base_legal as tramite_procedimiento_base_legal',
                'tramite_procedimiento.plazo_resolucion as tramite_procedimiento_plazo_resolucion',
                'tramite_procedimiento.id_area_inicio as tramite_procedimiento_id_area_inicio',
                'tramite_procedimiento.id_autoridad_competente as tramite_procedimiento_id_autoridad_competente',
                'tramite_procedimiento.id_tramite_calificacion as tramite_procedimiento_id_tramite_calificacion',
                'tramite_procedimiento.id_tramite_categoria as tramite_procedimiento_id_tramite_categoria',
                'tramite_procedimiento.id_tramite_estado as tramite_procedimiento_id_tramite_estado',
                'tramite_procedimiento.id_tramite_tipo as tramite_procedimiento_id_tramite_tipo');
    }
}
