<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;
use Carbon\Carbon;
use Auth;
use Crypt;
use DateTime;
use DateInterval;
use App;

use DatePeriod;
class HomeController extends Controller
{
    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('auth');
    }
    
    /**
     * Show the application dashboard.
     *
     * @return \Illuminate\Contracts\Support\Renderable
     */

     public function desactivardiafestivo(){

        $idfestivo = $_GET["idfestivo"];
  

    //     App\config_usuarios::where('id', $sla_id)
    //    ->update([
    //        'sla' => $sla,
    //        'sla_santiago' => $slas_v
    //     ]);
    $update =  App\dias_festivos::findOrfail($idfestivo);

       
       
         $update->estado = 1;
         $update->timestamps = false;
         $update->save();

        return  "ok";
     }

     public function guardarfestivo(){

        $fecha_festiva = $_GET["fecha_festiva"];
  

    //     App\config_usuarios::where('id', $sla_id)
    //    ->update([
    //        'sla' => $sla,
    //        'sla_santiago' => $slas_v
    //     ]);
         $dias_festivos = new App\dias_festivos;

       
       
         $dias_festivos->fecha_festiva = $fecha_festiva;
         $dias_festivos->timestamps = false;
         $dias_festivos->save();

        return  "ok";
     }

     
//KYOCERA
public function filtro_porrevisar_kyocera(request $request)
{
    
    $cliente = $request->cliente;
    $tipo = $request->tipo_a;
    $tecnico = $request->tecnico;
    $proveedor_por_rev = $request->proveedor_por_rev;

    
    //$databases = $this->nombre_database();
            $databases = App\bd_proveedores::selectDB();


    $where  = 'asignacion_instalacions.estado_asignacion = ' . '"' . 'revisar' . '" and instalacions.sEstado_instalacion = ' . '"' . 'revisar' . '" ';
    $where_r  = 'asignacion_retiros.estado_asignacion = ' . '"' . 'revisar' . '"';

    if ($cliente != "" || $cliente != null) {
        $where = $where . ' and clientes.id = ' . $cliente;
        $where_r = $where_r . ' and clientes.id = ' . $cliente;
    }
    if ($tipo != "" || $tipo != null) {
        $where = $where . ' and asignacion_instalacions.tipo = ' . '"' . $tipo . '"';
        $where_r = $where_r . ' and asignacion_retiros.tipo = ' . '"' . $tipo . '"';
    }
    if ($tecnico != "" || $tecnico != null) {
        $where = $where . ' and  asignacion_instalacions.trabajadors_id = ' . $tecnico;
        $where_r = $where_r . ' and  asignacion_retiros.trabajadors_idtecnico = ' . $tecnico;
    }

    if ($proveedor_por_rev != "" || $proveedor_por_rev != null) {
        $where = $where . ' and  instalacions.proveedor_instalacion = ' . '"' . $proveedor_por_rev . '"';
        $where_r = $where_r . ' and  retiros.proveedor_retiro = ' . '"' . $proveedor_por_rev . '"';
    }

    $where = $where . ' and  checklist_instalacions.Cscliente = ' . '"' . "kyocera" . '"';
        $where_r = $where_r . ' and  checklist_retiros.Cscliente = ' . '"' . "kyocera" . '"';

    foreach ($databases as $los_datos) {
        $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
            'SELECT  
            checklist_retiros.csSerie as serie,
            checklist_retiros.fecha_inicio as fecha,
            checklist_retiros.csComuna as comuna,
            checklist_retiros.csRegion as region,
            checklist_retiros.Cscliente as cliente,
            asignacion_retiros.tipo,
            asignacion_retiros.id,
            retiros.proveedor_retiro as proveedor,
            personas.nombre_uno,
            personas.apellido_uno,
            asignacion_retiros.fecha_asignado,
            null as tipo_instalacion,
            null as razonSocial
        FROM  
            asignacion_retiros
        INNER JOIN  
            checklist_retiros on checklist_retiros.asignacion_retiros_id = asignacion_retiros.id 
        INNER JOIN  
            retiros on retiros.id = asignacion_retiros.retiros_id 
        INNER JOIN 
            trabajadors on trabajadors.id = asignacion_retiros.trabajadors_idtecnico
        INNER JOIN 
            personas on personas.id = trabajadors.id_persona
        LEFT JOIN 
            tracker on tracker.id = retiros.tracker_id
        LEFT JOIN 
            proyectos on proyectos.id = tracker.proyecto_id
        LEFT JOIN 
            clientes on clientes.id = proyectos.clientes_id
        WHERE ' . $where_r  .
                ' union ' .
                'SELECT
            checklist_instalacions.CsSerie as serie,
            checklist_instalacions.fecha_inicio as fecha,
            checklist_instalacions.Cscomuna as comuna,
            checklist_instalacions.Csregion as region,
            checklist_instalacions.Cscliente as cliente,
            asignacion_instalacions.tipo,
            asignacion_instalacions.id,
            instalacions.proveedor_instalacion as proveedor,
            personas.nombre_uno,
            personas.apellido_uno,
            asignacion_instalacions.fecha_asignado,
            instalacions.tipo as tipo_instalacion,
            instalacions.razonSocial 
        FROM
            asignacion_instalacions
        INNER JOIN
            checklist_instalacions on checklist_instalacions.asignacion_instalacion_retiro_id = asignacion_instalacions.id 
        INNER JOIN
            instalacions on instalacions.id = asignacion_instalacions.lista_instalacion_id
        INNER JOIN   
            trabajadors on trabajadors.id = asignacion_instalacions.trabajadors_id
        INNER JOIN
            personas on personas.id = trabajadors.id_persona 
        LEFT JOIN
            tracker on tracker.id = instalacions.tracker_idtracker
        LEFT JOIN
            proyectos on proyectos.id = tracker.proyecto_id
        LEFT JOIN
            clientes on clientes.id = proyectos.clientes_id
        WHERE ' . $where
        );
    }
    $table = "";
    for ($i = 0; $i < count($datos_asignacion); $i++) {
        foreach ($datos_asignacion[$i] as $d1) {
            $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $d1->tipo_instalacion . "</td>";

            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->razonSocial . "</td>";

            $table .= "<td>" . $d1->serie . "</td>";
                            $table .= "<td>" . $d1->proveedor . "</td>";

            if ($d1->tipo == "retiro") {
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            visibility
                                        </span>
                                    </button>
                                </form>
                            </div>
                        </div>
                    </div
                </td>';
            } else {
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            visibility
                                        </span>
                                    </button>
                                </form>
                            </div>
                        </div>
                    </div
                </td>';
            }
            $table .= "</tr>";
        }
    }
    return $table;
}
public function revisar_porrevisar_coordinador_kyocera()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        //ESTADO ENCURSO 
        foreach ($databases as $los_datos) {
            $retiros_encurso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'checklist_retiros.fecha_inicio as fecha',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    'retiros.proveedor_retiro as proveedor',
                    'retiros.id as id_historial',
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'asignacion_retiros.fecha_asignado',
                    DB::raw('null as tipo_instalacion'),
                    DB::raw('null as razonSocial')
                )
                ->where('checklist_retiros.Cscliente', '=', 'kyocera')

                ->where('asignacion_retiros.estado_asignacion', '=', 'revisar');
            // ->where('checklist_retiros.estado_inicio', '=', 'revisar');
            $instalacion_encurso[]  = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.fecha_inicio as fecha',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    'instalacions.proveedor_instalacion as proveedor',
                    'instalacions.id as id_historial',
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'asignacion_instalacions.fecha_asignado',
                    'instalacions.tipo as tipo_instalacion',
                     'instalacions.razonSocial'
                )
                ->where('checklist_instalacions.Cscliente', '=', 'kyocera')

                ->where('asignacion_instalacions.estado_asignacion', '=', 'revisar')
                ->where('instalacions.sEstado_instalacion', '=', 'revisar')
                ->union($retiros_encurso)
                ->get();
        }
        $table = "";
        $num_r = "";
        $num_i = "";
        for ($i = 0; $i < count($instalacion_encurso); $i++) {
            foreach ($instalacion_encurso[$i]  as $d1) {
                // if ($d1->proveedor == "comtecglobal") {
                //     $num_i = 1;
                // }
                // if ($d1->proveedor == "kyocera") {
                //     $num_r = 1;
                //     $num_i = 2;
                // }
                // if ($d1->proveedor == "upgrade") {
                //     $num_i = 3;
                // }
                $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;
                $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->tipo_instalacion . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->razonSocial . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' ."'". $num_r . "'".');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' ."'". $num_i . "'".');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
public function filtro_porasignar_kyocera(request $request)
{
    //$databases = $this->nombre_database();
            $databases = App\bd_proveedores::selectDB();

    $cliente = $request->cliente;
    $tipo = $request->tipo_a;
    $proveedor_ap_asig = $request->proveedor_ap_asig;

    $where  = 'instalacions.sEstado_instalacion like ' . '"%' . 'Por asignar' . '%"';
    $where_r  = 'retiros.estado_retiro_Cord = ' . '"' . 'Por asignar' . '"';

    if ($cliente != "" || $cliente != null) {
        $where = $where . ' and instalacions.sCliente = ' . '"' . $cliente . '"';
        $where_r = $where_r . ' and retiros.sCliente = ' . '"' . $cliente . '"';
    }
    if ($tipo != "" || $tipo != null) {
        $where = $where . ' and tracker.tipo_tracker = ' . '"' . $tipo . '"';
        $where_r = $where_r . ' and tracker.tipo_tracker = ' . '"' . $tipo . '"';
    }
    if ($proveedor_ap_asig != "" || $proveedor_ap_asig != null) {
        $where = $where . ' and instalacions.proveedor_instalacion = ' . '"' . $proveedor_ap_asig . '"';
        $where_r = $where_r . ' and retiros.proveedor_retiro = ' . '"' . $proveedor_ap_asig . '"';
    }
    foreach ($databases as $los_datos) {
        $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
            'SELECT  
            retiros.proveedor_retiro as proveedor,
            tracker.tipo_tracker as tipo,
            retiros.sCliente as cliente,
            retiros.sRegion,
            retiros.sComuna,
            retiros.sSerie,
            retiros.id,
            null as tipo_instalacion,
            null as razonSocial

            FROM  
                retiros
            INNER JOIN  
                tracker on tracker.id = retiros.tracker_id 
            WHERE ' . $where_r  .
                ' union ' .
                'SELECT
            instalacions.proveedor_instalacion as proveedor,
            tracker.tipo_tracker as tipo,
            instalacions.sCliente as cliente,
            instalacions.sRegion,
            instalacions.sComuna,
            instalacions.sSerie,
            instalacions.id,
            instalacions.tipo as tipo_instalacion,
            instalacions.razonSocial

            FROM
                instalacions
            INNER JOIN
                tracker on tracker.id = instalacions.tracker_idtracker 
            WHERE ' . $where
        );
    }
    $table = "";
    for ($i = 0; $i < count($datos_asignacion); $i++) {
        foreach ($datos_asignacion[$i] as $d1) {
            $table .= "<tr>";
            $table .= "<td>" . $d1->proveedor . "</td>";
            $table .= "<td>" . $d1->tipo . "</td>";
            $table .= "<td>" . $d1->tipo_instalacion . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->razonSocial . "</td>";
            $table .= "<td>" . $d1->sRegion . "</td>";
            $table .= "<td>" . $d1->sComuna . "</td>";
            $table .= "<td>" . $d1->sSerie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td> 
                    <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
            } else {
                $table .=
                    '<td> 
                <form action="' . route('go.asignar_check_home') . '" method="GET">
                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                    <input type="hidden" value="' . $d1->id . '" name="id">
                    <button type="submit" class="btn">Asignar</button>
                </form> 
            </td>';
            }
            $table .= "</tr>";
        }
    }
    return $table;
}
public function revisar_porasignar_kyocera()
{
    $retiros_comtecglobal_pendientes = DB::connection('comtecglobal')->table('retiros')
        ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
        ->select(
            'retiros.proveedor_retiro as proveedor',
            'tracker.tipo_tracker as tipo',
            'retiros.sCliente as cliente',
            'retiros.sRegion',
            'retiros.sComuna',
            'retiros.sSerie',
            'retiros.id',
            DB::raw('null as tipo_instalacion'),
            DB::raw('null as razonSocial'),


        )
        ->where('retiros.sCliente', '=', 'kyocera')
        ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
    $instalacion_comtecglobal_pendientes = DB::connection('comtecglobal')->table('instalacions')
        ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
        ->select(
            'instalacions.proveedor_instalacion as proveedor',
            'tracker.tipo_tracker as tipo',
            'instalacions.sCliente as cliente',
            'instalacions.sRegion',
            'instalacions.sComuna',
            'instalacions.sSerie',
            'instalacions.id',
            'instalacions.tipo as tipo_instalacion',
            'instalacions.razonSocial'
        )
        ->where('instalacions.sCliente', '=', 'kyocera')

        ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
        ->union($retiros_comtecglobal_pendientes)
        ->get();
    $retiros_kyocera_pendientes = DB::connection('kyocera')->table('retiros')
        ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
        ->select(
            'retiros.proveedor_retiro as proveedor',
            'tracker.tipo_tracker as tipo',
            'retiros.sCliente as cliente',
            'retiros.sRegion',
            'retiros.sComuna',
            'retiros.sSerie',
            'retiros.id',
            DB::raw('null as tipo_instalacion'),
            DB::raw('null as razonSocial')
        )
        ->where('retiros.sCliente', '=', 'kyocera')

        ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
    $instalacion_kyocera_pendientes = DB::connection('kyocera')->table('instalacions')
        ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
        ->select(
            'instalacions.proveedor_instalacion as proveedor',
            'tracker.tipo_tracker as tipo',
            'instalacions.sCliente as cliente',
            'instalacions.sRegion',
            'instalacions.sComuna',
            'instalacions.sSerie',
            'instalacions.id',
            'instalacions.tipo as tipo_instalacion',
            'instalacions.razonSocial'
            
        )
        ->where('instalacions.sCliente', '=', 'kyocera')

        ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
        ->union($retiros_kyocera_pendientes)
        ->get();

    $retiros_upgrade_pendientes = DB::connection('upgrade')->table('retiros')
        ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
        ->select(
            'retiros.proveedor_retiro as proveedor',
            'tracker.tipo_tracker as tipo',
            'retiros.sCliente as cliente',
            'retiros.sRegion',
            'retiros.sComuna',
            'retiros.sSerie',
            'retiros.id',
            DB::raw('null as tipo_instalacion'),
            DB::raw('null as razonSocial'),
        )
        ->where('retiros.sCliente', '=', 'kyocera')

        ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
    $instalacion_upgrade_pendientes = DB::connection('upgrade')->table('instalacions')
        ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
        ->select(
            'instalacions.proveedor_instalacion as proveedor',
            'tracker.tipo_tracker as tipo',
            'instalacions.sCliente as cliente',
            'instalacions.sRegion',
            'instalacions.sComuna',
            'instalacions.sSerie',
            'instalacions.id',
            'instalacions.tipo as tipo_instalacion',
            'instalacions.razonSocial'
        )
        ->where('instalacions.sCliente', '=', 'kyocera')

        ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
        ->union($retiros_upgrade_pendientes)
        ->get();

    $table = "";
    foreach ($instalacion_comtecglobal_pendientes as $d1) {
        $table .= "<tr>";
        $table .= "<td>"  . $d1->proveedor . "</td>";
        $table .= "<td>"  . $d1->tipo . "</td>";
        $table .= "<td>"  . $d1->cliente . "</td>";
        $table .= "<td>"  . $d1->sRegion . "</td>";
        $table .= "<td>"  . $d1->sComuna . "</td>";
        $table .= "<td>"  . $d1->sSerie . "</td>";
        if ($d1->tipo == "retiro") {
            $table .=
                '<td> 
                    <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
        } else {
            $table .=
                '<td> 
                <form action="' . route('go.asignar_check_home') . '" method="GET">
                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                    <input type="hidden" value="' . $d1->id . '" name="id">
                    <button type="submit" class="btn">Asignar</button>
                </form> 
            </td>';
        }
        $table .= "</tr>";
    }
    foreach ($instalacion_kyocera_pendientes as $d1) {
        $table .= "<tr>";
        $table .= "<td>" . $d1->proveedor . "</td>";
        $table .= "<td>"  . $d1->tipo . "</td>";
        $table .= "<td>"  . $d1->tipo_instalacion . "</td>";
        $table .= "<td>"  . $d1->cliente . "</td>";
        $table .= "<td>"  . $d1->razonSocial . "</td>";
        $table .= "<td>"  . $d1->sRegion . "</td>";
        $table .= "<td>"  . $d1->sComuna . "</td>";
        $table .= "<td>"  . $d1->sSerie . "</td>";
        if ($d1->tipo == "retiro") {
            $table .=
                '<td> 
                    <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
        } else {
            $table .=
                '<td> 
                <form action="' . route('go.asignar_check_home') . '" method="GET">
                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                    <input type="hidden" value="' . $d1->id . '" name="id">
                    <button type="submit" class="btn">Asignar</button>
                </form> 
            </td>';
        }
        $table .= "</tr>";
    }
    foreach ($instalacion_upgrade_pendientes as $d1) {
        $table .= "<tr>";
        $table .= "<td>" . $d1->proveedor . "</td>";
        $table .= "<td>"  . $d1->tipo . "</td>";
        $table .= "<td>"  . $d1->cliente . "</td>";
        $table .= "<td>"  . $d1->sRegion . "</td>";
        $table .= "<td>"  . $d1->sComuna . "</td>";
        $table .= "<td>"  . $d1->sSerie . "</td>";
        if ($d1->tipo == "retiro") {
            $table .=
                '<td> 
                    <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
        } else {
            $table .=
                '<td> 
                <form action="' . route('go.asignar_check_home') . '" method="GET">
                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                    <input type="hidden" value="' . $d1->id . '" name="id">
                    <button type="submit" class="btn">Asignar</button>
                </form> 
            </td>';
        }
        $table .= "</tr>";
    }
    return $table;
}


public function revisar_pendientes_coordinador_kyocera()
{
    //$databases = $this->nombre_database();
            $databases = App\bd_proveedores::selectDB();


    foreach ($databases as $los_datos) {
        //ESTADO PENDIENTE PARA TECNICO 
        $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'retiros.id as id_historial',
                'retiros.fecha_retiroCord as fecha',
                'personas.nombre_uno',
                'personas.apellido_uno',
                DB::raw('null as tipo_instalacion'),
                DB::raw('null as razonSocial')

            )
            ->where('checklist_retiros.Cscliente', '=', 'kyocera')

            ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
            ->where('checklist_retiros.estado_inicio', '=', null)->groupBy('checklist_retiros.CsSerie');
        $instalacion_pendientes[] = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'instalacions.id as id_historial',
                'instalacions.fecha_instalacion_coordinadora as fecha',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'instalacions.tipo as tipo_instalacion',
                'instalacions.razonSocial'

            )
            ->where('checklist_instalacions.Cscliente', '=', 'kyocera')

            ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
            ->where('checklist_instalacions.estado_inicio', '=', null)->groupBy('checklist_instalacions.CsSerie')

            ->union($retiros_pendientes)
            ->get();
    }
    $table = "";
    $num_r = "";
    $num_i = "";
    for ($i = 0; $i < count($instalacion_pendientes); $i++) {
        foreach ($instalacion_pendientes[$i] as $d1) {
            // if ($d1->proveedor == "comtecglobal" || $d1->proveedor == "COMTECGLOBAL") {
            //     $num_i = 1;
            // }
            // if ($d1->proveedor == "kyocera") {
            //     $num_r = 1;
            //     $num_i = 2;
            // }
            // if ($d1->proveedor == "upgrade") {
            //     $num_i = 3;
            // }

            $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;
            if ($d1->fecha != "") {
                $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y');
            } else {
                $fecha = "NO REGISTRA";
            }
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $d1->tipo . "</td>";
            $table .= "<td>" . $d1->tipo_instalacion . "</td>";

            
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->razonSocial . "</td>";
            $table .= "<td>" . $d1->region . "</td>";
            $table .= "<td>" . $d1->comuna . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            $table .= "<td>" . $d1->proveedor . "</td>";
      
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            visibility
                                        </span>
                                    </button>
                                </form>
                                <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' ."'".$num_r . "'".');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                            </div>
                        </div>
                    </div
                </td>';
            } else {
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.finalizamanual_home') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">   
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            check_circle_outline
                                        </span>
                                    </button>
                                </form>
                                <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            visibility
                                        </span>
                                    </button>
                                </form>
                                <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' ."'". $num_i . "'".');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                            </div>
                        </div>
                    </div
                </td>';
            }
            $table .= "</tr>";
        }
    }
    return $table;
}

public function filtro_pendiente_kyocera(request $request)
{
    //$tables = DB::select('SHOW DATABASES');
    //return ($tables);
    $cliente = $request->cliente;
    $tipo = $request->tipo_a;
    $tecnico = $request->tecnico;
    $proveedor_ap = $request->proveedor_ap;

    $where  = 'asignacion_instalacions.estado_asignacion = ' . '"' . 'tarea_asignada' . '"';
     $where = $where . ' and instalacions.sEstado_instalacion = ' . '"' . 'asignado' . '"';

    $where_r  = 'asignacion_retiros.estado_asignacion = ' . '"' . 'tarea_asignada' . '"';
     $where_r = $where_r . ' and retiros.estado_retiro_Cord = ' . '"' . 'asignado' . '"';

    if ($cliente != "" || $cliente != null) {
        $where = $where . ' and clientes.id = ' . $cliente;
        $where_r = $where_r . ' and clientes.id = ' . $cliente;
    }
    if ($tipo != "" || $tipo != null) {
        $where = $where . ' and asignacion_instalacions.tipo = ' . '"' . $tipo . '"';
        $where_r = $where_r . ' and asignacion_retiros.tipo = ' . '"' . $tipo . '"';
    }
    if ($tecnico != "" || $tecnico != null) {
        $where = $where . ' and  asignacion_instalacions.trabajadors_id = ' . $tecnico;
        $where_r = $where_r . ' and  asignacion_retiros.trabajadors_idtecnico = ' . $tecnico;
    }
    if ($proveedor_ap != "" || $proveedor_ap != null) {
        $where = $where . ' and  instalacions.proveedor_instalacion = ' .'"' . $proveedor_ap . '"';
        $where_r = $where_r . ' and  retiros.proveedor_retiro = ' .'"' . $proveedor_ap . '"';
    }
    
    $where = $where . ' and  checklist_instalacions.Cscliente = ' .'"' . "kyocera" . '"';
    $where_r = $where_r . ' and  checklist_retiros.Cscliente = ' .'"' . "kyocera" . '"';

    //$databases = $this->nombre_database();
            $databases = App\bd_proveedores::selectDB();


    foreach ($databases as $los_datos) {
        $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
            'SELECT  
            checklist_retiros.csSerie as serie,
            checklist_retiros.csComuna as comuna,
            checklist_retiros.csRegion as region,
            checklist_retiros.Cscliente as cliente,
            asignacion_retiros.tipo,
            asignacion_retiros.id,
            retiros.proveedor_retiro as proveedor,
            retiros.id as id_historial,
            personas.nombre_uno,
            personas.apellido_uno,
            retiros.fecha_retiroCord as fecha,
            null as tipo_instalacion,
            null as razonSocial

        FROM  
            asignacion_retiros
        INNER JOIN  
            checklist_retiros on checklist_retiros.asignacion_retiros_id = asignacion_retiros.id 
        INNER JOIN  
            retiros on retiros.id = asignacion_retiros.retiros_id 
        INNER JOIN 
            trabajadors on trabajadors.id = asignacion_retiros.trabajadors_idtecnico
        INNER JOIN 
            personas on personas.id = trabajadors.id_persona
        LEFT JOIN 
            tracker on tracker.id = retiros.tracker_id
        LEFT JOIN 
            proyectos on proyectos.id = tracker.proyecto_id
        LEFT JOIN 
            clientes on clientes.id = proyectos.clientes_id
        WHERE ' . $where_r  .
                ' union ' .
                'SELECT
            checklist_instalacions.CsSerie as serie,
            checklist_instalacions.Cscomuna as comuna,
            checklist_instalacions.Csregion as region,
            checklist_instalacions.Cscliente as cliente,
            asignacion_instalacions.tipo,
            asignacion_instalacions.id,
            instalacions.proveedor_instalacion as proveedor,
            instalacions.id as id_historial,
            personas.nombre_uno,
            personas.apellido_uno,
            instalacions.fecha_instalacion_coordinadora as fecha,
            instalacions.tipo as tipo_instalacion,
            instalacions.razonSocial

        FROM
            asignacion_instalacions
        INNER JOIN
            checklist_instalacions on checklist_instalacions.asignacion_instalacion_retiro_id = asignacion_instalacions.id 
        INNER JOIN
            instalacions on instalacions.id = asignacion_instalacions.lista_instalacion_id
        INNER JOIN   
            trabajadors on trabajadors.id = asignacion_instalacions.trabajadors_id
        INNER JOIN
            personas on personas.id = trabajadors.id_persona 
        LEFT JOIN
            tracker on tracker.id = instalacions.tracker_idtracker
        LEFT JOIN
            proyectos on proyectos.id = tracker.proyecto_id
        LEFT JOIN
            clientes on clientes.id = proyectos.clientes_id
        WHERE ' . $where
        );
    }

    $table = "";
    $num_r = "";
    $num_i = "";
    for ($i = 0; $i < count($datos_asignacion); $i++) {
        foreach ($datos_asignacion[$i] as $d1) {
            // if ($d1->proveedor == "comtecglobal") {
            //     $num_i = 1;
            // }
            // if ($d1->proveedor == "kyocera") {
            //     $num_r = 1;
            //     $num_i = 2;
            // }
            // if ($d1->proveedor == "upgrade") {
            //     $num_i = 3;
            // }
            $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" .Carbon::createFromDate($d1->fecha)->format('d-m-Y'). "</td>";
            $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->tipo_instalacion . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
             $table .= "<td>" . $d1->razonSocial . "</td>";
            $table .= "<td>" . $d1->region . "</td>";
            $table .= "<td>" . $d1->comuna . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            $table .= "<td>" . $d1->proveedor . "</td>";

            if ($d1->tipo == "retiro") {
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            visibility
                                        </span>
                                    </button>
                                </form>
                                <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' ."'". $num_r ."'". ');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                            </div>
                        </div>
                    </div
                </td>';
            } else {
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.finalizamanual_home') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">   
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            check_circle_outline
                                        </span>
                                    </button>
                                </form>
                                <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button class="btn">
                                        <span class="material-icons-round">
                                            visibility
                                        </span>
                                    </button>
                                </form>
                                <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' . "'".$num_i ."'". ');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                            </div>
                        </div>
                    </div
                </td>';
            }
            $table .= "</tr>";
        }
    }
    return $table;
}

