110 lines
6.7 KiB
PHP
Raw Permalink Normal View History

2025-03-05 20:44:45 -06:00
<?php
use Illuminate\Support\Facades\Route;
use Koneko\VuexyWarehouse\Http\Controllers\ProductCategorieController;
use Koneko\VuexyWarehouse\Http\Controllers\ProductCatalogController;
use Koneko\VuexyWarehouse\Http\Controllers\ProductController;
use Koneko\VuexyWarehouse\Http\Controllers\ProductReceiptController;
use Koneko\VuexyWarehouse\Http\Controllers\MaterialController;
use Koneko\VuexyWarehouse\Http\Controllers\WarehouseController;
use Koneko\VuexyWarehouse\Http\Controllers\InventoryStockController;
use Koneko\VuexyWarehouse\Http\Controllers\InventoryMovementController;
use Koneko\VuexyWarehouse\Http\Controllers\WarehouseTransferController;
// Grupo raíz para admin con middleware y prefijos comunes
Route::prefix('admin/productos-y-servicios')->name('admin.inventory.')->middleware(['web', 'auth', 'admin'])->group(function () {
Route::controller(ProductCategorieController::class)->prefix('categorias')->name('product-categories.')->group(function () {
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'categorie')->name('store'); // Guardar
Route::get('{categorie}', 'show')->name('show'); // Ver
Route::get('{categorie}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{categorie}', 'update')->name('update'); // Actualizar
Route::delete('{categorie}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(ProductCatalogController::class)->prefix('catalogos')->name('product-catalogs.')->group(function () {
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'catalog')->name('store'); // Guardar
Route::get('{catalog}', 'show')->name('show'); // Ver
Route::get('{catalog}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{catalog}', 'update')->name('update'); // Actualizar
Route::delete('{catalog}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(ProductController::class)->prefix('productos')->name('products.')->group(function () {
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'product')->name('store'); // Guardar
Route::get('{product}', 'show')->name('show'); // Ver
Route::get('{product}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{product}', 'update')->name('update'); // Actualizar
Route::delete('{product}', 'destroy')->name('destroy'); // Eliminar
});
});
Route::prefix('admin/inventario-y-logistica')->name('admin.inventory.')->middleware(['web', 'auth', 'admin'])->group(function () {
Route::controller(ProductReceiptController::class)->prefix('recepcion-de-productos')->name('reception.')->group(function () {;
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'reception')->name('store'); // Guardar
Route::get('{reception}', 'show')->name('show'); // Ver
Route::get('{reception}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{reception}', 'update')->name('update'); // Actualizar
Route::delete('{reception}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(MaterialController::class)->prefix('gestion-de-insumos')->name('materials.')->group(function () {;
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'materials')->name('store'); // Guardar
Route::get('{materials}', 'show')->name('show'); // Ver
Route::get('{materials}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{materials}', 'update')->name('update'); // Actualizar
Route::delete('{materials}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(WarehouseController::class)->prefix('almacenes')->name('warehouse.')->group(function () {;
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'warehouse')->name('store'); // Guardar
Route::get('{warehouse}', 'show')->name('show'); // Ver
Route::get('{warehouse}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{warehouse}', 'update')->name('update'); // Actualizar
Route::delete('{warehouse}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(InventoryStockController::class)->prefix('stock-de-inventario')->name('stock.')->group(function () {;
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'stock')->name('store'); // Guardar
Route::get('{stock}', 'show')->name('show'); // Ver
Route::get('{stock}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{stock}', 'update')->name('update'); // Actualizar
Route::delete('{stock}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(InventoryMovementController::class)->prefix('movimientos-de-inventario')->name('movements.')->group(function () {;
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'movements')->name('store'); // Guardar
Route::get('{movements}', 'show')->name('show'); // Ver
Route::get('{movements}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{movements}', 'update')->name('update'); // Actualizar
Route::delete('{movements}', 'destroy')->name('destroy'); // Eliminar
});
Route::controller(WarehouseTransferController::class)->prefix('transferencias-entre-almacenes')->name('transfers.')->group(function () {;
Route::get('/', 'index')->name('index'); // Listar
Route::get('create', 'create')->name('create'); // Formulario de creación
Route::post('/', 'transfers')->name('store'); // Guardar
Route::get('{transfers}', 'show')->name('show'); // Ver
Route::get('{transfers}/edit', 'edit')->name('edit'); // Formulario de edición
Route::put('{transfers}', 'update')->name('update'); // Actualizar
Route::delete('{transfers}', 'destroy')->name('destroy'); // Eliminar
});
});