public function relatorio(Request $request)
 {
     $result = Compra::select('fornecedores.fantasia', 'fornecedores.nome_razao', 'compras.id', 'compras.data_compra', 'compras.status as status_compra', 'compras.fornecedor_id')->with(['compra_itens' => function ($q) {
         $q->with('produto');
     }])->join('fornecedores', 'fornecedores.id', '=', 'compras.fornecedor_id')->whereBetween('data_compra', [setDataBR($request->data_inicial), setDataBR($request->data_final)]);
     /* Verifica o status solicitado */
     if ($request->status == 2) {
         $result->where('compras.status', '2');
     }
     // Vefirica se o usuário selecionou um fornecedor
     if ($request->fornecedor != '') {
         $result->where('fornecedor_id', $request->fornecedor);
     }
     $result = $result->get();
     $dado['data_inicial'] = $request->data_inicial;
     $dado['data_final'] = $request->data_final;
     return view('compras.relatorios.relatorio', compact('dado', 'result'));
 }
Example #2
0
 private function enderecoSql($datas)
 {
     $sql = Lancamento::leftJoin('boletos', 'boletos.lancamento_id', '=', 'lancamentos.id')->leftJoin('vendas', 'vendas.id', '=', 'lancamentos.venda_id')->leftJoin('clientes', 'clientes.id', '=', 'vendas.cliente_id')->leftJoin('enderecos', 'clientes.id', '=', 'enderecos.enderecavel_id')->where('tipo', 'bo')->where('enderecos.enderecavel_type', 'App\\Models\\Cliente')->whereBetween('lancamentos.data_vencimento', [setDataBR($datas['data_inicial']), setDataBR($datas['data_final'])]);
     return $sql;
 }
 public function relatorio(Request $request)
 {
     $debitos = Lancamento::whereBetween('data_vencimento', [setDataBR($request->data_inicial), setDataBR($request->data_final)])->where('tipo_lancamento', 'D');
     if ($request->tp == 'pagos') {
         $debitos = $debitos->where('status', 2)->orWhere('status', 3);
     }
     if ($request->tp == 'nao_pagos') {
         $debitos = $debitos->where('status', '1');
     }
     $debitos = $debitos->get();
     $dado['data_inicial'] = $request->data_inicial;
     $dado['data_final'] = $request->data_final;
     return view('/debitos/relatorio-final', compact('debitos', 'dado'));
 }
 public function geraRelatorio(Request $request)
 {
     $dado['data_inicial'] = $request->data_inicial;
     $dado['data_final'] = $request->data_final;
     $enderecos = Endereco::select('enderecos.estado', 'enderecos.cidade', 'enderecos.bairro')->where('enderecavel_type', 'App\\Models\\Cliente');
     $enderecos = $request->estado != '' ? $enderecos->where('estado', '=', $request->estado) : $enderecos;
     $enderecos = ($request->cidade != "? undefined:undefined ?" and $request->cidade != '') ? $enderecos->where('cidade', $request->cidade) : $enderecos;
     $enderecos = ($request->bairro != "? undefined:undefined ?" and $request->bairro != '') ? $enderecos->where('bairro', $request->bairro) : $enderecos;
     $estados = $enderecos->groupBy('estado')->select('estado')->get()->toArray();
     $cidades = $enderecos->groupBy('estado', 'cidade')->select('cidade')->get()->toArray();
     $bairros = $enderecos->groupBy('estado', 'cidade', 'bairro')->select('bairro')->get()->toArray();
     $enderecos->get();
     // Pega o status para gerar o relatorio de acordo com as opções [ Todos, Pagos, Não pagos ]
     $status = $request->tp;
     $boletos = Boleto::select(DB::raw('CONCAT(clientes.nome_razao, "/", clientes.fantasia) as cliente'), 'enderecos.estado', 'enderecos.cidade', 'enderecos.bairro', 'boletos.numero', 'lancamentos.valor_pago', 'lancamentos.valor', 'lancamentos.data_vencimento', 'lancamentos.data_pagamento', 'lancamentos.status', 'lancamentos.tipo_lancamento')->join('lancamentos', function ($q) use($dado, $status) {
         $q->on('lancamentos.id', '=', 'boletos.lancamento_id');
         $q->where('lancamentos.data_vencimento', '>=', setDataBR($dado['data_inicial']));
         $q->where('lancamentos.data_vencimento', '<=', setDataBR($dado['data_final']));
         if ($status == 'nao_pagos') {
             $q->where('lancamentos.status', '=', 1);
         }
         if ($status == 'pagos') {
             $q->where('lancamentos.status', '=', 2);
         }
     })->join('clientes', 'clientes.id', '=', 'boletos.cliente_id')->join('enderecos', function ($q) use($estados, $cidades, $bairros) {
         $q->on('enderecos.enderecavel_id', '=', 'clientes.id');
         $q->where('enderecos.enderecavel_type', '=', 'App\\Models\\Cliente');
         $q->whereIn('estado', $estados);
         $q->whereIn('cidade', $cidades);
         $q->whereIn('bairro', $bairros);
     })->orderBy('enderecos.estado')->orderBy('enderecos.cidade')->orderBy('enderecos.bairro')->orderBy('enderecos.logradouro')->orderBy('enderecos.numero')->orderBy('clientes.fantasia')->orderBy('clientes.nome_razao')->get();
     /*$pdf = App::make('dompdf.wrapper');
     
             $pdf->loadView('boletos/relatorio-final', compact('estados', 'cidades', 'bairros', 'boletos', 'datas'));
     
             return $pdf->stream();*/
     return view('boletos/relatorio-final', compact('boletos', 'dado'));
 }
