From 61637ae4bc732323578a4d530c8512e66ff552b0 Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 18 Feb 2026 08:47:47 -0600 Subject: [PATCH] =?UTF-8?q?Primer=20carga=20de=20contenido=20a=20servidor?= =?UTF-8?q?=20de=20producci=C3=B3n=20y=20anexo=20de=20claves?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/MailController.php | 87 +++++++++++++++ app/Mail/ExampleMail.php | 40 +++++++ database/seeders/DatabaseSeeder.php | 2 - database/seeders/RoleSeeder.php | 5 + resources/views/emails/example.blade.php | 21 ++++ .../views/layouts/_partials/menu.blade.php | 4 + resources/views/mail/create.blade.php | 99 +++++++++++++++++ resources/views/mail/edit.blade.php | 102 ++++++++++++++++++ resources/views/mail/index.blade.php | 83 ++++++++++++++ resources/views/mail/show.blade.php | 36 +++++++ routes/web.php | 3 + 11 files changed, 480 insertions(+), 2 deletions(-) create mode 100644 app/Http/Controllers/MailController.php create mode 100644 app/Mail/ExampleMail.php create mode 100644 resources/views/emails/example.blade.php create mode 100644 resources/views/mail/create.blade.php create mode 100644 resources/views/mail/edit.blade.php create mode 100644 resources/views/mail/index.blade.php create mode 100644 resources/views/mail/show.blade.php diff --git a/app/Http/Controllers/MailController.php b/app/Http/Controllers/MailController.php new file mode 100644 index 00000000..fef4f634 --- /dev/null +++ b/app/Http/Controllers/MailController.php @@ -0,0 +1,87 @@ +middleware('can:mail.index')->only('index','show'); + $this->middleware('can:mail.create')->only('create','store'); + $this->middleware('can:mail.edit')->only('edit','update'); + $this->middleware('can:mail.destroy')->only('destroy'); + } + + public function index() + { + $plantels=Plantel::all(); + $users=User::with('roles')->get(); + return view('mail.index',compact('users','plantels')); + } + + /** + * Show the form for creating a new resource. + */ + public function create() + { + // + } + + /** + * Store a newly created resource in storage. + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + */ + public function show(string $id) + { + // + } + + /** + * Show the form for editing the specified resource. + */ + public function edit(string $id) + { + // + } + + /** + * Update the specified resource in storage. + */ + public function update(Request $request, string $id) + { + // + } + + /** + * Remove the specified resource from storage. + */ + public function destroy(string $id) + { + // + } + + public function mailme(User $user){ + Mail::to($user->email)->send(new ExampleMail($user)); + + session()->flash('swal',[ + 'icon'=>'success', + 'title'=>'Enviado!', + 'text'=>'Se ha enviado el correo correctamente' + ]); + return redirect()->route('mail.index'); + } +} diff --git a/app/Mail/ExampleMail.php b/app/Mail/ExampleMail.php new file mode 100644 index 00000000..77deab9e --- /dev/null +++ b/app/Mail/ExampleMail.php @@ -0,0 +1,40 @@ +'asistencia.edit','description'=>'Editar asistencias'])->syncRoles([$role1]); Permission::create(['name'=>'asistencia.destroy','description'=>'Eliminar asistencias'])->syncRoles([$role1]); + Permission::create(['name'=>'mail.index','description'=>'Ver mail'])->syncRoles([$role1]); + Permission::create(['name'=>'mail.create','description'=>'Crear mail'])->syncRoles([$role1]); + Permission::create(['name'=>'mail.edit','description'=>'Editar mail'])->syncRoles([$role1]); + Permission::create(['name'=>'mail.destroy','description'=>'Eliminar mail'])->syncRoles([$role1]); + } } diff --git a/resources/views/emails/example.blade.php b/resources/views/emails/example.blade.php new file mode 100644 index 00000000..a48adfe3 --- /dev/null +++ b/resources/views/emails/example.blade.php @@ -0,0 +1,21 @@ + + + + + + + Document + + + + +

Holee {{$user->name}}

+ +

Este es un ejemplo

+ + + diff --git a/resources/views/layouts/_partials/menu.blade.php b/resources/views/layouts/_partials/menu.blade.php index 6d832e91..21ae8c14 100644 --- a/resources/views/layouts/_partials/menu.blade.php +++ b/resources/views/layouts/_partials/menu.blade.php @@ -91,6 +91,10 @@ @can('concepto.index') Conceptos @endcan + + @can('mail.index') + Mail + @endcan diff --git a/resources/views/mail/create.blade.php b/resources/views/mail/create.blade.php new file mode 100644 index 00000000..bb03c921 --- /dev/null +++ b/resources/views/mail/create.blade.php @@ -0,0 +1,99 @@ +@extends('layouts.landing') + +@section('title',"Crear") + +@section('content') + +
+
+
+
+
Crear Usuario
+ Regresar +
+
+ +
+
+ @csrf +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ @foreach ($plantels as $plantel) +
+ + +
+ @endforeach +
+ + +
+ + + @foreach ($roles as $role) +
+ + +
+ @endforeach + +
+ +
+ + +
+ +
+ + +
+ + +
+
+
+
+ +@endsection diff --git a/resources/views/mail/edit.blade.php b/resources/views/mail/edit.blade.php new file mode 100644 index 00000000..2bc03ed5 --- /dev/null +++ b/resources/views/mail/edit.blade.php @@ -0,0 +1,102 @@ +@extends('layouts.landing') + +@section('title',"Edit") + +@section('content') + +
+
+
+
+
Editar Usuario
+ Regresar +
+
+ +
+ @if (session('info')) +
+ {{session('info')}} +
+ @endif +
+ @method('PUT') + @csrf +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + +
+ +
+ + + @foreach ($plantels as $plantel) +
+ existe($plantel->id) ? 'checked' : '' }} + > + +
+ @endforeach +
+ +
+ + @foreach ($roles as $role) +
+ hasRole($role->id) ? 'checked' : '' }}> + +
+ @endforeach +
+ +
+ + +
+ + +
+ + +
+ + +
+
+
+
+ +@endsection diff --git a/resources/views/mail/index.blade.php b/resources/views/mail/index.blade.php new file mode 100644 index 00000000..0aa83e04 --- /dev/null +++ b/resources/views/mail/index.blade.php @@ -0,0 +1,83 @@ +@extends('layouts.landing') + +@section('head') + @include('layouts._partials.tablaStyle') +@endsection +@section('title',"Inicio") + +@section('content') + +
+
+
+
+
Usuarios
+
+
+ +
+
+ + + + + + + + + + + + + + @forelse ($users as $user) + + + + + + + + + + @empty +

