pluck(['id']); $start_date = $request->get('start_date'); $end_date = $request->get('end_date'); $cliente_id = $request->get('cliente_id'); $estado = $request->get('estado'); $local_id = $request->get('local_id'); $nfe = Nfe::where('nves.empresa_id', $request->empresa_id) ->where('orcamento', 0)->where('tpNF', 1) ->select('nves.id', 'cliente_id', 'user_id', 'funcionario_id', 'total', 'desconto', 'acrescimo', 'numero_serie', 'nves.numero', 'estado', 'nves.ambiente', 'nves.numero_sequencial', 'nves.created_at as created_at', DB::raw("'Nfe' as tipo"), 'clientes.razao_social as razao_social', 'clientes.cpf_cnpj as cpf_cnpj', 'localizacaos.descricao as descricao', 'users.name as user_name', 'data_emissao') ->join('clientes', 'clientes.id', '=', 'nves.cliente_id') ->join('localizacaos', 'localizacaos.id', '=', 'nves.local_id') ->join('users', 'users.id', '=', 'nves.user_id') ->when(!empty($start_date), function ($query) use ($start_date) { return $query->whereDate('nves.created_at', '>=', $start_date); }) ->when(!empty($end_date), function ($query) use ($end_date) { return $query->whereDate('nves.created_at', '<=', $end_date); }) ->when(!empty($cliente_id), function ($query) use ($cliente_id) { return $query->where('cliente_id', $cliente_id); }) ->when(!empty($local_id), function ($query) use ($local_id) { return $query->where('localizacaos.id', $local_id); }) ->when($estado != "", function ($query) use ($estado) { return $query->where('estado', $estado); }); $nfce = Nfce::where('nfces.empresa_id', $request->empresa_id) ->select('nfces.id', 'cliente_id', 'user_id', 'funcionario_id', 'total', 'desconto', 'acrescimo', 'numero_serie', 'nfces.numero', 'estado', 'nfces.ambiente', 'nfces.numero_sequencial', 'nfces.created_at as created_at', DB::raw("'Nfce' as tipo"), 'clientes.razao_social as razao_social', 'clientes.cpf_cnpj as cpf_cnpj', 'localizacaos.descricao as descricao', 'users.name as user_name', 'data_emissao') ->leftJoin('clientes', 'clientes.id', '=', 'nfces.cliente_id') ->join('localizacaos', 'localizacaos.id', '=', 'nfces.local_id') ->join('users', 'users.id', '=', 'nfces.user_id') ->when(!empty($start_date), function ($query) use ($start_date) { return $query->whereDate('nfces.created_at', '>=', $start_date); }) ->when(!empty($end_date), function ($query) use ($end_date) { return $query->whereDate('nfces.created_at', '<=', $end_date); }) ->when(!empty($cliente_id), function ($query) use ($cliente_id) { return $query->where('cliente_id', $cliente_id); }) ->when(!empty($local_id), function ($query) use ($local_id) { return $query->where('localizacaos.id', $local_id); }) ->when($estado != "", function ($query) use ($estado) { return $query->where('estado', $estado); }); $unionQuery = $nfe->unionAll($nfce); $sub = DB::table(DB::raw("({$unionQuery->toSql()}) as unioned")) ->mergeBindings($unionQuery->getQuery()); $somaGeral = DB::table(DB::raw("({$unionQuery->toSql()}) as s")) ->mergeBindings($unionQuery->getQuery()) ->sum('total'); $perPage = __itensPagina() ?: 20; $data = $sub->orderBy('created_at', 'desc') ->paginate(__itensPagina()); $config = ConfigGeral::where('empresa_id', $request->empresa_id)->first(); $envioWppLink = 0; if($config != null && $config->status_wpp_link){ $envioWppLink = 1; } return view('vendas.index', compact('data', 'somaGeral', 'envioWppLink')); } }