80 lines
3.5 KiB
PHP
80 lines
3.5 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\AuthController;
|
|
use App\Http\Controllers\CatalogoController;
|
|
use App\Http\Controllers\SaleController;
|
|
use App\Http\Controllers\ClientController;
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Http\Controllers\HomeController;
|
|
use App\Http\Controllers\LoginController;
|
|
use App\Http\Controllers\ProductosController;
|
|
use App\Http\Controllers\RegisterController;
|
|
use App\Http\Controllers\TallerController;
|
|
use App\Http\Controllers\AgendaController;
|
|
use App\Http\Controllers\AppointmentController;
|
|
use App\Http\Controllers\SupplierController;
|
|
use App\Http\Controllers\PasswordResetLinkController;
|
|
use App\Http\Controllers\NewPasswordController;
|
|
use App\Models\Product;
|
|
use Illuminate\Support\Facades\Auth;
|
|
use Illuminate\Support\Facades\Session;
|
|
|
|
Route::get('/',HomeController::class);
|
|
|
|
// Route::get('/catalogo', [CatalogoController::class,'catalogo'])->name('catalogo');
|
|
Route::resource('catalogo', CatalogoController::class)->only(['index', 'show'])->parameters(['catalogo' => 'product']);
|
|
|
|
Route::get('login', function(){ return view('login'); })->name('login');
|
|
Route::post('login', LoginController::class)->middleware('throttle:5,1')->name('login.attempt');
|
|
|
|
Route::middleware('guest')->group(function () {
|
|
Route::get('forgot-password', [PasswordResetLinkController::class, 'create'])
|
|
->name('password.request');
|
|
|
|
Route::post('forgot-password', [PasswordResetLinkController::class, 'store'])
|
|
->name('password.email');
|
|
|
|
Route::get('reset-password/{token}', [NewPasswordController::class, 'create'])
|
|
->name('password.reset');
|
|
|
|
Route::post('reset-password', [NewPasswordController::class, 'store'])
|
|
->name('password.store');
|
|
});
|
|
|
|
Route::view('register', 'register')->name('register');
|
|
Route::post('register', RegisterController::class)->name('register.store');
|
|
|
|
Route::post('logout', function(){
|
|
Auth::guard('web')->logout();
|
|
|
|
Session::invalidate();
|
|
Session::regenerateToken();
|
|
|
|
return redirect('/');
|
|
})->name('logout');
|
|
|
|
Route::middleware(['auth'])->group(function () {
|
|
Route::view('dashboard', 'dashboard')->name('dashboard');
|
|
Route::resource('clients', ClientController::class);
|
|
Route::get('suppliers/{supplier}/order', [SupplierController::class, 'order'])->name('suppliers.order');
|
|
Route::post('suppliers/{supplier}/order', [SupplierController::class, 'storeOrder'])->name('suppliers.storeOrder');
|
|
Route::resource('suppliers', SupplierController::class);
|
|
Route::resource('expenses', \App\Http\Controllers\ExpenseController::class);
|
|
Route::get('reports', [\App\Http\Controllers\ReportController::class, 'index'])->name('reports.index');
|
|
Route::resource('productos', ProductosController::class)->parameters([
|
|
'productos' => 'product'
|
|
]);
|
|
Route::resource('sales', SaleController::class)->only(['index', 'create', 'store', 'show']);
|
|
// Rutas de Taller
|
|
Route::controller(TallerController::class)->prefix('taller')->name('taller.')->group(function () {
|
|
Route::get('/', 'index')->name('index');
|
|
Route::get('/create', 'create')->name('create');
|
|
Route::post('/', 'store')->name('store');
|
|
Route::patch('/{appointment}/status', 'updateStatus')->name('updateStatus');
|
|
});
|
|
Route::get('/agenda', [AgendaController::class, 'index'])->name('agenda');
|
|
Route::get('/appointments/{appointment}', [AppointmentController::class, 'show'])
|
|
->name('appointments.show');
|
|
Route::view('/faq', 'faq')->name('faq');
|
|
});
|