<?php

namespace App\Danoral\Cobranzas\sysOLD;

use Illuminate\Database\Eloquent\Model;
use App\Danoral\U;

class ListaCobros extends Model
{
    protected $connection = 'mysql_danoral';
    protected $table = 'listascobros';
    protected $primaryKey = 'id_ListaCobros';
    public $incrementing = false;
    public $timestamps = false;


    public static function AbrirListasCobros($isEcho = true) {
        $u = new U;
        $u->isEcho = $isEcho;
        $u->eLinea('ListasCobros | abrir ----------- INICIO');

        //inicializacion
        $lc = [];
        $fecha = date("Y-m-d").' 08:00:00';
        $u->eLinea("..:: fecha: $fecha");
        
        //actualiza el estado de las listas de cobro a 2
        $u->eLinea("..:: actualizar listas de cobro a 2");
        $rows = ListaCobros::where([
                ['estado_ListaCobros', 1],
            ])
            ->update(['estado_ListaCobros' => 2]);  
        $u->eLinea("..:: filas actualizadas: $rows");
        

        //busca el siguiente id libre (caracas)
        $idLC = 200000001;
        $rowLC = ListaCobros::select('id_ListaCobros')
            ->where('id_ListaCobros', '<', 300000000)
            ->orderBy('id_ListaCobros', 'desc')
            ->first();

        if($rowLC) {
            $idLC = $rowLC->id_ListaCobros+1;                    
        }else{
            $u->eLinea("..:: rowLC: NULL");
            return;
        }
        $u->eLinea("..:: id libre: $idLC");

        //listas de cobros caracas para abrir
        $lc[0] = [
            'id_ListaCobros'            => $idLC++,
            'fecha_ListaCobros'         => $fecha,
            'id_UsuarioCobrador'        => 1,
            'id_UsuarioRecibidor'       => 0,
            'id_Ubicacion'              => 0,
            'id_CPC'                    => 2,
            'id_Caja'                   => 0,
            'estado_ListaCobros'        => 1,
            'id_Tipo_ListaCobros'       => 2,
            'cod_ListaCobro'            => null,
            'id_Familia_ListaCobros'    => 401,
        ];

        $lc[1] = [
            'id_ListaCobros'            => $idLC++,
            'fecha_ListaCobros'         => $fecha,
            'id_UsuarioCobrador'        => 1,
            'id_UsuarioRecibidor'       => 0,
            'id_Ubicacion'              => 0,
            'id_CPC'                    => 2,
            'id_Caja'                   => 0,
            'estado_ListaCobros'        => 1,
            'id_Tipo_ListaCobros'       => 2,
            'cod_ListaCobro'            => null,
            'id_Familia_ListaCobros'    => 9700,
        ];

        $lc[2] = [
            'id_ListaCobros'            => $idLC++,
            'fecha_ListaCobros'         => $fecha,
            'id_UsuarioCobrador'        => 1,
            'id_UsuarioRecibidor'       => 0,
            'id_Ubicacion'              => 0,
            'id_CPC'                    => 3,
            'id_Caja'                   => 0,
            'estado_ListaCobros'        => 1,
            'id_Tipo_ListaCobros'       => 2,
            'cod_ListaCobro'            => null,
            'id_Familia_ListaCobros'    => 401,
        ];

        $lc[3] = [
            'id_ListaCobros'            => $idLC++,
            'fecha_ListaCobros'         => $fecha,
            'id_UsuarioCobrador'        => 1,
            'id_UsuarioRecibidor'       => 0,
            'id_Ubicacion'              => 0,
            'id_CPC'                    => 3,
            'id_Caja'                   => 0,
            'estado_ListaCobros'        => 1,
            'id_Tipo_ListaCobros'       => 2,
            'cod_ListaCobro'            => null,
            'id_Familia_ListaCobros'    => 9700,
        ];
        
        //insert listas de cobros
        foreach($lc as $l){
            if($isEcho){
                print_r($l);
            }else{
                $u->eLinea($l['id_ListaCobros'].' | '.$l['fecha_ListaCobros'].' | '.$l['id_Familia_ListaCobros']);
            }
            ListaCobros::insert($l);
        }


        //****** LA GUIRA */
        
        //busca el siguiente id libre (la guaira)
        $idLC = 500000001;
        $rowLC = ListaCobros::select('id_ListaCobros')
            ->where([
                ['id_ListaCobros', '<', 599999999],
                ['id_ListaCobros', '>', 500000000],
                ])
            ->orderBy('id_ListaCobros', 'desc')
            ->first();

        if($rowLC) {
            $idLC = $rowLC->id_ListaCobros+1;            
        }else{
            $u->eLinea("..:: rowLC: NULL");
            return;
        }
        $u->eLinea("..:: id libre: $idLC");
        
        //lista de cobros la guaira para abrir
        $l = [
            'id_ListaCobros'            => $idLC,
            'fecha_ListaCobros'         => $fecha,
            'id_UsuarioCobrador'        => 1,
            'id_UsuarioRecibidor'       => 0,
            'id_Ubicacion'              => 0,
            'id_CPC'                    => 17,
            'id_Caja'                   => 0,
            'estado_ListaCobros'        => 1,
            'id_Tipo_ListaCobros'       => 2,
            'cod_ListaCobro'            => null,
            'id_Familia_ListaCobros'    => 401,
        ];

        if($isEcho){
            print_r($l);
        }else{
            $u->eLinea($l['id_ListaCobros'].' | '.$l['fecha_ListaCobros'].' | '.$l['id_Familia_ListaCobros']);
        }
        ListaCobros::insert($l);

        $u->eLinea('ListasCobros | abrir -------------- FIN');

        return $u->logList;
        
    }


}
