diff --git a/app/Http/Livewire/ShowRoles.php b/app/Http/Livewire/ShowRoles.php index 4ecdd82..ceaa497 100755 --- a/app/Http/Livewire/ShowRoles.php +++ b/app/Http/Livewire/ShowRoles.php @@ -1,49 +1,68 @@ user()->rol_id == 5) { + $query = Role::withCount('usuarios'); + if ($this->filtro_id) { + $query->where('subvendedor_id', $this->filtro_id); + } + $consulta_roles = $query->get(); - $consulta_roles = Role::withCount('usuarios')->get(); - //dd($consulta_roles); - return view('livewire.show-roles',['roles'=>$consulta_roles]); + $consulta_usuarios = User::orderBy('name', 'asc')->get(); + } else { + $consulta_roles = Role::where('subvendedor_id', auth()->user()->id)->withCount('usuarios')->get(); + $consulta_usuarios = null; + } + + return view('livewire.show-roles', [ + 'roles' => $consulta_roles, + 'usuarios' => $consulta_usuarios + ]); } - public function editar($id){ + public function editar($id) + { $this->nombre = Role::find($id)->nombre; $this->ro = $id; $this->editar = true; } - public function crear(){ + public function crear() + { if (!empty($this->nombre)) { - $crear_rol = new Role; - $crear_rol->nombre = $this->nombre; - $crear_rol->save(); + $crear_rol = new Role; + $crear_rol->nombre = $this->nombre; + $crear_rol->subvendedor_id = (auth()->user()->rol_id == 5) ? null : auth()->user()->id; + $crear_rol->save(); - $this->alert('success', 'Rol creado correctamente!', [ - 'position' => 'top' - ]); - $this->add = false; - }else{ + $this->alert('success', 'Rol creado correctamente!', [ + 'position' => 'top' + ]); + $this->add = false; + } else { $this->alert('warning', 'Campo Nombre sin diligenciar!', [ 'position' => 'top' ]); } - } public function eliminar($id) @@ -79,29 +98,29 @@ class ShowRoles extends Component public function confirmed() { - $eliminar= Role::find($this->ro)->delete(); + $eliminar = Role::find($this->ro)->delete(); $this->alert('success', 'Rol eliminado!', [ 'position' => 'top' ]); } - public function limpiarInputAdd(){ - $this->editar= false; + public function limpiarInputAdd() + { + $this->editar = false; $this->add = false; - } - public function actualizar(){ - $eliminar= Role::find($this->ro); + public function actualizar() + { + $eliminar = Role::find($this->ro); //dd($eliminar); - $eliminar->update(['nombre'=>$this->nombre]); + $eliminar->update(['nombre' => $this->nombre]); $this->alert('success', 'Rol actualizado!', [ 'position' => 'top' ]); - $this->editar=false; - + $this->editar = false; } } diff --git a/app/Models/Role.php b/app/Models/Role.php index 80d4fea..7b28e6d 100755 --- a/app/Models/Role.php +++ b/app/Models/Role.php @@ -14,20 +14,28 @@ class Role extends Model 'subvendedor_id', ]; - public function usuarios(){ - return $this ->hasMany(User::class,'rol_id'); + public function subvendedor() + { + return $this->belongsTo(User::class, 'subvendedor_id'); } - public function permisos(){ - return $this ->hasMany(Permiso::class,'rol_id'); + public function usuarios() + { + return $this->hasMany(User::class, 'rol_id'); } - public function tarifas(){ - return $this ->hasMany(Tarifas::class,'rol_id'); + public function permisos() + { + return $this->hasMany(Permiso::class, 'rol_id'); } - public function rol_promos(){ - return $this ->hasMany(TarifaPromo::class,'rol_id'); + public function tarifas() + { + return $this->hasMany(Tarifas::class, 'rol_id'); } + public function rol_promos() + { + return $this->hasMany(TarifaPromo::class, 'rol_id'); + } } diff --git a/app/Models/User.php b/app/Models/User.php index 55efa96..cf1c600 100755 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -38,6 +38,11 @@ class User extends Authenticatable return $this->belongsTo(Role::class); } + public function roles() + { + return $this->hasMany(Role::class, 'subvendedor_id'); + } + public function saldo() { return $this->hasOne(Saldo::class, 'usuario_id'); diff --git a/resources/views/livewire/portada-servicio.blade.php b/resources/views/livewire/portada-servicio.blade.php index da4a5f5..f85484f 100755 --- a/resources/views/livewire/portada-servicio.blade.php +++ b/resources/views/livewire/portada-servicio.blade.php @@ -25,76 +25,53 @@ Promociones - - -
@foreach ($promociones as $promocion) -
- - +
+ + -
+
-
- +
+
- -
@endforeach -
-
- - {{-- Modal ver promno --}} -
+
{{-- PHOTO --}}
-
diff --git a/resources/views/livewire/show-roles.blade.php b/resources/views/livewire/show-roles.blade.php index 7518eef..d185231 100755 --- a/resources/views/livewire/show-roles.blade.php +++ b/resources/views/livewire/show-roles.blade.php @@ -1,40 +1,45 @@ -
+
-
+
- +

Cargando

-
+
-
+
- + Roles
- Añadir - rol - - - - + @if (auth()->user()->subvendedor) + + Añadir rol + + + + + @endif
+ + @if (auth()->user()->rol_id == 5) +
+ +
+ @endif
- {{-- -Tabla usuarios - --}} -
+
@@ -44,65 +49,49 @@ editar : @entangle('editar'), - @foreach ($roles as $rol) + @forelse ($roles as $rol) - - - - + + - @endforeach + @empty + + + + @endforelse
{{ $rol->nombre ?? '' }}{{ $rol->usuarios_count ?? '' }}{{ $rol->nombre ?? '' }}{{ $rol->usuarios_count ?? '' }} - -
- - +
+ +
+ Sin datos +
-
- - - {{-- Añadir rol --}} -
+
- - + +
-
+
- + - +
@@ -110,39 +99,27 @@ editar : @entangle('editar'),
- {{-- editar rol --}} -
-
- -
-
- - -
- -
- - - - - - -
-
- -
-
- - + {{-- editar rol --}} +
+
+
+
+
+ + +
+
+ + + + + + +
+
+
+
+
diff --git a/routes/web.php b/routes/web.php index c1eca99..549a57d 100755 --- a/routes/web.php +++ b/routes/web.php @@ -42,11 +42,12 @@ Route::middleware(["auth"])->group(function () { Route::get('/wompi/{monto}', [MenuController::class, 'showwompi'])->name('wompi'); Route::any('/logs', [MenuController::class, 'showlogs'])->name('logs'); Route::any('/usuarios', [MenuController::class, 'showusuarios'])->name('usuarios'); + Route::any('/roles', [MenuController::class, 'showroles'])->name('roles'); }); // Editores Route::middleware(["auth", "solo_usuario_editor"])->group(function () { - Route::any('/planes', [MenuController::class, 'showplanes'])->name('planes'); + Route::any('/planes', [MenuController::class, 'showplanes'])->name('planes'); Route::get('/import', [MenuController::class, 'showimport'])->name('import'); }); @@ -61,7 +62,6 @@ Route::middleware(["auth", "solo_usuario_administrador"])->group(function () { Route::any('/logs-recargas', [MenuController::class, 'showLogRecargas'])->name('logsRecargas'); Route::any('/log-general', [MenuController::class, 'showLogGeneral'])->name('logGeneral'); Route::any('/log-historial', [MenuController::class, 'showLogHistorial'])->name('logHistorial'); - Route::any('/roles', [MenuController::class, 'showroles'])->name('roles'); Route::get('/utilidades', [MenuController::class, 'showutilidad'])->name('utilidades'); Route::get('/mantenimiento', [MenuController::class, 'mantenimiento'])->name('mantenimiento'); });