* @copyright walkor * @link http://www.workerman.net/ * @license http://www.opensource.org/licenses/mit-license.php MIT License */ use Webman\Route; use app\controller\app\HomeController; use app\controller\app\CatalogController; use app\controller\app\AppraisalController; use app\controller\app\OrdersController; use app\controller\app\ReportsController; use app\controller\app\VerifyController; use app\controller\app\MaterialTagsController as AppMaterialTagsController; use app\controller\app\MessagesController as AppMessagesController; use app\controller\app\SupplementController as AppSupplementController; use app\controller\app\TicketsController as AppTicketsController; use app\controller\app\ShippingController as AppShippingController; use app\controller\app\AddressesController as AppAddressesController; use app\controller\app\HelpCenterController as AppHelpCenterController; use app\controller\app\SettingsController as AppSettingsController; use app\controller\app\AuthController as AppAuthController; use app\controller\app\MineController as AppMineController; use app\controller\admin\DashboardController as AdminDashboardController; use app\controller\admin\OrdersController as AdminOrdersController; use app\controller\admin\CatalogController as AdminCatalogController; use app\controller\admin\ReportsController as AdminReportsController; use app\controller\admin\AppraisalTasksController as AdminAppraisalTasksController; use app\controller\admin\MessagesController as AdminMessagesController; use app\controller\admin\TicketsController as AdminTicketsController; use app\controller\admin\UsersController as AdminUsersController; use app\controller\admin\WarehousesController as AdminWarehousesController; use app\controller\admin\MaterialsController as AdminMaterialsController; use app\controller\admin\AccessController as AdminAccessController; use app\controller\admin\ContentsController as AdminContentsController; use app\controller\admin\SystemConfigsController as AdminSystemConfigsController; use app\controller\admin\AuthController as AdminAuthController; use app\controller\admin\CustomersController as AdminCustomersController; use app\controller\open\OrdersController as OpenOrdersController; Route::get('/', [app\controller\IndexController::class, 'json']); Route::options('/api/app/appraisal/draft/create', function () { return response('', 204); }); Route::options('/api/app/appraisal/draft/save', function () { return response('', 204); }); Route::options('/api/app/appraisal/file/upload', function () { return response('', 204); }); Route::options('/api/app/appraisal/file/delete', function () { return response('', 204); }); Route::options('/api/app/appraisal/preview', function () { return response('', 204); }); Route::options('/api/app/appraisal/submit', function () { return response('', 204); }); Route::options('/api/app/message/read', function () { return response('', 204); }); Route::options('/api/app/messages/read-all', function () { return response('', 204); }); Route::options('/api/app/order/supplement/file/upload', function () { return response('', 204); }); Route::options('/api/app/order/supplement/file/delete', function () { return response('', 204); }); Route::options('/api/app/order/supplement/submit', function () { return response('', 204); }); Route::options('/api/app/ticket/create', function () { return response('', 204); }); Route::options('/api/app/ticket/reply', function () { return response('', 204); }); Route::options('/api/app/ticket/file/upload', function () { return response('', 204); }); Route::options('/api/app/ticket/file/delete', function () { return response('', 204); }); Route::options('/api/app/order/shipping/save', function () { return response('', 204); }); Route::options('/api/app/order/return-address/save', function () { return response('', 204); }); Route::options('/api/app/address/save', function () { return response('', 204); }); Route::options('/api/app/address/default', function () { return response('', 204); }); Route::options('/api/app/address/delete', function () { return response('', 204); }); Route::options('/api/app/settings/save', function () { return response('', 204); }); Route::options('/api/app/{path:.+}', function () { return response('', 204); }); Route::options('/api/app/auth/{path:.+}', function () { return response('', 204); }); Route::options('/api/admin/{path:.+}', function () { return response('', 204); }); Route::options('/api/open/v1/{path:.+}', function () { return response('', 204); }); Route::get('/api/app/home/index', [HomeController::class, 'index']); Route::get('/api/app/content/page-visuals', [HomeController::class, 'pageVisuals']); Route::get('/api/app/catalog/categories', [CatalogController::class, 'categories']); Route::get('/api/app/catalog/brands', [CatalogController::class, 'brands']); Route::post('/api/app/appraisal/draft/create', [AppraisalController::class, 'createDraft']); Route::get('/api/app/appraisal/draft', [AppraisalController::class, 'draftDetail']); Route::post('/api/app/appraisal/draft/save', [AppraisalController::class, 'saveDraft']); Route::post('/api/app/appraisal/file/upload', [AppraisalController::class, 'uploadFile']); Route::post('/api/app/appraisal/file/delete', [AppraisalController::class, 'deleteFile']); Route::get('/api/app/appraisal/upload-template', [AppraisalController::class, 'uploadTemplate']); Route::post('/api/app/appraisal/preview', [AppraisalController::class, 'preview']); Route::post('/api/app/appraisal/submit', [AppraisalController::class, 'submit']); Route::get('/api/app/orders', [OrdersController::class, 'index']); Route::get('/api/app/order/detail', [OrdersController::class, 'detail']); Route::post('/api/app/order/return-address/save', [OrdersController::class, 'saveReturnAddress']); Route::get('/api/app/reports', [ReportsController::class, 'index']); Route::get('/api/app/report/detail', [ReportsController::class, 'detail']); Route::get('/api/app/verify', [VerifyController::class, 'show']); Route::get('/api/app/material-tag', [AppMaterialTagsController::class, 'show']); Route::post('/api/app/material-tag/verify', [AppMaterialTagsController::class, 'verify']); Route::get('/api/app/help-center', [AppHelpCenterController::class, 'index']); Route::get('/api/app/help-article/detail', [AppHelpCenterController::class, 'detail']); Route::post('/api/app/auth/send-code', [AppAuthController::class, 'sendCode']); Route::post('/api/app/auth/login/code', [AppAuthController::class, 'loginByCode']); Route::post('/api/app/auth/login/password', [AppAuthController::class, 'loginByPassword']); Route::get('/api/app/auth/me', [AppAuthController::class, 'me']); Route::post('/api/app/auth/password/save', [AppAuthController::class, 'savePassword']); Route::post('/api/app/auth/logout', [AppAuthController::class, 'logout']); Route::get('/api/app/mine/overview', [AppMineController::class, 'overview']); Route::get('/api/app/settings', [AppSettingsController::class, 'detail']); Route::post('/api/app/settings/save', [AppSettingsController::class, 'save']); Route::get('/api/app/messages/summary', [AppMessagesController::class, 'summary']); Route::get('/api/app/messages/meta', [AppMessagesController::class, 'meta']); Route::get('/api/app/messages', [AppMessagesController::class, 'index']); Route::post('/api/app/message/read', [AppMessagesController::class, 'read']); Route::post('/api/app/messages/read-all', [AppMessagesController::class, 'readAll']); Route::get('/api/app/order/supplement', [AppSupplementController::class, 'detail']); Route::post('/api/app/order/supplement/file/upload', [AppSupplementController::class, 'uploadFile']); Route::post('/api/app/order/supplement/file/delete', [AppSupplementController::class, 'deleteFile']); Route::post('/api/app/order/supplement/submit', [AppSupplementController::class, 'submit']); Route::get('/api/app/tickets/overview', [AppTicketsController::class, 'overview']); Route::get('/api/app/ticket/meta', [AppTicketsController::class, 'meta']); Route::get('/api/app/tickets', [AppTicketsController::class, 'index']); Route::get('/api/app/ticket/detail', [AppTicketsController::class, 'detail']); Route::post('/api/app/ticket/create', [AppTicketsController::class, 'create']); Route::post('/api/app/ticket/reply', [AppTicketsController::class, 'reply']); Route::post('/api/app/ticket/file/upload', [AppTicketsController::class, 'uploadFile']); Route::post('/api/app/ticket/file/delete', [AppTicketsController::class, 'deleteFile']); Route::get('/api/app/order/shipping', [AppShippingController::class, 'detail']); Route::post('/api/app/order/shipping/save', [AppShippingController::class, 'save']); Route::get('/api/app/addresses', [AppAddressesController::class, 'index']); Route::get('/api/app/address/detail', [AppAddressesController::class, 'detail']); Route::post('/api/app/address/save', [AppAddressesController::class, 'save']); Route::post('/api/app/address/default', [AppAddressesController::class, 'setDefault']); Route::post('/api/app/address/delete', [AppAddressesController::class, 'delete']); Route::post('/api/open/v1/orders', [OpenOrdersController::class, 'create']); Route::get('/api/open/v1/orders', [OpenOrdersController::class, 'detail']); Route::get('/api/open/v1/orders/{external_order_no}', [OpenOrdersController::class, 'detail']); Route::get('/api/admin/ping', function () { return api_success(['pong' => true]); }); Route::post('/api/admin/auth/login', [AdminAuthController::class, 'login']); Route::get('/api/admin/auth/me', [AdminAuthController::class, 'me']); Route::post('/api/admin/auth/logout', [AdminAuthController::class, 'logout']); Route::get('/api/admin/dashboard', [AdminDashboardController::class, 'index']); Route::get('/api/admin/orders', [AdminOrdersController::class, 'index']); Route::get('/api/admin/order/detail', [AdminOrdersController::class, 'detail']); Route::get('/api/admin/order/warehouse/options', [AdminOrdersController::class, 'warehouseOptions']); Route::post('/api/admin/order/warehouse/reassign', [AdminOrdersController::class, 'reassignWarehouse']); Route::post('/api/admin/order/logistics/receive', [AdminOrdersController::class, 'receiveLogistics']); Route::post('/api/admin/order/return-logistics/save', [AdminOrdersController::class, 'saveReturnLogistics']); Route::post('/api/admin/order/return-logistics/receive', [AdminOrdersController::class, 'receiveReturnLogistics']); Route::get('/api/admin/catalog/overview', [AdminCatalogController::class, 'overview']); Route::get('/api/admin/catalog/categories', [AdminCatalogController::class, 'categories']); Route::get('/api/admin/catalog/brands', [AdminCatalogController::class, 'brands']); Route::get('/api/admin/catalog/upload-templates', [AdminCatalogController::class, 'uploadTemplates']); Route::get('/api/admin/catalog/appraisal-templates', [AdminCatalogController::class, 'appraisalTemplates']); Route::post('/api/admin/catalog/upload-template/sample-image/upload', [AdminCatalogController::class, 'uploadTemplateSampleImage']); Route::post('/api/admin/catalog/upload-template/sample-image/delete', [AdminCatalogController::class, 'deleteUploadTemplateSampleImage']); Route::post('/api/admin/catalog/category/save', [AdminCatalogController::class, 'saveCategory']); Route::post('/api/admin/catalog/brand/save', [AdminCatalogController::class, 'saveBrand']); Route::post('/api/admin/catalog/upload-templates/save', [AdminCatalogController::class, 'saveUploadTemplates']); Route::post('/api/admin/catalog/appraisal-templates/save', [AdminCatalogController::class, 'saveAppraisalTemplates']); Route::get('/api/admin/reports', [AdminReportsController::class, 'index']); Route::get('/api/admin/report/detail', [AdminReportsController::class, 'detail']); Route::post('/api/admin/report/inspection/save', [AdminReportsController::class, 'saveInspection']); Route::post('/api/admin/report/publish', [AdminReportsController::class, 'publish']); Route::get('/api/admin/appraisal-tasks', [AdminAppraisalTasksController::class, 'index']); Route::get('/api/admin/appraisal-task/detail', [AdminAppraisalTasksController::class, 'detail']); Route::get('/api/admin/appraisal-task/assignable-admins', [AdminAppraisalTasksController::class, 'assignableAdmins']); Route::post('/api/admin/appraisal-task/assign', [AdminAppraisalTasksController::class, 'assign']); Route::post('/api/admin/appraisal-task/save-result', [AdminAppraisalTasksController::class, 'saveResult']); Route::post('/api/admin/appraisal-task/material-tag/bind', [AdminAppraisalTasksController::class, 'bindMaterialTag']); Route::post('/api/admin/appraisal-task/request-supplement', [AdminAppraisalTasksController::class, 'requestSupplement']); Route::post('/api/admin/appraisal-task/evidence/upload', [AdminAppraisalTasksController::class, 'uploadEvidenceFile']); Route::post('/api/admin/appraisal-task/evidence/delete', [AdminAppraisalTasksController::class, 'deleteEvidenceFile']); Route::get('/api/admin/messages/overview', [AdminMessagesController::class, 'overview']); Route::get('/api/admin/messages/templates', [AdminMessagesController::class, 'templates']); Route::get('/api/admin/messages/logs', [AdminMessagesController::class, 'logs']); Route::post('/api/admin/messages/template/save', [AdminMessagesController::class, 'saveTemplate']); Route::get('/api/admin/tickets/overview', [AdminTicketsController::class, 'overview']); Route::get('/api/admin/tickets', [AdminTicketsController::class, 'index']); Route::get('/api/admin/ticket/detail', [AdminTicketsController::class, 'detail']); Route::post('/api/admin/ticket/save', [AdminTicketsController::class, 'save']); Route::post('/api/admin/ticket/reply', [AdminTicketsController::class, 'reply']); Route::post('/api/admin/ticket/file/upload', [AdminTicketsController::class, 'uploadFile']); Route::post('/api/admin/ticket/file/delete', [AdminTicketsController::class, 'deleteFile']); Route::get('/api/admin/users/overview', [AdminUsersController::class, 'overview']); Route::get('/api/admin/users', [AdminUsersController::class, 'index']); Route::get('/api/admin/user/detail', [AdminUsersController::class, 'detail']); Route::post('/api/admin/user/save', [AdminUsersController::class, 'save']); Route::get('/api/admin/customers', [AdminCustomersController::class, 'index']); Route::get('/api/admin/customer/detail', [AdminCustomersController::class, 'detail']); Route::post('/api/admin/customer/save', [AdminCustomersController::class, 'save']); Route::post('/api/admin/customer/app/create', [AdminCustomersController::class, 'createApp']); Route::post('/api/admin/customer/app/status', [AdminCustomersController::class, 'updateAppStatus']); Route::post('/api/admin/customer/app/reset-secret', [AdminCustomersController::class, 'resetAppSecret']); Route::get('/api/admin/customer/orders', [AdminCustomersController::class, 'orders']); Route::get('/api/admin/customer/order/progress', [AdminCustomersController::class, 'orderProgress']); Route::get('/api/admin/customer/events', [AdminCustomersController::class, 'events']); Route::get('/api/admin/customer/deliveries', [AdminCustomersController::class, 'deliveries']); Route::post('/api/admin/customer/event/resend', [AdminCustomersController::class, 'resendEvent']); Route::get('/api/admin/warehouses/overview', [AdminWarehousesController::class, 'overview']); Route::get('/api/admin/warehouses', [AdminWarehousesController::class, 'index']); Route::post('/api/admin/warehouse/save', [AdminWarehousesController::class, 'save']); Route::get('/api/admin/material/batches', [AdminMaterialsController::class, 'batches']); Route::get('/api/admin/material/batch/detail', [AdminMaterialsController::class, 'detail']); Route::post('/api/admin/material/batch/create', [AdminMaterialsController::class, 'create']); Route::get('/api/admin/material/batch/download', [AdminMaterialsController::class, 'download']); Route::get('/api/admin/access/overview', [AdminAccessController::class, 'overview']); Route::get('/api/admin/access/admins', [AdminAccessController::class, 'admins']); Route::get('/api/admin/access/roles', [AdminAccessController::class, 'roles']); Route::get('/api/admin/access/permissions', [AdminAccessController::class, 'permissions']); Route::post('/api/admin/access/admin/save', [AdminAccessController::class, 'saveAdmin']); Route::post('/api/admin/access/role/save', [AdminAccessController::class, 'saveRole']); Route::get('/api/admin/content/bootstrap', [AdminContentsController::class, 'bootstrap']); Route::get('/api/admin/content/home', [AdminContentsController::class, 'home']); Route::post('/api/admin/content/image/upload', [AdminContentsController::class, 'uploadImage']); Route::post('/api/admin/content/home/save', [AdminContentsController::class, 'saveHome']); Route::get('/api/admin/content/policy', [AdminContentsController::class, 'policy']); Route::post('/api/admin/content/policy/save', [AdminContentsController::class, 'savePolicy']); Route::get('/api/admin/content/meta', [AdminContentsController::class, 'meta']); Route::post('/api/admin/content/meta/save', [AdminContentsController::class, 'saveMeta']); Route::get('/api/admin/content/help/articles', [AdminContentsController::class, 'helpArticles']); Route::post('/api/admin/content/help/article/save', [AdminContentsController::class, 'saveHelpArticle']); Route::post('/api/admin/content/help/article/delete', [AdminContentsController::class, 'deleteHelpArticle']); Route::get('/api/admin/system-configs', [AdminSystemConfigsController::class, 'index']); Route::post('/api/admin/system-configs/upload-file', [AdminSystemConfigsController::class, 'uploadFile']); Route::post('/api/admin/system-configs/save', [AdminSystemConfigsController::class, 'save']);