Commit faa60524 authored by Alfonso Rafael Solis Rangel's avatar Alfonso Rafael Solis Rangel
Browse files

Merge branch 'catalago-grupos' into 'main'

Se agrego el catalogo grupos funcional

See merge request !14
parents 9f3d6ece c7d21035
Loading
Loading
Loading
Loading
+45 −2
Original line number Diff line number Diff line
@@ -2,9 +2,52 @@

namespace App\Http\Controllers;

use App\Models\Grupos;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Carbon\Carbon;

class gruposController extends Controller
class GruposController extends Controller
{
    //
    public function index()
    {
        $grupos = Grupos::get(['id', 'nombre']);
        return view('adminGen.catalagos.grupos', ['grupos' => $grupos]);
    }

    public function store(Request $request)
    {
        $validated = $request->validate([
            'nombre' => 'required|max:150',
        ]);
    
        $grupo = new Grupos();
        $grupo->nombre = $request->nombre;
        $grupo->save();
    
        return redirect()->route('catalogos.grupos.get')->with('success', 'Grupo creado correctamente.');
    }

    public function update(Request $request, Grupos $grupos)
    {
        $validated = $request->validate([
            'id' => 'required|min:1',
            'nombre' => 'required|max:150',
        ]);

        $grupos = Grupos::find($request->id); 
        $grupos->nombre = $request->nombre;
        $grupos->save();

        return redirect()->route('catalogos.grupos.get')->with('success', 'Grupo actualizado correctamente.');
    }

    public function destroy($id)
    {
        $grupos = Grupos::findOrFail($id);
        $grupos->delete();

        return redirect()->route('catalogos.grupos.get')->with('success', 'Grupo eliminado correctamente.');
    }
}
+14 −1
Original line number Diff line number Diff line
@@ -5,7 +5,20 @@
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class grupos extends Model
class Grupos extends Model
{
    use HasFactory;

    protected $primaryKey = 'id';

    protected $fillable = [
        'nombre',
    ];

    public function users(): HasMany {
        return $this->hasMany(User::class);
        
    }
    
    public $timestamps = false;
}
+1 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ public function up(): void
            $table->id();
            $table->string('profesion');
            $table->string('abreviatura');
            $table->timestamps();
        });
    }

+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ public function up(): void
        Schema::create('grupos', function (Blueprint $table) {
            $table->id();
            $table->string('nombre');
            $table->timestamps();
        });
    }

+1 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ public function up(): void
            $table->id();
            $table->unsignedBigInteger('grupo_id')->nullable();
            $table->unsignedBigInteger('subgrupo_id')->nullable();
            $table->timestamps();

            $table->foreign('grupo_id')->references('id')->on('grupos')->nullable();
            $table->foreign('subgrupo_id')->references('id')->on('subgrupos')->nullable();
Loading