Return variable inside if to go to view

0

I want to write a code so that the user picks an ID in a combobox and specific information is shown in the HTML, but I need to do an if to know if the chosen vendor is A, B or C, but I can not return the variable inside the if to pass to view.

follows Controller:

    $id = DB::table('rcis')->pluck('rci_id');
    $rciid = $request->input('idrci');

    $teste = DB::table('rcis')->select('fornecedor_escolhido')->where('rci_id', '=', $rciid)->get(); 

    if($teste=='[{"fornecedor_escolhido":"A"}]'){
        $rci = DB::table('rcis')
        ->join('colaboradors', 'rcis.fk_colaborador', '=', 'colaboradors.colaborador_id')
        ->join('centrocustos', 'rcis.fk_centrocusto', '=', 'centrocustos.centrocusto_id')
        ->join('status_rcis', 'rcis.fk_status_rci', '=', 'status_rcis.status_rci_id')
        ->join('fornecedor_detalhes', 'fornecedor_detalhes.fk_rcid', '=', 'rcis.rci_id')

        ->select('rcis.observacoes',
            'rcis.data_rci',
            'colaboradors.nome_colab',
            'centrocustos.cod_centrocusto',
            'status_rcis.descricao_status',
            'rcis.fornecedor_escolhido',
            'fornecedor_detalhes.valortotalcompra',
            'fornecedor_detalhes.prazo_entrega')
        ->where('rci_id', '=', $rciid)
        ->where('rcis.fornecedor_escolhido','=', 'A')            
        ->wherecolumn('rcis.fornecedor_escolhido','=', 'fornecedor_detalhes.letra')
        ->get();
    }

    elseif($teste=='[{"fornecedor_escolhido":"B"}]'){
        $rci = DB::table('rcis')
        ->join('colaboradors', 'rcis.fk_colaborador', '=', 'colaboradors.colaborador_id')
        ->join('centrocustos', 'rcis.fk_centrocusto', '=', 'centrocustos.centrocusto_id')
        ->join('status_rcis', 'rcis.fk_status_rci', '=', 'status_rcis.status_rci_id')
        ->join('fornecedor_detalhes', 'fornecedor_detalhes.fk_rcid', '=', 'rcis.rci_id')

        ->select('rcis.observacoes',
            'rcis.data_rci',
            'colaboradors.nome_colab',
            'centrocustos.cod_centrocusto',
            'status_rcis.descricao_status',
            'rcis.fornecedor_escolhido',
            'fornecedor_detalhes.valortotalcompra',
            'fornecedor_detalhes.prazo_entrega')
        ->where('rci_id', '=', $rciid)
        ->where('rcis.fornecedor_escolhido','=', 'B')            
        ->wherecolumn('rcis.fornecedor_escolhido','=', 'fornecedor_detalhes.letra')
        ->get(); 
    }

    elseif($teste=='[{"fornecedor_escolhido":"C"}]'){
        $rci = DB::table('rcis')
        ->join('colaboradors', 'rcis.fk_colaborador', '=', 'colaboradors.colaborador_id')
        ->join('centrocustos', 'rcis.fk_centrocusto', '=', 'centrocustos.centrocusto_id')
        ->join('status_rcis', 'rcis.fk_status_rci', '=', 'status_rcis.status_rci_id')
        ->join('fornecedor_detalhes', 'fornecedor_detalhes.fk_rcid', '=', 'rcis.rci_id')

        ->select('rcis.observacoes',
            'rcis.data_rci',
            'colaboradors.nome_colab',
            'centrocustos.cod_centrocusto',
            'status_rcis.descricao_status',
            'rcis.fornecedor_escolhido',
            'fornecedor_detalhes.valortotalcompra',
            'fornecedor_detalhes.prazo_entrega')
        ->where('rci_id', '=', $rciid)
        ->where('rcis.fornecedor_escolhido','=', 'C')            
        ->wherecolumn('rcis.fornecedor_escolhido','=', 'fornecedor_detalhes.letra')
        ->get();
    }

    return view ('/escolherci', ['id'=>$id, 'rci'=>$rci]);    
}

and the view.blade:

<h3>Escolha uma chave estrangeira para selecionar uma RCI</h3>
<!--ID DROPDOWN-->
    <label  for="idrci">Chave estrangeira: </label>
    <select class="form-control"  type="text" name="idrci" id="idrci">
    @foreach ($id as $idr)
    {
     <option value="{{ $idr }}">{{ $idr }}</option>
    }
    @endforeach
    </select><br><br>
<input type="submit" value="Salvar"> </button>
</form>

@foreach($rci as $rc)

    Requisitante: {{$rc->nome_colab}}<br><br>
    Centro de custo: {{$rc->cod_centrocusto}}<br><br>
    Descrição: {{$rc->observacoes}}<br><br>
    Status RCI: {{$rc->descricao_status}}<br><br>        
    Valor total da compra: {{$rc->valortotalcompra}}<br><br>
    Prazo entrega: {{$rc->prazo_entrega}}<br><br>

@endforeach

In the HTML form it is only for the controller to get the ID the target = _self to show on the same page. I need to return this variable within ifs $ rci for view

    
asked by anonymous 12.09.2018 / 15:16

