Get PHP sub-category description Laravel Eloquent

0

Hello,

I need to get the description of my parent category, but I can not get the description in the same select, I can only get the parent category id.

I have a table with the following structure

Below is the code that I am getting my products and the category it is linked to, I also get the parent category code however how will I get the parent category description? strong>

public static function getMovimentos() {
    return DB::table('movimentos')
                    ->join('produtos', 'produtos.id', '=', 'movimentos.id_produto')
                    ->join('categorias', 'categorias.id', '=', 'produtos.categoria_id')
                    ->select('movimentos.id as id',
                            'categorias.nome as desc_sub',
                            'categorias.id_categoria as id_sub',
                            'produtos.categoria_id as categoria_id',
                            'produtos.id as idProduto',
                            'movimentos.tipo_movimento as tipo_movimento',
                            'movimentos.observacoes as observacoes',
                            'movimentos.quantidade as quantidade',
                            'movimentos.id_produto as id_produto',
                            'movimentos.serie as serie',
                            'movimentos.created_at as data_criacao',
                            'produtos.descricao as descricao',
                            'produtos.codigo_alternativo as codigo_alternativo')
                    ->where('movimentos.id_estoque', '=', session()->get('session_estoque_id'))
            ->get();
}
    
asked by anonymous 28.06.2017 / 20:12

1 answer

0

You need to add a join for category auto self:

public static function getMovimentos() {
    return DB::table('movimentos')
                ->join('produtos', 'produtos.id', '=', 'movimentos.id_produto')
                ->join('categorias', 'categorias.id', '=', 'produtos.categoria_id')
                ->join('categoria_pai', 'categorias.id', '=', 'categoria_pai.id_categoria')
                ->select('movimentos.id as id',
                        'categorias.nome as desc_sub',
                        'categorias.id_categoria as id_sub',
                        'categoria_pai.nome as desc_pai
                        'produtos.categoria_id as categoria_id',
                        'produtos.id as idProduto',
                        'movimentos.tipo_movimento as tipo_movimento',
                        'movimentos.observacoes as observacoes',
                        'movimentos.quantidade as quantidade',
                        'movimentos.id_produto as id_produto',
                        'movimentos.serie as serie',
                        'movimentos.created_at as data_criacao',
                        'produtos.descricao as descricao',
                        'produtos.codigo_alternativo as codigo_alternativo')
                ->where('movimentos.id_estoque', '=', session()->get('session_estoque_id'))
        ->get();
}
    
04.07.2017 / 15:14