Example #5
0
 public function setDataVendaAttribute($value)
 {
     $this->attributes['data_venda'] = setDataBR($value);
 }
Example #6
0
 public function setDataPagamentoAttribute($value)
 {
     $this->attributes['data_pagamento'] = setDataBR($value);
 }
Example #7
0
 public function setDataCompraAttribute($value)
 {
     $this->attributes['data_compra'] = setDataBR($value);
 }
 public function geraRelatorioPorCidade(Request $request)
 {
     $dado['data_inicial'] = $request->data_inicial;
     $dado['data_final'] = $request->data_final;
     $enderecos = Endereco::select('enderecos.estado', 'enderecos.cidade', 'enderecos.bairro')->where('enderecavel_type', 'App\\Models\\Cliente');
     $enderecos = $request->estado != '' ? $enderecos->where('estado', '=', $request->estado) : $enderecos;
     $enderecos = ($request->cidade != "? undefined:undefined ?" and $request->cidade != '') ? $enderecos->where('cidade', $request->cidade) : $enderecos;
     $enderecos = ($request->bairro != "? undefined:undefined ?" and $request->bairro != '') ? $enderecos->where('bairro', $request->bairro) : $enderecos;
     $estados = $enderecos->groupBy('estado')->select('estado')->get()->toArray();
     $cidades = $enderecos->groupBy('estado', 'cidade')->select('cidade')->get()->toArray();
     $bairros = $enderecos->groupBy('estado', 'cidade', 'bairro')->select('bairro')->get()->toArray();
     $enderecos->get();
     // Pega o status do cheque selecionado
     $status = $request->tp;
     $cheques = Cheque::select('bancos.numero as banco', 'cheques.numero', 'cheques.nome', 'lancamentos.valor', 'lancamentos.valor_pago', 'lancamentos.status', 'lancamentos.data_vencimento', 'lancamentos.data_pagamento', 'clientes.id as cliente_id', DB::raw('CONCAT(clientes.nome_razao, "/", clientes.fantasia) as cliente'), 'enderecos.estado', 'enderecos.cidade', 'enderecos.bairro')->leftJoin('bancos', 'bancos.id', '=', 'cheques.banco_id')->leftJoin('lancamentos', function ($q) use($dado, $status) {
         $q->on('lancamentos.id', '=', 'cheques.lancamento_id');
         if ($status != 'todos') {
             $q->where('lancamentos.status', '=', $status);
         }
         /*if($status == 'nao_pagos') {
                                             $q->where('lancamentos.status', '=', 1);
         
                                         }
                                         if($status == 'pagos') {
                                             $q->where('lancamentos.status', '=', 2);
         
                                         }*/
     })->leftJoin('clientes', 'clientes.id', '=', 'cheques.cliente_id')->leftJoin('enderecos', function ($q) use($estados, $cidades, $bairros) {
         $q->on('enderecos.enderecavel_id', '=', 'clientes.id');
         $q->where('enderecos.enderecavel_type', '=', 'App\\Models\\Cliente');
         $q->whereIn('estado', $estados);
         $q->whereIn('cidade', $cidades);
         $q->whereIn('bairro', $bairros);
     })->whereBetween('lancamentos.data_vencimento', [setDataBR($dado['data_inicial']), setDataBR($dado['data_final'])])->orderBy('enderecos.estado', 'asc')->orderBy('enderecos.cidade', 'asc')->orderBy('enderecos.bairro', 'asc')->orderBy('enderecos.logradouro', 'asc')->orderBy('enderecos.numero', 'asc')->orderBy('clientes.fantasia', 'asc')->orderBy('clientes.nome_razao', 'asc')->get();
     //        $pdf = App::make('dompdf.wrapper');
     //
     //        $pdf->loadView('cheques.relatorios.relatorio_cheques', compact('dado', 'cheques'));
     //
     //        return $pdf->stream();
     return view('cheques.relatorios.relatorio_cheques', compact('dado', 'cheques'));
 }
 public function postRelatorioRomaneio(Request $request, VendasService $vendasService)
 {
     //        $dado['data_inicial'] = $request->data_inicial;
     //        $dado['data_final']   = $request->data_final;
     //
     //        $enderecos = Endereco::select('enderecos.estado', 'enderecos.cidade', 'enderecos.bairro')->where('enderecavel_type', 'App\Models\Cliente');
     //
     //        $enderecos = $request->estado != '' ?  $enderecos->where('estado', '=', $request->estado) : $enderecos;
     //        $enderecos = ($request->cidade != "? undefined:undefined ?" and $request->cidade != '') ?  $enderecos->where('cidade', $request->cidade) : $enderecos;
     //        $enderecos = ($request->bairro != "? undefined:undefined ?" and $request->bairro != '') ?  $enderecos->where('bairro', $request->bairro) : $enderecos;
     //
     //        $estados = $enderecos->groupBy('estado')->select('estado')->get()->toArray();
     //        $cidades = $enderecos->groupBy('estado', 'cidade')->select('cidade')->get()->toArray();
     //        $bairros = $enderecos->groupBy('estado', 'cidade', 'bairro')->select('bairro')->get()->toArray();
     //        $enderecos->get();
     $address = new EnderecosCapa();
     $address = $address->getCapa($request, 'App\\Models\\Cliente');
     $clientes = Cliente::select('clientes.id', 'clientes.nome_razao', 'clientes.fantasia', 'vendas.cliente_id', 'vendas.data_venda', 'enderecos.logradouro', 'enderecos.bairro', 'enderecos.numero', DB::raw('sum(venda_itens.quantidade * venda_itens.preco_venda) as total'), 'enderecos.estado', 'enderecos.cidade', 'enderecos.bairro')->leftJoin('vendas', function ($v) use($address) {
         $v->on('clientes.id', '=', 'vendas.cliente_id');
         $v->where('data_venda', '>=', setDataBR($address['data_inicial']));
         $v->where('data_venda', '<=', setDataBR($address['data_final']));
     })->leftJoin('venda_itens', 'vendas.id', '=', 'venda_itens.venda_id')->leftJoin('enderecos', function ($q) use($address) {
         $q->on('enderecos.enderecavel_id', '=', 'clientes.id');
         $q->where('enderecos.enderecavel_type', '=', 'App\\Models\\Cliente');
         $q->whereIn('estado', $address['estados']);
         $q->whereIn('cidade', $address['cidades']);
         $q->whereIn('bairro', $address['bairros']);
     })->groupBy('clientes.id')->orderBy('enderecos.estado', 'asc')->orderBy('enderecos.cidade', 'asc')->orderBy('enderecos.bairro', 'asc')->orderBy('enderecos.logradouro', 'asc')->orderBy('enderecos.numero', 'asc')->orderBy('clientes.fantasia', 'asc')->orderBy('clientes.nome_razao', 'asc')->get();
     return view('clientes/relatorios/relatorio_romaneio', compact('address', 'clientes'));
 }