Add empleado, borrado del seeder, cambios esteticos y middleware.
This commit is contained in:
@@ -8,6 +8,13 @@ use App\Models\Supplier;
|
||||
|
||||
class ExpenseController extends Controller
|
||||
{
|
||||
private function checkAdmin()
|
||||
{
|
||||
if (auth()->check() && auth()->user()->role !== 'admin') {
|
||||
abort(403, 'Solo los administradores pueden realizar esta acción.');
|
||||
}
|
||||
}
|
||||
|
||||
public function index(Request $request)
|
||||
{
|
||||
$query = $request->input('search');
|
||||
@@ -33,12 +40,14 @@ class ExpenseController extends Controller
|
||||
|
||||
public function create()
|
||||
{
|
||||
$this->checkAdmin();
|
||||
$suppliers = Supplier::orderBy('name')->get();
|
||||
return view('expenses.create', compact('suppliers'));
|
||||
}
|
||||
|
||||
public function store(Request $request)
|
||||
{
|
||||
$this->checkAdmin();
|
||||
$validated = $request->validate([
|
||||
'supplier_id' => 'nullable|exists:suppliers,id',
|
||||
'description' => 'required|string|max:255',
|
||||
@@ -66,12 +75,14 @@ class ExpenseController extends Controller
|
||||
|
||||
public function edit(Expense $expense)
|
||||
{
|
||||
$this->checkAdmin();
|
||||
$suppliers = Supplier::orderBy('name')->get();
|
||||
return view('expenses.edit', compact('expense', 'suppliers'));
|
||||
}
|
||||
|
||||
public function update(Request $request, Expense $expense)
|
||||
{
|
||||
$this->checkAdmin();
|
||||
$validated = $request->validate([
|
||||
'supplier_id' => 'nullable|exists:suppliers,id',
|
||||
'description' => 'required|string|max:255',
|
||||
@@ -90,6 +101,7 @@ class ExpenseController extends Controller
|
||||
|
||||
public function destroy(Expense $expense)
|
||||
{
|
||||
$this->checkAdmin();
|
||||
$expense->delete();
|
||||
return redirect()->route('expenses.index')->with('success', 'Gasto eliminado correctamente.');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user