ultimatepos/Modules/AssetExchange/Routes/web.php

97 lines
6.1 KiB
PHP

<?php
use Modules\AssetExchange\Http\Controllers\AppraisalController;
use Modules\AssetExchange\Http\Controllers\CatalogMatchController;
use Modules\AssetExchange\Http\Controllers\DashboardController;
use Modules\AssetExchange\Http\Controllers\DealController;
use Modules\AssetExchange\Http\Controllers\InstallController;
use Modules\AssetExchange\Http\Controllers\ListingController;
use Modules\AssetExchange\Http\Controllers\NotificationController;
use Modules\AssetExchange\Http\Controllers\OfferController;
use Modules\AssetExchange\Http\Controllers\PipelineController;
use Modules\AssetExchange\Http\Controllers\PriceInquiryController;
use Modules\AssetExchange\Http\Controllers\ReportController;
use Modules\AssetExchange\Http\Controllers\ResearchCaseController;
use Modules\AssetExchange\Http\Controllers\SettingsController;
Route::middleware('web', 'authh', 'auth', 'SetSessionData', 'language', 'timezone', 'AdminSidebarMenu')
->prefix('asset-exchange')
->group(function () {
Route::get('/install', [InstallController::class, 'index']);
Route::post('/install', [InstallController::class, 'install']);
Route::get('/install/uninstall', [InstallController::class, 'uninstall']);
Route::get('/install/update', [InstallController::class, 'update']);
Route::get('/dashboard', [DashboardController::class, 'index']);
Route::get('/notifications', [NotificationController::class, 'index']);
Route::get('/notifications/unread-count', [NotificationController::class, 'unreadCount']);
Route::post('/notifications/{id}/read', [NotificationController::class, 'markRead']);
Route::post('/notifications/read-all', [NotificationController::class, 'markAllRead']);
Route::get('/listings', [ListingController::class, 'index']);
Route::get('/listings/create', [ListingController::class, 'create']);
Route::post('/listings', [ListingController::class, 'store']);
Route::get('/listings/{id}', [ListingController::class, 'show']);
Route::get('/listings/{id}/edit', [ListingController::class, 'edit']);
Route::put('/listings/{id}', [ListingController::class, 'update']);
Route::delete('/listings/{id}', [ListingController::class, 'destroy']);
Route::post('/listings/{id}/submit', [ListingController::class, 'submit']);
Route::post('/listings/{id}/assign-broker', [ListingController::class, 'assignBroker']);
Route::get('/catalog/search', [CatalogMatchController::class, 'search']);
Route::post('/listings/{id}/catalog/discover', [CatalogMatchController::class, 'discover']);
Route::post('/catalog/{matchId}/confirm', [CatalogMatchController::class, 'confirm']);
Route::post('/listings/{id}/catalog/link', [CatalogMatchController::class, 'manualLink']);
Route::get('/inquiries', [PriceInquiryController::class, 'index']);
Route::get('/inquiries/create', [PriceInquiryController::class, 'create']);
Route::post('/inquiries', [PriceInquiryController::class, 'store']);
Route::get('/inquiries/{id}', [PriceInquiryController::class, 'show']);
Route::post('/inquiries/{id}/send', [PriceInquiryController::class, 'send']);
Route::post('/inquiry-recipients/{recipientId}/quote', [PriceInquiryController::class, 'recordQuote']);
Route::get('/research', [ResearchCaseController::class, 'index']);
Route::get('/research/create', [ResearchCaseController::class, 'create']);
Route::post('/research', [ResearchCaseController::class, 'store']);
Route::get('/research/{id}/workspace', [ResearchCaseController::class, 'workspace']);
Route::post('/research/tasks/{taskId}/assign', [ResearchCaseController::class, 'assignTask']);
Route::post('/research/tasks/{taskId}/complete', [ResearchCaseController::class, 'completeTask']);
Route::post('/research/{id}/close', [ResearchCaseController::class, 'closeCase']);
Route::get('/appraisals', [AppraisalController::class, 'index']);
Route::get('/appraisals/create', [AppraisalController::class, 'create']);
Route::post('/appraisals', [AppraisalController::class, 'store']);
Route::get('/appraisals/{id}', [AppraisalController::class, 'show']);
Route::get('/appraisals/{id}/workspace', [AppraisalController::class, 'workspace']);
Route::post('/appraisals/{id}/import-ie', [AppraisalController::class, 'importIe']);
Route::post('/appraisals/{id}/import-cmms', [AppraisalController::class, 'importCmms']);
Route::post('/appraisals/{id}/recalculate', [AppraisalController::class, 'recalculate']);
Route::post('/appraisals/{id}/approve', [AppraisalController::class, 'approve']);
Route::get('/appraisals/{id}/report', [AppraisalController::class, 'report']);
Route::get('/appraisals/{id}/report-pdf', [AppraisalController::class, 'reportPdf']);
Route::get('/deals', [DealController::class, 'index']);
Route::get('/deals/create', [DealController::class, 'create']);
Route::post('/deals', [DealController::class, 'store']);
Route::get('/deals/{id}', [DealController::class, 'show']);
Route::put('/deals/{id}', [DealController::class, 'update']);
Route::post('/deals/{id}/complete', [DealController::class, 'complete']);
Route::post('/deals/{id}/create-po', [DealController::class, 'createPo']);
Route::post('/deals/{id}/create-quotation', [DealController::class, 'createQuotation']);
Route::get('/offers', [OfferController::class, 'index']);
Route::post('/offers', [OfferController::class, 'store']);
Route::post('/offers/{id}/accept', [OfferController::class, 'accept']);
Route::post('/offers/{id}/reject', [OfferController::class, 'reject']);
Route::get('/pipeline', [PipelineController::class, 'index']);
Route::get('/settings', [SettingsController::class, 'index']);
Route::put('/settings', [SettingsController::class, 'update']);
Route::get('/reports', [ReportController::class, 'index']);
Route::get('/reports/export', [ReportController::class, 'export']);
Route::post('/reports/import-ie-comps', [ReportController::class, 'importIeComps']);
});