Sindbad~EG File Manager
<?php
namespace App\Http\Livewire;
use Livewire\Component;
use App\Models\User;
use Livewire\WithPagination;
class Usuarios extends Component{
use WithPagination;
protected $queryString = ['buscar' => ['except' => '']];
protected $paginationTheme = 'bootstrap';
public $buscar='';
public $empresa_id,$usuario_id,$name,$puesto,$ingreso;
public function render(){
$usuarios=User::where('name','LIKE',"%{$this->buscar}%")->where('empresa_id',$this->empresa_id)->paginate(50);
return view('livewire.usuarios.index',["usuarios" => $usuarios]);
}
private function resetInputFields(){
$this->name = '';
$this->puesto = '';
$this->ingreso = '';
}
public function cancel(){
$this->resetInputFields();
}
public function edit($id){
$usuario = User::where('id',$id)->first();
$this->usuario_id = $id;
$this->name = $usuario->name;
$this->puesto = $usuario->puesto;
$this->ingreso = $usuario->ingreso;
}
public function update(){
$validatedDate = $this->validate([
'name' => 'required',
'puesto' => 'required',
'ingreso' => 'required',
],
[
'name.required' => 'El campo Nombre y Apellido es requerido',
'puesto.required' => 'El campo Puesto es requerido',
'ingreso.required' => 'El campo Fecha de ingreso es requerido',
]
);
if ($this->usuario_id) {
$usuario = User::find($this->usuario_id);
$usuario->update([
'name' => $this->name,
'puesto' => $this->puesto,
'ingreso' => $this->ingreso,
]);
$this->emit('alert', ['type' => 'info', 'message' => 'usuario actualizado correctamente.']);
$this->emit('cerrarmodal');
$this->resetInputFields();
}
}
public function delete($id){
if($id){
$usuario = User::find($id);
if ($usuario->estado == 1) {
$usuario->update([
'estado' => 0,
]);
$this->emit('alert', ['type' => 'error', 'message' => '¡Usuario bloqueado correctamente.!']);
}else{
$usuario->update([
'estado' => 1,
]);
$this->emit('alert', ['type' => 'success', 'message' => '¡Usuario activado correctamente.!']);
}
}
}
}
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists