<?php

namespace App\Http\Controllers;

use App\Models\Lote;
use App\Models\Municipio;
use App\Models\Pessoa;
use App\Models\SituacaoJuridica;

class OneToManyController extends Controller
{
    public function oneToMany()
    {
        /* RELACIONAMENTO MUNICIPIO/LOTE */
        // //$municipios = Municipio::where('id', 2304277)->get()->first();
        // //$municipio = Municipio::where('nome', "ERERÊ")->orderBy('nome', 'asc')->with('lotes')->get();
        // $municipios = Municipio::where('uf', "CE")->orderBy('nome', 'asc')->limit(10)->with('lotes')->get();
        // foreach ($municipios as $municipio) {
        //     echo "<hr>{$municipio->nome}";
        //     $lotes = $municipio->lotes()
        //         ->where('cpf', '<>', null)->limit(1)->get();
        //     foreach ($lotes as $lote) {
        //         echo "<hr>{$lote->numero}";
        //     }
        // }

        /* RELACIONAMENTO LOTE/PROCESSO */
        // $lotes = Lote::where('id', 254986)->with('processos')->get();
        // foreach ($lotes as $lote) {
        //     echo "Número do Lote: " . "{$lote->numero}<hr>";
        //     $processos = $lote->processos()
        //         ->where('criado_por_id', 61)->get();
        //     foreach ($processos as $processo) {
        //         //dd($processo);
        //         echo "Id do processo: " . "{$processo->id}<br>";
        //     }
        // }

        /* RELACIONAMENTO LOTE/SITUACAO_JURIDICA */
        // $lotes = Lote::where('id', 'LIKE', '%25%')->with('situacaoJuridica')->get();
        // foreach ($lotes as $lote) {
        //     echo "Número do Lote: " . "{$lote->numero}<hr>";
        //     $situacoesJuridicas = $lote->situacaoJuridica()
        //         ->where('id', 3)->get();
        //     dd($situacoesJuridicas);
        //     foreach ($situacoesJuridicas as $situacaoJuridica) {
        //         echo "Situação Jurídica: " . "{$situacaoJuridica->nome}<hr>";
        //     }
        // }

        /* RELACIONAMENTO LOTE/PESSOA_LOTE */
        // $lotes = Lote::where('municipio_id', 2304608)->with('pessoaLote')->get();
        // foreach ($lotes as $lote) {
        //     echo "Número do Lote: " . "{$lote->numero}<hr>";
        //     $pessoasLotes = $lote->pessoaLote()
        //         ->where('lote_id', 254986)->get();
        //     foreach ($pessoasLotes as $pessoaLote) {
        //         echo "pessoa_id: " . "{$pessoaLote->pessoa_id}<hr>";
        //     }
        // }

        /* RELACIONAMENTO PESSOA/PESSOA_LOTE */
        $pessoas = Pessoa::where('id', 46192)->with('pessoas')->limit(10)->get();
        
        foreach ($pessoas as $pessoa) {
            echo "Pessoa: " . "{$pessoa->nome}<hr>";
            echo "id: " . "{$pessoa->id}<hr>";

            $pessoasLotes = $pessoa->pessoas()
                ->where('pessoa_id', 46192)->get();

            //dd($pessoasLotes);
            foreach ($pessoasLotes as $pessoaLote) {
                echo "lote_id: " . "{$pessoaLote->lote_id}<hr>";
            }
        }

    }

    public function manyToOne()
    {
         /* RELACIONAMENTO LOTE/SITUACAO_JURIDICA */
        //  $situacoesJuridicas = SituacaoJuridica::where('id', 3)->get()->with('situacaoJuridica')->get();

        //  foreach ($situacoesJuridicas as $situacaoJuridica) {
        //      echo "Número do Lote: " . "{$situacaoJuridica->numero}<hr>";
        //      $situacaoJuridica = $situacoesJuridicas->lote()
        //          ->where('situacao_juridica_id', 3)->get();
        //     dd($situacaoJuridica);
        //      foreach ($situacoesJuridicas as $situacaoJuridica) {
        //          echo "Situação Jurídica: " . "{$situacaoJuridica->nome}<hr>";
        //          //dd($situacaoJuridica);
        //      }
        //  }
    }

}
