diff --git a/app/Http/Controllers/NotificacaoController.php b/app/Http/Controllers/NotificacaoController.php new file mode 100644 index 0000000000000000000000000000000000000000..768ee2631f383f2ea37880172521a48b1f557ca6 --- /dev/null +++ b/app/Http/Controllers/NotificacaoController.php @@ -0,0 +1,99 @@ +sortBy('created_at'); + return view('notificacao.listar',['notificacoes'=>$notificacoes]); + } + + public function listarTrab() + { + $destinatarios = Notificacao::where('destinatario_id',Auth()->user()->id)->get(); + $remetentes = Notificacao::where('remetente_id',Auth()->user()->id)->get(); + $notificacoes = $destinatarios->merge($remetentes); + return view('notificacao.listar',['notificacoes'=>$notificacoes]); + } +} diff --git a/app/Notificacao.php b/app/Notificacao.php new file mode 100644 index 0000000000000000000000000000000000000000..cd6a717ea35c772145bc1a294f9937a693633a94 --- /dev/null +++ b/app/Notificacao.php @@ -0,0 +1,29 @@ +belongsTo(User::class,'destinatario_id','id'); + } + + public function remetente(){ + return $this->belongsTo(User::class,'remetente_id','id'); + } + + public function trabalho(){ + return $this->belongsTo(Trabalho::class,'trabalho_id','id'); + } +} diff --git a/database/migrations/2022_01_24_222743_create_notificacaos_table.php b/database/migrations/2022_01_24_222743_create_notificacaos_table.php new file mode 100644 index 0000000000000000000000000000000000000000..6f542b2af399280f08c88a717445349de4d98e15 --- /dev/null +++ b/database/migrations/2022_01_24_222743_create_notificacaos_table.php @@ -0,0 +1,42 @@ +bigIncrements('id'); + + $table->integer('remetente_id'); + $table->integer('destinatario_id'); + $table->integer('trabalho_id'); + $table->integer('perfil_id')->nullable(); + $table->boolean('lido'); + $table->integer('tipo'); //1 para pediu acesso, 2 para recebeu acesso, 3 para objetivo, 4 atividade, 5 sugestao + + $table->foreign('remetente_id')->references('id')->on('users'); + $table->foreign('trabalho_id')->references('id')->on('trabalhos'); + $table->foreign('destinatario_id')->references('id')->on('users'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('notificacaos'); + } +}