<?php

namespace App\Http\Controllers;

use App\Models\Pessoa;

class OneToManyController extends Controller
{
    public function oneToMany()
    {
        $pessoas = Pessoa::where('id', 56263)->with('documentoPessoa')->get();

        foreach ($pessoas as $pessoa) {
            $pessoasLote = $pessoa->pessoaLote('pessoaLote')->get();
            foreach ($pessoasLote as $pessoaLote) {
                $lotes = $pessoaLote->lote('lote')->get();
                foreach ($lotes as $lote) {
                    $titulos = $lote->titulos('titulos')->get();
                    foreach($titulos as $titulo){
                        if(isset($titulo)){
                            echo "Pessoa: " . "{$pessoa->nome}<hr>";
                            echo "Lote: " . "{$lote->numero}<hr>";
                            echo "Titulo: " . "{$titulo->numero_titulo}<hr>";
                            echo "Condiçao da pessoa no imovel: " . "{$pessoaLote->condicao_pessoa_imovel_rural}<hr>";
                        }
                    }
                }
            }
           

        }
        //$titulo = Titulo::where('lote_id', 410053)->with('lotes')->get();

        // $tiposLeis = TipoLei::where('id', 10)->with('titulos')->get();
        // dd($tiposLeis);

        // $gleba = Gleba::where('id', 37)->with('titulos')->get();
        // dd($gleba);

        // $secUsers = SecUser::where('id', 79)->with('tramites')->get();
        // dd($secUsers);

        //  $pendencias = Pendencia::where('etapa_id', 1)->with('processos')->limit(1)->get();
        //  dd($pendencias);

        //  $etapas = Etapa::where('setor_id', 2)->with('pendencias')->get();
        //  dd($etapas);

        // $etapas = Etapa::where('setor_id', 99)->with('setores')->get();
        // dd($etapas);

        /* RELACIONAMENTO LOTE/LOTE_TRAMITE */
        // $tramites = Tramite::where('id', 2)->with('setor')->get();
        // //dd($tramites);

        // foreach($tramites as $tramite){
        //     echo "{$tramite->nome}";

        //     $setores = $tramite->setor()->get();
        //     dd($setores);
        // }

        // $setor = Setor::where('nome', 'NUGEO')->with('tramites')->get();
        // dd($setor);

        /* RELACIONAMENTO LOTE/LOTE_TRAMITE */
        // $lotesTramites = LoteTramite::where('lote_id', 410251)->with('tramites')->get();
        // foreach($lotesTramites as $loteTramite){
        //     $tramites = $loteTramite->tramites()->get();

        //     foreach($tramites as $tramite){
        //         echo "lote_Tramite: {$loteTramite->tramite_id}<hr>";
        //         echo "Nome Tramite: {$tramite->nome}<hr>";
        //     }
        // }

        /* RELACIONAMENTO LOTE/LOTE_TRAMITE */
        // $lotes = Lote::where('id', 410251)->with('lotesTramites')->get();
        // foreach ($lotes as $lote) {
        //     echo "Municipio: {$lote->municipio_id}<hr>";
        //     echo "Lote: {$lote->numero}<br>";

        //     $lotesTramites = $lote->lotesTramites()->get();

        //     foreach ($lotesTramites as $loteTramite) {
        //         echo "Lote_Tramite: {$loteTramite->tramite_id}<hr>";
        //     }
        // }

        /* RELACIONAMENTO LOTE/FORMA_DE_OBTENCAO */
        // $lotes = Lote::where('id', 410777)->with('formasObtencao')->get();

        // foreach($lotes as $lote){
        //     echo "Municipio: {$lote->municipio_id}<hr>";
        //     echo "Lote: {$lote->numero}<br>";

        //     $formasObtencao = $lote->formasObtencao()->get();

        //     foreach($formasObtencao as $formaObtencao){
        //         echo "Forma_Obtenção: {$formaObtencao->descricao_forma_de_obtencao}<hr>";
        //     }
        // }

        /* 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('municipio_id', 2304707)->with('situacaoJuridica')->get();
        // foreach ($lotes as $lote) {
        //     //dd($lote);
        //     echo "Número do Lote: " . "{$lote->numero}<hr>";
        //     $situacoesJuridicas = $lote->situacaoJuridica()
        //         ->where('id', 99)
        //         ->get();

        //     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('pessoaLote')->limit(10)->get();

        // foreach ($pessoas as $pessoa) {
        //     echo "Pessoa: " . "{$pessoa->nome}<hr>";
        //     echo "id: " . "{$pessoa->id}<hr>";

        //     $pessoasLotes = $pessoa->pessoaLote()
        //         ->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);
        //      }
        //  }
    }

}