//////////////////

     public function guardarsla(){

        $sla = $_GET["sla_v"];
        $slas_v = $_GET["slas_v"];
        $sla_id = $_GET["slaid"];

  

         $update =  App\config_usuarios::findOrfail($sla_id);
         $update->sla= $sla;
         $update->sla_santiago = $slas_v;
         $update->timestamps = false;
         $update->save();

        return  "ok";
     }
     public function index()
     {
 
         //SELECT TECNICOS
         $trabajadores = DB::table('personas')
             ->join('trabajadors', 'trabajadors.id_persona', '=', 'personas.id')
             ->select(
                 'personas.nombre_uno',
                 'personas.apellido_uno',
                 'trabajadors.id'
             )
             ->where('trabajadors.estado', '=', '1')
             ->orderBy('personas.nombre_uno', 'ASC')
             ->get();
 
         $datos_trabajador = DB::table('trabajadors')
             ->where('trabajadors.id_login', '=', Auth::user()->id)
             ->get();
 
         if (count($datos_trabajador) != 0) {
             $id_trabajador = $datos_trabajador[0]->id;
         } else {
             $id_trabajador = 0;
         }
 
         //$databases = $this->nombre_database();
                 $databases = App\bd_proveedores::selectDB();

 
 
         $contadorkyoceraPendientes = 0;
         $contadorkyoceraAsignadas = 0;
         $contadorkyoceraRevisar = 0;
 
        
         /** SECCION INSTALACION - RETIRO */
         $count_pendienteCoordinador = 0;
         $count_porasignarCoordinador = 0;
         $count_cursoCoordinador = 0;
         $count_porreasignarCoordinador = 0;
         $count_porrevisarCoordinador = 0;
         $count_pendientes = 0;
         $count_curso = 0;
         $count_rechazado = 0;
         /** SECCION SERVICIO */
         $cont_pendienteCoordinador = 0;
         $cont_porasignarCoordinador = 0;
         $cont_encursoCoordinador = 0;
         $cont_porreasignarCoordinador = 0;
         $cont_porrevisarCoordinador = 0;
         $cont_instalarRepuestos = 0;
 
         $cont_soli_instalarRepuestos = 0;
 
         //SECCION PROVEEDOR
         $cont_asignadoProveedor = 0;
         $cont_asignadoservicioProveedor = 0;
         $cont_respuestoservicioProveedor = 0;
         $cont_respuestoservicioProveedorFinalizadas = 0;
         $cont_respuestoservicioProveedorAsignadas = 0;
 
         $proveedor = Auth::user()->nombre_proveedor;
 
         //SECCION PROVEEDOR
         $cont_asignadoProveedor = 0;
         $cont_repuestosProveedor = 0;
         $cont_asignadoservicioProveedor = 0;
         $cont_respuestoservicioProveedor = 0;
         $proveedor = Auth::user()->nombre_proveedor;
 
         if ($proveedor != "") {
             $retiros_asignados_proveedor = DB::connection(strtolower($proveedor))->table('retiros')
                 ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
                 ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                 ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                 ->select('retiros.id')
                 ->where('clientes.id', '!=', 4);
             $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                 ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                 ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                 ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                 ->select('instalacions.id')
                 ->where('clientes.id', '!=', 4)
                 //->union($retiros_asignados_proveedor)
                 ->count();
 
             $cont_asignadoProveedor = $instalacion_asignados_proveedor;
 
             $instalacion_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                 ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                 ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                 ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                 ->select('clientes.razon_social as cliente', 'clientes.id as clientes_id')
                 //->where('checklist_instalacions.motivo', '!=', '')
                 ->where('instalacions.dFecha_instalacion', '=', 'repuestos')
                 ->count();
 
             $cont_repuestosProveedor = $instalacion_repuestos_proveedor;
 
             $servicio_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->count();
 
             $cont_asignadoservicioProveedor = $servicio_proveedor;
 
             $serviciorepuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                 ->where('api_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                 ->count();
              
                 // ASIGNADAS
                 $serviciorepuestos_proveedor_asginada = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                 ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->count();
 
                 // FINALIZADAS
 
                 $serviciorepuestos_proveedor_finalizadas = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'FINALIZADO')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'FINALIZADO')
                 ->where('api_solicitudes.estado_interno', '=', 'FINALIZADO')
                 ->count();
 
             $cont_respuestoservicioProveedor = $serviciorepuestos_proveedor;
             $cont_respuestoservicioProveedorFinalizadas = $serviciorepuestos_proveedor_finalizadas;
             $cont_respuestoservicioProveedorAsignadas = $serviciorepuestos_proveedor_asginada;
         }
         foreach ($databases as $los_datos) {
             /** SECCCION INSTALACION - RETIRO */
             //SELECT MODALS 
             $datos_clientes[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4 ');
             $datos_clientes_porasignar[] = DB::connection(strtolower($los_datos->Database))->select('SELECT instalacions.sCliente FROM instalacions UNION SELECT retiros.sCliente FROM retiros');
 
             //ESTADO PENDIENTE PARA COORDINADOR
             $retiros_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                 ->where('retiros.scliente', '<>', "kyocera")

                 ->where('checklist_retiros.estado_inicio', '=', null);
             $instalacion_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_instalacions.estado_inicio', '=', null)
                 ->where('instalacions.scliente', '<>', "kyocera")

                 ->orderBy('fecha_visita', 'desc')
                 ->union($retiros_pendientes_coordinador)
                 ->count();
 
             $count_pendienteCoordinador += $instalacion_pendientes_coordinador;
 
 
                 // KYOCERA PENDIENTE
 
             $retiros_pendientes_coordinador_k = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_retiros.Cscliente', '=', "kyocera")
 
                 ->where('checklist_retiros.estado_inicio', '=', null);
             $instalacion_pendientes_coordinador_k = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_instalacions.estado_inicio', '=', null)
                 ->where('checklist_instalacions.Cscliente', '=', "kyocera")
 
                 ->orderBy('fecha_visita', 'desc')
                 ->union($retiros_pendientes_coordinador_k)
                 ->count();
 
             $contadorkyoceraPendientes += $instalacion_pendientes_coordinador_k;
 
 
             //ESTADO POR ASIGNAR PARA COORDINADOR 
             $retiros_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('retiros')
                 ->select('retiros.id')
                 ->where('retiros.sCliente', '<>', "kyocera")

                 ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
             $instalacion_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('instalacions')
                 ->select('instalacions.id')
                 ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
                 ->where('instalacions.sCliente', '<>', "kyocera")

                 ->union($retiros_porasignar_coordinador)
                 ->count();
 
             $count_porasignarCoordinador += $instalacion_porasignar_coordinador;
 
 
             //KYOCERA POR ASIGNAR
 
              //ESTADO POR ASIGNAR PARA COORDINADOR 
              $retiros_porasignar_coordinador_k = DB::connection(strtolower($los_datos->Database))->table('retiros')
              ->select('retiros.id')
              ->where('retiros.sCliente', '=', "kyocera")
 
              ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
          $instalacion_porasignar_coordinador_k = DB::connection(strtolower($los_datos->Database))->table('instalacions')
              ->select('instalacions.id')
              ->where('instalacions.sCliente', '=', "kyocera")
 
              ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
              ->union($retiros_porasignar_coordinador_k)
                         ->count();
         
                     $contadorkyoceraAsignadas += $instalacion_porasignar_coordinador_k;
 
             //ESTADO EN CURSO PARA COORDIANDOR
             $retiros_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_retiros.estado_inicio', '=', 'activo');
             $instalacion_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                 ->orderBy('fecha_visita', 'desc')
                 ->union($retiros_curso_coordiandor)
                 ->count();
 
             $count_cursoCoordinador += $instalacion_curso_coordiandor;
 
             //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR
             $retiros_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
             $instalacion_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
                 ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
                 ->union($retiros_porreasignar_coordiandor)
                 ->count();
 
             $count_porreasignarCoordinador += $instalacion_porreasignar_coordiandor;
 
             //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR
             $retiros_porrevisar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('checklist_retiros.Cscliente', '<>', "kyocera")

                 ->where('asignacion_retiros.estado_asignacion', '=', 'revisar');
             $instalacion_porrevisar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'revisar')
                 ->where('checklist_instalacions.Cscliente', '<>', "kyocera")

                 ->where('instalacions.sEstado_instalacion', '=', 'revisar')
                 ->union($retiros_porrevisar_coordiandor)
                 ->count();
 
             $count_porrevisarCoordinador += $instalacion_porrevisar_coordiandor;
 
 
             
             //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR KYCERA
             $retiros_porrevisar_coordiandor_k = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('checklist_retiros.Cscliente', '=', "kyocera")
 
                 ->where('asignacion_retiros.estado_asignacion', '=', 'revisar');
             $instalacion_porrevisar_coordiandor_k = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'revisar')
                 ->where('instalacions.sEstado_instalacion', '=', 'revisar')
                 ->where('checklist_instalacions.Cscliente', '=', "kyocera")
 
                 ->union($retiros_porrevisar_coordiandor_k)
                 ->count();
 
             $contadorkyoceraRevisar += $instalacion_porrevisar_coordiandor_k;
 
             //ESTADO PENDIENTE PARA TECNICO 
             $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select('asignacion_retiros.id')
                 ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                 ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
             $servicios_pendientes = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->select('asignacion_solicitudes.id')
                 ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                 ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                 //TRANSITO
                 ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                 ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                 //EN ESPERA
                 ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                 ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
             $instalacion_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select('asignacion_instalacions.id')
                 ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                 ->orderBy('fecha_visita', 'desc')
                 ->union($retiros_pendientes)
                 ->union($servicios_pendientes)
                 ->count();
 
             $count_pendientes += $instalacion_pendientes;
 
             //ESTADO EN CURSO PARA TECNICO
             $retiros_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select(
                     'asignacion_retiros.id'
                 )
                 ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                 ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_retiros.estado_inicio', '=', 'activo');
             $servicios_curso = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                 ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                 ->select('asignacion_solicitudes.id')
                 ->where('api_solicitudes.estado_interno', '=', 'INICIADO')
                 ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                 ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
             $instalacion_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select(
                     'asignacion_instalacions.id'
                 )
                 ->where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                 ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                 ->orderBy('fecha_visita', 'desc')
                 ->union($servicios_curso)
                 ->union($retiros_curso)
                 ->count();
 
             $count_curso += $instalacion_curso;
 
             //ESTADO EN RECHAZADOS PARA TECNICO
             $retiros_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                 ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                 ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                 ->select(
                     'asignacion_retiros.id'
                 )
                 ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                 ->where('asignacion_retiros.estado_asignacion', '=', 'rechazado');
             $servicios_rechazados = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->select('asignacion_solicitudes.id')
                 ->where('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                 ->where('api_solicitudes.estado_externo', '=', 'RECHAZADO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'RECHAZADO')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'RECHAZADO')
                 ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
             $instalacion_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                 ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                 ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                 ->select(
                     'asignacion_instalacions.id'
                 )
                 ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                 ->where('asignacion_instalacions.estado_asignacion', '=', 'rechazado')
                 //->orderBy('fecha_visita', 'desc')
                 ->union($servicios_rechazados)
                 ->union($retiros_rechazado)
                 ->count();
 
             $count_rechazado += $instalacion_rechazado;
 
             /** FIN SECCION INSTALACION/RETIRO */
             /** SECCION SERVICIO */
             $datos_clientes_servicios[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4');
             $datos_clientes_porasignar_servicios[] = DB::connection(strtolower($los_datos->Database))->select('SELECT DISTINCT api_solicitudes.sCliente FROM api_solicitudes');
             //SUMA PENDIENTE PARA COORINADOR
             $suma_pendientes_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                 ->count();
             $cont_pendienteCoordinador += $suma_pendientes_coordinador_servicio;
             //SUMA POR ASIGNAR COORDINADOR
             $suma_porasignar_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->where('api_solicitudes.estado_interno', '=', 'POR ASIGNAR')
                 ->where('api_solicitudes.estado_externo', '=', 'POR ASIGNAR')
                 ->orwhere('api_solicitudes.estado_interno', '=', NULL)
                 ->where('api_solicitudes.estado_externo', '=', 'Sin asignar')
                 ->count();
             $cont_porasignarCoordinador += $suma_porasignar_coordinador_servicio;
             //SUMA EN CURSO COORDINADOR
             $suma_encursos_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 //TRANSITO
                 ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                 //EN ESPERA
                 ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                 //INICIADO
                 ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                 ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                 ->count();
             $cont_encursoCoordinador += $suma_encursos_coordinador_servicio;
 
             $suma_porreasignars_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->where('api_solicitudes.estado_interno', '=', 'REASIGNAR')
                 ->count();
             $cont_porreasignarCoordinador += $suma_porreasignars_coordiandor_servicio;
 
             $suma_porrevisar_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->where('api_solicitudes.estado_interno', '=', 'REVISAR')
                 ->orwhere('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                 ->count();
             $cont_porrevisarCoordinador += $suma_porrevisar_coordiandor_servicio;
 
             $suma_InstalarRespuestos = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->where('api_solicitudes.estado_externo','=','Instalar repuesto')
                 ->where('api_solicitudes.estado_interno','=','Solicitar Repuestos')
                 ->orwhere('api_solicitudes.estado_externo','=','Instalar repuesto')
                 ->where('api_solicitudes.estado_interno','=',NULL)
                 //->where('api_solicitudes.estado_interno','!','FINALIZADO')
                 ->count();
 
                 $suma_InstalarRespuestos_solicitud = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                 ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                 ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                 ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                 ->where('api_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                 ->count();
              
 
             $cont_instalarRepuestos += $suma_InstalarRespuestos;
             $cont_soli_instalarRepuestos += $suma_InstalarRespuestos_solicitud;
         }
         /** SECCION INSTALACION - RETIRO */
         $suma_pendientes_coordinador = $count_pendienteCoordinador;
         $suma_pendientes_coordinador_k = $contadorkyoceraPendientes;
         $suma_asignada_coordinador_k = $contadorkyoceraAsignadas;
         $suma_revisar_coordinador_k = $contadorkyoceraRevisar;
 
         
         $suma_porasignar_coordinador = $count_porasignarCoordinador;
         $suma_encursos_coordiandor = $count_cursoCoordinador;
         $suma_porreasignars_coordiandor = $count_porreasignarCoordinador;
         $suma_porrevisar_coordiandor = $count_porrevisarCoordinador;
         //TECNICO
         $suma_pendientes = $count_pendientes;
         $suma_encursos = $count_curso;
         $suma_rechazado = $count_rechazado;
         /** SECCION SERVICIO */
         $suma_pendientes_coordinador_servicio = $cont_pendienteCoordinador;
         $suma_porasignar_coordinador_servicio = $cont_porasignarCoordinador;
         $suma_encursos_coordiandor_servicio = $cont_encursoCoordinador;
         $suma_porreasignar_coordiandor_servicio = $cont_porreasignarCoordinador;
         $suma_porrevisar_coordiandor_servicio = $cont_porrevisarCoordinador;
         $suma_estado_intalar_respuestos = $cont_instalarRepuestos;
         $suma_estado_solicitud_intalar_respuestos = $cont_soli_instalarRepuestos;
             
        //  $proveedores= [
        //      ['COMTECGLOBAL', 'COMTECGLOBAL'],
        //      ['DEIRA', 'DEIRA'],
        //      ['Kyocera', 'KYOCERA'],
        //     ['IMPRECORP', 'IMPRECORP'],
             
        //  ];
 
        $pro =App\bd_proveedores::selectDB();

        $proveedores= [];
       
        foreach($pro as $los_datos){
           // $los_datos->Database
       
           // $proveedores= [
           // ];
               array_push ($proveedores,[$los_datos->Database, $los_datos->Database]);
       
        }
         // $datos_clientes = sort($datos_clientes);
         // return $cont_respuestoservicioProveedorFinalizadas;
         // $cont_respuestoservicioProveedorFinalizadas = $serviciorepuestos_proveedor_finalizadas;
         // $cont_respuestoservicioProveedorAsignadas = $serviciorepuestos_proveedor_asginada;
         return view('home', compact('suma_revisar_coordinador_k','suma_asignada_coordinador_k','suma_pendientes_coordinador_k','cont_respuestoservicioProveedorAsignadas','cont_respuestoservicioProveedorFinalizadas','proveedores','suma_estado_intalar_respuestos','suma_estado_solicitud_intalar_respuestos', 'cont_repuestosProveedor', 'cont_respuestoservicioProveedor', 'cont_asignadoservicioProveedor', 'cont_asignadoProveedor', 'datos_clientes_porasignar_servicios', 'suma_porreasignar_coordiandor_servicio', 'suma_encursos_coordiandor_servicio', 'suma_encursos_coordiandor_servicio', 'suma_porasignar_coordinador_servicio', 'suma_pendientes_coordinador_servicio', 'suma_porreasignars_coordiandor', 'trabajadores', 'datos_clientes_porasignar', 'datos_clientes', 'suma_pendientes', 'suma_encursos', 'suma_rechazado', 'suma_pendientes_coordinador', 'suma_porasignar_coordinador', 'suma_encursos_coordiandor', 'suma_porrevisar_coordiandor_servicio', 'suma_porrevisar_coordiandor'));
     }

    public function index_old_09_02_23()
    {

        //SELECT TECNICOS
        $trabajadores = DB::table('personas')
            ->join('trabajadors', 'trabajadors.id_persona', '=', 'personas.id')
            ->select(
                'personas.nombre_uno',
                'personas.apellido_uno',
                'trabajadors.id'
            )
            ->where('trabajadors.estado', '=', '1')
            ->orderBy('personas.nombre_uno', 'ASC')
            ->get();

        $datos_trabajador = DB::table('trabajadors')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        if (count($datos_trabajador) != 0) {
            $id_trabajador = $datos_trabajador[0]->id;
        } else {
            $id_trabajador = 0;
        }

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        /** SECCION INSTALACION - RETIRO */
        $count_pendienteCoordinador = 0;
        $count_porasignarCoordinador = 0;
        $count_cursoCoordinador = 0;
        $count_porreasignarCoordinador = 0;
        $count_porrevisarCoordinador = 0;
        $count_pendientes = 0;
        $count_curso = 0;
        $count_rechazado = 0;
        /** SECCION SERVICIO */
        $cont_pendienteCoordinador = 0;
        $cont_porasignarCoordinador = 0;
        $cont_encursoCoordinador = 0;
        $cont_porreasignarCoordinador = 0;
        $cont_porrevisarCoordinador = 0;
        $cont_instalarRepuestos = 0;

        $cont_soli_instalarRepuestos = 0;

        //SECCION PROVEEDOR
        $cont_asignadoProveedor = 0;
        $cont_asignadoservicioProveedor = 0;
        $cont_respuestoservicioProveedor = 0;
        $cont_respuestoservicioProveedorFinalizadas = 0;
        $cont_respuestoservicioProveedorAsignadas = 0;

        $proveedor = Auth::user()->nombre_proveedor;

        //SECCION PROVEEDOR
        $cont_asignadoProveedor = 0;
        $cont_repuestosProveedor = 0;
        $cont_asignadoservicioProveedor = 0;
        $cont_respuestoservicioProveedor = 0;
        $proveedor = Auth::user()->nombre_proveedor;

        if ($proveedor != "") {
            $retiros_asignados_proveedor = DB::connection(strtolower($proveedor))->table('retiros')
                ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('retiros.id')
                ->where('clientes.id', '!=', 4);
            $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('instalacions.id')
                ->where('clientes.id', '!=', 4)
                //->union($retiros_asignados_proveedor)
                ->count();

            $cont_asignadoProveedor = $instalacion_asignados_proveedor;

            $instalacion_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('clientes.razon_social as cliente', 'clientes.id as clientes_id')
                //->where('checklist_instalacions.motivo', '!=', '')
                ->where('instalacions.dFecha_instalacion', '=', 'repuestos')
                ->count();

            $cont_repuestosProveedor = $instalacion_repuestos_proveedor;

            $servicio_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->count();

            $cont_asignadoservicioProveedor = $servicio_proveedor;

            $serviciorepuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                ->where('api_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->count();
             
                // ASIGNADAS
                $serviciorepuestos_proveedor_asginada = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->count();

                // FINALIZADAS

                $serviciorepuestos_proveedor_finalizadas = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('asignacion_solicitudes.estado_interno', '=', 'FINALIZADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'FINALIZADO')
                ->where('api_solicitudes.estado_interno', '=', 'FINALIZADO')
                ->count();

            $cont_respuestoservicioProveedor = $serviciorepuestos_proveedor;
            $cont_respuestoservicioProveedorFinalizadas = $serviciorepuestos_proveedor_finalizadas;
            $cont_respuestoservicioProveedorAsignadas = $serviciorepuestos_proveedor_asginada;
        }
        foreach ($databases as $los_datos) {
            /** SECCCION INSTALACION - RETIRO */
            //SELECT MODALS 
            $datos_clientes[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4 ');
            $datos_clientes_porasignar[] = DB::connection(strtolower($los_datos->Database))->select('SELECT instalacions.sCliente FROM instalacions UNION SELECT retiros.sCliente FROM retiros');

            //ESTADO PENDIENTE PARA COORDINADOR
            $retiros_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', null);
            $instalacion_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', null)
                
                ->orderBy('fecha_visita', 'desc')
                ->union($retiros_pendientes_coordinador)
                ->count();

            $count_pendienteCoordinador += $instalacion_pendientes_coordinador;

            //ESTADO POR ASIGNAR PARA COORDINADOR 
            $retiros_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('retiros')
                ->select('retiros.id')
                ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
            $instalacion_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('instalacions')
                ->select('instalacions.id')
                ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
                ->union($retiros_porasignar_coordinador)
                ->count();

            $count_porasignarCoordinador += $instalacion_porasignar_coordinador;

            //ESTADO EN CURSO PARA COORDIANDOR
            $retiros_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', 'activo');
            $instalacion_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                ->orderBy('fecha_visita', 'desc')
                ->union($retiros_curso_coordiandor)
                ->count();

            $count_cursoCoordinador += $instalacion_curso_coordiandor;

            //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR
            $retiros_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
            $instalacion_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
                ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
                ->union($retiros_porreasignar_coordiandor)
                ->count();

            $count_porreasignarCoordinador += $instalacion_porreasignar_coordiandor;

            //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR
            $retiros_porrevisar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'revisar');
            $instalacion_porrevisar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'revisar')
                ->where('instalacions.sEstado_instalacion', '=', 'revisar')
                ->union($retiros_porrevisar_coordiandor)
                ->count();

            $count_porrevisarCoordinador += $instalacion_porrevisar_coordiandor;

            //ESTADO PENDIENTE PARA TECNICO 
            $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
            $servicios_pendientes = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('asignacion_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //TRANSITO
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->orderBy('fecha_visita', 'desc')
                ->union($retiros_pendientes)
                ->union($servicios_pendientes)
                ->count();

            $count_pendientes += $instalacion_pendientes;

            //ESTADO EN CURSO PARA TECNICO
            $retiros_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'asignacion_retiros.id'
                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', 'activo');
            $servicios_curso = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select('asignacion_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'asignacion_instalacions.id'
                )
                ->where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                ->orderBy('fecha_visita', 'desc')
                ->union($servicios_curso)
                ->union($retiros_curso)
                ->count();

            $count_curso += $instalacion_curso;

            //ESTADO EN RECHAZADOS PARA TECNICO
            $retiros_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'asignacion_retiros.id'
                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'rechazado');
            $servicios_rechazados = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('asignacion_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->where('api_solicitudes.estado_externo', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'asignacion_instalacions.id'
                )
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'rechazado')
                //->orderBy('fecha_visita', 'desc')
                ->union($servicios_rechazados)
                ->union($retiros_rechazado)
                ->count();

            $count_rechazado += $instalacion_rechazado;

            /** FIN SECCION INSTALACION/RETIRO */
            /** SECCION SERVICIO */
            $datos_clientes_servicios[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4');
            $datos_clientes_porasignar_servicios[] = DB::connection(strtolower($los_datos->Database))->select('SELECT DISTINCT api_solicitudes.sCliente FROM api_solicitudes');
            //SUMA PENDIENTE PARA COORINADOR
            $suma_pendientes_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->count();
            $cont_pendienteCoordinador += $suma_pendientes_coordinador_servicio;
            //SUMA POR ASIGNAR COORDINADOR
            $suma_porasignar_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'POR ASIGNAR')
                ->where('api_solicitudes.estado_externo', '=', 'POR ASIGNAR')
                ->orwhere('api_solicitudes.estado_interno', '=', NULL)
                ->where('api_solicitudes.estado_externo', '=', 'Sin asignar')
                ->count();
            $cont_porasignarCoordinador += $suma_porasignar_coordinador_servicio;
            //SUMA EN CURSO COORDINADOR
            $suma_encursos_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                //TRANSITO
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                //INICIADO
                ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->count();
            $cont_encursoCoordinador += $suma_encursos_coordinador_servicio;

            $suma_porreasignars_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'REASIGNAR')
                ->count();
            $cont_porreasignarCoordinador += $suma_porreasignars_coordiandor_servicio;

            $suma_porrevisar_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'REVISAR')
                ->orwhere('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->count();
            $cont_porrevisarCoordinador += $suma_porrevisar_coordiandor_servicio;

            $suma_InstalarRespuestos = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_externo','=','Instalar repuesto')
                ->where('api_solicitudes.estado_interno','=','Solicitar Repuestos')
                ->orwhere('api_solicitudes.estado_externo','=','Instalar repuesto')
                ->where('api_solicitudes.estado_interno','=',NULL)
                //->where('api_solicitudes.estado_interno','!','FINALIZADO')
                ->count();

                $suma_InstalarRespuestos_solicitud = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                ->where('api_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->count();
             

            $cont_instalarRepuestos += $suma_InstalarRespuestos;
            $cont_soli_instalarRepuestos += $suma_InstalarRespuestos_solicitud;
        }
        /** SECCION INSTALACION - RETIRO */
        $suma_pendientes_coordinador = $count_pendienteCoordinador;
        $suma_porasignar_coordinador = $count_porasignarCoordinador;
        $suma_encursos_coordiandor = $count_cursoCoordinador;
        $suma_porreasignars_coordiandor = $count_porreasignarCoordinador;
        $suma_porrevisar_coordiandor = $count_porrevisarCoordinador;
        //TECNICO
        $suma_pendientes = $count_pendientes;
        $suma_encursos = $count_curso;
        $suma_rechazado = $count_rechazado;
        /** SECCION SERVICIO */
        $suma_pendientes_coordinador_servicio = $cont_pendienteCoordinador;
        $suma_porasignar_coordinador_servicio = $cont_porasignarCoordinador;
        $suma_encursos_coordiandor_servicio = $cont_encursoCoordinador;
        $suma_porreasignar_coordiandor_servicio = $cont_porreasignarCoordinador;
        $suma_porrevisar_coordiandor_servicio = $cont_porrevisarCoordinador;
        $suma_estado_intalar_respuestos = $cont_instalarRepuestos;
        $suma_estado_solicitud_intalar_respuestos = $cont_soli_instalarRepuestos;
            
        $proveedores= [
            ['COMTECGLOBAL', 'COMTECGLOBAL'],
            ['DEIRA', 'DEIRA'],
            ['Kyocera', 'KYOCERA'],
           ['IMPRECORP', 'IMPRECORP'],
            
        ];

        // $datos_clientes = sort($datos_clientes);
        // return $cont_respuestoservicioProveedorFinalizadas;
        // $cont_respuestoservicioProveedorFinalizadas = $serviciorepuestos_proveedor_finalizadas;
        // $cont_respuestoservicioProveedorAsignadas = $serviciorepuestos_proveedor_asginada;
        return view('home', compact('cont_respuestoservicioProveedorAsignadas','cont_respuestoservicioProveedorFinalizadas','proveedores','suma_estado_intalar_respuestos','suma_estado_solicitud_intalar_respuestos', 'cont_repuestosProveedor', 'cont_respuestoservicioProveedor', 'cont_asignadoservicioProveedor', 'cont_asignadoProveedor', 'datos_clientes_porasignar_servicios', 'suma_porreasignar_coordiandor_servicio', 'suma_encursos_coordiandor_servicio', 'suma_encursos_coordiandor_servicio', 'suma_porasignar_coordinador_servicio', 'suma_pendientes_coordinador_servicio', 'suma_porreasignars_coordiandor', 'trabajadores', 'datos_clientes_porasignar', 'datos_clientes', 'suma_pendientes', 'suma_encursos', 'suma_rechazado', 'suma_pendientes_coordinador', 'suma_porasignar_coordinador', 'suma_encursos_coordiandor', 'suma_porrevisar_coordiandor_servicio', 'suma_porrevisar_coordiandor'));
    }
    public function actualizar()
    {
       
        //SELECT TECNICOS
        $trabajadores = DB::table('personas')
            ->join('trabajadors', 'trabajadors.id_persona', '=', 'personas.id')
            ->select(
                'personas.nombre_uno',
                'personas.apellido_uno',
                'trabajadors.id'
            )
            ->where('trabajadors.estado', '=', '1')
            ->orderBy('trabajadors.id', 'desc')
            ->get();

        $datos_trabajador = DB::table('trabajadors')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        if (count($datos_trabajador) != 0) {
            $id_trabajador = $datos_trabajador[0]->id;
        } else {
            $id_trabajador = 0;
        }

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        /** SECCION INSTALACION - RETIRO */
        $count_pendienteCoordinador = 0;
        $count_porasignarCoordinador = 0;
        $count_cursoCoordinador = 0;
        $count_porreasignarCoordinador = 0;
        $count_porrevisarCoordinador = 0;
        $count_pendientes = 0;
        $count_curso = 0;
        $count_rechazado = 0;
        /** SECCION SERVICIO */
        $cont_pendienteCoordinador = 0;
        $cont_porasignarCoordinador = 0;
        $cont_encursoCoordinador = 0;
        $cont_porreasignarCoordinador = 0;
        $cont_porrevisarCoordinador = 0;

        //SECCION PROVEEDOR
        $cont_asignadoProveedor = 0;
        $cont_repuestosProveedor = 0;
        $cont_asignadoservicioProveedor = 0;
        $cont_respuestoservicioProveedor = 0;
        $cont_respuestoservicioProveedorFinalizadas = 0;
        $cont_respuestoservicioProveedorAsignadas = 0;
        $proveedor = Auth::user()->nombre_proveedor;

        if ($proveedor != "") {
            $retiros_asignados_proveedor = DB::connection(strtolower($proveedor))->table('retiros')
                ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('retiros.id')
                ->where('clientes.id', '!=', 4);
            $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('instalacions.id')
                ->where('clientes.id', '!=', 4)
                //->union($retiros_asignados_proveedor)
                ->count();

            $cont_asignadoProveedor = $instalacion_asignados_proveedor;

            $instalacion_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('clientes.razon_social as cliente', 'clientes.id as clientes_id')
                //->where('checklist_instalacions.motivo', '!=', '')
                ->where('instalacions.dFecha_instalacion', '=', 'repuestos')
                ->count();

            $cont_repuestosProveedor = $instalacion_repuestos_proveedor;

            $servicio_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->count();

            $cont_asignadoservicioProveedor = $servicio_proveedor;

            $serviciorepuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                ->where('api_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->count();


                    // ASIGNADAS
                    $serviciorepuestos_proveedor_asginada = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                    ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                    ->count();
    
                    // FINALIZADAS
    
                    $serviciorepuestos_proveedor_finalizadas = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->where('asignacion_solicitudes.estado_interno', '=', 'FINALIZADO')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'FINALIZADO')
                    ->where('api_solicitudes.estado_interno', '=', 'FINALIZADO')
                    ->count();
    
                $cont_respuestoservicioProveedor = $serviciorepuestos_proveedor;
                $cont_respuestoservicioProveedorFinalizadas = $serviciorepuestos_proveedor_finalizadas;
                $cont_respuestoservicioProveedorAsignadas = $serviciorepuestos_proveedor_asginada;
            
        }

      
        foreach ($databases as $los_datos) {
            /** SECCCION INSTALACION - RETIRO */
            //SELECT MODALS 
            $datos_clientes[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4');
            $datos_clientes_porasignar[] = DB::connection(strtolower($los_datos->Database))->select('SELECT instalacions.sCliente FROM instalacions UNION SELECT retiros.sCliente FROM retiros');

            //ESTADO PENDIENTE PARA COORDINADOR
            $retiros_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('retiros.scliente', '<>', "kyocera")

                ->where('checklist_retiros.estado_inicio', '=', null);
            $instalacion_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', null)
                ->where('instalacions.scliente', '<>', "kyocera")

                ->orderBy('fecha_visita', 'desc')
                ->union($retiros_pendientes_coordinador)
                ->count();

            $count_pendienteCoordinador += $instalacion_pendientes_coordinador;

            //ESTADO POR ASIGNAR PARA COORDINADOR 
            $retiros_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('retiros')
                ->select('retiros.id')
                ->where('retiros.scliente', '<>', "kyocera")

                ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
            $instalacion_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('instalacions')
                ->select('instalacions.id')
                ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
                ->where('instalacions.scliente', '<>', "kyocera")

                ->union($retiros_porasignar_coordinador)
                ->count();

            $count_porasignarCoordinador += $instalacion_porasignar_coordinador;

            //ESTADO EN CURSO PARA COORDIANDOR
            $retiros_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', 'activo');
            $instalacion_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                ->orderBy('fecha_visita', 'desc')
                ->union($retiros_curso_coordiandor)
                ->count();

            $count_cursoCoordinador += $instalacion_curso_coordiandor;

            //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR
            $retiros_porrevisar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('retiros.scliente', '<>', "kyocera")

                ->where('asignacion_retiros.estado_asignacion', '=', 'revisar');
            $instalacion_porrevisar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'revisar')
                ->where('instalacions.sEstado_instalacion', '=', 'revisar')
                ->where('instalacions.scliente', '<>', "kyocera")

                ->union($retiros_porrevisar_coordiandor)
                ->count();

            $count_porrevisarCoordinador += $instalacion_porrevisar_coordiandor;

            //ESTADO POR REVISAR COORDINADOR PARA COORDIANDOR
            $retiros_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
            $instalacion_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
                ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
                ->union($retiros_porreasignar_coordiandor)
                ->count();

            $count_porreasignarCoordinador += $instalacion_porreasignar_coordiandor;

            //ESTADO PENDIENTE PARA TECNICO 
            $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select('asignacion_retiros.id')
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
            $servicios_pendientes = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('asignacion_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //TRANSITO
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select('asignacion_instalacions.id')
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->orderBy('fecha_visita', 'desc')
                ->union($retiros_pendientes)
                ->union($servicios_pendientes)
                ->count();

            $count_pendientes += $instalacion_pendientes;

            //ESTADO EN CURSO PARA TECNICO
            $retiros_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'asignacion_retiros.id'
                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', 'activo');
            $servicios_curso = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select('asignacion_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'asignacion_instalacions.id'
                )
                ->where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                ->orderBy('fecha_visita', 'desc')
                ->union($servicios_curso)
                ->union($retiros_curso)
                ->count();

            $count_curso += $instalacion_curso;

            //ESTADO EN RECHAZADOS PARA TECNICO
            $retiros_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'asignacion_retiros.id'
                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'rechazado');
            $servicios_rechazados = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('asignacion_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->where('api_solicitudes.estado_externo', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'asignacion_instalacions.id'
                )
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'rechazado')
                //->orderBy('fecha_visita', 'desc')
                ->union($servicios_rechazados)
                ->union($retiros_rechazado)
                ->count();

            $count_rechazado += $instalacion_rechazado;

            /** FIN SECCION INSTALACION/RETIRO */
            /** SECCION SERVICIO */
            $datos_clientes_servicios[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4');
            $datos_clientes_porasignar_servicios[] = DB::connection(strtolower($los_datos->Database))->select('SELECT DISTINCT api_solicitudes.sCliente FROM api_solicitudes');
            //SUMA PENDIENTE PARA COORINADOR
            $suma_pendientes_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->count();
            $cont_pendienteCoordinador += $suma_pendientes_coordinador_servicio;
            //SUMA POR ASIGNAR COORDINADOR
            $suma_porasignar_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'POR ASIGNAR')
                ->where('api_solicitudes.estado_externo', '=', 'POR ASIGNAR')
                ->orwhere('api_solicitudes.estado_interno', '=', NULL)
                ->where('api_solicitudes.estado_externo', '=', 'Sin asignar')
                ->count();
            $cont_porasignarCoordinador += $suma_porasignar_coordinador_servicio;
            //SUMA EN CURSO COORDINADOR
            $suma_encursos_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                //TRANSITO
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                //INICIADO
                ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->count();
            $cont_encursoCoordinador += $suma_encursos_coordinador_servicio;

            $suma_porreasignars_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'REASIGNAR')
                ->count();
            $cont_porreasignarCoordinador += $suma_porreasignars_coordiandor_servicio;

            $suma_porrevisar_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'REVISAR')
                ->orwhere('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->count();
            $cont_porrevisarCoordinador += $suma_porrevisar_coordiandor_servicio;
        }

    
        /** SECCION INSTALACION - RETIRO */
        $suma_pendientes_coordinador = $count_pendienteCoordinador;
        $suma_porasignar_coordinador = $count_porasignarCoordinador;
        $suma_encursos_coordiandor = $count_cursoCoordinador;
        $suma_porreasignars_coordiandor = $count_porreasignarCoordinador;
        $suma_porrevisar_coordiandor = $count_porrevisarCoordinador;
        //TECNICO
        $suma_pendientes = $count_pendientes;
        $suma_encursos = $count_curso;
        $suma_rechazado = $count_rechazado;
        /** SECCION SERVICIO */
        $suma_pendientes_coordinador_servicio = $cont_pendienteCoordinador;
        $suma_porasignar_coordinador_servicio = $cont_porasignarCoordinador;
        $suma_encursos_coordiandor_servicio = $cont_encursoCoordinador;
        $suma_porreasignar_coordiandor_servicio = $cont_porreasignarCoordinador;
        $suma_porrevisar_coordiandor_servicio = $cont_porrevisarCoordinador;

