diff --git a/app/Http/Controllers/EspecialidadController.php b/app/Http/Controllers/EspecialidadController.php index 22d30a6..ac0db74 100644 --- a/app/Http/Controllers/EspecialidadController.php +++ b/app/Http/Controllers/EspecialidadController.php @@ -4,6 +4,8 @@ use Illuminate\Http\Request; use App\Models\Especialidad; +use App\Http\Requests\StoreEspecialidadRequest; +use App\Http\Requests\EditEspecialidadRequest; class EspecialidadController extends Controller { @@ -19,34 +21,55 @@ public function index() public function create() { // + return view('admin.Especialidades.create'); } - public function store(Request $request) + public function store(StoreEspecialidadRequest $request) { // + $Especialidad=request()->except('_token'); + + Especialidad::create($Especialidad); + + return redirect('/especialidad'); } - public function show($id) + public function show($id_especialidad) { // + $Especialidad= Especialidad::find($id_especialidad); + return View ('admin.Especialidades.show',compact('Especialidad')); } - public function edit($id) + public function edit($id_especialidad) { // + $Especialidad= Especialidad::find($id_especialidad); + return View ('admin.Especialidades.edit',compact('Especialidad')); } - public function update(Request $request, $id) + public function update(EditEspecialidadRequest $request, $id_especialidad) { // + $input = $request->all(); + + $Especialidad = Especialidad::find($id_especialidad); + + $Especialidad->update($input); + + //Redirecionas para no bugear el jalar de datos con reddirect para recargar la vista totalmente + return redirect('/especialidad'); } - public function destroy($id) + public function destroy($id_especialidad) { // + Especialidad::destroy($id_especialidad); + + return redirect('/especialidad'); } } diff --git a/app/Http/Requests/EditEspecialidadRequest.php b/app/Http/Requests/EditEspecialidadRequest.php new file mode 100644 index 0000000..ba4245a --- /dev/null +++ b/app/Http/Requests/EditEspecialidadRequest.php @@ -0,0 +1,38 @@ + 'required|string|min:5|max:40|unique:especialidades,nombre_especialidad,'.$this->id_especialidad . '",id_especialidad', + 'descripcion_especialidad' => 'required|string|min:5|max:40', + + ]; + } + public function messages() +{ + return [ + 'nombre_especialidad.required' => 'Es neceserio que este campo este llenado', + 'nombre_especialidad.min' => 'El nombre minimamente debe tener mas de 5 caracteres', + 'nombre_especialidad.max' => 'El nombre no debe superar los 40 caracteres', + 'nombre_especialidad.unique' => 'El nombre debe ser unico', + + 'descripcion_especialidad.required' => 'Es neceserio que este campo este llenado', + 'descripcion_especialidad.min' => 'La dirrecion minimamente debe tener mas de 5 caracteres', + 'descripcion_especialidad.max' => 'La dirrecion no debe superar los 40caracteres', + + ]; +} +} diff --git a/app/Http/Requests/StoreEspecialidadRequest.php b/app/Http/Requests/StoreEspecialidadRequest.php new file mode 100644 index 0000000..d1eac33 --- /dev/null +++ b/app/Http/Requests/StoreEspecialidadRequest.php @@ -0,0 +1,41 @@ +post->id} + + + public function rules() + { + return [ + 'nombre_especialidad' => 'required|string|min:5|max:40|unique:especialidades,nombre_especialidad', + 'descripcion_especialidad' => 'required|string|min:5|max:40', + + ]; + } + public function messages() +{ + return [ + 'nombre_especialidad.required' => 'Es neceserio que este campo este llenado', + 'nombre_especialidad.min' => 'El nombre minimamente debe tener mas de 5 caracteres', + 'nombre_especialidad.max' => 'El nombre no debe superar los 40 caracteres', + 'nombre_especialidad.unique' => 'El nombre debe ser unico', + + 'descripcion_especialidad.required' => 'Es neceserio que este campo este llenado', + 'descripcion_especialidad.min' => 'La dirrecion minimamente debe tener mas de 5 caracteres', + 'descripcion_especialidad.max' => 'La dirrecion no debe superar los 40caracteres', + + ]; +} +} + + diff --git a/resources/views/admin/Especialidades/create.blade.php b/resources/views/admin/Especialidades/create.blade.php index 3170713..c2155f8 100644 --- a/resources/views/admin/Especialidades/create.blade.php +++ b/resources/views/admin/Especialidades/create.blade.php @@ -1,39 +1,27 @@
-
Registro de Sedes
+
Registro de especialidades
-
+ {!! csrf_field() !!} -
- - @error('nombre_sede') +
+ + @error('nombre_especialidad')
  • {{$message}}
  • @enderror
    -
    - - @error('direccion_sede') +
    + + @error('descripcion_especialidad')
  • {{$message}}
  • @enderror
    -
    - - @error('telefono_sede') -
  • {{$message}}
  • - @enderror
    -
    - -
    +
    diff --git a/resources/views/admin/Especialidades/edit.blade.php b/resources/views/admin/Especialidades/edit.blade.php index 39d5055..90b2faa 100644 --- a/resources/views/admin/Especialidades/edit.blade.php +++ b/resources/views/admin/Especialidades/edit.blade.php @@ -1,41 +1,28 @@
    -
    Editar Sede
    +
    Actualizar Especialidad
    -
    + {!! csrf_field() !!} @method("PATCH") - + -
    - - @error('nombre_sede') +
    + + @error('nombre_especialidad')
  • {{$message}}
  • @enderror

    - - @error('direccion_sede') + + @error('descripcion_especialidad')
  • {{$message}}
  • @enderror
    -
    - - @error('telefono_sede') -
  • {{$message}}
  • - @enderror -
    -
    - -
    +
    diff --git a/resources/views/admin/Especialidades/show.blade.php b/resources/views/admin/Especialidades/show.blade.php index 798b4c3..e0ad402 100644 --- a/resources/views/admin/Especialidades/show.blade.php +++ b/resources/views/admin/Especialidades/show.blade.php @@ -1,17 +1,17 @@ -
    -
    Datos de la Sede
    -
    +
    +
    Datos de la especialidad
    +
    -
    -
    Nombre de la Sede : {{ $Sede->nombre_sede }}
    -

    Dirreccion de la sede : {{ $Sede->direccion_sede }}

    -

    Telefono de la sede : {{ $Sede->telefono_sede }}

    -

    Ciudad de la Sede: {{ $Sede->ciudad_sede }}

    -
    +
    +
    Datos de la especialidad
    +

    Nombre de la especialidad: {{ $Especialidad->nombre_especialidad }}

    +

    Descripcion de la especialidad : {{ $Especialidad->descripcion_especialidad }}

    + +
    - + +
    -
    - +