106 lines
5.1 KiB
PHP

<?php
use App\Http\Controllers\BoxController;
use App\Http\Controllers\Repuve\CatalogController;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\Repuve\MunicipalityController;
use App\Http\Controllers\Repuve\RecordController;
use App\Http\Controllers\Repuve\ModuleController;
use App\Http\Controllers\Repuve\CancellationController;
use App\Http\Controllers\Repuve\InscriptionController;
use App\Http\Controllers\Repuve\UpdateController;
use App\Http\Controllers\Repuve\CatalogNameImgController;
use App\Http\Controllers\Repuve\DeviceController;
use App\Http\Controllers\Repuve\ExcelController;
use App\Http\Controllers\Repuve\PackageController;
use App\Http\Controllers\Repuve\TagsController;
use App\Http\Controllers\Repuve\AppController;
use App\Http\Controllers\System\SettingsController;
/**
* Rutas del núcleo de la aplicación.
*
* Se recomienda que no se modifiquen estas rutas a menos que sepa lo que está haciendo.
*/
require('core.php');
/**
* Rutas de tu aplicación.
*
* Estas rutas son de la aplicación AP I que desarrollarás. Siéntete libre de agregar lo que consideres necesario.
* Procura revisar que no existan rutas que entren en conflicto con las rutas del núcleo.
*/
/** Rutas protegidas (requieren autenticación) */
Route::middleware('auth:api')->group(function() {
// Rutas de inscripción de vehículos
Route::post('inscripcion', [InscriptionController::class, 'vehicleInscription']);
Route::get('consultaV', [InscriptionController::class, 'searchRecord']);
Route::get('consultaV/export', [ExcelController::class, 'exportSearchRecords']);
Route::post('reporte-robado', [InscriptionController::class, 'stolen']);
// Rutas de expedientes y documentos
Route::get('expediente/{id}/pdf', [RecordController::class, 'generatePdf']);
Route::get('expediente/{id}/pdfVerificacion', [RecordController::class, 'generatePdfVerification']);
Route::get('expediente/{id}/pdfConstancia', [RecordController::class, 'generatePdfConstancia']);
Route::get('expediente/{id}/pdfImagenes', [RecordController::class, 'generatePdfImages']);
Route::get('tags/{id}/pdfTag-sustituido', [RecordController::class, 'pdfSubstitutedTag']);
Route::get('tags/{tag}/pdfTag-damaged', [RecordController::class, 'pdfDamagedTag']);
Route::get('tags/{tag}/pdfTag-cancelado', [RecordController::class, 'pdfCancelledTag']);
Route::get('expediente/{id}/pdfFormulario', [RecordController::class, 'generatePdfForm']);
Route::get('RecordErrors', [RecordController::class, 'errors']);
//Rutas de Actualización
Route::post('sustitucion', [UpdateController::class, 'tagSubstitution']);
Route::post('actualizar-informacion', [UpdateController::class, 'vehicleUpdate']);
Route::post('actualizar-expediente/{id}', [UpdateController::class, 'updateData']);
Route::post('/repuve/resend/{id}', [UpdateController::class, 'resendToRepuve']);
// Rutas de cancelación de constancias
Route::resource('/razones-cancelacion', CatalogController::class);
Route::post('{recordId}/cancelacion', [CancellationController::class, 'cancelarConstancia']);
Route::post('tags/cancelar', [CancellationController::class, 'cancelarTagNoAsignado']);
Route::get('excel/constancias-sustituidas', [ExcelController::class, 'constanciasSustituidas']);
Route::get('excel/constancias-canceladas', [ExcelController::class, 'constanciasCanceladas']);
Route::get('excel/constancias-actualizadas', [ExcelController::class, 'vehicleActualizaciones']);
Route::get('excel/constancias-general', [ExcelController::class, 'excelGeneral']);
//Rutas de Modulos
Route::patch('module/{id}/toggle-status', [ModuleController::class, 'toggleStatus']);
Route::resource('module', ModuleController::class);
//Rutas de Municipios
Route::resource('municipality', MunicipalityController::class);
//Rutas de dispositivos
Route::patch('device/{id}/toggle-status', [DeviceController::class, 'toggleStatus']);
Route::resource('devices', DeviceController::class);
//Ruta de paquetes
Route::get('packages/boxes', [PackageController::class, 'getBoxTags']);
Route::resource('packages', PackageController::class);
//Ruta Tags
Route::resource('tags', TagsController::class);
Route::post('tags/import', [TagsController::class, 'tagStore']);
Route::post('tags/assign-to-module', [TagsController::class, 'assignToModule']);
//Rutas de nombres de archivos en catálogo
Route::resource('catalog-name-imgs', CatalogNameImgController::class);
//Ruta de encriptación de RepuveService
Route::get('repuve-credentials', [SettingsController::class, 'show']);
Route::put('repuve-credentials', [SettingsController::class, 'update']);
Route::post('repuve-credentials/decrypt', [SettingsController::class, 'decrypt']);
// Rutas App móvil
Route::get('app', [AppController::class, 'index']);
Route::post('app', [AppController::class, 'store']);
Route::put('app/{app}', [AppController::class, 'update']);
Route::delete('app/{app}', [AppController::class, 'destroy']);
Route::get('app/download', [AppController::class, 'download']);
});
/** Rutas públicas */