// cont_respuestoservicioProveedor
        // return $serviciorepuestos_proveedor;

        // $cont_respuestoservicioProveedor = $serviciorepuestos_proveedor;
        
        // $cont_respuestoservicioProveedorFinalizadas = $serviciorepuestos_proveedor_finalizadas;

       
        // $cont_respuestoservicioProveedorAsignadas = $serviciorepuestos_proveedor_asginada;
       
        //PROVEEDOR
        $data['cont_repuestosProveedor'] = $cont_repuestosProveedor;
        $data['cont_respuestoservicioProveedor'] = $cont_respuestoservicioProveedor;
        $data['cont_respuestoservicioProveedorFinalizadas'] = $cont_respuestoservicioProveedorFinalizadas;
        $data['cont_respuestoservicioProveedorAsignadas'] = $cont_respuestoservicioProveedorAsignadas;

        
        $data['cont_asignadoservicioProveedor'] = $cont_asignadoservicioProveedor;
        $data['cont_asignadoProveedor'] = $cont_asignadoProveedor;
        //TECNICO
        $data['suma_pendientes_tecnico'] = $suma_pendientes;
        $data['suma_encursos_tecnico'] = $suma_encursos;
        $data['suma_rechazado_tecnico'] = $suma_rechazado;
        //COORDINADOR
        $data['suma_porreasignars_coordiandor'] = $suma_porreasignars_coordiandor;
        $data['suma_pendientes_coordinador'] = $suma_pendientes_coordinador;
        $data['suma_porasignar_coordinador'] = $suma_porasignar_coordinador;
        $data['suma_encursos_coordiandor'] = $suma_encursos_coordiandor;
        $data['suma_porrevisar_coordiandor'] = $suma_porrevisar_coordiandor;
        $data['suma_pendientes_coordinador_servicio'] = $suma_pendientes_coordinador_servicio;
        $data['suma_porasignar_coordinador_servicio'] = $suma_porasignar_coordinador_servicio;
        $data['suma_encursos_coordiandor_servicio'] = $suma_encursos_coordiandor_servicio;
        $data['suma_porreasignar_coordiandor_servicio'] = $suma_porreasignar_coordiandor_servicio;
        $data['suma_porrevisar_coordiandor_servicio'] = $suma_porrevisar_coordiandor_servicio;

        return $data;
    }
    public function index_ins_ret()
    { {
            //SELECT TECNICOS
            $trabajadores = DB::table('personas')
                ->join('trabajadors', 'trabajadors.id_persona', '=', 'personas.id')
                ->select(
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'trabajadors.id'
                )
                ->where('trabajadors.estado', '=', '1')
                ->orderBy('trabajadors.id', 'desc')
                ->get();

            $datos_trabajador = DB::table('trabajadors')
                ->where('trabajadors.id_login', '=', Auth::user()->id)
                ->get();

            if (count($datos_trabajador) != 0) {
                $id_trabajador = $datos_trabajador[0]->id;
            } else {
                $id_trabajador = 0;
            }

            //$databases = $this->nombre_database();
                    $databases = App\bd_proveedores::selectDB();


            /** SECCION INSTALACION - RETIRO */
            $count_pendienteCoordinador = 0;
            $count_porasignarCoordinador = 0;
            $count_cursoCoordinador = 0;
            $count_porreasignarCoordinador = 0;
            $count_pendientes = 0;
            $count_curso = 0;
            $count_rechazado = 0;
            foreach ($databases as $los_datos) {
                //SELECT MODALS 
                $datos_clientes[] = DB::connection(strtolower($los_datos->Database))->select('SELECT  clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4');
                $datos_clientes_porasignar[] = DB::connection(strtolower($los_datos->Database))->select('SELECT instalacions.sCliente FROM instalacions UNION SELECT retiros.sCliente FROM retiros');

                //ESTADO PENDIENTE PARA COORDINADOR
                $retiros_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                    ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                    ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                    ->select(
                        'asignacion_retiros.id'
                    )
                    ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                    ->where('checklist_retiros.estado_inicio', '=', null);
                $instalacion_pendientes_coordinador = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                    ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                    ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                    ->select(
                        'asignacion_instalacions.id'
                    )
                    ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                    ->where('checklist_instalacions.estado_inicio', '=', null)
                    ->orderBy('fecha_visita', 'desc')
                    ->union($retiros_pendientes_coordinador)
                    ->count();

                $count_pendienteCoordinador += $instalacion_pendientes_coordinador;

                //ESTADO POR ASIGNAR PARA COORDINADOR 
                $retiros_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('retiros')
                    ->select('retiros.id')
                    ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
                $instalacion_porasignar_coordinador = DB::connection(strtolower($los_datos->Database))->table('instalacions')
                    ->select('instalacions.id')
                    ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
                    ->union($retiros_porasignar_coordinador)
                    ->count();

                $count_porasignarCoordinador += $instalacion_porasignar_coordinador;

                //ESTADO EN CURSO PARA COORDIANDOR
                $retiros_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                    ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                    ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                    ->select('asignacion_retiros.id')
                    ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                    ->where('checklist_retiros.estado_inicio', '=', 'activo');
                $instalacion_curso_coordiandor =  DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                    ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                    ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                    ->select('asignacion_instalacions.id')
                    ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                    ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                    ->orderBy('fecha_visita', 'desc')
                    ->union($retiros_curso_coordiandor)
                    ->count();

                $count_cursoCoordinador += $instalacion_curso_coordiandor;

                //ESTADO POR REASIGNAR COORDINADOR PARA COORDIANDOR
                $retiros_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                    ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                    ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                    ->select('asignacion_retiros.id')
                    ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
                $instalacion_porreasignar_coordiandor = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                    ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                    ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                    ->select('asignacion_instalacions.id')
                    ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
                    ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
                    ->union($retiros_porreasignar_coordiandor)
                    ->count();

                $count_porreasignarCoordinador += $instalacion_porreasignar_coordiandor;

                //ESTADO PENDIENTE PARA TECNICO 
                $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                    ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                    ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                    ->select('asignacion_retiros.id')
                    ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                    ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
                $instalacion_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                    ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                    ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                    ->select('asignacion_instalacions.id')
                    ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                    ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                    ->orderBy('fecha_visita', 'desc')
                    ->union($retiros_pendientes)
                    ->count();

                $count_pendientes += $instalacion_pendientes;

                //ESTADO EN CURSO PARA TECNICO
                $retiros_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                    ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                    ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                    ->select(
                        'asignacion_retiros.id'
                    )
                    ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                    ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                    ->where('checklist_retiros.estado_inicio', '=', 'activo');
                $instalacion_curso = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                    ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                    ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                    ->select(
                        'asignacion_instalacions.id'
                    )
                    ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                    ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                    ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                    ->orderBy('fecha_visita', 'desc')
                    ->union($retiros_curso)
                    ->count();

                $count_curso += $instalacion_curso;

                //ESTADO EN RECHAZADOS PARA TECNICO
                $retiros_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                    ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                    ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                    ->select(
                        'asignacion_retiros.id'
                    )
                    ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                    ->where('asignacion_retiros.estado_asignacion', '=', 'rechazado');
                $servicios_rechazados = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->select('asignacion_solicitudes.id')
                    ->where('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                    ->where('api_solicitudes.estado_externo', '=', 'RECHAZADO')
                    ->where('asignacion_solicitudes.estado_interno', '=', 'RECHAZADO')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'RECHAZADO')
                    ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
                $instalacion_rechazado = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                    ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                    ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                    ->select(
                        'asignacion_instalacions.id'
                    )
                    ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                    ->where('asignacion_instalacions.estado_asignacion', '=', 'rechazado')
                    ->orderBy('fecha_visita', 'desc')
                    ->union($servicios_rechazados)
                    ->union($retiros_rechazado)
                    ->count();

                $count_rechazado += $instalacion_rechazado;
            }
            $suma_pendientes_coordinador = $count_pendienteCoordinador;
            $suma_porasignar_coordinador = $count_porasignarCoordinador;
            $suma_encursos_coordiandor = $count_cursoCoordinador;
            $suma_porreasignars_coordiandor = $count_porreasignarCoordinador;
            //TECNICO
            $suma_pendientes = $count_pendientes;
            $suma_encursos = $count_curso;
            $suma_rechazado = $count_rechazado;

            
            return view('home_instalacionretiro', compact('suma_porreasignars_coordiandor', 'trabajadores', 'datos_clientes_porasignar', 'datos_clientes', 'suma_pendientes', 'suma_encursos', 'suma_rechazado', 'suma_pendientes_coordinador', 'suma_porasignar_coordinador', 'suma_encursos_coordiandor'));
        }
    }
    public function establecer_proveedor(Request $request)
    {
        $nombre_proveedores = DB::table('config_usuarios')
            ->select('id', 'nombre_proveedor', 'name_bd')
            ->where('estado', '=', 1)
            ->get();

        $nombre_DB = DB::connection()->getDatabaseName();
        return "ok";
    }

    /** FUNCION PARA REVISAR ATENCIONES PENDIENTES TECNICOS  */
    /** FUNCION PARA REVISAR ATENCIONES PENDIENTES TECNICOS  */
    public function revisar_pendiente_tecnico()
    {
        $datos_trabajador = DB::table('trabajadors')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select('trabajadors.id', 'personas.nombre_uno', 'personas.apellido_uno')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        $id_trabajador = $datos_trabajador[0]->id;

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        foreach ($databases as $los_datos) {
            $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'retiros.nFolio as sc',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    DB::raw("NULL as estado_externo"),
                    'retiros.proveedor_retiro as proveedor',
                    DB::raw("NULL as sDescripcion"),
                    DB::raw("NULL as id_instalacion"),
                    DB::raw('null as idSala')

                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
            $servicio_pendientes = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select(
                    'check_formulario_solicitudes.sSerie as serie',
                    'check_formulario_solicitudes.sSC as sc',
                    'check_formulario_solicitudes.sComuna as comuna',
                    'check_formulario_solicitudes.sRegion as region',
                    'check_formulario_solicitudes.sCliente as cliente',
                    'tracker.tipo_tracker as tipo',
                    'asignacion_solicitudes.id',
                    'asignacion_solicitudes.estado_externo',
                    'api_solicitudes.proveedor_servicio as proveedor',
                    'api_solicitudes.sDescripcion as sDescripcion',
                    DB::raw("NULL as id_instalacion"),
                    DB::raw('null as idSala')


                )
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //TRANSITO
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //INICIADO
                ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_pendientes[] = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.CsSc as sc',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',

                    DB::raw("NULL as estado_externo"),
                    'instalacions.proveedor_instalacion as proveedor',
                    DB::raw("NULL as sDescripcion"),
                    'asignacion_instalacions.lista_instalacion_id as id_instalacion',
                    'checklist_instalacions.idSala',


                )
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->union($servicio_pendientes)
                ->union($retiros_pendientes)
                ->get();
        }
        $table = "";
        for ($i = 0; $i < count($instalacion_pendientes); $i++) {
            foreach ($instalacion_pendientes[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . $datos_trabajador[0]->nombre_uno . "" . $datos_trabajador[0]->apellido_uno . "</td>";

                if($d1->cliente == "KYOCERA"){
                     $razonSocial = "";
                     $tipo = "";
                    //  $instalacion_kyocera_pendientes = DB::connection('kyocera')->table('instalacions')

                     $razonsocialTipo =DB::connection($d1->proveedor)->table('instalacions')
                      ->select('razonSocial','tipo')
                      ->where('instalacions.id', '=', $d1->id_instalacion)
                    //  ////->where('softwares.id','!=',1)
                      ->get();
                    
                     if( count($razonsocialTipo) != 0){
                         $razonSocial = $razonsocialTipo[0]->razonSocial;
                         $tipo = $razonsocialTipo[0]->tipo;
                     }else{
                        $tipo ="nanana";
                     }
                    $table .= "<td>" . strtoupper($tipo)  . "</td>";
                }else{
                    $table .= "<td>" . strtoupper($d1->tipo) . "</td>";
                }
                
                
                if($d1->cliente == "KYOCERA"){
                    $table .= "<td>" . strtoupper($razonSocial)  . "</td>";

                }else{
                    $table .= "<td>" . $d1->cliente . "</td>";

                }
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->idSala . "</td>";

                $table .= "<td>" . $d1->serie . "</td>";
                // $table .= "<td> </td>";
               
                if ($d1->tipo == "retiro") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    if ($d1->sc == "") {
                        $table .= "<td>NO REGISTRA </td>";
                    } else {
                        $table .= "<td>" . $d1->sc . "</td>";
                    }
                }

                if ($d1->sDescripcion == "") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    $table .= "<td>" . $d1->sDescripcion . "</td>";
                }
            



                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                    <form action="' . route('go.ChecklistRetiros') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                    </form>
                </td>';
                } else if ($d1->tipo == "instalacion") {
                    $table .=
                        '<td>
                    <form action="' . route('go.completando_check') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                    </form>
                </td>';
                } else if ($d1->tipo == "servicios") {
                    if ($d1->estado_externo == "ASIGNADO") {
                        $table .=
                            '<td>
                    <form action="' . route('iniciando.checklist.servicios_en_transito') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">local_shipping</span></button>
                    </form>
                    </td>';
                    } else if ($d1->estado_externo == "EN TRANSITO") {
                        $table .=
                            '<td><form action="' . route('iniciando.checklist.servicios_en_espera') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">factory</span></button>
                    </form>
                    </td>';
                    } else if ($d1->estado_externo == "ESPERANDO" || $d1->estado_externo == "INICIADO") {
                        $table .=
                            '<td><form action="' . route('go.iniciarchecservicio') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">play_arrow</span></button>
                    </form>
                    </td>';
                    }
                }
                $table .= "</tr>";
            }
        }

        return $table;
    }
    public function revisar_pendiente_tecnico_old_22_02_23()
    {
        $datos_trabajador = DB::table('trabajadors')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select('trabajadors.id', 'personas.nombre_uno', 'personas.apellido_uno')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        $id_trabajador = $datos_trabajador[0]->id;

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        foreach ($databases as $los_datos) {
            $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'retiros.nFolio as sc',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    DB::raw("NULL as estado_externo"),
                    'retiros.proveedor_retiro as proveedor',
                    DB::raw("NULL as sDescripcion"),
                    DB::raw("NULL as id_instalacion"),
                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
            $servicio_pendientes = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select(
                    'check_formulario_solicitudes.sSerie as serie',
                    'check_formulario_solicitudes.sSC as sc',
                    'check_formulario_solicitudes.sComuna as comuna',
                    'check_formulario_solicitudes.sRegion as region',
                    'check_formulario_solicitudes.sCliente as cliente',
                    'tracker.tipo_tracker as tipo',
                    'asignacion_solicitudes.id',
                    'asignacion_solicitudes.estado_externo',
                    'api_solicitudes.proveedor_servicio as proveedor',
                    'api_solicitudes.sDescripcion as sDescripcion',
                    DB::raw("NULL as id_instalacion"),

                )
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //TRANSITO
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //INICIADO
                ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_pendientes[] = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.CsSc as sc',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',

                    DB::raw("NULL as estado_externo"),
                    'instalacions.proveedor_instalacion as proveedor',
                    DB::raw("NULL as sDescripcion"),
                    'asignacion_instalacions.lista_instalacion_id as id_instalacion',
                    

                )
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->union($servicio_pendientes)
                ->union($retiros_pendientes)
                ->get();
        }
        $table = "";
        for ($i = 0; $i < count($instalacion_pendientes); $i++) {
            foreach ($instalacion_pendientes[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . $datos_trabajador[0]->nombre_uno . "" . $datos_trabajador[0]->apellido_uno . "</td>";

                if($d1->cliente == "KYOCERA"){
                     $razonSocial = "";
                     $tipo = "";
                    //  $instalacion_kyocera_pendientes = DB::connection('kyocera')->table('instalacions')

                     $razonsocialTipo =DB::connection($d1->proveedor)->table('instalacions')
                      ->select('razonSocial','tipo')
                      ->where('instalacions.id', '=', $d1->id_instalacion)
                    //  ////->where('softwares.id','!=',1)
                      ->get();
                    
                     if( count($razonsocialTipo) != 0){
                         $razonSocial = $razonsocialTipo[0]->razonSocial;
                         $tipo = $razonsocialTipo[0]->tipo;
                     }else{
                        $tipo ="nanana";
                     }
                    $table .= "<td>" . strtoupper($tipo)  . "</td>";
                }else{
                    $table .= "<td>" . strtoupper($d1->tipo) . "</td>";
                }
                
                
                if($d1->cliente == "KYOCERA"){
                    $table .= "<td>" . strtoupper($razonSocial)  . "</td>";

                }else{
                    $table .= "<td>" . $d1->cliente . "</td>";

                }
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                // $table .= "<td> </td>";
               
                if ($d1->tipo == "retiro") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    if ($d1->sc == "") {
                        $table .= "<td>NO REGISTRA </td>";
                    } else {
                        $table .= "<td>" . $d1->sc . "</td>";
                    }
                }

                if ($d1->sDescripcion == "") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    $table .= "<td>" . $d1->sDescripcion . "</td>";
                }
            



                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                    <form action="' . route('go.ChecklistRetiros') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                    </form>
                </td>';
                } else if ($d1->tipo == "instalacion") {
                    $table .=
                        '<td>
                    <form action="' . route('go.completando_check') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                    </form>
                </td>';
                } else if ($d1->tipo == "servicios") {
                    if ($d1->estado_externo == "ASIGNADO") {
                        $table .=
                            '<td>
                    <form action="' . route('iniciando.checklist.servicios_en_transito') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">local_shipping</span></button>
                    </form>
                    </td>';
                    } else if ($d1->estado_externo == "EN TRANSITO") {
                        $table .=
                            '<td><form action="' . route('iniciando.checklist.servicios_en_espera') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">factory</span></button>
                    </form>
                    </td>';
                    } else if ($d1->estado_externo == "ESPERANDO" || $d1->estado_externo == "INICIADO") {
                        $table .=
                            '<td><form action="' . route('go.iniciarchecservicio') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">play_arrow</span></button>
                    </form>
                    </td>';
                    }
                }
                $table .= "</tr>";
            }
        }

        return $table;
    }

    public function revisar_pendiente_tecnico_old()
    {
        $datos_trabajador = DB::table('trabajadors')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select('trabajadors.id', 'personas.nombre_uno', 'personas.apellido_uno')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        $id_trabajador = $datos_trabajador[0]->id;

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        foreach ($databases as $los_datos) {
            $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'retiros.nFolio as sc',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    DB::raw("NULL as estado_externo"),
                    'retiros.proveedor_retiro as proveedor',
                    DB::raw("NULL as sDescripcion"),
                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada');
            $servicio_pendientes = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select(
                    'check_formulario_solicitudes.sSerie as serie',
                    'check_formulario_solicitudes.sSC as sc',
                    'check_formulario_solicitudes.sComuna as comuna',
                    'check_formulario_solicitudes.sRegion as region',
                    'check_formulario_solicitudes.sCliente as cliente',
                    'tracker.tipo_tracker as tipo',
                    'asignacion_solicitudes.id',
                    'asignacion_solicitudes.estado_externo',
                    'api_solicitudes.proveedor_servicio as proveedor',
                    'api_solicitudes.sDescripcion as sDescripcion'

                )
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //TRANSITO
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador)
                //INICIADO
                ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_pendientes[] = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.CsSc as sc',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    DB::raw("NULL as estado_externo"),
                    'instalacions.proveedor_instalacion as proveedor',
                    DB::raw("NULL as sDescripcion"),
                )
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->union($servicio_pendientes)
                ->union($retiros_pendientes)
                ->get();
        }
        $table = "";
        for ($i = 0; $i < count($instalacion_pendientes); $i++) {
            foreach ($instalacion_pendientes[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . $datos_trabajador[0]->nombre_uno . "" . $datos_trabajador[0]->apellido_uno . "</td>";
                $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                // $table .= "<td>" . "". "</td>";
                if ($d1->tipo == "retiro") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    if ($d1->sc == "") {
                        $table .= "<td>NO REGISTRA </td>";
                    } else {
                        $table .= "<td>" . $d1->sc . "</td>";
                    }
                }
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                    <form action="' . route('go.ChecklistRetiros') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                    </form>
                </td>';
                } else if ($d1->tipo == "instalacion") {
                    $table .=
                        '<td>
                    <form action="' . route('go.completando_check') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                    </form>
                </td>';
                } else if ($d1->tipo == "servicios") {
                    if ($d1->estado_externo == "ASIGNADO") {
                        $table .=
                            '<td>
                    <form action="' . route('iniciando.checklist.servicios_en_transito') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">local_shipping</span></button>
                    </form>
                    </td>';
                    } else if ($d1->estado_externo == "EN TRANSITO") {
                        $table .=
                            '<td><form action="' . route('iniciando.checklist.servicios_en_espera') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">factory</span></button>
                    </form>
                    </td>';
                    } else if ($d1->estado_externo == "ESPERANDO" || $d1->estado_externo == "INICIADO") {
                        $table .=
                            '<td><form action="' . route('go.iniciarchecservicio') . '" method="GET">
                        <input type="hidden" name="proveedor" value="' . $d1->proveedor . '">
                        <input type="hidden" name="idAsig" value="' . Crypt::encryptString($d1->id) . '">
                        <button class="btn"><span class="material-icons-round">play_arrow</span></button>
                    </form>
                    </td>';
                    }
                }
                $table .= "</tr>";
            }
        }

        return $table;
    }
    /** FUNCION PARA REVISAR ATENCIONES EN CURSO TECNICO */
    public function revisar_encurso_tecnico()
    {
        $datos_trabajador = DB::table('trabajadors')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select('trabajadors.id', 'personas.nombre_uno', 'personas.apellido_uno')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        $id_trabajador = $datos_trabajador[0]->id;

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        //ESTADO ENCURSO TECNICO
        foreach ($databases as $los_datos) {
            $retiros_encurso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'retiros.nFolio as sc',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    'retiros.proveedor_retiro as proveedor',
                    DB::raw("NULL as sDescripcion"),

                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', 'activo');
            $servicio_encurso = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select(
                    'check_formulario_solicitudes.sSerie as serie',
                    'check_formulario_solicitudes.sSC as sc',
                    'check_formulario_solicitudes.sComuna as comuna',
                    'check_formulario_solicitudes.sRegion as region',
                    'check_formulario_solicitudes.sCliente as cliente',
                    'tracker.tipo_tracker as tipo',
                    'asignacion_solicitudes.id',
                    'api_solicitudes.proveedor_servicio as proveedor',
                    'api_solicitudes.sDescripcion as sDescripcion'

                )
                //TRANSITO
                ->where('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_encurso[]  = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.CsSc as sc',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    'instalacions.proveedor_instalacion as proveedor',
                    DB::raw("NULL as sDescripcion"),

                )
                ->where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                ->union($servicio_encurso)
                ->union($retiros_encurso)
                ->get();
        }
        $table = "";
        for ($i = 0; $i < count($instalacion_encurso); $i++) {
            foreach ($instalacion_encurso[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . $datos_trabajador[0]->nombre_uno . "" . $datos_trabajador[0]->apellido_uno . "</td>";
                $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                if ($d1->tipo == "retiro") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    if ($d1->sc == "") {
                        $table .= "<td>NO REGISTRA </td>";
                    } else {
                        $table .= "<td>" . $d1->sc . "</td>";
                    }
                }
                $table .= "<td>" . $d1->sDescripcion . "</td>";

                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <form action="' . route('go.ChecklistRetiros') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                } else if ($d1->tipo == "instalacion") {
                    $table .=
                        '<td>
                        <form action="' . route('go.completando_check') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                } else if ($d1->tipo == "servicios") {
                    $table .=
                        '<td>
                        <form action="' . route('go.iniciarchecservicio') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . Crypt::encryptString($d1->id) . '" name="idAsig">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                }
                $table .= "</tr>";
            }
        }

        return $table;
    }
    /** FUNCION PARA REVISAR ATENCIONES RECHAZADAS TECNICO */
    public function revisar_rechazados_tecnico()
    {
        $datos_trabajador = DB::table('trabajadors')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select('trabajadors.id', 'personas.nombre_uno', 'personas.apellido_uno')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        $id_trabajador = $datos_trabajador[0]->id;

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        foreach ($databases as $los_datos) {

            //ESTADO PENDIENTE PARA TECNICO 
            $retiros_rechazados = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'retiros.nFolio as sc',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    'retiros.proveedor_retiro as proveedor',
                    DB::raw("NULL as sDescripcion")

                )
                ->where('asignacion_retiros.trabajadors_idtecnico', '=', $id_trabajador)
                ->where('asignacion_retiros.estado_asignacion', '=', 'rechazado');
            $servicio_rechazados = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('check_formulario_solicitudes', 'check_formulario_solicitudes.id', '=', 'asignacion_solicitudes.check_formulario_solicitudes_id')
                ->join('tracker', 'tracker.id', '=', 'api_solicitudes.tracker_idtracker')
                ->select(
                    'check_formulario_solicitudes.sSerie as serie',
                    'check_formulario_solicitudes.sSC as sc',
                    'check_formulario_solicitudes.sComuna as comuna',
                    'check_formulario_solicitudes.sRegion as region',
                    'check_formulario_solicitudes.sCliente as cliente',
                    'tracker.tipo_tracker as tipo',
                    'asignacion_solicitudes.id',
                    'api_solicitudes.proveedor_servicio as proveedor',
                    'api_solicitudes.sDescripcion as sDescripcion'

                )
                ->where('api_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->where('api_solicitudes.estado_externo', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'RECHAZADO')
                ->where('asignacion_solicitudes.trabajadors_id', '=', $id_trabajador);
            $instalacion_rechazados[] = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.CsSc as sc',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    'instalacions.proveedor_instalacion as proveedor',
                    DB::raw("NULL as sDescripcion")

                )
                ->Where('asignacion_instalacions.trabajadors_id', '=', $id_trabajador)
                ->where('asignacion_instalacions.estado_asignacion', '=', 'rechazado')
                ->union($retiros_rechazados)
                ->union($servicio_rechazados)
                ->get();
        }

        $table = "";
        for ($i = 0; $i < count($instalacion_rechazados); $i++) {
            foreach ($instalacion_rechazados[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . $datos_trabajador[0]->nombre_uno . "" . $datos_trabajador[0]->apellido_uno . "</td>";
                $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                if ($d1->tipo == "retiro") {
                    $table .= "<td>NO REGISTRA </td>";
                } else {
                    if ($d1->sc == "") {
                        $table .= "<td>NO REGISTRA </td>";
                    } else {
                        $table .= "<td>" . $d1->sc . "</td>";
                    }
                }
                $table .= "<td>" . $d1->sDescripcion . "</td>";

                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <form action="' . route('go.ChecklistRetiros') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                } else if ($d1->tipo == "instalacion") {
                    $table .=
                        '<td>
                        <form action="' . route('go.completando_check') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <form action="' . route('go.iniciarchecservicio') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . Crypt::encryptString($d1->id) . '" name="idAsig">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                }
                $table .= "</tr>";
            }
        }

        return $table;
    }
    /** FUNCION PARA REVISAR ATENCIONES POR ASIGNAR COORDINADOR  */
    public function revisar_porasignar()
    {


                        $databases = App\bd_proveedores::selectDB();

        foreach ($databases as $los_datos) {
              
        $retiros_comtecglobal_pendientes = DB::connection(strtolower($los_datos->Database))->table('retiros')
            ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
            ->select(
                'retiros.proveedor_retiro as proveedor',
                'tracker.tipo_tracker as tipo',
                'retiros.sCliente as cliente',
                'retiros.sRegion',
                'retiros.sComuna',
                'retiros.sSerie',
                'retiros.id',
                DB::raw('null as idSala')

            )
            ->where('retiros.sCliente', '<>', 'kyocera')

            ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
        $instalacion_comtecglobal_pendientes[] = DB::connection(strtolower($los_datos->Database))->table('instalacions')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->select(
                'instalacions.proveedor_instalacion as proveedor',
                'tracker.tipo_tracker as tipo',
                'instalacions.sCliente as cliente',
                'instalacions.sRegion',
                'instalacions.sComuna',
                'instalacions.sSerie',
                'instalacions.id',
                'instalacions.idSala'
            )
            ->where('instalacions.sCliente', '<>', 'kyocera')

            ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
            ->union($retiros_comtecglobal_pendientes)
            ->get();


 }

      

        $table = "";
       for ($i = 0; $i < count($instalacion_comtecglobal_pendientes); $i++) {
            foreach ($instalacion_comtecglobal_pendientes[$i] as $d1) {
            $table .= "<tr>";
            $table .= "<td>"  . $d1->proveedor . "</td>";
            $table .= "<td>"  . $d1->tipo . "</td>";
            $table .= "<td>"  . $d1->cliente . "</td>";
            $table .= "<td>"  . $d1->sRegion . "</td>";
            $table .= "<td>"  . $d1->sComuna . "</td>";
            $table .= "<td>"  . $d1->idSala . "</td>";

            $table .= "<td>"  . $d1->sSerie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td> 
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn">Asignar</button>
                        </form> 
                    </td>';
            } else {
                $table .=
                    '<td> 
                    <form action="' . route('go.asignar_check_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
            }
            $table .= "</tr>";
           }
        }
    
  
        return $table;
    }
    public function revisar_porasignar_22_02_23()
    {
        $retiros_comtecglobal_pendientes = DB::connection('comtecglobal')->table('retiros')
            ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
            ->select(
                'retiros.proveedor_retiro as proveedor',
                'tracker.tipo_tracker as tipo',
                'retiros.sCliente as cliente',
                'retiros.sRegion',
                'retiros.sComuna',
                'retiros.sSerie',
                'retiros.id'
            )
            ->where('retiros.sCliente', '<>', 'kyocera')

            ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
        $instalacion_comtecglobal_pendientes = DB::connection('comtecglobal')->table('instalacions')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->select(
                'instalacions.proveedor_instalacion as proveedor',
                'tracker.tipo_tracker as tipo',
                'instalacions.sCliente as cliente',
                'instalacions.sRegion',
                'instalacions.sComuna',
                'instalacions.sSerie',
                'instalacions.id'
            )
            ->where('instalacions.sCliente', '<>', 'kyocera')

            ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
            ->union($retiros_comtecglobal_pendientes)
            ->get();
        $retiros_kyocera_pendientes = DB::connection('kyocera')->table('retiros')
            ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
            ->select(
                'retiros.proveedor_retiro as proveedor',
                'tracker.tipo_tracker as tipo',
                'retiros.sCliente as cliente',
                'retiros.sRegion',
                'retiros.sComuna',
                'retiros.sSerie',
                'retiros.id'
            )
            ->where('retiros.sCliente', '<>', 'kyocera')

            ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
        $instalacion_kyocera_pendientes = DB::connection('kyocera')->table('instalacions')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->select(
                'instalacions.proveedor_instalacion as proveedor',
                'tracker.tipo_tracker as tipo',
                'instalacions.sCliente as cliente',
                'instalacions.sRegion',
                'instalacions.sComuna',
                'instalacions.sSerie',
                'instalacions.id'
            )
            ->where('instalacions.sCliente', '<>', 'kyocera')

            ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
            ->union($retiros_kyocera_pendientes)
            ->get();

        $retiros_upgrade_pendientes = DB::connection('upgrade')->table('retiros')
            ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
            ->select(
                'retiros.proveedor_retiro as proveedor',
                'tracker.tipo_tracker as tipo',
                'retiros.sCliente as cliente',
                'retiros.sRegion',
                'retiros.sComuna',
                'retiros.sSerie',
                'retiros.id'
            )
            ->where('retiros.sCliente', '<>', 'kyocera')

            ->where('retiros.estado_retiro_Cord', '=', 'Por Asignar');
        $instalacion_upgrade_pendientes = DB::connection('upgrade')->table('instalacions')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->select(
                'instalacions.proveedor_instalacion as proveedor',
                'tracker.tipo_tracker as tipo',
                'instalacions.sCliente as cliente',
                'instalacions.sRegion',
                'instalacions.sComuna',
                'instalacions.sSerie',
                'instalacions.id'
            )
            ->where('instalacions.sCliente', '<>', 'kyocera')

            ->where('instalacions.sEstado_instalacion', 'like', '%Por Asignar%')
            ->union($retiros_upgrade_pendientes)
            ->get();

        $table = "";
        foreach ($instalacion_comtecglobal_pendientes as $d1) {
            $table .= "<tr>";
            $table .= "<td>"  . $d1->proveedor . "</td>";
            $table .= "<td>"  . $d1->tipo . "</td>";
            $table .= "<td>"  . $d1->cliente . "</td>";
            $table .= "<td>"  . $d1->sRegion . "</td>";
            $table .= "<td>"  . $d1->sComuna . "</td>";
            $table .= "<td>"  . $d1->sSerie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td> 
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn">Asignar</button>
                        </form> 
                    </td>';
            } else {
                $table .=
                    '<td> 
                    <form action="' . route('go.asignar_check_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
            }
            $table .= "</tr>";
        }
        foreach ($instalacion_kyocera_pendientes as $d1) {
            $table .= "<tr>";
            $table .= "<td>" . $d1->proveedor . "</td>";
            $table .= "<td>"  . $d1->tipo . "</td>";
            $table .= "<td>"  . $d1->cliente . "</td>";
            $table .= "<td>"  . $d1->sRegion . "</td>";
            $table .= "<td>"  . $d1->sComuna . "</td>";
            $table .= "<td>"  . $d1->sSerie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td> 
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn">Asignar</button>
                        </form> 
                    </td>';
            } else {
                $table .=
                    '<td> 
                    <form action="' . route('go.asignar_check_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
            }
            $table .= "</tr>";
        }
        foreach ($instalacion_upgrade_pendientes as $d1) {
            $table .= "<tr>";
            $table .= "<td>" . $d1->proveedor . "</td>";
            $table .= "<td>"  . $d1->tipo . "</td>";
            $table .= "<td>"  . $d1->cliente . "</td>";
            $table .= "<td>"  . $d1->sRegion . "</td>";
            $table .= "<td>"  . $d1->sComuna . "</td>";
            $table .= "<td>"  . $d1->sSerie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td> 
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn">Asignar</button>
                        </form> 
                    </td>';
            } else {
                $table .=
                    '<td> 
                    <form action="' . route('go.asignar_check_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
            }
            $table .= "</tr>";
        }
        return $table;
    }

    public function revisar_pendientes_coordinador()
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            //ESTADO PENDIENTE PARA TECNICO 
            $retiros_pendientes = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    'retiros.proveedor_retiro as proveedor',
                    'retiros.id as id_historial',
                    'retiros.fecha_retiroCord as fecha',
                    'personas.nombre_uno',
                    'personas.apellido_uno'
                )
                ->where('checklist_retiros.Cscliente', '<>', 'kyocera')

                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', null)->groupBy('checklist_retiros.CsSerie');
            $instalacion_pendientes[] = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    'instalacions.proveedor_instalacion as proveedor',
                    'instalacions.id as id_historial',
                    'instalacions.fecha_instalacion_coordinadora as fecha',
                    'personas.nombre_uno',
                    'personas.apellido_uno'
                )
                ->where('checklist_instalacions.Cscliente', '<>', 'kyocera')

                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', null)->groupBy('checklist_instalacions.CsSerie')

                ->union($retiros_pendientes)
                ->get();
        }
        $table = "";
        $num_r = "";
        $num_i = "";
        for ($i = 0; $i < count($instalacion_pendientes); $i++) {
            foreach ($instalacion_pendientes[$i] as $d1) {
                // if ($d1->proveedor == "comtecglobal" || $d1->proveedor == "COMTECGLOBAL") {
                //     $num_i = 1;
                // }
                // if ($d1->proveedor == "kyocera") {
                //     $num_r = 1;
                //     $num_i = 2;
                // }
                // if ($d1->proveedor == "upgrade") {
                //     $num_i = 3;
                // }

                $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;

                if ($d1->fecha != "") {
                    $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y');
                } else {
                    $fecha = "NO REGISTRA";
                }
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";
          
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' . "'".$num_r ."'". ');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.finalizamanual_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">   
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                check_circle_outline
                                            </span>
                                        </button>
                                    </form>
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' . "'".$num_i . "'".');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function revisar_encurso_coordinador()
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        //ESTADO ENCURSO 
        foreach ($databases as $los_datos) {
            $retiros_encurso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'checklist_retiros.fecha_inicio as fecha',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    'retiros.proveedor_retiro as proveedor',
                    'retiros.id as id_historial',
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'asignacion_retiros.fecha_asignado',
                )
                ->where('asignacion_retiros.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_retiros.estado_inicio', '=', 'activo');
            $instalacion_encurso[]  = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.fecha_inicio as fecha',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    'instalacions.proveedor_instalacion as proveedor',
                    'instalacions.id as id_historial',
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'asignacion_instalacions.fecha_asignado',
                )
                ->where('asignacion_instalacions.estado_asignacion', '=', 'tarea_asignada')
                ->where('checklist_instalacions.estado_inicio', '=', 'activo')
                ->union($retiros_encurso)
                ->get();
        }
        $table = "";
        $num_r = "";
        $num_i = "";
        for ($i = 0; $i < count($instalacion_encurso); $i++) {
            foreach ($instalacion_encurso[$i]  as $d1) {

                $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;
                // if ($d1->proveedor == "comtecglobal") {
                //     $num_i = 1;
                // }
                // if ($d1->proveedor == "kyocera") {
                //     $num_r = 1;
                //     $num_i = 2;
                // }
                // if ($d1->proveedor == "upgrade") {
                //     $num_i = 3;
                // }
                $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";
                
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' ."'". $num_r ."'". ');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.finalizamanual_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">   
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                check_circle_outline
                                            </span>
                                        </button>
                                    </form>
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' ."'".$num_i ."'" . ');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function revisar_porreasignar_coordinador()
    {
        $datos_trabajador = DB::table('trabajadors')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select('trabajadors.id', 'personas.nombre_uno', 'personas.apellido_uno')
            ->where('trabajadors.id_login', '=', Auth::user()->id)
            ->get();

        $id_trabajador = $datos_trabajador[0]->id;

        //ESTADO PORREASIGNAR PARA COORDINADOR 
        $retiros_comtecglobal_encurso = DB::connection('comtecglobal')->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_retiros.fecha_asignado',
            )
            ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
        $instalacion_comtecglobal_encurso  = DB::connection('comtecglobal')->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
            )
            ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
            ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
            ->union($retiros_comtecglobal_encurso)
            ->get();
        $retiros_kyocera_encurso  = DB::connection('kyocera')->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_retiros.fecha_asignado',
            )
            ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
        $instalacion_kyocera_encurso  = DB::connection('kyocera')->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
            )
            ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
            ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
            ->union($retiros_kyocera_encurso)
            ->get();

        $retiros_upgrade_encurso  = DB::connection('upgrade')->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_retiros.fecha_asignado',
            )
            ->where('asignacion_retiros.estado_asignacion', '=', 'reasignar');
        $instalacion_upgrade_encurso  = DB::connection('upgrade')->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
            )
            ->where('asignacion_instalacions.estado_asignacion', '=', 'reasignar')
            ->where('instalacions.sEstado_instalacion', '=', 'reasignar')
            ->union($retiros_upgrade_encurso)
            ->get();

        $table = "";
        foreach ($instalacion_comtecglobal_encurso  as $d1) {
            $fecha = Carbon::createFromDate($d1->fecha_asignado)->format('d-m-y');
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $d1->cliente  . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
            } else {
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
            }
            $table .= "</tr>";
        }
        foreach ($instalacion_kyocera_encurso  as $d1) {
            $fecha = Carbon::createFromDate($d1->fecha_asignado)->format('d-m-y');
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            $table .= "<td>" . $d1->proveedor . "</td>";
            
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
            } else {
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
            }
            $table .= "</tr>";
        }
        foreach ($instalacion_upgrade_encurso  as $d1) {
            $fecha = Carbon::createFromDate($d1->fecha_asignado)->format('d-m-y');
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            if ($d1->tipo == "retiro") {
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
            } else {
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
            }
            $table .= "</tr>";
        }
        return $table;
    }
    public function revisar_porrevisar_coordinador()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        //ESTADO ENCURSO 
        foreach ($databases as $los_datos) {
            $retiros_encurso = DB::connection(strtolower($los_datos->Database))->table('asignacion_retiros')
                ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
                ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_retiros.csSerie as serie',
                    'checklist_retiros.fecha_inicio as fecha',
                    'checklist_retiros.csComuna as comuna',
                    'checklist_retiros.csRegion as region',
                    'checklist_retiros.Cscliente as cliente',
                    'asignacion_retiros.tipo',
                    'asignacion_retiros.id',
                    'retiros.proveedor_retiro as proveedor',
                    'retiros.id as id_historial',
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'asignacion_retiros.fecha_asignado',
                )
                ->where('checklist_retiros.Cscliente', '<>', 'kyocera')

                ->where('asignacion_retiros.estado_asignacion', '=', 'revisar');
            // ->where('checklist_retiros.estado_inicio', '=', 'revisar');
            $instalacion_encurso[]  = DB::connection(strtolower($los_datos->Database))->table('asignacion_instalacions')
                ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
                ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'checklist_instalacions.CsSerie as serie',
                    'checklist_instalacions.fecha_inicio as fecha',
                    'checklist_instalacions.Cscomuna as comuna',
                    'checklist_instalacions.Csregion as region',
                    'checklist_instalacions.Cscliente as cliente',
                    'asignacion_instalacions.tipo',
                    'asignacion_instalacions.id',
                    'instalacions.proveedor_instalacion as proveedor',
                    'instalacions.id as id_historial',
                    'personas.nombre_uno',
                    'personas.apellido_uno',
                    'asignacion_instalacions.fecha_asignado',
                )
                ->where('checklist_instalacions.Cscliente', '<>', 'kyocera')

                ->where('asignacion_instalacions.estado_asignacion', '=', 'revisar')
                ->where('instalacions.sEstado_instalacion', '=', 'revisar')
                ->union($retiros_encurso)
                ->get();
        }
        $table = "";
        $num_r = "";
        $num_i = "";
        for ($i = 0; $i < count($instalacion_encurso); $i++) {
            foreach ($instalacion_encurso[$i]  as $d1) {
                // if ($d1->proveedor == "comtecglobal") {
                //     $num_i = 1;
                // }
                // if ($d1->proveedor == "kyocera") {
                //     $num_r = 1;
                //     $num_i = 2;
                // }
                // if ($d1->proveedor == "upgrade") {
                //     $num_i = 3;
                // }
                $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;


                $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' ."'". $num_r ."'" .');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' ."'". $num_i ."'". ');" class="btn ver_historial_instalacion_home">
                                    <span class="material-icons">history</span>                                    
                                </a>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function seguimiento(request $request)
    {
        $serie = $request->serie;

        $retiros_comtecglobal_seguimiento = DB::connection('comtecglobal')->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_retiros.fecha_asignado',
                'retiros.sEstado as estado',
                'checklist_retiros.estado_inicio'
            )
            ->where('checklist_retiros.csSerie', '=', $serie);
        $instalacion_comtecglobal_seguimiento  = DB::connection('comtecglobal')->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
                'instalacions.sEstado_instalacion as estado',
                'checklist_instalacions.estado_inicio'
            )
            ->where('checklist_instalacions.CsSerie', '=', $serie)
            ->orwhere('checklist_instalacions.CsSerie_es', '=', $serie)
            ->union($retiros_comtecglobal_seguimiento)
            ->orderBy('id', 'desc')
            ->get();
        $retiros_kyocera_seguimiento  = DB::connection('kyocera')->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_retiros.fecha_asignado',
                'retiros.sEstado as estado',
                'checklist_retiros.estado_inicio'
            )
            ->where('checklist_retiros.csSerie', '=', $serie);
        $instalacion_kyocera_seguimiento  = DB::connection('kyocera')->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
                'instalacions.sEstado_instalacion as estado',
                'checklist_instalacions.estado_inicio'
            )
            ->where('checklist_instalacions.CsSerie', '=', $serie)
            ->orwhere('checklist_instalacions.CsSerie_es', '=', $serie)
            ->union($retiros_kyocera_seguimiento)
            ->orderBy('id', 'desc')
            ->take(1)
            ->get();

        $retiros_upgrade_seguimiento  = DB::connection('upgrade')->table('asignacion_retiros')
            ->join('checklist_retiros', 'checklist_retiros.asignacion_retiros_id', '=', 'asignacion_retiros.id')
            ->join('retiros', 'retiros.id', '=', 'asignacion_retiros.retiros_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_retiros.trabajadors_idtecnico')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_retiros.csSerie as serie',
                'checklist_retiros.csComuna as comuna',
                'checklist_retiros.csRegion as region',
                'checklist_retiros.Cscliente as cliente',
                'asignacion_retiros.tipo',
                'asignacion_retiros.id',
                'retiros.proveedor_retiro as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_retiros.fecha_asignado',
                'retiros.sEstado as estado',
                'checklist_retiros.estado_inicio'
            )
            ->where('checklist_retiros.csSerie', '=', $serie);
        $instalacion_upgrade_seguimiento  = DB::connection('upgrade')->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'checklist_instalacions.CsSerie as serie',
                'checklist_instalacions.Cscomuna as comuna',
                'checklist_instalacions.Csregion as region',
                'checklist_instalacions.Cscliente as cliente',
                'asignacion_instalacions.tipo',
                'asignacion_instalacions.id',
                'instalacions.proveedor_instalacion as proveedor',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
                'instalacions.sEstado_instalacion as estado',
                'checklist_instalacions.estado_inicio'
            )
            ->where('checklist_instalacions.CsSerie', '=', $serie)
            ->orwhere('checklist_instalacions.CsSerie_es', '=', $serie)
            ->union($retiros_upgrade_seguimiento)
            ->take(1)
            ->orderBy('id', 'desc')
            ->get();

        $table = "";
        foreach ($instalacion_comtecglobal_seguimiento as $d1) {
            $estado = $d1->estado;
            $estado_inicio = $d1->estado_inicio;
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $d1->fecha_asignado . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->region . "</td>";
            $table .= "<td>" . $d1->comuna . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            $table .= "<td>" . $d1->tipo . "</td>";
            $table .= "</tr>";
        }
        foreach ($instalacion_kyocera_seguimiento  as $d1) {
            $estado = $d1->estado;
            $estado_inicio = $d1->estado_inicio;
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $d1->fecha_asignado . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->region . "</td>";
            $table .= "<td>" . $d1->comuna . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            $table .= "<td>" . $d1->tipo . "</td>";
            $table .= "</tr>";
        }
        foreach ($instalacion_upgrade_seguimiento  as $d1) {
            $estado = $d1->estado;
            $estado_inicio = $d1->estado_inicio;
            $table .= "<tr>";
            $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
            $table .= "<td>" . $d1->fecha_asignado . "</td>";
            $table .= "<td>" . $d1->cliente . "</td>";
            $table .= "<td>" . $d1->region . "</td>";
            $table .= "<td>" . $d1->comuna . "</td>";
            $table .= "<td>" . $d1->serie . "</td>";
            $table .= "<td>" . $d1->tipo . "</td>";
            $table .= "</tr>";
        }

        $array_[] = array(
            "table" => $table,
            "estado" => $estado,
            "estado_inicio" => $estado_inicio
        );
        return $array_;
    }
    public function filtro_pendiente(request $request)
    {
        //$tables = DB::select('SHOW DATABASES');
        //return ($tables);
        $cliente = $request->cliente;
        $tipo = $request->tipo_a;
        $tecnico = $request->tecnico;
        $proveedor_ap = $request->proveedor_ap;

        $where  = 'asignacion_instalacions.estado_asignacion = ' . '"' . 'tarea_asignada' . '"';
         $where = $where . ' and instalacions.sEstado_instalacion = ' . '"' . 'asignado' . '"';

        $where_r  = 'asignacion_retiros.estado_asignacion = ' . '"' . 'tarea_asignada' . '"';
         $where_r = $where_r . ' and retiros.estado_retiro_Cord = ' . '"' . 'asignado' . '"';

        if ($cliente != "" || $cliente != null) {
            $where = $where . ' and clientes.id = ' . $cliente;
            $where_r = $where_r . ' and clientes.id = ' . $cliente;
        }
        if ($tipo != "" || $tipo != null) {
            $where = $where . ' and asignacion_instalacions.tipo = ' . '"' . $tipo . '"';
            $where_r = $where_r . ' and asignacion_retiros.tipo = ' . '"' . $tipo . '"';
        }
        if ($tecnico != "" || $tecnico != null) {
            $where = $where . ' and  asignacion_instalacions.trabajadors_id = ' . $tecnico;
            $where_r = $where_r . ' and  asignacion_retiros.trabajadors_idtecnico = ' . $tecnico;
        }
        if ($proveedor_ap != "" || $proveedor_ap != null) {
            $where = $where . ' and  instalacions.proveedor_instalacion = ' .'"' . $proveedor_ap . '"';
            $where_r = $where_r . ' and  retiros.proveedor_retiro = ' .'"' . $proveedor_ap . '"';
        }
        $where = $where . ' and  checklist_instalacions.Cscliente <> ' .'"' . "kyocera" . '"';
        $where_r = $where_r . ' and  checklist_retiros.Cscliente <> ' .'"' . "kyocera" . '"';
    
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT  
                checklist_retiros.csSerie as serie,
                checklist_retiros.csComuna as comuna,
                checklist_retiros.csRegion as region,
                checklist_retiros.Cscliente as cliente,
                asignacion_retiros.tipo,
                asignacion_retiros.id,
                retiros.proveedor_retiro as proveedor,
                retiros.id as id_historial,
                personas.nombre_uno,
                personas.apellido_uno,
                retiros.fecha_retiroCord as fecha

            FROM  
                asignacion_retiros
            INNER JOIN  
                checklist_retiros on checklist_retiros.asignacion_retiros_id = asignacion_retiros.id 
            INNER JOIN  
                retiros on retiros.id = asignacion_retiros.retiros_id 
            INNER JOIN 
                trabajadors on trabajadors.id = asignacion_retiros.trabajadors_idtecnico
            INNER JOIN 
                personas on personas.id = trabajadors.id_persona
            LEFT JOIN 
                tracker on tracker.id = retiros.tracker_id
            LEFT JOIN 
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN 
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where_r  .
                    ' union ' .
                    'SELECT
                checklist_instalacions.CsSerie as serie,
                checklist_instalacions.Cscomuna as comuna,
                checklist_instalacions.Csregion as region,
                checklist_instalacions.Cscliente as cliente,
                asignacion_instalacions.tipo,
                asignacion_instalacions.id,
                instalacions.proveedor_instalacion as proveedor,
                instalacions.id as id_historial,
                personas.nombre_uno,
                personas.apellido_uno,
                instalacions.fecha_instalacion_coordinadora as fecha

            FROM
                asignacion_instalacions
            INNER JOIN
                checklist_instalacions on checklist_instalacions.asignacion_instalacion_retiro_id = asignacion_instalacions.id 
            INNER JOIN
                instalacions on instalacions.id = asignacion_instalacions.lista_instalacion_id
            INNER JOIN   
                trabajadors on trabajadors.id = asignacion_instalacions.trabajadors_id
            INNER JOIN
                personas on personas.id = trabajadors.id_persona 
            LEFT JOIN
                tracker on tracker.id = instalacions.tracker_idtracker
            LEFT JOIN
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where
            );
        }

        $table = "";
        $num_r = "";
        $num_i = "";
        for ($i = 0; $i < count($datos_asignacion); $i++) {
            foreach ($datos_asignacion[$i] as $d1) {
                // if ($d1->proveedor == "comtecglobal") {
                //     $num_i = 1;
                // }
                // if ($d1->proveedor == "kyocera") {
                //     $num_r = 1;
                //     $num_i = 2;
                // }
                // if ($d1->proveedor == "upgrade") {
                //     $num_i = 3;
                // }
                $num_i = $d1->proveedor;
                $num_r = $d1->proveedor;
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" .Carbon::createFromDate($d1->fecha)->format('d-m-Y'). "</td>";
                $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_retiro(' . $d1->id_historial . ',' . "'".$num_r . "'".');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.finalizamanual_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">   
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                check_circle_outline
                                            </span>
                                        </button>
                                    </form>
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                    <a role="button" title="Historial" onclick="historial_instalacion(' . $d1->id_historial . ',' . "'".$num_i ."'". ');" class="btn ver_historial_instalacion_home">
                                        <span class="material-icons">history</span>                                    
                                    </a>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    private function nombre_database()
    {
        $tables = DB::select('SHOW DATABASES WHERE `Database` NOT LIKE ' . '"' . '%max%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%aya%' . '"' . '  AND  `Database` NOT LIKE ' . '"' . '%rutagas%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%schema%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%php%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%prueba%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%admin%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%fusion%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%sql%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%probando%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%soporte%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%sys%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%13octubre%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%nueva%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%rendicion%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%test%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%web%' . '"' . ' AND `Database` NOT LIKE ' . '"' . '%ofimundo%' . '"');
        return $tables;
    }
    //FILTRO POR ASIGNAR COORDINADOR
    public function filtro_porasignar(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        $cliente = $request->cliente;
        $tipo = $request->tipo_a;
        $proveedor_ap_asig = $request->proveedor_ap_asig;

        $where  = 'instalacions.sEstado_instalacion like ' . '"%' . 'Por asignar' . '%"';
        $where_r  = 'retiros.estado_retiro_Cord = ' . '"' . 'Por asignar' . '"';

        if ($cliente != "" || $cliente != null) {
            $where = $where . ' and instalacions.sCliente = ' . '"' . $cliente . '"';
            $where_r = $where_r . ' and retiros.sCliente = ' . '"' . $cliente . '"';
        }
        if ($tipo != "" || $tipo != null) {
            $where = $where . ' and tracker.tipo_tracker = ' . '"' . $tipo . '"';
            $where_r = $where_r . ' and tracker.tipo_tracker = ' . '"' . $tipo . '"';
        }
        if ($proveedor_ap_asig != "" || $proveedor_ap_asig != null) {
            $where = $where . ' and instalacions.proveedor_instalacion = ' . '"' . $proveedor_ap_asig . '"';
            $where_r = $where_r . ' and retiros.proveedor_retiro = ' . '"' . $proveedor_ap_asig . '"';
        }
        foreach ($databases as $los_datos) {
            $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT  
                retiros.proveedor_retiro as proveedor,
                tracker.tipo_tracker as tipo,
                retiros.sCliente as cliente,
                retiros.sRegion,
                retiros.sComuna,
                retiros.sSerie,
                retiros.id
                FROM  
                    retiros
                INNER JOIN  
                    tracker on tracker.id = retiros.tracker_id 
                WHERE ' . $where_r  .
                    ' union ' .
                    'SELECT
                instalacions.proveedor_instalacion as proveedor,
                tracker.tipo_tracker as tipo,
                instalacions.sCliente as cliente,
                instalacions.sRegion,
                instalacions.sComuna,
                instalacions.sSerie,
                instalacions.id
                FROM
                    instalacions
                INNER JOIN
                    tracker on tracker.id = instalacions.tracker_idtracker 
                WHERE ' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($datos_asignacion); $i++) {
            foreach ($datos_asignacion[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . $d1->proveedor . "</td>";
                $table .= "<td>" . $d1->tipo . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->sRegion . "</td>";
                $table .= "<td>" . $d1->sComuna . "</td>";
                $table .= "<td>" . $d1->sSerie . "</td>";
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td> 
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn">Asignar</button>
                        </form> 
                    </td>';
                } else {
                    $table .=
                        '<td> 
                    <form action="' . route('go.asignar_check_home') . '" method="GET">
                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                        <input type="hidden" value="' . $d1->id . '" name="id">
                        <button type="submit" class="btn">Asignar</button>
                    </form> 
                </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function filtro_encurso(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        $cliente = $request->cliente;
        $tipo = $request->tipo_a;
        $tecnico = $request->tecnico;
        $proveedor_encurso = $request->proveedor_encurso;

        $where  = 'asignacion_instalacions.estado_asignacion = ' . '"' . 'Tarea_asignada' . '" and checklist_instalacions.estado_inicio = ' . '"' . 'activo' . '" ';
        $where_r  = 'asignacion_retiros.estado_asignacion = ' . '"' . 'Tarea_asignada' . '" and checklist_retiros.estado_inicio = ' . '"' . 'activo' . '" ';

        if ($cliente != "" || $cliente != null) {
            $where = $where . ' and clientes.id = ' . $cliente;
            $where_r = $where_r . ' and clientes.id = ' . $cliente;
        }
        if ($tipo != "" || $tipo != null) {
            $where = $where . ' and asignacion_instalacions.tipo = ' . '"' . $tipo . '"';
            $where_r = $where_r . ' and asignacion_retiros.tipo = ' . '"' . $tipo . '"';
        }
        if ($tecnico != "" || $tecnico != null) {
            $where = $where . ' and  asignacion_instalacions.trabajadors_id = ' . $tecnico;
            $where_r = $where_r . ' and  asignacion_retiros.trabajadors_idtecnico = ' . $tecnico;
        }
        if ($proveedor_encurso != "" || $proveedor_encurso != null) {
            $where = $where . ' and  instalacions.proveedor_instalacion  = ' . '"' . $proveedor_encurso . '"';
            $where_r = $where_r . ' and  retiros.proveedor_retiro = ' . '"' . $proveedor_encurso . '"';
        }


        foreach ($databases as $los_datos) {
            $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT  
                checklist_retiros.csSerie as serie,
                checklist_retiros.fecha_inicio as fecha,
                checklist_retiros.csComuna as comuna,
                checklist_retiros.csRegion as region,
                checklist_retiros.Cscliente as cliente,
                asignacion_retiros.tipo,
                asignacion_retiros.id,
                retiros.proveedor_retiro as proveedor,
                personas.nombre_uno,
                personas.apellido_uno,
                asignacion_retiros.fecha_asignado
            FROM  
                asignacion_retiros
            INNER JOIN  
                checklist_retiros on checklist_retiros.asignacion_retiros_id = asignacion_retiros.id 
            INNER JOIN  
                retiros on retiros.id = asignacion_retiros.retiros_id 
            INNER JOIN 
                trabajadors on trabajadors.id = asignacion_retiros.trabajadors_idtecnico
            INNER JOIN 
                personas on personas.id = trabajadors.id_persona
            LEFT JOIN 
                tracker on tracker.id = retiros.tracker_id
            LEFT JOIN 
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN 
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where_r  .
                    ' union ' .
                    'SELECT
                checklist_instalacions.CsSerie as serie,
                checklist_instalacions.fecha_inicio as fecha,
                checklist_instalacions.Cscomuna as comuna,
                checklist_instalacions.Csregion as region,
                checklist_instalacions.Cscliente as cliente,
                asignacion_instalacions.tipo,
                asignacion_instalacions.id,
                instalacions.proveedor_instalacion as proveedor,
                personas.nombre_uno,
                personas.apellido_uno,
                asignacion_instalacions.fecha_asignado
            FROM
                asignacion_instalacions
            INNER JOIN
                checklist_instalacions on checklist_instalacions.asignacion_instalacion_retiro_id = asignacion_instalacions.id 
            INNER JOIN
                instalacions on instalacions.id = asignacion_instalacions.lista_instalacion_id
            INNER JOIN   
                trabajadors on trabajadors.id = asignacion_instalacions.trabajadors_id
            INNER JOIN
                personas on personas.id = trabajadors.id_persona 
            LEFT JOIN
                tracker on tracker.id = instalacions.tracker_idtracker
            LEFT JOIN
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($datos_asignacion); $i++) {
            foreach ($datos_asignacion[$i] as $d1) {
                $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.finalizamanual_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">   
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                check_circle_outline
                                            </span>
                                        </button>
                                    </form>
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function filtro_porrevisar(request $request)
    {
        $cliente = $request->cliente;
        $tipo = $request->tipo_a;
        $tecnico = $request->tecnico;
        $proveedor_por_rev = $request->proveedor_por_rev;

        
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        $where  = 'asignacion_instalacions.estado_asignacion = ' . '"' . 'revisar' . '" and instalacions.sEstado_instalacion = ' . '"' . 'revisar' . '" ';
        $where_r  = 'asignacion_retiros.estado_asignacion = ' . '"' . 'revisar' . '"';

        if ($cliente != "" || $cliente != null) {
            $where = $where . ' and clientes.id = ' . $cliente;
            $where_r = $where_r . ' and clientes.id = ' . $cliente;
        }
        if ($tipo != "" || $tipo != null) {
            $where = $where . ' and asignacion_instalacions.tipo = ' . '"' . $tipo . '"';
            $where_r = $where_r . ' and asignacion_retiros.tipo = ' . '"' . $tipo . '"';
        }
        if ($tecnico != "" || $tecnico != null) {
            $where = $where . ' and  asignacion_instalacions.trabajadors_id = ' . $tecnico;
            $where_r = $where_r . ' and  asignacion_retiros.trabajadors_idtecnico = ' . $tecnico;
        }

        if ($proveedor_por_rev != "" || $proveedor_por_rev != null) {
            $where = $where . ' and  instalacions.proveedor_instalacion = ' . '"' . $proveedor_por_rev . '"';
            $where_r = $where_r . ' and  retiros.proveedor_retiro = ' . '"' . $proveedor_por_rev . '"';
        }

        $where = $where . ' and  checklist_instalacions.Cscliente <> ' . '"' . "kyocera" . '"';
        $where_r = $where_r . ' and  checklist_retiros.Cscliente <> ' . '"' . "kyocera" . '"';
        foreach ($databases as $los_datos) {
            $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT  
                checklist_retiros.csSerie as serie,
                checklist_retiros.fecha_inicio as fecha,
                checklist_retiros.csComuna as comuna,
                checklist_retiros.csRegion as region,
                checklist_retiros.Cscliente as cliente,
                asignacion_retiros.tipo,
                asignacion_retiros.id,
                retiros.proveedor_retiro as proveedor,
                personas.nombre_uno,
                personas.apellido_uno,
                asignacion_retiros.fecha_asignado
            FROM  
                asignacion_retiros
            INNER JOIN  
                checklist_retiros on checklist_retiros.asignacion_retiros_id = asignacion_retiros.id 
            INNER JOIN  
                retiros on retiros.id = asignacion_retiros.retiros_id 
            INNER JOIN 
                trabajadors on trabajadors.id = asignacion_retiros.trabajadors_idtecnico
            INNER JOIN 
                personas on personas.id = trabajadors.id_persona
            LEFT JOIN 
                tracker on tracker.id = retiros.tracker_id
            LEFT JOIN 
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN 
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where_r  .
                    ' union ' .
                    'SELECT
                checklist_instalacions.CsSerie as serie,
                checklist_instalacions.fecha_inicio as fecha,
                checklist_instalacions.Cscomuna as comuna,
                checklist_instalacions.Csregion as region,
                checklist_instalacions.Cscliente as cliente,
                asignacion_instalacions.tipo,
                asignacion_instalacions.id,
                instalacions.proveedor_instalacion as proveedor,
                personas.nombre_uno,
                personas.apellido_uno,
                asignacion_instalacions.fecha_asignado
            FROM
                asignacion_instalacions
            INNER JOIN
                checklist_instalacions on checklist_instalacions.asignacion_instalacion_retiro_id = asignacion_instalacions.id 
            INNER JOIN
                instalacions on instalacions.id = asignacion_instalacions.lista_instalacion_id
            INNER JOIN   
                trabajadors on trabajadors.id = asignacion_instalacions.trabajadors_id
            INNER JOIN
                personas on personas.id = trabajadors.id_persona 
            LEFT JOIN
                tracker on tracker.id = instalacions.tracker_idtracker
            LEFT JOIN
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($datos_asignacion); $i++) {
            foreach ($datos_asignacion[$i] as $d1) {
                $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                                $table .= "<td>" . $d1->proveedor . "</td>";

                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_retirocordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                </div>
                            </div>
                        </div
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_cordinadora2') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button class="btn">
                                            <span class="material-icons-round">
                                                visibility
                                            </span>
                                        </button>
                                    </form>
                                </div>
                            </div>
                        </div
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function filtro_porreasignar(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        $cliente = $request->cliente;
        $tipo = strtolower($request->tipo_a);
        $tecnico = $request->tecnico;
        $proveedor_p_reasignar = $request->proveedor_p_reasignar;

        
        $where  = 'asignacion_instalacions.estado_asignacion = ' . '"' . 'reasignar' . '" and instalacions.sEstado_instalacion = ' . '"' . 'reasignar' . '" ';
        $where_r  = 'asignacion_retiros.estado_asignacion = ' . '"' . 'reasignar' . '"';

        if ($cliente != "" || $cliente != null) {
            $where = $where . ' and clientes.id = ' . $cliente;
            $where_r = $where_r . ' and clientes.id = ' . $cliente;
        }
        if ($tipo != "" || $tipo != null) {
            $where = $where . ' and asignacion_instalacions.tipo = ' . '"' . $tipo . '"';
            $where_r = $where_r . ' and asignacion_retiros.tipo = ' . '"' . $tipo . '"';
        }
        if ($tecnico != "" || $tecnico != null) {
            $where = $where . ' and  asignacion_instalacions.trabajadors_id = ' . $tecnico;
            $where_r = $where_r . ' and  asignacion_retiros.trabajadors_idtecnico = ' . $tecnico;
        }
        if ($proveedor_p_reasignar != "" || $proveedor_p_reasignar != null) {
            $where = $where . ' and  instalacions.proveedor_instalacion = '. '"' . $proveedor_p_reasignar . '"';
            $where_r = $where_r . ' and  retiros.proveedor_retiro = ' . '"' . $proveedor_p_reasignar . '"';
        }

        foreach ($databases as $los_datos) {
            $datos_asignacion[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT  
                checklist_retiros.csSerie as serie,
                checklist_retiros.csComuna as comuna,
                checklist_retiros.csRegion as region,
                checklist_retiros.Cscliente as cliente,
                asignacion_retiros.tipo,
                asignacion_retiros.id,
                retiros.proveedor_retiro as proveedor,
                personas.nombre_uno,
                personas.apellido_uno,
                asignacion_retiros.fecha_asignado
            FROM  
                asignacion_retiros
            INNER JOIN  
                checklist_retiros on checklist_retiros.asignacion_retiros_id = asignacion_retiros.id 
            INNER JOIN  
                retiros on retiros.id = asignacion_retiros.retiros_id 
            INNER JOIN 
                trabajadors on trabajadors.id = asignacion_retiros.trabajadors_idtecnico
            INNER JOIN 
                personas on personas.id = trabajadors.id_persona
            LEFT JOIN 
                tracker on tracker.id = retiros.tracker_id
            LEFT JOIN 
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN 
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where_r  .
                    ' union ' .
                    'SELECT
                checklist_instalacions.CsSerie as serie,
                checklist_instalacions.Cscomuna as comuna,
                checklist_instalacions.Csregion as region,
                checklist_instalacions.Cscliente as cliente,
                asignacion_instalacions.tipo,
                asignacion_instalacions.id,
                instalacions.proveedor_instalacion as proveedor,
                personas.nombre_uno,
                personas.apellido_uno,
                asignacion_instalacions.fecha_asignado
            FROM
                asignacion_instalacions
            INNER JOIN
                checklist_instalacions on checklist_instalacions.asignacion_instalacion_retiro_id = asignacion_instalacions.id 
            INNER JOIN
                instalacions on instalacions.id = asignacion_instalacions.lista_instalacion_id
            INNER JOIN   
                trabajadors on trabajadors.id = asignacion_instalacions.trabajadors_id
            INNER JOIN
                personas on personas.id = trabajadors.id_persona 
            LEFT JOIN
                tracker on tracker.id = instalacions.tracker_idtracker
            LEFT JOIN
                proyectos on proyectos.id = tracker.proyecto_id
            LEFT JOIN
                clientes on clientes.id = proyectos.clientes_id
            WHERE ' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($datos_asignacion); $i++) {
            foreach ($datos_asignacion[$i] as $d1) {
                $fecha = Carbon::createFromDate($d1->fecha_asignado)->format('d-m-y');
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";
                if ($d1->tipo == "retiro") {
                    $table .=
                        '<td>
                        <form action="' . route('go.asignar_check_retiro_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                } else {
                    $table .=
                        '<td>
                        <form action="' . route('go.asignar_check_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Editar.png") . '" alt="" style="margin: 2px 0px" /></button>
                        </form>
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function index_servicio()
    {
        //SELECT TRABAJADORES
        $trabajadores = DB::table('personas')
            ->join('trabajadors', 'trabajadors.id_persona', '=', 'personas.id')
            ->select('personas.nombre_uno', 'personas.apellido_uno', 'trabajadors.id')
            ->where('trabajadors.estado', '=', '1')
            ->orderBy('trabajadors.id', 'desc')
            ->get();

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        /** COORDINADOR */
        $cont_pendienteCoordinador = 0;
        $cont_porasignarCoordinador = 0;
        $cont_encursoCoordinador = 0;
        $cont_porreasignarCoordinador = 0;
        foreach ($databases as $los_datos) {
            $datos_clientes[] = DB::connection(strtolower($los_datos->Database))->select('SELECT clientes.razon_social as cliente, clientes.id FROM clientes WHERE clientes.id != 4');
            $datos_clientes_porasignar[] = DB::connection(strtolower($los_datos->Database))->select('SELECT DISTINCT api_solicitudes.sCliente FROM api_solicitudes');
            //SUMA PENDIENTE PARA COORINADOR
            $suma_pendientes_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                ->count();
            $cont_pendienteCoordinador += $suma_pendientes_coordinador_servicio;
            //SUMA POR ASIGNAR COORDINADOR
            $suma_porasignar_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'POR ASIGNAR')
                ->where('api_solicitudes.estado_externo', '=', 'POR ASIGNAR')
                ->orwhere('api_solicitudes.estado_interno', '=', NULL)
                ->where('api_solicitudes.estado_externo', '=', 'Sin asignar')
                ->count();
            $cont_porasignarCoordinador += $suma_porasignar_coordinador_servicio;
            //SUMA EN CURSO COORDINADOR
            $suma_encursos_coordinador_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                //TRANSITO
                ->where('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN TRANSITO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'EN TRANSITO')
                //EN ESPERA
                ->orwhere('api_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('api_solicitudes.estado_externo', '=', 'EN ESPERA')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                ->where('asignacion_solicitudes.estado_externo', '=', 'ESPERANDO')
                //INICIADO
                ->orwhere('api_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('api_solicitudes.estado_externo', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_interno', '=', 'INICIADO')
                ->where('asignacion_solicitudes.estado_externo', '=', 'INICIADO')
                ->count();
            $cont_encursoCoordinador += $suma_encursos_coordinador_servicio;

            $suma_porreasignars_coordiandor_servicio = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->where('api_solicitudes.estado_interno', '=', 'REASIGNAR')
                ->count();
            $cont_porreasignarCoordinador += $suma_porreasignars_coordiandor_servicio;
        }
        $suma_pendientes_coordinador = $cont_pendienteCoordinador;
        $suma_porasignar_coordinador = $cont_porasignarCoordinador;
        $suma_encursos_coordiandor = $cont_encursoCoordinador;
        $contador_porreasignar_coordinador = $cont_porreasignarCoordinador;
        /** FIN COORDINADOR */
        return view('home_servicio', compact('suma_pendientes_coordinador', 'suma_porasignar_coordinador', 'suma_encursos_coordiandor', 'contador_porreasignar_coordinador', 'trabajadores', 'datos_clientes', 'datos_clientes_porasignar'));
    }
    public function revisar_pendientes_coordinador_servicio()
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {

            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.fecha_asignado as fecha,
                    api_solicitudes.id as id_soli,
                    api_solicitudes.dFechaCreacion,
                    
                    api_solicitudes.proveedor_servicio as proveedor,
                    asignacion_solicitudes.id,
                    personas.nombre_uno,
                    personas.apellido_uno,
                    api_solicitudes.sDescripcion

                    
                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "tarea_asignada" and api_solicitudes.estado_externo = "ASIGNADO"
                and 
                    asignacion_solicitudes.estado_interno = "tarea_asignada" and asignacion_solicitudes.estado_externo = "ASIGNADO"'
            );
        }
        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                if ($d1->fecha != "") {
                    $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y');
                } else {
                    $fecha = "NO REGISTRA";
                }
                $table .= "<tr>";
                
                $datas = $this->calcularHoraDos($d1->dFechaCreacion,$d1->proveedor,$d1->region);

                //   $table .= "<td >" .$datas[0] ."</td>";
                     $table .= "<td >" . Carbon::parse($d1->dFechaCreacion)->format('d/m/Y H:i:s') . "<br>"."</td>";
                    
    
                      if( $datas[0] > 14 ||  $datas[0] < 0 ){
                          $table .= "<td style='background:red;color:white'>" . "Tiempo Superado" . "<br>"."</td>";
    
                     }elseif(($datas[0] >= 12 && $datas[0] <= 14)){
                        // $table .= "<td>" . $datas[1] . "<br>"."</td>";
                        $table .= "<td style='background:red;color:white'>" .$datas[1]  . "<br>"."</td>";
    
    
                    }
                     elseif($datas[0] >= 0 && $datas[0] <= 8){
                         $table .= "<td>" . $datas[1] . "<br>"."</td>";
    
                     }elseif($datas[0] >= 9 &&  $datas[0] <= 11){
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                     }else{
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                    }

                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" . $fecha  . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->region  . "</td>";
                $table .= "<td>" . $d1->comuna  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";
                
                $table .=

                    '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/revisar_m.png") . '" alt="" style="margin: 2px 0px" /></button>
                                    </form>
                                    <form action="' . route('go.finalizamanualservicios_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Finalizar_manual.png") . '" alt="" style="margin: 2px 0px" /></button>
                                    </form>
                                    <a role="button" title="Historial" onclick="hola(' ."'" .$d1->id_soli."'," ."'".$d1->proveedor."'". ')" class="btn ver_historial_servicio_home">
                                        <img src="' . asset("Botones/Botones/Historial.png") . '" alt="" style="margin: 2px 0px" />
                                    </a>
                                </div>
                            </div>
                        </div>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function revisar_porasignar_servicio()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $porasignar_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id,
                    api_solicitudes.dFechaCreacion,
                    
                    api_solicitudes.sDescripcion
                FROM 
                    api_solicitudes
                WHERE
                    api_solicitudes.estado_interno = "POR ASIGNAR"
                    and api_solicitudes.estado_externo = "POR ASIGNAR"
                    or api_solicitudes.estado_externo = "Sin Asignar"
                ORDER BY cliente'
            );
        }
        $table = "";
        for ($i = 0; $i < count($porasignar_coordinador); $i++) {
            foreach ($porasignar_coordinador[$i] as $d1) {
                $table .= "<tr>";
                $datas = $this->calcularHoraDos($d1->dFechaCreacion,$d1->proveedor,$d1->region);

                //   $table .= "<td >" .$datas[0] ."</td>";
                     $table .= "<td >" . Carbon::parse($d1->dFechaCreacion)->format('d/m/Y H:i:s') . "<br>"."</td>";
                    
    
                      if( $datas[0] > 14 ||  $datas[0] < 0){
                          $table .= "<td style='background:red;color:white'>" . "Tiempo Superado" . "<br>"."</td>";
    
                     }elseif(($datas[0] >= 12 && $datas[0] <= 14)){
                        // $table .= "<td>" . $datas[1] . "<br>"."</td>";
                        $table .= "<td style='background:red;color:white'>" .$datas[1]  . "<br>"."</td>";
    
    
                    }
                     elseif($datas[0] >= 0 && $datas[0] <= 8){
                         $table .= "<td>" . $datas[1] . "<br>"."</td>";
    
                     }elseif($datas[0] >= 9 &&  $datas[0] <= 11){
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                     }else{
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                    }
                $table .= "<td>" . strtoupper($d1->proveedor) . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->region  . "</td>";
                $table .= "<td>" . strtoupper($d1->comuna)  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                        </form>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function revisar_encurso_coordinador_servicio()
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id_soli,
                    asignacion_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    personas.nombre_uno,
                    api_solicitudes.dFechaCreacion,

                    personas.apellido_uno,
                    api_solicitudes.sDescripcion
                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "tarea_asignada"
                    and api_solicitudes.estado_externo = "EN TRANSITO"
                    and asignacion_solicitudes.estado_interno = "tarea_asignada"
                    and asignacion_solicitudes.estado_externo = "EN TRANSITO"
                    or api_solicitudes.estado_interno = "tarea_asignada"
                    and api_solicitudes.estado_externo = "EN ESPERA"
                    and asignacion_solicitudes.estado_interno = "tarea_asignada"
                    and asignacion_solicitudes.estado_externo = "ESPERANDO"
                    or api_solicitudes.estado_interno = "INICIADO"
                    and api_solicitudes.estado_externo = "INICIADO"
                    and asignacion_solicitudes.estado_interno = "INICIADO"
                    and asignacion_solicitudes.estado_externo = "INICIADO"'
            );
        }
        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                if ($d1->fecha != "") {
                    $fecha = Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s');
                } else {
                    $fecha = "NO REGISTRA";
                }
                $table .= "<tr>";
                $datas = $this->calcularHoraDos($d1->dFechaCreacion,$d1->proveedor,$d1->region);

                //   $table .= "<td >" .$datas[0] ."</td>";
                     $table .= "<td >" . Carbon::parse($d1->dFechaCreacion)->format('d/m/Y H:i:s') . "<br>"."</td>";
                    
    
                      if( $datas[0] > 14 ||  $datas[0] < 0 ){
                          $table .= "<td style='background:red;color:white'>" . "Tiempo Superado" . "<br>"."</td>";
    
                     }elseif(($datas[0] >= 12 && $datas[0] <= 14)){
                        // $table .= "<td>" . $datas[1] . "<br>"."</td>";
                        $table .= "<td style='background:red;color:white'>" .$datas[1]  . "<br>"."</td>";
    
    
                    }
                     elseif($datas[0] >= 0 && $datas[0] <= 8){
                         $table .= "<td>" . $datas[1] . "<br>"."</td>";
    
                     }elseif($datas[0] >= 9 &&  $datas[0] <= 11){
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                     }else{
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                    }
                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" . $fecha  . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";
                
                $table .=
                    '<td>
                        <div class="dropdown dropleft">
                            <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                                <span class="material-icons">more_vert</span>
                            </button>
                            <div class="dropdown-menu mostrar shadow">
                                <div class="d-flex justify-content-around">
                                    <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/revisar_m.png") . '" alt="" style="margin: 2px 0px" /></button>
                                    </form>
                                    <form action="' . route('go.finalizamanualservicios_home') . '" method="GET">
                                        <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                        <input type="hidden" value="' . $d1->id . '" name="id">
                                        <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Finalizar_manual.png") . '" alt="" style="margin: 2px 0px" /></button>
                                    </form>
                                    <a role="button" title="Historial" onclick="hola(' ."'" .$d1->id_soli."'," ."'".$d1->proveedor."'". ')" class="btn ver_historial_servicio_home">
                                        <img src="' . asset("Botones/Botones/Historial.png") . '" alt="" style="margin: 2px 0px" />
                                    </a>
                                </div>
                            </div>
                        </div>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function revisar_porreasignar_coordinador_servicio()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    personas.nombre_uno,
                    personas.apellido_uno
                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "REASIGNAR" and asignacion_solicitudes.estado_interno = "REASIGNAR"'
            );
        }
        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" .Carbon::createFromDate($d1->fecha)->format('d-m-Y') . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                        </form>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function revisar_porrevisar_coordinador_servicio()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.estado_interno,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    asignacion_solicitudes.id as id_asig,
                    api_solicitudes.dFechaCreacion,

                    personas.nombre_uno,
                    personas.apellido_uno
                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "REVISAR"
                AND  
                    asignacion_solicitudes.estado_interno = "REVISAR"
                OR
                    api_solicitudes.estado_interno = "RECHAZADO"'
            );
        }
        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                $table .= "<tr>";
                
                $datas = $this->calcularHoraDos($d1->dFechaCreacion,$d1->proveedor,$d1->region);

                //   $table .= "<td >" .$datas[0] ."</td>";
                     $table .= "<td >" . Carbon::parse($d1->dFechaCreacion)->format('d/m/Y H:i:s') . "<br>"."</td>";
                    
    
                      if( $datas[0] > 14 ||  $datas[0] < 0 ){
                          $table .= "<td style='background:red;color:white'>" . "Tiempo Superado" . "<br>"."</td>";
    
                     }elseif(($datas[0] >= 12 && $datas[0] <= 14)){
                        // $table .= "<td>" . $datas[1] . "<br>"."</td>";
                        $table .= "<td style='background:red;color:white'>" .$datas[1]  . "<br>"."</td>";
    
    
                    }
                     elseif($datas[0] >= 0 && $datas[0] <= 8){
                         $table .= "<td>" . $datas[1] . "<br>"."</td>";
    
                     }elseif($datas[0] >= 9 &&  $datas[0] <= 11){
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                     }else{
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                    }

                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" . Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s')  . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->estado_interno . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                
                $table .=
                    '<td>
                        <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET" target="_blank">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id_asig . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Revisar</button>
                        </form>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }

    public function obtenerclientesproveedor(request $request)
    {
        // $clientes_proveedor = DB::connection(strtolower($request->proveedor_ap))->table('api_solicitudes')
        // ->select('api_solicitudes.sCliente','api_solicitudes.id')
        // ->where('api_solicitudes.proveedor_servicio', '=', $request->proveedor_ap)
        // // ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
        // // ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
        // ->where('api_solicitudes.estado_interno', '=', $request->estado)
        // ->groupby('sCliente')->distinct()
        // ->get();

        if($request->opcionSelect == 0){
            $clientes_proveedor = DB::connection(strtolower($request->proveedor_ap))->table('clientes')
            ->select('clientes.razon_social','clientes.id')
            ->where('clientes.proveedor_nombre', '=', $request->proveedor_ap)
             ->where('clientes.id', '!=', 4)
             ->orderBy('clientes.razon_social', 'ASC')
            ->get();

        }else{

            $clientes_proveedor = DB::connection(strtolower($request->proveedor_ap))->table('api_solicitudes')
            ->select('sCliente as id','sCliente as razon_social')
            ->where('proveedor_servicio', '=', $request->proveedor_ap)
             ->orderBy('sCliente', 'ASC')
             ->groupby('sCliente')->distinct()
            ->get();

           
        }
       
        
        $opciones = "";

        if (count($clientes_proveedor) >= 1) {

            $opciones .= "<option value= '" . "'>" . "Seleccionar". "</option>";

            for ($j = 0; $j < count($clientes_proveedor); $j++) {
                for ($i = 0; $i < 1; $i++) {

                    if($clientes_proveedor[$j]->id == $request->idClienteSelecionado){
                        $opciones .= "<option selected value= '" . $clientes_proveedor[$j]->id. "'>" . $clientes_proveedor[$j]->razon_social . "</option>";

                    }else{

                        $opciones .= "<option value= '" . $clientes_proveedor[$j]->id. "'>" . $clientes_proveedor[$j]->razon_social . "</option>";

                    }

                }
            }

            return $opciones;
        } else {

            return "<option value= '" . "'>" . "Seleccionar". "</option>";
        }
   }
    
    public function filtro_pendiente_servicio(request $request)
    {


      
      
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

      $proveedor_ap_serv=   $request->proveedor_ap_serv ;
        $where = "";
        if ($request->cliente != "") {
            $where .= ' and api_solicitudes.sCliente = ' . '"' . $request->cliente . '"';
        }
        if ($request->tecnico != "") {
            $where .= ' and asignacion_solicitudes.trabajadors_id = ' . $request->tecnico;
        }
        if ($proveedor_ap_serv != "") {
            $where .= ' and api_solicitudes.proveedor_servicio = '  . '"' . $proveedor_ap_serv . '"';
        }
        foreach ($databases as $los_datos) {
            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id_soli,
                    asignacion_solicitudes.id as id,
                    personas.nombre_uno,
                    api_solicitudes.dFechaCreacion,

                    personas.apellido_uno,
                    api_solicitudes.sDescripcion,
                    api_solicitudes.fecha_asignado as fecha

                    
                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "tarea_asignada" and api_solicitudes.estado_externo = "ASIGNADO"
                    and asignacion_solicitudes.estado_interno = "tarea_asignada" and asignacion_solicitudes.estado_externo = "ASIGNADO"' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                $table .= "<tr>";

                      
                $datas = $this->calcularHoraDos($d1->dFechaCreacion,$d1->proveedor,$d1->region);

                //   $table .= "<td >" .$datas[0] ."</td>";
                     $table .= "<td >" . Carbon::parse($d1->dFechaCreacion)->format('d/m/Y H:i:s') . "<br>"."</td>";
                    
    
                      if( $datas[0] > 14 ||  $datas[0] < 0 ){
                          $table .= "<td style='background:red;color:white'>" . "Tiempo Superado" . "<br>"."</td>";
    
                     }elseif(($datas[0] >= 12 && $datas[0] <= 14)){
                        // $table .= "<td>" . $datas[1] . "<br>"."</td>";
                        $table .= "<td style='background:red;color:white'>" .$datas[1]  . "<br>"."</td>";
    
    
                    }
                     elseif($datas[0] >= 0 && $datas[0] <= 8){
                         $table .= "<td>" . $datas[1] . "<br>"."</td>";
    
                     }elseif($datas[0] >= 9 &&  $datas[0] <= 11){
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                     }else{
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                    }

                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" .Carbon::createFromDate($d1->fecha)->format('d-m-Y'). "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->region  . "</td>";
                $table .= "<td>" . $d1->comuna  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                        <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                            <span class="material-icons">more_vert</span>
                        </button>
                        <div class="dropdown-menu mostrar shadow">
                            <div class="d-flex justify-content-around">
                                <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button type="submit" class="btn"><img src="' . asset("Botones/Botones/revisar_m.png") . '" alt="" style="margin: 2px 0px" /></button>
                                </form>
                                <form action="' . route('go.finalizamanualservicios_home') . '" method="GET">
                                    <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                    <input type="hidden" value="' . $d1->id . '" name="id">
                                    <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Finalizar_manual.png") . '" alt="" style="margin: 2px 0px" /></button>
                                </form>
                                <a role="button" title="Historial" onclick="hola(' ."'" .$d1->id_soli."'," ."'".$d1->proveedor."'". ')" class="btn ver_historial_servicio_home">
                                        <img src="' . asset("Botones/Botones/Historial.png") . '" alt="" style="margin: 2px 0px" />
                                    </a>
                            </div>
                        </div>
                    </div
                </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function filtro_porasignar_servicio(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        $where = "";
        if ($request->cliente != "") {
            $where .= ' and api_solicitudes.sCliente = ' . '"' . $request->cliente . '" ';
        }
        if ($request->proveedor_por_as_ser != "") {
            $where .= ' and  api_solicitudes.proveedor_servicio  = ' . '"' . $request->proveedor_por_as_ser . '" ';
        }
        foreach ($databases as $los_datos) {
            $porasignar_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                api_solicitudes.sCliente as cliente,
                api_solicitudes.sRegion as region,
                api_solicitudes.sComuna as comuna,
                api_solicitudes.sSc as serie,
                api_solicitudes.proveedor_servicio as proveedor,
                api_solicitudes.id,
                api_solicitudes.sDescripcion
            FROM 
                api_solicitudes
            WHERE
                api_solicitudes.estado_interno = "POR ASIGNAR"
                and api_solicitudes.estado_externo = "POR ASIGNAR"' . $where . '
                or api_solicitudes.estado_externo = "Sin Asignar"' . $where . '
            ORDER BY cliente'
            );
        }
        $table = "";
        for ($i = 0; $i < count($porasignar_coordinador); $i++) {
            foreach ($porasignar_coordinador[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . strtoupper($d1->proveedor) . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->region  . "</td>";
                $table .= "<td>" . strtoupper($d1->comuna)  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                        </form>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function filtro_encurso_servicio(request $request)
    {
       
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();

        //return $request;
        $where = "";
        if ($request->cliente != "") {
            $where .= ' and api_solicitudes.sCliente = ' . '"' . $request->cliente . '" ';
        }

        if ($request->tecnico != "") {
            $where .= ' and asignacion_solicitudes.trabajadors_id = ' . $request->tecnico;
        }
        if ($request->proveedor_en_curso_serv != "") {
            $where .= ' and api_solicitudes.proveedor_servicio = '  . '"' . $request->proveedor_en_curso_serv . '" ';
        }

        


        foreach ($databases as $los_datos) {
            $encurso_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id_soli,
                    asignacion_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    personas.nombre_uno,
                    personas.apellido_uno,
                    api_solicitudes.dFechaCreacion,

                    api_solicitudes.sDescripcion

                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "tarea_asignada"
                    and api_solicitudes.estado_externo = "EN TRANSITO"
                    and asignacion_solicitudes.estado_interno = "tarea_asignada"
                    and asignacion_solicitudes.estado_externo = "EN TRANSITO"' . $where . '
                    or api_solicitudes.estado_interno = "tarea_asignada"
                    and api_solicitudes.estado_externo = "EN ESPERA"
                    and asignacion_solicitudes.estado_interno = "tarea_asignada"
                    and asignacion_solicitudes.estado_externo = "ESPERANDO"' . $where . '
                    or api_solicitudes.estado_interno = "INICIADO"
                    and api_solicitudes.estado_externo = "INICIADO"
                    and asignacion_solicitudes.estado_interno = "INICIADO"
                    and asignacion_solicitudes.estado_externo = "INICIADO"' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($encurso_coordinador); $i++) {
            foreach ($encurso_coordinador[$i] as $d1) {
                $table .= "<tr>";

                $datas = $this->calcularHoraDos($d1->dFechaCreacion,$d1->proveedor,$d1->region);

                //   $table .= "<td >" .$datas[0] ."</td>";
                     $table .= "<td >" . Carbon::parse($d1->dFechaCreacion)->format('d/m/Y H:i:s') . "<br>"."</td>";
                    
    
                      if( $datas[0] > 14 ||  $datas[0] < 0 ){
                          $table .= "<td style='background:red;color:white'>" . "Tiempo Superado" . "<br>"."</td>";
    
                     }elseif(($datas[0] >= 12 && $datas[0] <= 14)){
                        // $table .= "<td>" . $datas[1] . "<br>"."</td>";
                        $table .= "<td style='background:red;color:white'>" .$datas[1]  . "<br>"."</td>";
    
    
                    }
                     elseif($datas[0] >= 0 && $datas[0] <= 8){
                         $table .= "<td>" . $datas[1] . "<br>"."</td>";
    
                     }elseif($datas[0] >= 9 &&  $datas[0] <= 11){
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                     }else{
                         $table .= "<td style='background:orange'>" . $datas[1] . "<br>"."</td>";
    
                    }


                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                if ($d1->fecha == "") {
                    $table .= "<td>NO REGISTRA</td>";
                } else {
                    $table .= "<td>" . Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s')  . "</td>";
                }
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                $table .=
                    '<td>
                    <div class="dropdown dropleft">
                    <button type="button" class="btn-dropdown" data-toggle="dropdown" aria-expanded="false">
                        <span class="material-icons">more_vert</span>
                    </button>
                    <div class="dropdown-menu mostrar shadow">
                        <div class="d-flex justify-content-around">
                            <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET">
                                <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                <input type="hidden" value="' . $d1->id . '" name="id">
                                <button type="submit" class="btn"><img src="' . asset("Botones/Botones/revisar_m.png") . '" alt="" style="margin: 2px 0px" /></button>
                            </form>
                            <form action="' . route('go.finalizamanualservicios_home') . '" method="GET">
                                <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                <input type="hidden" value="' . $d1->id . '" name="id">
                                <button type="submit" class="btn"><img src="' . asset("Botones/Botones/Finalizar_manual.png") . '" alt="" style="margin: 2px 0px" /></button>
                            </form>
                            <a role="button" title="Historial" onclick="hola(' ."'" .$d1->id_soli."'," ."'".$d1->proveedor."'". ')" class="btn ver_historial_servicio_home">
                                <img src="' . asset("Botones/Botones/Historial.png") . '" alt="" style="margin: 2px 0px" />
                            </a>
                        </div>
                    </div>
                </div 
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function filtro_porreasignar_servicio(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        $where = "";
        if ($request->cliente != "") {
            $where .= ' and api_solicitudes.sCliente = ' . '"' . $request->cliente . '" ';
        }
        if ($request->tecnico != "") {
            $where .= ' and asignacion_solicitudes.trabajadors_id = ' . $request->tecnico;
        }
        if ($request->proveedor_p_reasignar_ser != "") {
            $where .= ' and api_solicitudes.proveedor_servicio  = ' . '"' . $request->proveedor_p_reasignar_ser . '" ';
        }
        foreach ($databases as $los_datos) {
            $porreasignar_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    personas.nombre_uno,
                    personas.apellido_uno
                FROM 
                    api_solicitudes
                INNER JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                INNER JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                INNER JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_interno = "REASIGNAR" and asignacion_solicitudes.estado_interno = "REASIGNAR"' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($porreasignar_coordinador); $i++) {
            foreach ($porreasignar_coordinador[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" . $d1->fecha  . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td>" . $d1->proveedor . "</td>";

                
                $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                        </form>
                    </td>';
                $table .= "</tr>";
            }
        }
        return $table;
    }

    public function filtro_solicitud_repuesto_servicio(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        $where = "";
        if ($request->cliente != "") {
            $where .= ' and api_solicitudes.sCliente = ' . '"' . $request->cliente . '" ';
        }
        if ($request->tecnico != "") {
            $where .= ' and asignacion_solicitudes.trabajadors_id = ' . $request->tecnico;
        }
        if ($request->proveedor_instalacion_respuestos != "") {
            $where .= ' and api_solicitudes.proveedor_servicio  = ' . '"' . $request->proveedor_instalacion_respuestos . '" ';
        }
        foreach ($databases as $los_datos) {
            $repuesto_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.estado_interno,
                    api_solicitudes.estado_externo,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    asignacion_solicitudes.id as id_asig,
                    personas.nombre_uno,
                    personas.apellido_uno,
                    api_solicitudes.sDescripcion

                FROM 
                    api_solicitudes
                LEFT JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                LEFT JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                LEFT JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                api_solicitudes.estado_interno = "Solicitar Repuestos" and asignacion_solicitudes.estado_interno = "Solicitar Repuestos" and asignacion_solicitudes.estado_externo = "Solicitar Repuestos" ' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($repuesto_coordinador); $i++) {
            foreach ($repuesto_coordinador[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" . Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s')  . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                // $table .= "<td>" . $d1->proveedor . "</td>";

                $table .= "<td>" . $d1->estado_externo . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>"; ;
                               $table .= "<td>" . $d1->proveedor . "</td>";

                if($d1->estado_interno == ""){
                    $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                        </form>
                    </td>';
                }elseif($d1->estado_interno == "Solicitar Repuestos"){
                    $table .=
                    '<td>
                        <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET" target="_blank">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id_asig . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Revisar</button>
                        </form>
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }

    public function filtro_repuesto_servicio(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        $where = "";
        if ($request->cliente != "") {
            $where .= ' and api_solicitudes.sCliente = ' . '"' . $request->cliente . '" ';
        }
        if ($request->tecnico != "") {
            $where .= ' and asignacion_solicitudes.trabajadors_id = ' . $request->tecnico;
        }
        if ($request->proveedor_instalacion_respuestos != "") {
            $where .= ' and api_solicitudes.proveedor_servicio  = ' . '"' . $request->proveedor_instalacion_respuestos . '" ';
        }
        foreach ($databases as $los_datos) {
            $repuesto_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.estado_interno,
                    api_solicitudes.estado_externo,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    asignacion_solicitudes.id as id_asig,
                    personas.nombre_uno,
                    personas.apellido_uno,
                    api_solicitudes.sDescripcion

                FROM 
                    api_solicitudes
                LEFT JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                LEFT JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                LEFT JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_externo = "Instalar repuesto"' . $where
            );
        }
        $table = "";
        for ($i = 0; $i < count($repuesto_coordinador); $i++) {
            foreach ($repuesto_coordinador[$i] as $d1) {
                $table .= "<tr>";
                $table .= "<td>" . strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                $table .= "<td>" . Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s')  . "</td>";
                $table .= "<td>" . $d1->cliente  . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                // $table .= "<td>" . $d1->proveedor . "</td>";

                $table .= "<td>" . $d1->estado_externo . "</td>";
                $table .= "<td>" . $d1->sDescripcion . "</td>"; ;
                               $table .= "<td>" . $d1->proveedor . "</td>";

                if($d1->estado_interno == ""){
                    $table .=
                    '<td>
                        <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                        </form>
                    </td>';
                }elseif($d1->estado_interno == "Solicitar Repuestos"){
                    $table .=
                    '<td>
                        <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET" target="_blank">
                            <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                            <input type="hidden" value="' . $d1->id_asig . '" name="id">
                            <button type="submit" class="btn btn-prim px sm-4" id="btnview">Revisar</button>
                        </form>
                    </td>';
                }
                $table .= "</tr>";
            }
        }
        return $table;
    }
    public function seguimiento_servicio(request $request)
    {
        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        $serie = $request->serie;

        foreach ($databases as $los_datos) {
            $seguimiento_servicio[] = DB::connection(strtolower($los_datos->Database))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_solicitudes.trabajadors_id')
                ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
                ->select(
                    'api_solicitudes.sCliente as cliente',
                    'api_solicitudes.sRegion as region',
                    'api_solicitudes.sComuna as comuna',
                    'api_solicitudes.sSc as serie',
                    'api_solicitudes.proveedor_servicio as proveedor',
                    'asignacion_solicitudes.estado_interno as estado',
                    'asignacion_solicitudes.estado_externo as estado_externo',
                    'asignacion_solicitudes.id as id',
                    'api_solicitudes.fecha_asignado',
                    'personas.nombre_uno',
                    'personas.apellido_uno'
                )
                ->where('api_solicitudes.sSc', '=', $serie)
                ->get();
        }
        $table = "";
        for ($i = 0; $i < count($seguimiento_servicio); $i++) {
            foreach ($seguimiento_servicio[$i] as $d1) {
                $fecha = Carbon::createFromDate($d1->fecha_asignado)->format('d-m-Y');
                $estado = $d1->estado;
                $estado_externo = $d1->estado_externo;
                $table .= "<tr>";
                $table .= "<td>" . $d1->nombre_uno . " " . $d1->apellido_uno . "</td>";
                $table .= "<td>" . $fecha . "</td>";
                $table .= "<td>" . $d1->cliente . "</td>";
                $table .= "<td>" . $d1->region . "</td>";
                $table .= "<td>" . $d1->comuna . "</td>";
                $table .= "<td>" . $d1->serie . "</td>";
                $table .= "<td> SERVICIO </td>";
                $table .= "</tr>";
            }
        }

        $array_[] = array(
            "table" => $table,
            "estado" => $estado,
            'estado_externo' => $estado_externo
        );
        return $array_;
    }

    public function index_proveedor($seccion)
    {
        try {
            $seccion = Crypt::decryptString($seccion);
        } catch (DecryptException $e) {
            return "No Puede Realizar Esta Accion";
        }
        $proveedor = Auth::user()->nombre_proveedor;

        $trabajadores = DB::connection(strtolower($proveedor))->table('personas')
            ->join('trabajadors', 'trabajadors.id_persona', '=', 'personas.id')
            ->select('personas.nombre_uno', 'personas.apellido_uno', 'trabajadors.id')
            ->where('trabajadors.estado', '=', '1')
            ->orderBy('personas.nombre_uno', 'ASC')
            ->get();

        $estado = DB::connection(strtolower($proveedor))->table('asignacion_solicitudes')
            ->select('asignacion_solicitudes.estado_externo as estado');
        //$estado_r = DB::connection(strtolower($proveedor))->table('asignacion_retiros')
        // ->select('asignacion_retiros.estado_asignacion as estado');
        $estado_i = DB::connection(strtolower($proveedor))->table('asignacion_instalacions')
            ->select('asignacion_instalacions.estado_asignacion as estado')
            ->union($estado)
            //->union($estado_r)
            ->distinct()
            ->get();

        $tables = "";

        if ($seccion == "asignados_ir") {

            $titulo = "Atenciones asignadas instalacion";

            $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('clientes.id', 'clientes.razon_social')
                ->where('clientes.id', '!=', 4)
                ->distinct('razon_social')
                ->get();

            foreach ($instalacion_asignados_proveedor as $datos) {
                $tables .= '<tr onclick="revisarCliente(' . $datos->id . ')">';
                $tables .= '<td>' . strtoupper($datos->razon_social) . '</td>';

                //CONSULTA DE CONTADOR
                $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                    ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                    ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                    ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                    ->select('instalacions.id as cliente')
                    ->where('clientes.id', '=', $datos->id)
                    ->count();

                $cont_clientes = $instalacion_asignados_proveedor;

                $tables .= '<td>' . $cont_clientes . '</td>';
                $tables .= '<td> <span class="material-icons " style="cursor:pointer">playlist_add_check_circle</span> </td>';
                $tables .= '</tr>';
            }
        } else if ($seccion == "repuestos_ir") {

            $titulo = "Atenciones pendientes repuestos instalacion";

            $instalacion_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                ->select('clientes.razon_social as cliente', 'clientes.id as clientes_id')
                ->where('clientes.id', '=', '000')
                ->get();

            foreach ($instalacion_repuestos_proveedor as $datos) {
                $tables .= '<tr>';
                $tables .= '<td>' . strtoupper($datos->cliente) . '</td>';

                //CONSULTA DE CONTADOR

                $cont_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
                    ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
                    ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
                    ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
                    ->select('instalacions.id as cliente')
                    ->where('clientes.id', '=', $datos->clientes_id)
                    //->where('checklist_instalacions.motivo', '!=', '')
                    ->count();

                $cont_clientes = $cont_repuestos_proveedor;

                $tables .= '<td>' . $cont_clientes . '</td>';
                $tables .= '<td onclick="revisarCliente(' . $datos->clientes_id . ')"> REVISAR </td>';
                $tables .= '</tr>';
            }
        } else if ($seccion == "asignados_servicio") {
            $titulo = "Atenciones asignadas servicio";

            $servicio_asignados_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('api_solicitudes.sCliente as cliente')
                ->orderby('cliente', 'asc')
                ->distinct('cliente')
                ->get();

            foreach ($servicio_asignados_proveedor as $datos) {
                //CONSULTA DE CONTADOR
                $cont_asignados_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->select('api_solicitudes.id')
                    ->where('api_solicitudes.sCliente', '=', $datos->cliente)
                    ->get();

                $cont_clientes = count($cont_asignados_proveedor);
                $tables .= '<tr onclick="revisarCliente(' . $cont_asignados_proveedor[0]->id . ')">';
                $tables .= '<td>' . strtoupper($datos->cliente) . '</td>';
                $tables .= '<td>' . $cont_clientes . '</td>';
                $tables .= '<td> <span class="material-icons" style="cursor:pointer">playlist_add_check_circle</span> </td>';
                $tables .= '</tr>';
            }
        } else if ($seccion == "repuestos_servicio") {
            $titulo = "Atenciones pendientes de repuestos servicio";

            $servicio_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('api_solicitudes.sCliente as cliente')
                ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                ->where('api_solicitudes.estado_interno', '=', "Solicitar Repuestos")
                ->orderby('cliente', 'asc')
                ->distinct('cliente')
                ->get();

            foreach ($servicio_repuestos_proveedor as $datos) {
                //CONSULTA DE CONTADOR
                $cont_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->where('api_solicitudes.sCliente', '=', $datos->cliente)
                    ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
                    ->where('api_solicitudes.estado_interno', '=', "Solicitar Repuestos")
                    ->select('api_solicitudes.id')
                    ->groupBy('id')
                    ->get();

                $cont_clientes = count($cont_repuestos_proveedor);

                $tables .= '<tr onclick="revisarCliente(' . $cont_repuestos_proveedor[0]->id . ')">';
                $tables .= '<td>' . strtoupper($datos->cliente) . '</td>';
                $tables .= '<td>' . $cont_clientes . '</td>';
                $tables .= '<td> <span class="material-icons" style="cursor:pointer">playlist_add_check_circle</span> </td>';
                $tables .= '</tr>';
            }
        }
        else if ($seccion == "asignadas") {
            $titulo = "Atenciones asignadas";

            $servicio_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('api_solicitudes.sCliente as cliente')
                ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                    ->where('api_solicitudes.estado_interno', '=', "tarea_asignada")
                ->orderby('cliente', 'asc')
                ->distinct('cliente')
                ->get();

            foreach ($servicio_repuestos_proveedor as $datos) {
                //CONSULTA DE CONTADOR
                $cont_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->where('api_solicitudes.sCliente', '=', $datos->cliente)
                    ->where('asignacion_solicitudes.estado_interno', '=', 'tarea_asignada')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'ASIGNADO')
                    ->where('api_solicitudes.estado_interno', '=', "tarea_asignada")
                    ->select('api_solicitudes.id')
                    ->groupBy('id')
                    ->get();

                $cont_clientes = count($cont_repuestos_proveedor);

                $tables .= '<tr onclick="revisarCliente(' . $cont_repuestos_proveedor[0]->id . ')">';
                $tables .= '<td>' . strtoupper($datos->cliente) . '</td>';
                $tables .= '<td>' . $cont_clientes . '</td>';
                $tables .= '<td> <span class="material-icons" style="cursor:pointer">playlist_add_check_circle</span> </td>';
                $tables .= '</tr>';
            }
        } else if ($seccion == "finalizadas") {
            $titulo = "Atenciones finalizadas";

          
            $servicio_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                ->select('api_solicitudes.sCliente as cliente')
                ->where('asignacion_solicitudes.estado_interno', '=', 'FINALIZADO')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'FINALIZADO')
                    ->where('api_solicitudes.estado_interno', '=', "FINALIZADO")
                ->orderby('cliente', 'asc')
                ->distinct('cliente')
                ->get();
            foreach ($servicio_repuestos_proveedor as $datos) {
                //CONSULTA DE CONTADOR
                $cont_repuestos_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
                    ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
                    ->where('api_solicitudes.sCliente', '=', $datos->cliente)
                    ->where('asignacion_solicitudes.estado_interno', '=', 'FINALIZADO')
                    ->where('asignacion_solicitudes.estado_externo', '=', 'FINALIZADO')
                    ->where('api_solicitudes.estado_interno', '=', "FINALIZADO")
                    ->select('api_solicitudes.id')
                    ->groupBy('id')
                    ->get();

                $cont_clientes = count($cont_repuestos_proveedor);

                $tables .= '<tr onclick="revisarClientes(' . $cont_repuestos_proveedor[0]->id . ')">';
                $tables .= '<td>' . strtoupper($datos->cliente) . '</td>';
                $tables .= '<td>' . $cont_clientes . '</td>';
                $tables .= '<td> <span class="material-icons" style="cursor:pointer">playlist_add_check_circle</span> </td>';
                $tables .= '</tr>';
            }
        }

       

        return view('home_proveedor', compact('seccion', 'titulo', 'tables', 'trabajadores', 'estado_i'));
    }
    public function revisarClienteProveedor(request $request)
    {
        $id = $request->id;
        $proveedor = Auth::user()->nombre_proveedor;

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
            ->join('asignacion_instalacions', 'asignacion_instalacions.lista_instalacion_id', '=', 'instalacions.id')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
            ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
            ->select(
                'clientes.razon_social as cliente',
                'asignacion_instalacions.fecha_asignado',
                'instalacions.sSc as sc',
                'instalacions.sSerie as serie',
                'asignacion_instalacions.estado_asignacion',
                'instalacions.id'
            )
            ->where('clientes.id', '=', $id)
            ->groupBy('serie')
            ->orderBy('fecha_asignado', 'desc')
            ->get();

        $table = "";

        foreach ($instalacion_asignados_proveedor as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha_asignado)->format('d-m-Y H:s');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>
                            <a role="button" class="btn-icon btn-icon-dd" title="Historial" onclick="historial_ins(' . $datos->id . ')">
                            <span class="material-icons">history</span>
                            </a>
                    </td>';
            $table .= "</tr>";
        }

        return $table;
    }
    public function revisarrepuestosClienteProveedor(request $request)
    {
        $id = $request->id;
        $proveedor = Auth::user()->nombre_proveedor;

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
            ->join('asignacion_instalacions', 'asignacion_instalacions.lista_instalacion_id', '=', 'instalacions.id')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
            ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
            ->select(
                'clientes.razon_social as cliente',
                'asignacion_instalacions.fecha_asignado',
                'instalacions.sSc as sc',
                'instalacions.sSerie as serie',
                'asignacion_instalacions.estado_asignacion'
            )
            ->where('clientes.id', '=', 0000)
            ->where('asignacion_instalacions.estado_asignacion', '=', 'repuestos')
            ->grupBy('serie')
            ->get();

        $table = "";

        foreach ($instalacion_asignados_proveedor as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha_asignado)->format('d-m-Y H:s');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= "<td>PDF</td>";
            $table .= "</tr>";
        }

        return $table;
    }

    public function revisarserviciosClienteProveedorasignadas(request $request)
    {

        // return "hh";

        // $id = $request->id;
        // $cliente_proveedor = $request->cliente;
// captura los id de los giltros
        if ($request->id == "" || $request->id == null){
            $id = $request->cliente;
        }else{

            $id = $request->id;
        }


       

        $proveedor = Auth::user()->nombre_proveedor;

        $cliente = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->where('api_solicitudes.id', '=', $id)
            ->select('api_solicitudes.sCliente as cliente')
            ->get();

        $dataquery = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
            ->select(
                'api_solicitudes.sCliente as cliente',
                'api_solicitudes.fecha_asignado as fecha',
                'api_solicitudes.sSC as sc',
                'api_solicitudes.sSerie as serie',
                'api_solicitudes.id',
                'api_solicitudes.estado_interno',
                // 'api_solicitudes.estado_externo as estado_asignacion'
                'api_solicitudes.estado_interno as estado_asignacion'
            )
            ->where('api_solicitudes.sCliente', '=', $cliente[0]->cliente)
            ->where('api_solicitudes.estado_externo', '=', 'ASIGNADO')
            ->where('api_solicitudes.estado_interno', '=','tarea_asignada');
            
            if($request->fecha1 != "" || $request->fecha1 != null){
                $dataquery->where('api_solicitudes.fecha_asignado', 'like', '%' . $request->fecha1 . '%');
            }


            


            $instalacion_asignados_proveedor = $dataquery->groupBy('sc')
            ->orderBy('fecha_asignado', 'desc')
            ->get();

        $table = "";

        foreach ($instalacion_asignados_proveedor as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha)->format('d-m-Y');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>  
                        <a role="button" class="btn-icon btn-icon-dd ver_historial" title="Historial" onclick="historial_asignadas(' . $datos->id . ')" data-estado="' . $datos->estado_interno . '">
                            <span class="material-icons">history</span>
                        </a>
                        </td>';
            $table .= "</tr>";
        }

        return $table;
    }

    public function revisarserviciosClienteProveedorfinalizadas(request $request)
    {

        if ($request->id == "" || $request->id == null){
            $id = $request->cliente;
        }else{

            $id = $request->id;
        }



        $proveedor = Auth::user()->nombre_proveedor;

        $cliente = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->where('api_solicitudes.id', '=', $id)
            ->select('api_solicitudes.sCliente as cliente')
            ->get();

        $dataquery = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
            ->select(
                'api_solicitudes.sCliente as cliente',
                'api_solicitudes.fecha_asignado as fecha',
                'api_solicitudes.sSC as sc',
                'api_solicitudes.sSerie as serie',
                'api_solicitudes.id',
                'api_solicitudes.estado_interno',
                // 'api_solicitudes.estado_externo as estado_asignacion'
                'api_solicitudes.estado_interno as estado_asignacion'

            )
            ->where('api_solicitudes.sCliente', '=', $cliente[0]->cliente)
            // ->where('api_solicitudes.estado_externo', '=', 'FINALIZADO')
            ->where('api_solicitudes.estado_interno', '=','FINALIZADO');

            if($request->fecha1 != "" || $request->fecha1 != null){
                $dataquery->where('api_solicitudes.fecha_asignado', 'like', '%' . $request->fecha1 . '%');
            }

            $instalacion_asignados_proveedor = $dataquery->groupBy('sc')
            ->orderBy('fecha_asignado', 'desc')
            ->get();
        $table = "";

        foreach ($instalacion_asignados_proveedor as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha)->format('d-m-Y');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>  
                        <a role="button" class="btn-icon btn-icon-dd ver_historial" title="Historial" onclick="historial(' . $datos->id . ')" data-estado="' . $datos->estado_interno . '">
                            <span class="material-icons">history</span>
                        </a>
                        </td>';
            $table .= "</tr>";
        }

        return $table;
    }

    public function revisarClienteProveedorServicio(request $request)
    {
        $id = $request->id;
        $proveedor = Auth::user()->nombre_proveedor;

        $cliente = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->where('api_solicitudes.id', '=', $id)
            ->select('api_solicitudes.sCliente as cliente')
            ->get();

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
            ->select(
                'api_solicitudes.sCliente as cliente',
                'api_solicitudes.fecha_asignado as fecha',
                'api_solicitudes.sSC as sc',
                'api_solicitudes.sSerie as serie',
                'api_solicitudes.id',
                'api_solicitudes.estado_interno',
                'api_solicitudes.estado_externo as estado_asignacion'
            )
            ->where('api_solicitudes.sCliente', '=', $cliente[0]->cliente)
            ->groupBy('sc')
            ->orderBy('fecha_asignado', 'desc')
            ->get();

        $table = "";

        foreach ($instalacion_asignados_proveedor as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha)->format('d-m-Y');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>  
                        <a role="button" class="btn-icon btn-icon-dd ver_historial" title="Historial" onclick="historial(' . $datos->id . ')" data-estado="' . $datos->estado_interno . '">
                            <span class="material-icons">history</span>
                        </a>
                        </td>';
            $table .= "</tr>";
        }

        return $table;
    }
    public function revisarClienteProveedorServicioRepuestos(request $request)
    {
        $id = $request->id;
        $proveedor = Auth::user()->nombre_proveedor;

        $cliente = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->where('api_solicitudes.id', '=', $id)
            ->select('api_solicitudes.sCliente as cliente')
            ->get();

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
            ->select(
                'api_solicitudes.sCliente as cliente',
                'asignacion_solicitudes.fecha',
                'api_solicitudes.sSC as sc',
                'api_solicitudes.sSerie as serie',
                'asignacion_solicitudes.estado_externo as estado_asignacion',
                'api_solicitudes.id',
                'api_solicitudes.estado_interno'
            )
            ->where('api_solicitudes.sCliente', '=', $cliente[0]->cliente)
            ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
            ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos')
            ->where('api_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
            ->groupBy('sc')
            ->orderBy('fecha', 'desc')
            ->get();

        $table = "";

        foreach ($instalacion_asignados_proveedor as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha)->format('d-m-Y');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>  
                <a role="button" class="btn-icon btn-icon-dd ver_historial" title="Historial" onclick="historial(' . $datos->id . ')" data-estado="' . $datos->estado_interno . '">
                    <span class="material-icons">history</span>
                </a>
            </td>';
            $table .= "</tr>";
        }

        return $table;
    }
    public function filtro_repuestoServicio(request $request)
    {
        $cliente_proveedor = $request->cliente;
        $tecnico = $request->tecnico;
        $fecha1 = $request->fecha1;
        $fecha2 = $request->fecha2;
        $estado = $request->estado;
        $proveedor = Auth::user()->nombre_proveedor;

        $cliente = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->where('api_solicitudes.id', '=', $cliente_proveedor)
            ->select('api_solicitudes.sCliente as cliente')
            ->get();

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
            ->select(
                'api_solicitudes.sCliente as cliente',
                'asignacion_solicitudes.fecha',
                'api_solicitudes.sSC as sc',
                'api_solicitudes.sSerie as serie',
                'asignacion_solicitudes.estado_externo as estado_asignacion',
                'api_solicitudes.id',
                'asignacion_solicitudes.estado_interno'
            )
            ->where('api_solicitudes.sCliente', '=', $cliente[0]->cliente)
            ->where('asignacion_solicitudes.estado_interno', '=', 'Solicitar Repuestos')
            ->where('asignacion_solicitudes.estado_externo', '=', 'Solicitar Repuestos');

        if ($tecnico != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.trabajadors_id', '=', $tecnico);
        }
        if ($estado != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.estado_externo', '=', $estado);
        }
        if ($fecha1 != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.fecha', 'like', '%' . $fecha1 . '%');
        }
        if ($fecha2 != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.fecha_fin', 'like', '%' . $fecha2 . '%');
        }
        $instalacion_asignados_proveedor->groupBy('sc');
        $instalacion_asignados_proveedor->orderBy('fecha', 'desc');
        $acumulador = $instalacion_asignados_proveedor->get();
        $table = "";

        foreach ($acumulador as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha)->format('d-m-Y');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>  
                        <a role="button" class="btn-icon btn-icon-dd ver_historial" title="Historial" onclick="historial(' . $datos->id . ')" data-estado="' . $datos->estado_interno . '">
                            <span class="material-icons">history</span>
                        </a>
                        </td>';
            $table .= "</tr>";
        }

        return $table;
    }
    public function filtro_asignadoServicio(request $request)
    {
        $cliente_proveedor = $request->cliente;
        $tecnico = $request->tecnico;
        $fecha1 = $request->fecha1;
        $fecha2 = $request->fecha2;
        $estado = $request->estado;
        $proveedor = Auth::user()->nombre_proveedor;

        $cliente = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->where('api_solicitudes.id', '=', $cliente_proveedor)
            ->select('api_solicitudes.sCliente as cliente')
            ->get();

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('api_solicitudes')
            ->join('asignacion_solicitudes', 'asignacion_solicitudes.api_solicitudes_id', '=', 'api_solicitudes.id')
            ->select(
                'api_solicitudes.sCliente as cliente',
                'asignacion_solicitudes.fecha',
                'api_solicitudes.sSC as sc',
                'api_solicitudes.sSerie as serie',
                'asignacion_solicitudes.estado_externo as estado_asignacion',
                'api_solicitudes.id',
                'api_solicitudes.estado_interno'
            )
            ->where('api_solicitudes.sCliente', '=', $cliente[0]->cliente);

        if ($estado != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.estado_externo', '=', $estado);
        }
        if ($fecha1 != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.fecha', 'like', '%' . $fecha1 . '%');
        }
        if ($fecha2 != "") {
            $instalacion_asignados_proveedor->where('asignacion_solicitudes.fecha_fin', 'like', '%' . $fecha2 . '%');
        }
        $instalacion_asignados_proveedor->groupBy('sc');
        $instalacion_asignados_proveedor->orderBy('fecha', 'desc');
        $acumulador = $instalacion_asignados_proveedor->get();

        $table = "";
        foreach ($acumulador as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha)->format('d-m-Y');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>  
            <a role="button" class="btn-icon btn-icon-dd ver_historial" title="Historial" onclick="historial(' . $datos->id . ')" data-estado="' . $datos->estado_interno . '">
                <span class="material-icons">history</span>
            </a>
            </td>';
            $table .= "</tr>";
        }

        return $table;
    }
    public function filtro_asignadoins_ret(request $request)
    {
        $cliente_proveedor = $request->cliente;
        $tecnico = $request->tecnico;
        $fecha1 = $request->fecha1;
        $fecha2 = $request->fecha2;
        $estado = $request->estado;
        $proveedor = Auth::user()->nombre_proveedor;

        $retiros_asignados_proveedor = DB::connection(strtolower($proveedor))->table('retiros')
            ->join('asignacion_retiros', 'asignacion_retiros.retiros_id', '=', 'retiros.id')
            ->join('tracker', 'tracker.id', '=', 'retiros.tracker_id')
            ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
            ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
            ->select(
                'clientes.razon_social as cliente',
                'asignacion_retiros.fecha_asignado',
                DB::raw("NULL as sc"),
                'retiros.sSerie as serie',
                'asignacion_retiros.estado_asignacion',
                'retiros.id'
            )
            ->where('clientes.id', '=', $cliente_proveedor);
        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('instalacions')
            ->join('asignacion_instalacions', 'asignacion_instalacions.lista_instalacion_id', '=', 'instalacions.id')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
            ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
            ->select(
                'clientes.razon_social as cliente',
                'asignacion_instalacions.fecha_asignado',
                'instalacions.sSc as sc',
                'instalacions.sSerie as serie',
                'asignacion_instalacions.estado_asignacion',
                'instalacions.id'
            )
            ->where('clientes.id', '=', $cliente_proveedor);
        if ($tecnico != "") {
            $retiros_asignados_proveedor->where('asignacion_retiros.trabajadors_idtecnico', '=', $tecnico);
            $instalacion_asignados_proveedor->where('asignacion_instalacions.trabajadors_id', '=', $tecnico);
        }
        if ($estado != "") {
            $retiros_asignados_proveedor->where('asignacion_retiros.estado_asignacion', '=', $estado);
            $instalacion_asignados_proveedor->where('asignacion_instalacions.estado_asignacion', '=', $estado);
        }
        if ($fecha1 != "") {
            $retiros_asignados_proveedor->where('asignacion_retiros.fecha_asignado', 'like', '%' . $fecha1 . '%');
            $instalacion_asignados_proveedor->where('asignacion_instalacions.fecha_asignado', 'like', '%' . $fecha1 . '%');
        }
        if ($fecha2 != "") {
            $retiros_asignados_proveedor->where('asignacion_retiros.fecha_termino', 'like', '%' . $fecha2) . '%';
            $instalacion_asignados_proveedor->where('asignacion_instalacions.fecha_termino', '=', '%' . $fecha2 . '%');
        }
        $instalacion_asignados_proveedor->union($retiros_asignados_proveedor);
        $instalacion_asignados_proveedor->orderBy('fecha_asignado', 'desc');
        $acumulador = $instalacion_asignados_proveedor->get();

        $table = "";

        foreach ($acumulador as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha_asignado)->format('d-m-Y H:s');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= '<td>
                            <a role="button" class="btn-icon btn-icon-dd" title="Historial" onclick="historial_ins(' . $datos->id . ')">
                            <span class="material-icons">history</span>
                            </a>
                    </td>';
            $table .= "</tr>";
        }

        return $table;
    }
    public function filtro_repuestoins_ret(request $request)
    {
        $cliente_proveedor = $request->cliente;
        $tecnico = $request->tecnico;
        $fecha1 = $request->fecha1;
        $fecha2 = $request->fecha2;
        $estado = $request->estado;
        $proveedor = Auth::user()->nombre_proveedor;

        $instalacion_asignados_proveedor = DB::connection(strtolower($proveedor))->table('asignacion_instalacions')
            ->join('checklist_instalacions', 'checklist_instalacions.asignacion_instalacion_retiro_id', '=', 'asignacion_instalacions.id')
            ->join('instalacions', 'instalacions.id', '=', 'asignacion_instalacions.lista_instalacion_id')
            ->join('tracker', 'tracker.id', '=', 'instalacions.tracker_idtracker')
            ->join('proyectos', 'proyectos.id', '=', 'tracker.proyecto_id')
            ->join('clientes', 'clientes.id', '=', 'proyectos.clientes_id')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->select(
                'clientes.razon_social as cliente',
                'personas.nombre_uno',
                'personas.apellido_uno',
                'asignacion_instalacions.fecha_asignado',
                'checklist_instalacions.CsSC as sc',
                'checklist_instalacions.CsSerie as serie',
                'asignacion_instalacions.estado_asignacion'
            )
            ->where('clientes.id', '=', $cliente_proveedor)
            ->where('checklist_instalacions.motivo', '=', '');
        if ($tecnico != "") {
            $instalacion_asignados_proveedor->where('asignacion_instalacions.trabajadors_id', '=', $tecnico);
        }
        if ($estado != "") {
            $instalacion_asignados_proveedor->where('asignacion_instalacions.estado_asignacion', '=', $estado);
        }
        if ($fecha1 != "") {
            $instalacion_asignados_proveedor->where('asignacion_instalacions.fecha_asignado', 'like', '%' . $fecha1 . '%');
        }
        if ($fecha2 != "") {
            $instalacion_asignados_proveedor->where('asignacion_instalacions.fecha_termino', 'like', '%' . $fecha2 . '%');
        }
        $acumulador = $instalacion_asignados_proveedor->get();

        $table = "";

        foreach ($acumulador as $datos) {
            $fecha = Carbon::createFromDate($datos->fecha_asignado)->format('d-m-Y H:s');
            $table .= "<tr>";
            $table .= "<td>" . strtoupper($datos->cliente) . "</td>";
            $table .= "<td>" . $fecha . "</td>";
            $table .= "<td>" . $datos->sc . "</td>";
            $table .= "<td>" . strtoupper($datos->serie) . "</td>";
            $table .= "<td>" . strtoupper($datos->nombre_uno) . " " . strtoupper($datos->apellido_uno) . "</td>";
            $table .= "<td>" . strtoupper($datos->estado_asignacion) . "</td>";
            $table .= "<td>PDF</td>";
            $table .= "</tr>";
        }

        return $table;
    }
    public function solicitudes_asociados_proveedors(Request $r)
    {
        $proveedor = Auth::user()->nombre_proveedor;

        $idSolicitudServicio = $r->id_solicitud;

        $datos_asignacion =  DB::connection(strtolower($proveedor))->table('asignacion_solicitudes')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_solicitudes.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->where('asignacion_solicitudes.api_solicitudes_id', '=', $idSolicitudServicio)
            ->select('asignacion_solicitudes.id', 'personas.nombre_uno', 'personas.apellido_uno', 'asignacion_solicitudes.estado_interno', 'asignacion_solicitudes.fecha')
            ->orderBy('asignacion_solicitudes.id', 'desc')
            ->get();

        $tbody = "";
        $i = 1;
        $totoal = count($datos_asignacion);
        $totoal = $totoal + 1;
        if (count($datos_asignacion) > 0) {
            foreach ($datos_asignacion as $row) {

                $j = $i++;

                $tbody .= "<tr>";
                $tbody .= "<td>" . $idSolicitudServicio . "</td>";
                $tbody .= "<td>" . ($totoal - $j) . "</td>";
                $tbody .= "<td> " . $row->nombre_uno . " " . $row->apellido_uno . "</td>";
                if ($row->estado_interno == "PENDIENTE" || $row->estado_interno == "PENDIENTE") {
                    $tbody .= '<td class="PENDIENTE">' . $row->estado_interno . "</td>";
                } else if ($row->estado_interno == "CANCELADO" || $row->estado_interno == "CANCELADO") {
                    $tbody .= '<td class="CANCELADO">' . $row->estado_interno . "</td>";
                } else if ($row->estado_interno == "REASIGNAR" || $row->estado_interno == "REASIGNAR") {
                    $tbody .= '<td class="CANCELADO">' . "REASIGNAR" . "</td>";
                } else if ($row->estado_interno == "FINALIZADO" || $row->estado_interno == "FINALIZADO") {
                    $tbody .= '<td class="FINALIZADO">' . $row->estado_interno . "</td>";
                } else if ($row->estado_interno == "ASIGNADO" || $row->estado_interno == "ASIGNADO") {
                    $tbody .= '<td class="ASIGNADO">' . $row->estado_interno . "</td>";
                } else if ($row->estado_interno == "REVISAR" || $row->estado_interno == "revisar") {
                    $tbody .= '<td class="revisado">' . "REVISAR" . "</td>";
                } else if ($row->estado_interno == "RECHAZADO" || $row->estado_interno == "RECHAZADO") {
                    $tbody .= '<td class="RECHAZADO">' . $row->estado_interno . "</td>";
                } else if ($row->estado_interno == "tarea_asignada" || $row->estado_interno == "Tarea_asignada") {
                    $tbody .= '<td class="PENDIENTE">' . "Tarea Asignada" . "</td>";
                } else {
                    $tbody .= '<td class="PENDIENTE">' . $row->estado_interno . "</td>";
                }

                //boton editar
                $tbody .= "<td>";
                $tbody .= '<a href="#" role="button" title="Editar">';
                $tbody .= "</a>";

                //boton historial para la coordinadora

                // <a class="btn-icon btn-icon-dd" href="{{route('generar.pdfProveedorServicios',Crypt::encryptString($los_datos->idAsignacion ?? ''))}}"><span class="material-icons-round">picture_as_pdf</span></a>

                // if ($row->estado_interno != "REVISAR" && $row->estado_interno != "revisar" && $row->estado_interno != "FINALIZADO" && $row->estado_interno && "FINALIZADO") {
                //boton finalizar
                $tbody .= "<a target='_blank' href='" . route('generar.pdfProveedorServicios', Crypt::encryptString($row->id)) . "' role='button' title='PDF'>";
                $tbody .= "<span class='material-icons-round'>picture_as_pdf</span>";
                $tbody .= "</a>";
                // }

                $tbody .= "</td>";
                $tbody .= "</tr>";
            }
        } else {
            $tbody .= "<tr>";
            $tbody .= "<td>Sin Datos</td>";
            $tbody .= "</tr>";
        }

        return $tbody;
    }
    public function check_asociados_proveedors(Request $request)
    {
        $id_instalacion = $request->id_instalacion;
        $proveedor = Auth::user()->nombre_proveedor;

        $datos_asignacion = DB::connection(strtolower($proveedor))->table('asignacion_instalacions')
            ->join('trabajadors', 'trabajadors.id', '=', 'asignacion_instalacions.trabajadors_id')
            ->join('personas', 'personas.id', '=', 'trabajadors.id_persona')
            ->where('asignacion_instalacions.lista_instalacion_id', '=', $id_instalacion)
            ->select('asignacion_instalacions.id', 'personas.nombre_uno', 'personas.apellido_uno', 'asignacion_instalacions.estado_asignacion', 'asignacion_instalacions.fecha_instalacion')
            ->orderBy('asignacion_instalacions.id', 'desc')
            ->get();
        $i = 1;
        $totoal = count($datos_asignacion);
        $totoal = $totoal + 1;
        $tbody = "";

        if (count($datos_asignacion) > 0) {
            foreach ($datos_asignacion as $row) {
                $j = $i++;
                $tbody .= "<tr>";
                $tbody .= "<td>" . $id_instalacion . "</td>";
                $tbody .= "<td>" . ($totoal - $j) . "</td>";
                $tbody .= "<td> " . $row->nombre_uno . " " . $row->apellido_uno . "</td>";
                if ($row->estado_asignacion == "pendiente" || $row->estado_asignacion == "Pendiente") {
                    $tbody .= '<td class="pendiente">' . $row->estado_asignacion . "</td>";
                } else if ($row->estado_asignacion == "cancelado" || $row->estado_asignacion == "Cancelado") {
                    $tbody .= '<td class="cancelado">' . $row->estado_asignacion . "</td>";
                } else if ($row->estado_asignacion == "reasignar" || $row->estado_asignacion == "Reasignar") {
                    $tbody .= '<td class="cancelado">' . "Reasignar" . "</td>";
                } else if ($row->estado_asignacion == "finalizado" || $row->estado_asignacion == "Finalizado") {
                    $tbody .= '<td class="finalizado">' . $row->estado_asignacion . "</td>";
                } else if ($row->estado_asignacion == "asignado" || $row->estado_asignacion == "Asignado") {
                    $tbody .= '<td class="asignado">' . $row->estado_asignacion . "</td>";
                } else if ($row->estado_asignacion == "revisar" || $row->estado_asignacion == "revisar") {
                    $tbody .= '<td class="revisado">' . "Revisar" . "</td>";
                } else if ($row->estado_asignacion == "rechazado" || $row->estado_asignacion == "Rechazado") {
                    $tbody .= '<td class="rechazado">' . $row->estado_asignacion . "</td>";
                } else if ($row->estado_asignacion == "tarea_asignada" || $row->estado_asignacion == "Tarea_asignada") {
                    $tbody .= '<td class="pendiente">' . "Tarea Asignada" . "</td>";
                }
                //boton editar
                $tbody .= "<td>";
                //boton finalizar
                $tbody .= "<a target='_blank' href='" . route('generar.pdfCordinadoraInstalacion', Crypt::encryptString($row->id)) . "' role='button' title='Ver PDF'>";
                $tbody .= "<span class='material-icons-round'>picture_as_pdf</span>";
                $tbody .= "</a>";
                $tbody .= "</td>";
                $tbody .= "</tr>";
            }
        } else {
            $tbody .= "<tr>";
            $tbody .= "<td>Sin Datos</td>";
            $tbody .= "</tr>";
        }
        return $tbody;
    }


    public function solicitud_repuestos()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.estado_interno,
                    api_solicitudes.estado_externo,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    asignacion_solicitudes.id as id_asig,
                    personas.nombre_uno,
                    personas.apellido_uno,
                    api_solicitudes.sDescripcion

                FROM 
                    api_solicitudes
                LEFT JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                LEFT JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                LEFT JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                api_solicitudes.estado_interno = "Solicitar Repuestos" and asignacion_solicitudes.estado_interno = "Solicitar Repuestos" and asignacion_solicitudes.estado_externo = "Solicitar Repuestos" ');
        }
        // api_solicitudes.estado_externo = "Solicitar Repuestos" and asignacion_solicitudes.estado_interno = "Solicitar Repuestos" ');

        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                if($d1->estado_interno != "FINALIZADO"){
                    $table .= "<tr>";
                    $table .= "<td>" .strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                    $table .= "<td>" . Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s')  . "</td>";
                    $table .= "<td>" . $d1->cliente  . "</td>";
                    $table .= "<td>" . $d1->serie . "</td>";
                    $table .= "<td>" . $d1->estado_externo . "</td>";
                    $table .= "<td>" . $d1->sDescripcion . "</td>";
                    $table .= "<td>" . $d1->proveedor . "</td>";

                    
                    if($d1->estado_interno == ""){
                        $table .=
                        '<td>
                            <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                                <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                <input type="hidden" value="' . $d1->id . '" name="id">
                                <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                            </form>
                        </td>';
                    }elseif($d1->estado_interno == "Solicitar Repuestos"){
                        $table .=
                        '<td>
                            <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET" target="_blank">
                                <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                <input type="hidden" value="' . $d1->id_asig . '" name="id">
                                <button type="submit" class="btn btn-prim px sm-4" id="btnview">Revisar</button>
                            </form>
                        </td>';
                    }
                    $table .= "</tr>";
                }
            }
        }
        return $table;
    }





    public function estado_intalar_repuestos()
    {

        //$databases = $this->nombre_database();
                $databases = App\bd_proveedores::selectDB();


        foreach ($databases as $los_datos) {
            $pendientes_coordinador[] = DB::connection(strtolower($los_datos->Database))->select(
                'SELECT
                    api_solicitudes.sCliente as cliente,
                    api_solicitudes.sRegion as region,
                    api_solicitudes.sComuna as comuna,
                    api_solicitudes.sSc as serie,
                    api_solicitudes.estado_interno,
                    api_solicitudes.estado_externo,
                    api_solicitudes.proveedor_servicio as proveedor,
                    api_solicitudes.id as id,
                    asignacion_solicitudes.fecha_inicio as fecha,
                    asignacion_solicitudes.id as id_asig,
                    personas.nombre_uno,
                    personas.apellido_uno,
                    api_solicitudes.sDescripcion

                FROM 
                    api_solicitudes
                LEFT JOIN 
                    asignacion_solicitudes ON asignacion_solicitudes.api_solicitudes_id = api_solicitudes.id
                LEFT JOIN 
                    trabajadors on trabajadors.id = asignacion_solicitudes.trabajadors_id
                LEFT JOIN 
                    personas on personas.id = trabajadors.id_persona
                WHERE
                    api_solicitudes.estado_externo = "Instalar repuesto"');
        }
        $table = "";
        for ($i = 0; $i < count($pendientes_coordinador); $i++) {
            foreach ($pendientes_coordinador[$i] as $d1) {
                if($d1->estado_interno != "FINALIZADO"){
                    $table .= "<tr>";
                    $table .= "<td>" .strtoupper($d1->nombre_uno) . " " . strtoupper($d1->apellido_uno) . "</td>";
                    $table .= "<td>" . Carbon::createFromDate($d1->fecha)->format('d-m-Y H:s')  . "</td>";
                    $table .= "<td>" . $d1->cliente  . "</td>";
                    $table .= "<td>" . $d1->serie . "</td>";
                    $table .= "<td>" . $d1->estado_externo . "</td>";
                    $table .= "<td>" . $d1->sDescripcion . "</td>";
                    $table .= "<td>" . $d1->proveedor . "</td>";

                    
                    if($d1->estado_interno == ""){
                        $table .=
                        '<td>
                            <form action="' . route('go.asignar_check_servicios_home') . '" method="GET">
                                <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                <input type="hidden" value="' . $d1->id . '" name="id">
                                <button type="submit" class="btn btn-prim px sm-4" id="btnview">Asignar</button>
                            </form>
                        </td>';
                    }elseif($d1->estado_interno == "Solicitar Repuestos"){
                        $table .=
                        '<td>
                            <form action="' . route('go.ver_check_solicitud_cordinadora_home') . '" method="GET" target="_blank">
                                <input type="hidden" value="' . $d1->proveedor . '" name="proveedor">
                                <input type="hidden" value="' . $d1->id_asig . '" name="id">
                                <button type="submit" class="btn btn-prim px sm-4" id="btnview">Revisar</button>
                            </form>
                        </td>';
                    }
                    $table .= "</tr>";
                }
            }
        }
        return $table;
    }

    public function calcularHoraDos($fechaIngreso,$proveedor ="",$region = ""){


              //  return "aksdlkñlsadksakdskñl";
if($region == "RM" || $region== "Metropolitana" || $region == "METROPOLITANA" || $region == "rm" || $region == "rm" || $region == "13" || $region == "XIII" || $region == "XIII" ){
    $dataSla = DB::table('config_usuarios')->select("sla_santiago")->where('nombre_proveedor', $proveedor)->where("estado","=",1)->first();
      
    $cantidadHorasSla = $dataSla->sla_santiago;

}else{
    $dataSla = DB::table('config_usuarios')->select("sla")->where('nombre_proveedor', $proveedor)->where("estado","=",1)->first();

       $cantidadHorasSla = $dataSla->sla;


}


        $fechaIngreso = new Carbon($fechaIngreso); 
        $dateIngreso =        $fechaIngreso->format('Y/m/d')."";
        $horaIngreso = $fechaIngreso->format('H:i:s');
        $horaIngresoEntero = $fechaIngreso->format('Hi');
        $minutoIngresoEntero = $fechaIngreso->format('i');
        //HORA ACTUAL
       $fechaActual=  Carbon::now();
       $dateActual =        $fechaActual->format('Y/m/d')."";
       $horaActual = $fechaActual->format('H:i:s');
       $horaActualEntero = $fechaActual->format('Hi');
       $minutoActualEntero = $fechaActual->format('i');

        //HORAS DE COLACIOM
        $horaColacionInicio = 1300;
        $horaColacionFinal =1400;
        $totalDeHoras =1;
      //  $cantidadHorasSla = 14;

        //HORAS DE LA JORNADA
        $HoraInicioJornada = '08:00:00';
        $HoraFinJornada = '18:00:00';
        $HoraFinJornadaActualEntero = 1800;
        // return $horaIngreso ;
        // Fecha de inicio
        //$start_date = new Carbon('2023:01:09');
        $start_date = new Carbon($dateIngreso);
        // Fecha de finalización
        //$end_date = new Carbon('2023:01:10');
        $end_date = new Carbon($dateActual);

        // Horas trabajadas totales
        $total_hours = 0;
        $diasTrans = 0;


        // Recorre cada día entre las dos fechas
        while ($start_date->lte($end_date)) {

            $dte =  $start_date->format('Y-m-d');
            $diasFestivos = DB::table('dias_festivos')->where('fecha_festiva', $dte)->where("estado","=",0)->exists();
        

            // Si el día es hábil (lunes a viernes)
            if ($start_date->dayOfWeekIso <= 5 && $diasFestivos < 1) {
            

                if($diasTrans == 0){
                    // Hora de inicio
                    // $start_time = new Carbon($start_date->format('Y-m-d') . ' 15:00:00');
                    $start_time = new Carbon($start_date->format('Y-m-d') .' '.$horaIngreso);

                    // Hora de finalización
                    // $end_time = new Carbon($start_date->format('Y-m-d') . ' 18:00:00');
                    $end_time = new Carbon($start_date->format('Y-m-d') .' '. $HoraFinJornada);
                    if($horaIngresoEntero >=$horaColacionFinal){
                        $work_duration = $start_time->diffInHours($end_time);

                    }else{
                        $work_duration = $start_time->diffInHours($end_time)-1;

                    }
            }else{
                //     // Hora de inicio
                //  $start_time = new Carbon($start_date->format('Y-m-d') . ' 08:00:00');
                $start_time = new Carbon($start_date->format('Y-m-d') . $HoraInicioJornada);

                // // Hora de finalización
                //  $end_time = new Carbon($start_date->format('Y-m-d') . ' 18:00:00');
                $end_time = new Carbon($start_date->format('Y-m-d') .' '.$HoraFinJornada);

                $work_duration = $start_time->diffInHours($end_time)-1;

                }
                    
                // Duración del trabajo
            // $work_duration = $start_time->diffInHours($end_time);

                // Resta 30 minutos (0.5 horas) de pausa para colación a la duración del trabajo
            // $work_duration -= 1;

                // Añade la duración del trabajo a las horas trabajadas totales
                $total_hours += $work_duration;

                $diasTrans = 1;
            }




            // Avanza al siguiente día
            $start_date->addDay();
        }


        // $horaActual = new Carbon('0000-00-00 17:00:00');
        $horaActual = new Carbon('0000-00-00 ' .' '.$horaActual);
        //calculamos las horas ranscurridas
        // $dif ="0000-00-00 18:00:00";
        $dif ="0000-00-00  ".$HoraFinJornada;
        $dif_ = new \Carbon\Carbon($horaActual);
        $dif2_ = new \Carbon\Carbon($dif);

        $horasDif=   $dif_->diffInHours($dif2_, true);

        if($horaActualEntero>$HoraFinJornadaActualEntero){


            $difMinuto = $minutoIngresoEntero -$minutoActualEntero;
       
           if($difMinuto <= 0){
               $total=  $cantidadHorasSla - $total_hours+1 ;
               $difMinuto = 60 + $difMinuto;
           }else{
               $total=  $cantidadHorasSla - $total_hours ;
       
           }
       
           $formatos= abs((abs($total)-$cantidadHorasSla+1))."Hrs ".$difMinuto." Min";
           return [$total_hours, $formatos];
           // return $total_hours;
           
        }else{
             $difMinuto = $minutoIngresoEntero -$minutoActualEntero;
          
           if($difMinuto <= 0){
               $total=  $total_hours - $horasDif+1+1 ;
               $difMinuto = 60 + $difMinuto;
           }else{
               $total=  $total_hours - $horasDif +1 ;
       
           }
           // $total=  $total_hours - $horasDif ;
           $formatos= abs((abs($total)-$cantidadHorasSla))."Hrs ".$difMinuto." Min";
           return [$total, $formatos];
        }

        // if($horaActualEntero>$HoraFinJornadaActualEntero){


        //     $difMinuto = abs($minutoIngresoEntero -$minutoActualEntero);
        //     $total=  $cantidadHorasSla - $total_hours ;
        //     $formatos= abs((abs($total)-$cantidadHorasSla+1))."Hrs ".$difMinuto." Min";
        //     return [$total_hours, $formatos];
        //     // return $total_hours;
            
        // }else{
        //     $difMinuto = abs($minutoIngresoEntero -$minutoActualEntero);
        //     $total=  $total_hours - $horasDif ;
        //     $formatos= abs((abs($total)-$cantidadHorasSla+1))."Hrs ".$difMinuto." Min";
        //     return [$total, $formatos];
        // }


        // echo "Horas trabajadas totales: $total_hours";

    }
}
