public function verificar(Usuario $usuario)
 {
     $realizacoes = $usuario->getRealizacoes();
     $realizacao = null;
     foreach ($realizacoes as $r) {
         if ($r->getTarefa() == $this->tarefaRequisito) {
             $realizacao = $r;
         }
     }
     if (is_null($realizacao)) {
         throw new \Exception('Não cumpriu a tarefa: ' . $this->tarefaRequisito->getNome());
     }
 }
 /**
  * Store a newly created conversa in storage.
  *
  * @return Response
  */
 public function store()
 {
     $validator = Validator::make($data = Input::all(), Conversa::$rules);
     //return Conversa::create($data);
     if ($validator->fails()) {
         return Response::json(array('success' => false));
     }
     $conversa = Conversa::create($data);
     if ($conversa) {
         $alert[] = ['class' => 'alert-success', 'message' => '<strong><i class="fa fa-check"></i></strong>Conversa salva com sucesso!'];
         // AGENDAR PRÓXIMA CONVERSA
         if (isset($data['tarefa_title']) and !empty($data['tarefa_title'])) {
             $cliente = Cliente::find($data['cliente_id']);
             if (!empty($data['tarefa_title'])) {
                 $tarefa_title = $data['tarefa_title'];
             } else {
                 $tarefa_title = "Conversa agendada com " . $cliente->nome;
             }
             $tarefa = Tarefa::create(['start' => date('Y-m-d H:i:s', strtotime($data['tarefa_date'])), 'cliente_id' => $data['cliente_id'], 'conversa_id' => $conversa->id, 'title' => $tarefa_title, 'tipo' => $data['tarefa_tipo']]);
             if ($tarefa) {
                 $alert[] = ['class' => 'alert-success', 'message' => '<strong><i class="icon-alarm"></i></strong> Próxima conversa agendada para ' . date('d \\d\\e F', strtotime($tarefa->start))];
             }
         }
     } else {
         $alert[] = ['class' => 'alert-warning', 'message' => '<strong><i class="fa fa-times"></i></strong> Erro! Não foi possível salvar a conversa.'];
     }
     Session::flash('alerts', $alert);
     return Redirect::to(URL::previous());
     //return Response::json(array('success' => true));
 }
 public function run()
 {
     DB::table('tarefas')->delete();
     Tarefa::create(array('titulo' => 'Migração Fontes PHP', 'descricao' => 'Efetuar a migração dos fontes dos sistemas em PHP'));
     Tarefa::create(array('titulo' => 'Migração Base PHP', 'descricao' => 'Efetuar a migração da base dos sistemas PHP'));
     Tarefa::create(array('titulo' => 'Rotina de Testes', 'descricao' => 'Efetuar a rotina de testes'));
 }
示例#4
0
 public function postAct()
 {
     $apagar = Tarefa::find(Input::get('id'));
     $apagar->titulo = Input::get('titulo');
     $apagar->descricao = Input::get('descricao');
     $apagar->prazo = Input::get('prazo');
     $apagar->responsavel = Input::get('responsavel');
     $apagar->update();
     return View::make('tarefa');
 }
 public function cumprir()
 {
     $realizacoes = $this->usuario->getRealizacoes();
     $realizacao = null;
     foreach ($realizacoes as $r) {
         if ($r->getTarefa() == $this->tarefa) {
             $realizacao = $r;
         }
     }
     if ($this->usuario->pagarEnergia($this->tarefa->getCusto())) {
         if (is_null($realizacao)) {
             $realizacao = new Realizacao();
             $realizacao->setTarefa($this->tarefa);
             $this->usuario->addRealizacao($realizacao);
         }
         if (count($this->tarefa->getRequisitos()) > 0) {
             $requisitos = $this->tarefa->getRequisitos();
             foreach ($requisitos as $requisito) {
                 $requisito->cumprir($this->usuario);
             }
         }
         $realizacao->setExecucao($realizacao->getExecucao() + 1);
         if (count($this->tarefa->getBeneficios()) > 0) {
             $beneficios = $this->tarefa->getBeneficios();
             foreach ($beneficios as $beneficio) {
                 $beneficio->fornecerPara($this->usuario);
             }
         }
     } else {
         throw new \Exception('Energia Insuficiente');
     }
 }
 public function run()
 {
     $faker = Faker::create('pt_BR');
     $clientes = Cliente::all();
     $clientes_id = array();
     foreach ($clientes as $cliente) {
         $clientes_id[] = $cliente['id'];
     }
     $conversas = Conversa::all();
     $conversas_id = array();
     foreach ($conversas as $conversa) {
         $conversas_id[] = $conversa['id'];
     }
     foreach (User::all() as $user) {
         foreach (range(1, 10) as $index) {
             Tarefa::create(['icon' => 'fa-star', 'title' => 'Tarefa #' . $index . ' de ' . $user->username, 'description' => 'Descrição da tarefa #' . $index, 'date' => '2015-06-21', 'time' => '08:' . number_format($index, '2'), 'cliente_id' => NULL, 'conversa_id' => NULL, 'notification_id' => NULL, 'category_id' => '', 'owner_id' => $user->id, 'done' => false]);
         }
     }
 }
 public function run()
 {
     $faker = Faker::create('pt_BR');
     $clientes = Cliente::all();
     foreach ($clientes as $cliente) {
         $clientes_id[] = $cliente['id'];
     }
     $tarefas = Tarefa::all();
     foreach ($tarefas as $tarefa) {
         $tarefas_id[] = $tarefa['id'];
     }
     $relatorios = Relatorio::all();
     foreach ($relatorios as $relatorio) {
         $relatorios_id[] = $relatorio['id'];
     }
     foreach (range(1, 230) as $index) {
         $random_cliente_id = array_rand($clientes_id, 1);
         $random_tarefa_id = array_rand($tarefas_id, 1);
         Conversa::create(['data' => $faker->dateTime(), 'resumo' => $faker->text(50), 'cliente_id' => $random_cliente_id, 'tarefa_id' => $random_tarefa_id, 'relatorio_id' => '']);
     }
 }
 /**
  * Show the form for creating a new resource.
  * GET /contacts/create
  *
  * @return Response
  */
 public function getTarefas($data)
 {
     switch ($data['view']) {
         case 'day':
             $date = Carbon::createFromFormat('Y-m-d', $data['date'])->addDays($data['next'])->subDays($data['prev']);
             $events = Tarefa::where('date', $date->format('Y-m-d'))->orderBy('date', 'ASC')->get();
             break;
         case 'week':
             $date = Carbon::createFromFormat('Y-m-d', $data['date'])->addWeeks($data['next'])->subWeeks($data['prev']);
             $events = Tarefa::where('date', '>=', $date->dateOfWeek()->format('Y-m-d'))->where('date', '<=', $date->endOfWeek()->format('Y-m-d'))->orderBy('date', 'ASC')->get();
             break;
         case 'month':
             $date = Carbon::createFromFormat('Y-m-d', $data['date'])->addMonths($data['next'])->subMonths($data['prev']);
             $events = Tarefa::where('date', '>=', $date->startOfMonth()->format('Y-m-d'))->where('date', '<=', $date->endOfMonth()->format('Y-m-d'))->orderBy('date', 'ASC')->get();
             break;
     }
     return $events;
 }