1 answer

0

blade:

<h3>Escolha uma chave estrangeira para selecionar uma RCI</h3>
<!--ID DROPDOWN-->
    <label  for="idrci">Chave estrangeira: </label>
    <select class="form-control"  type="text" name="idrci" id="idrci">
    @foreach ($id as $idr)
    {
     <option value="{{ $idr }}">{{ $idr }}</option>
    }
    @endforeach
    </select><br><br>
<input type="submit" value="Salvar"> </button>
</form>
    @if(isset($rci))
    @foreach($rci as $rc)

    <b>Requisitante:</b>   {{$rc->nome_colab}}<br><br>
    <b>Centro de custo:</b>  {{$rc->cod_centrocusto}}<br><br>
    <b>Descrição:</b>  {{$rc->observacoes}}<br><br>
    <b>Status RCI:</b>  {{$rc->descricao_status}}<br><br>        
    <b>Valor total da compra:</b> {{$rc->valortotalcompra}}<br><br>
    <b>Prazo entrega:</b>  {{$rc->prazo_entrega}}<br><br>

    @endforeach
    @endif

controller:

    $id = DB::table('rcis')->pluck('rci_id');
    $rciid = $request->input('idrci');

    $teste = DB::table('rcis')->select('fornecedor_escolhido')->where('rci_id', '=', $rciid)->get(); 

    if($teste=='[{"fornecedor_escolhido":"A"}]'){
        $rci = DB::table('rcis')
        ->join('colaboradors', 'rcis.fk_colaborador', '=', 'colaboradors.colaborador_id')
        ->join('centrocustos', 'rcis.fk_centrocusto', '=', 'centrocustos.centrocusto_id')
        ->join('status_rcis', 'rcis.fk_status_rci', '=', 'status_rcis.status_rci_id')
        ->join('fornecedor_detalhes', 'fornecedor_detalhes.fk_rcid', '=', 'rcis.rci_id')

        ->select('rcis.observacoes',
            'rcis.data_rci',
            'colaboradors.nome_colab',
            'centrocustos.cod_centrocusto',
            'status_rcis.descricao_status',
            'rcis.fornecedor_escolhido',
            'fornecedor_detalhes.valortotalcompra',
            'fornecedor_detalhes.prazo_entrega')
        ->where('rci_id', '=', $rciid)
        ->where('rcis.fornecedor_escolhido','=', 'A')            
        ->wherecolumn('rcis.fornecedor_escolhido','=', 'fornecedor_detalhes.letra')
        ->get();
        return view('/escolherci', ['id'=>$id, 'rci'=>$rci]);

    }

    elseif($teste=='[{"fornecedor_escolhido":"B"}]'){
        $rci = DB::table('rcis')
        ->join('colaboradors', 'rcis.fk_colaborador', '=', 'colaboradors.colaborador_id')
        ->join('centrocustos', 'rcis.fk_centrocusto', '=', 'centrocustos.centrocusto_id')
        ->join('status_rcis', 'rcis.fk_status_rci', '=', 'status_rcis.status_rci_id')
        ->join('fornecedor_detalhes', 'fornecedor_detalhes.fk_rcid', '=', 'rcis.rci_id')

        ->select('rcis.observacoes',
            'rcis.data_rci',
            'colaboradors.nome_colab',
            'centrocustos.cod_centrocusto',
            'status_rcis.descricao_status',
            'rcis.fornecedor_escolhido',
            'fornecedor_detalhes.valortotalcompra',
            'fornecedor_detalhes.prazo_entrega')
        ->where('rci_id', '=', $rciid)
        ->where('rcis.fornecedor_escolhido','=', 'B')            
        ->wherecolumn('rcis.fornecedor_escolhido','=', 'fornecedor_detalhes.letra')
        ->get();
        return view('/escolherci', ['id'=>$id, 'rci'=>$rci]);

    }

    elseif($teste=='[{"fornecedor_escolhido":"C"}]'){
        $rci = DB::table('rcis')
        ->join('colaboradors', 'rcis.fk_colaborador', '=', 'colaboradors.colaborador_id')
        ->join('centrocustos', 'rcis.fk_centrocusto', '=', 'centrocustos.centrocusto_id')
        ->join('status_rcis', 'rcis.fk_status_rci', '=', 'status_rcis.status_rci_id')
        ->join('fornecedor_detalhes', 'fornecedor_detalhes.fk_rcid', '=', 'rcis.rci_id')

        ->select('rcis.observacoes',
            'rcis.data_rci',
            'colaboradors.nome_colab',
            'centrocustos.cod_centrocusto',
            'status_rcis.descricao_status',
            'rcis.fornecedor_escolhido',
            'fornecedor_detalhes.valortotalcompra',
            'fornecedor_detalhes.prazo_entrega')
        ->where('rci_id', '=', $rciid)
        ->where('rcis.fornecedor_escolhido','=', 'C')            
        ->wherecolumn('rcis.fornecedor_escolhido','=', 'fornecedor_detalhes.letra')
        ->get();
        return view('/escolherci', ['id'=>$id, 'rci'=>$rci]);
    }

    return view('/escolherci', ['id'=>$id]);
    
12.09.2018 / 16:19