json(['message' => 'API works']); }); // 认证路由(不需要认证) Route::prefix('auth')->group(function () { Route::post('/login', [AuthController::class, 'login']); Route::post('/register', [AuthController::class, 'register']); Route::post('/logout', [AuthController::class, 'logout'])->middleware('auth:sanctum'); Route::post('/refresh', [AuthController::class, 'refresh'])->middleware('auth:sanctum'); // 短信登录 Route::post('/sms/send', [AuthController::class, 'sendSmsCode']); Route::post('/sms/login', [AuthController::class, 'smsLogin']); // 微信登录 Route::get('/wechat/qr', [AuthController::class, 'wechatQr']); Route::post('/wechat/check', [AuthController::class, 'wechatCheck']); Route::post('/wechat/mock-scan', [AuthController::class, 'wechatMockScan']); Route::get('/wechat/callback', [AuthController::class, 'wechatCallback']); // 图形验证码 Route::get('/captcha', [AuthController::class, 'captcha']); // 忘记密码 Route::post('/reset/send-code', [AuthController::class, 'sendResetCode']); Route::post('/reset/password', [AuthController::class, 'resetPassword']); // 异地登录配对码 Route::post('/send-pair-code', [AuthController::class, 'sendPairCode']); Route::post('/verify-pair-code', [AuthController::class, 'verifyPairCode']); Route::post('/logout-all-devices', [AuthController::class, 'logoutAllDevices'])->middleware('auth:sanctum'); }); // 用户路由(需要认证) Route::middleware('auth:sanctum')->prefix('user')->group(function () { Route::get('/', [AuthController::class, 'me']); Route::put('/profile', [AuthController::class, 'updateProfile']); Route::put('/password', [AuthController::class, 'changePassword']); Route::post('/bind-wechat', [AuthController::class, 'bindWechat']); Route::post('/unbind-wechat', [AuthController::class, 'unbindWechat']); Route::get('/login-logs', [AuthController::class, 'loginLogs']); Route::post('/send-email-change-code', [AuthController::class, 'sendEmailChangeCode']); Route::post('/verify-email-change', [AuthController::class, 'verifyEmailChange']); Route::get('/devices', [AuthController::class, 'getTrustedDevices']); Route::delete('/devices/{id}', [AuthController::class, 'revokeDevice']); Route::post('/devices/{id}/approve', [AuthController::class, 'approveDevice']); }); // 售后管理 Route::middleware('auth:sanctum')->prefix('after-sales')->group(function () { Route::get('/', [AfterSaleController::class, 'index']); Route::get('/stats', [AfterSaleController::class, 'stats']); Route::get('/available-orders', [AfterSaleController::class, 'availableOrders']); Route::get('/all-available-orders', [AfterSaleController::class, 'allAvailableOrders']); Route::get('/{id}', [AfterSaleController::class, 'show']); Route::post('/', [AfterSaleController::class, 'store']); Route::put('/{id}/status', [AfterSaleController::class, 'updateStatus']); Route::delete('/{id}', [AfterSaleController::class, 'destroy']); }); // 商品管理(Goods) Route::prefix('goods')->group(function () { Route::get('/', [GoodsController::class, 'index']); Route::post('/', [GoodsController::class, 'store']); Route::get('/all', [GoodsController::class, 'all']); Route::get('/{id}', [GoodsController::class, 'show']); Route::put('/{id}', [GoodsController::class, 'update']); Route::delete('/{id}', [GoodsController::class, 'destroy']); }); // 商品模块(ERP SKU)