Commit 6a60d89b authored by Guilherme Silva's avatar Guilherme Silva
Browse files

Adicionado notificações e avisos de email na realização de ações

parent cae7206d
...@@ -537,7 +537,19 @@ class AdministradorController extends Controller ...@@ -537,7 +537,19 @@ class AdministradorController extends Controller
$trabalho->avaliadors()->attach($avaliadores); $trabalho->avaliadors()->attach($avaliadores);
$evento->avaliadors()->syncWithoutDetaching($avaliadores); $evento->avaliadors()->syncWithoutDetaching($avaliadores);
$trabalho->save(); $trabalho->save();
foreach ($avaliadores as $avaliador){
$notificacao = Notificacao::create([
'remetente_id' => Auth::user()->id,
'destinatario_id' => $avaliador->user_id,
'trabalho_id' => $request->trabalho_id,
'lido' => false,
'tipo' => 5,
]);
$notificacao->save();
}
return redirect()->back(); return redirect()->back();
} }
......
...@@ -3,10 +3,17 @@ ...@@ -3,10 +3,17 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use App\Arquivo; use App\Arquivo;
use App\Notificacao;
use App\User;
use Auth;
use Illuminate\Support\Facades\Notification;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use mysql_xdevapi\Exception; use mysql_xdevapi\Exception;
use Carbon\Carbon; use Carbon\Carbon;
use App\Notifications\RelatorioRecebimentoNotification;
use App\Administrador;
class ArquivoController extends Controller class ArquivoController extends Controller
{ {
...@@ -109,12 +116,67 @@ class ArquivoController extends Controller ...@@ -109,12 +116,67 @@ class ArquivoController extends Controller
$pasta = 'planoTrabalho/' . $arquivo->id; $pasta = 'planoTrabalho/' . $arquivo->id;
if($request->relatorioParcial != null) { if($request->relatorioParcial != null) {
$arquivo->relatorioParcial = Storage::putFileAs($pasta, $request->relatorioParcial, "RelatorioParcial.pdf"); $arquivo->relatorioParcial = Storage::putFileAs($pasta, $request->relatorioParcial, "RelatorioParcial.pdf");
//Coordenador
$userTemp = User::find($arquivo->trabalho->evento->coordenadorComissao->user_id);
$notificacao = Notificacao::create([
'remetente_id' => Auth::user()->id,
'destinatario_id' => $arquivo->trabalho->evento->coordenadorComissao->user_id,
'trabalho_id' => $arquivo->trabalho->id,
'lido' => false,
'tipo' => 3,
]);
$notificacao->save();
Notification::send($userTemp, new RelatorioRecebimentoNotification($arquivo->trabalho->id,$userTemp,
$arquivo->trabalho->evento->nome,$arquivo->trabalho->titulo,'Parcial'));
//Admins
$admins = Administrador::all();
foreach ($admins as $admin) {
$userTemp = User::find($admin->user_id);
$notificacao = Notificacao::create([
'remetente_id' => Auth::user()->id,
'destinatario_id' => $admin->user_id,
'trabalho_id' => $arquivo->trabalho->id,
'lido' => false,
'tipo' => 3,
]);
$notificacao->save();
Notification::send($userTemp, new RelatorioRecebimentoNotification($arquivo->trabalho->id,$userTemp,
$arquivo->trabalho->evento->nome,$arquivo->trabalho->titulo,'Parcial'));
}
} }
if($request->relatorioFinal != null) { if($request->relatorioFinal != null) {
$arquivo->relatorioFinal = Storage::putFileAs($pasta, $request->relatorioFinal, "RelatorioFinal.pdf"); $arquivo->relatorioFinal = Storage::putFileAs($pasta, $request->relatorioFinal, "RelatorioFinal.pdf");
//Coordenador
$userTemp = User::find($arquivo->trabalho->evento->coordenadorComissao->user_id);
$notificacao = Notificacao::create([
'remetente_id' => Auth::user()->id,
'destinatario_id' => $arquivo->trabalho->evento->coordenadorComissao->user_id,
'trabalho_id' => $arquivo->trabalho->id,
'lido' => false,
'tipo' => 4,
]);
$notificacao->save();
Notification::send($userTemp, new RelatorioRecebimentoNotification($arquivo->trabalho->id,$userTemp,
$arquivo->trabalho->evento->nome,$arquivo->trabalho->titulo,'Final'));
//Admins
$admins = Administrador::all();
foreach ($admins as $admin) {
$userTemp = User::find($admin->user_id);
$notificacao = Notificacao::create([
'remetente_id' => Auth::user()->id,
'destinatario_id' => $admin->user_id,
'trabalho_id' => $arquivo->trabalho->id,
'lido' => false,
'tipo' => 4,
]);
$notificacao->save();
Notification::send($userTemp, new RelatorioRecebimentoNotification($arquivo->trabalho->id,$userTemp,
$arquivo->trabalho->evento->nome,$arquivo->trabalho->titulo,'Final'));
}
} }
$arquivo->save(); $arquivo->save();
return redirect(route('planos.listar', ['id' => $request->projId])); return redirect(route('planos.listar', ['id' => $request->projId]))->with(['sucesso' => "Relatório enviado com sucesso"]);
}catch (Exception $th){ }catch (Exception $th){
} }
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment