예제 #1
0
 /**
  * Display a listing of conversas
  *
  * @return Response
  */
 public function index()
 {
     $conversas = Conversa::orderBy('id', 'DESC')->get();
     $ontem = mktime(0, 0, 0, date("m"), date("d") - 1, date("Y"));
     $anteontem = mktime(0, 0, 0, date("m"), date("d") - 2, date("Y"));
     $conversas->hoje = Conversa::where('data', '=', date('Y-m-d'))->get();
     $conversas->ontem = Conversa::where('data', '=', date('Y-m-d', $ontem))->get();
     $conversas->anteontem = Conversa::where('data', '=', date('Y-m-d', $anteontem))->get();
     $conversas->anteriores = Conversa::where('data', '<', date('Y-m-d', $anteontem))->get();
     // $conversas_hoje = Conversa::where(function ($query)use($hoje) {
     //                                               $query->where('created_at', '=', $hoje)
     //                                                     ->orWhere('b', '=', 1);
     //                                           })->where(function ($query) {
     //                                               $query->where('c', '=', 1)
     //                                                     ->orWhere('d', '=', 1);
     //                                           });
     //if( Request::ajax() ){
     //return $conversas;
     //}else{
     return View::make('conversas.index', compact('conversas'));
     //}
 }
예제 #2
0
 /**
  * Display the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function show($id)
 {
     // Cliente
     $cliente = Cliente::find($id);
     $pedidos = Pedido::where('cliente_id', $cliente->id)->orderBy('created_at', 'desc')->with(['fornecedor'])->get();
     $conversas = Conversa::where('cliente_id', $cliente->id)->orderBy('created_at', 'desc')->get();
     $cliente->pedidos = $pedidos;
     $cliente->conversas = $conversas;
     if ($cliente) {
         $pedidos = $cliente->pedidos();
         $tarefas = Tarefa::where('cliente_id', $cliente->id)->paginate(Input::get('perpage', 10));
         $tarefas->days = $tarefas->groupBy(function ($tarefa) {
             return date('Y-m-d', strtotime($tarefa->start));
         });
         $hoje = date('Y-m-d');
         $ontem = Carbon::create(date('Y'), date('m'), date('d'))->subDay();
         $amanha = Carbon::create(date('Y'), date('m'), date('d'))->addDay();
         $proximo = Carbon::create(date('Y'), date('m'), date('d'))->addDay();
         //Igual amanhã
         if ($proximo->isWeekend()) {
             $proximo = new Carbon('next monday');
         }
         $tarefas->pendentes = Tarefa::where('cliente_id', $cliente->id)->where('date', '<', $hoje)->where('done', 0)->orderBy('date', 'DESC')->get();
         $tarefas->hoje = Tarefa::where('cliente_id', $cliente->id)->where('date', '<', $amanha->startOfDay())->where('date', '>', $ontem)->where('done', 0)->get();
         $tarefas->nextDay = Tarefa::where('cliente_id', $cliente->id)->where('done', 0)->where('date', '>=', $amanha)->where('date', '<', $proximo->addDay())->orderBy('date', 'DESC')->get();
         $tarefas->proximas = Tarefa::where('cliente_id', $cliente->id)->where('date', '>=', $amanha->startOfDay())->where('done', 0)->orderBy('date', 'ASC')->get();
         $tarefas->concluidas = Tarefa::where('cliente_id', $cliente->id)->where('done', 1)->orderBy('updated_at', 'DESC')->get();
         // show the view and pass the cliente to it
         return View::make('clientes.show', compact('cliente', 'tarefas'));
         //->with( 'pedidos', $cliente->pedidos() );
     } else {
         $alert[] = ['class' => 'alert-warning', 'message' => 'O cliente que você procura não existe!'];
         Session::flash('alerts', $alert);
         return Redirect::to('clientes');
     }
 }
 /**
  * Store a newly created resource in storage.
  * POST /relatorios
  *
  * @return Response
  */
 public function store()
 {
     $validator = Validator::make($data = Input::all(), Relatorio::$rules);
     // Cria o novo relatório
     $relatorio = new Relatorio();
     if (isset($data['type'])) {
         $relatorio->type = $data['type'];
     }
     // Salva o relatório
     $relatorio->save();
     switch ($data['type']) {
         case 'despesas':
             $despesas = Despesa::where('relatorio_id', '<', 1)->get();
             $despesas_ids = array();
             // MARCA DESPESAS COM O ID DO RELATÓRIO ( LAST REPORT )
             foreach ($despesas as $despesa) {
                 $despesas_ids[] = $despesa->id;
                 $despesa->relatorio_id = $relatorio->id;
                 $despesa->save();
             }
             // ADICIONA OS IDS DAS CONVERSAS NO RELATÓRIO
             $relatorio->ids = implode(",", $despesas_ids);
             // Alert
             $alert[] = array('class' => 'alert-success', 'message' => '<strong><i class="fa fa-check"></i></strong> Relatório gerado com sucesso!');
             Session::flash('alerts', $alert);
             break;
         case 'conversas':
             // AUTOMÁTICO
             if (@$data['auto']) {
                 // Marca as conversas com o ID do relatório criado
                 $conversas = Conversa::where('relatorio_id', '<', '1')->get();
                 foreach ($conversas as $conversa) {
                     $conversa->relatorio_id = $relatorio->id;
                     $conversa->save();
                 }
                 // MANUAL
             } else {
                 if (isset($data['conversas_ids']) and is_array($data['conversas_ids'])) {
                     // ADICIONA OS IDS DAS CONVERSAS NO RELATÓRIO
                     $relatorio->ids = implode(",", $data['conversas_ids']);
                     // MARCA AS CONVERSAS COM O ID DO ÚLTIMO RELATÓRIO (este)
                     foreach ($data['conversas_ids'] as $conversa) {
                         $conversa = Conversa::find($conversa);
                         $conversa->relatorio_id = $relatorio->id;
                         $conversa->save();
                     }
                 }
             }
             // Alert
             $alert[] = array('class' => 'alert-success', 'message' => '<strong><i class="fa fa-check"></i></strong> Relatório de conversas gerado com sucesso!', 'links' => array('btn-success' => array('text' => 'Ver relatório', 'link' => url('relatorios', $relatorio->id))));
             Session::flash('alerts', $alert);
             break;
         default:
             break;
     }
     // Salva o relatório de novo
     $relatorio->save();
     return Redirect::to(url('relatorios/' . $relatorio->id));
 }