示例#9
0
	<div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
		<div class="container text-center">
			<div class="pull-left">
				
				<div class="dropdown">
					
					<!-- Menu Button -->
					<div class="menu-btn btn">
						<i class="fa fa-bars"></i>
					</div>					

					<a href="{{url('tarefas')}}" class="btn btn-link tarefas-info">                        
						<i class="fa fa-check-square-o fa-2x"></i>
						
						<?php 
    $tarefas_info = count(Tarefa::where('done', 0)->where('date', '<=', date('Y-m-d'))->get());
    ?>
						@if ($tarefas_info)
						<span class="badge badge-danger">{{ $tarefas_info }}</span>
						@endif
					</a>

					<a  href="{{url('financeiro')}}" class="btn btn-link transactions_info">

						<i class="icon-dollar fa-2x"></i>
						<?php 
    $transactions_info = count(Transaction::where('done', 0)->where('date', '<=', date('Y-m-d'))->where('user_id', Auth::id())->get());
    ?>
						@if ($transactions_info)
						<span class="badge badge-danger">{{ $transactions_info }}</span>
						@endif
示例#10
0
|--------------------------------------------------------------------------
| HOME
|--------------------------------------------------------------------------
*/
Route::get('/', function () {
    return Redirect::to('agenda');
});
Route::when('/', 'auth');
/*
|--------------------------------------------------------------------------
| DEMO
|--------------------------------------------------------------------------
*/
Route::get('/demo', function () {
    $clientes = Cliente::all();
    $tarefas = Tarefa::all();
    return View::make('demo', compact('clientes', 'tarefas'));
});
/*
|--------------------------------------------------------------------------
| AGENDA
|--------------------------------------------------------------------------
*/
Route::get('agenda/print', array('as' => "agenda.print", 'uses' => 'AgendaController@index'));
Route::resource('agenda', 'AgendaEventsController');
Route::get('agenda/{id}/delete', array('uses' => 'AgendaEventsController@destroy'));
Route::get('agenda/', array('uses' => 'AgendaController@index'));
Route::when('agenda*', 'auth');
/*
|--------------------------------------------------------------------------
| FINANCEIRO
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     Tarefa::destroy($id);
     return Response::json(array('success' => true));
 }
示例#12
0
 /**
  * API Method inserts a new Tarefa record and render response as JSON
  */
 public function Create()
 {
     try {
         $json = json_decode(RequestUtil::GetBody());
         if (!$json) {
             throw new Exception('The request body does not contain valid JSON');
         }
         $tarefa = new Tarefa($this->Phreezer);
         // TODO: any fields that should not be inserted by the user should be commented out
         // this is an auto-increment.  uncomment if updating is allowed
         // $tarefa->Codigo = $this->SafeGetVal($json, 'codigo');
         $tarefa->Titulo = $this->SafeGetVal($json, 'titulo');
         $tarefa->Descricao = $this->SafeGetVal($json, 'descricao');
         $tarefa->Prioridade = $this->SafeGetVal($json, 'prioridade');
         $tarefa->Validate();
         $errors = $tarefa->GetValidationErrors();
         if (count($errors) > 0) {
             $this->RenderErrorJSON('Please check the form for errors', $errors);
         } else {
             $tarefa->Save();
             $this->RenderJSON($tarefa, $this->JSONPCallback(), true, $this->SimpleObjectParams());
         }
     } catch (Exception $ex) {
         $this->RenderExceptionJSON($ex);
     }
 }
示例#13
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     $tarefa = Tarefa::create(Input::all());
     return Redirect::route('tarefa.index');
 }
示例#14
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');
     }
 }
示例#15
0
 /**
  * Remove the specified tarefa from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function excluir($id)
 {
     Tarefa::destroy($id);
     $alert[] = ['class' => 'alert-success', 'message' => '<strong><i class="fa fa-check"></i></strong> Tarefa excluída com successo'];
     Session::flash('alerts', $alert);
     return Redirect::to(URL::previous());
 }