Sin usuarios.

+ @endforelse + + +
IdNombreRolCorreoStatusOpciones
{{$user->id}}{{$user->name}} + @forelse($user->roles as $rol) + + {{ $rol->name }} + + @empty + Sin rol + @endforelse + {{$user->email}} + @if ($user->status==1) + + @else + + @endif + + + @can('user.edit') + + @endcan + +
+ + + +
+
+
+
+ +@endsection + + +@section('scripts') + @include('layouts._partials.tablaScript') + @include('layouts._partials.delete') +@endsection diff --git a/resources/views/mail/show.blade.php b/resources/views/mail/show.blade.php new file mode 100644 index 00000000..89ede7a9 --- /dev/null +++ b/resources/views/mail/show.blade.php @@ -0,0 +1,36 @@ +@extends('layouts.landing') + +@section('title',"show") + +@section('content') + +
+
+
+
+
Datos usuario
+ Regresar +
+
+ +
+

{{$user->name}}

+

{{$user->email}}

+ + {{--

Nota: {{$user->note->title}}

+

Descripción: {{$user->note->description}}

--}} + + @forelse ($user->notes as $note) +

Nota: {{$note->title}}

+

Descripción: {{$note->description}}

+
+ @empty + + @endforelse +
+ + +
+
+ +@endsection diff --git a/routes/web.php b/routes/web.php index 10051a05..a1a15ba9 100644 --- a/routes/web.php +++ b/routes/web.php @@ -18,6 +18,7 @@ use App\Http\Controllers\CodeController; use App\Http\Controllers\PlantelController; use App\Http\Controllers\ConceptoController; use App\Http\Controllers\DurationController; +use App\Http\Controllers\MailController; use App\Http\Controllers\MaterialController; use App\Http\Controllers\ProspectoController; use App\Http\Controllers\PermissionController; @@ -56,5 +57,7 @@ Route::middleware(['auth:sanctum',config('jetstream.auth_session'),'verified', Route::resource('/role',RoleController::class); Route::resource('/turno',TurnoController::class); Route::resource('/user',UserController::class); + Route::resource('/mail',MailController::class); + Route::get('/mailme/{user}',[MailController::class,'mailme'])->name('mailme'); });