From edd070a58e569466fd982a7dff706c25d2a25553 Mon Sep 17 00:00:00 2001 From: yml Date: Thu, 21 May 2026 22:23:08 +0800 Subject: [PATCH] [Snow Team] route-refactor: auto-commit work --- apps/backend/src/routes/claims.ts | 140 +++++++++++------------------ apps/backend/src/routes/tencent.ts | 38 +++----- 2 files changed, 65 insertions(+), 113 deletions(-) diff --git a/apps/backend/src/routes/claims.ts b/apps/backend/src/routes/claims.ts index 6d31a941..f1654d19 100644 --- a/apps/backend/src/routes/claims.ts +++ b/apps/backend/src/routes/claims.ts @@ -16,36 +16,30 @@ import { redeemKuaishouCloudClaim, verifyKuaishouCloudClaimTicket, } from '../services/claim/kuaishou-cloud-claim-service.js' -import { buildNotFoundPayload, buildSuccessPayload, sendRouteError } from '../utils/http.js' +import { + buildNotFoundPayload, + buildSuccessPayload, + createRouteFileHandler, + createRouteHandler, + sendRouteError, +} from '../utils/http.js' const router = Router() -router.get('/:token', async (req, res) => { - try { - const data = await getClaimDetail(req.params.token) - res.json(buildSuccessPayload(data, 'ok')) - } catch (error) { - sendRouteError(res, error, '查询领取详情失败', '[claims/:token]') - } -}) +router.get('/:token', createRouteHandler( + (req) => getClaimDetail(req.params.token), + { errorMessage: '查询领取详情失败', scope: '[claims/:token]' }, +)) -router.post('/:token/session', async (req, res) => { - try { - const data = await createClaimSession(req.params.token, req.body) - res.json(buildSuccessPayload(data, '浏览器会话已创建')) - } catch (error) { - sendRouteError(res, error, '创建领取会话失败', '[claims/:token/session]') - } -}) +router.post('/:token/session', createRouteHandler( + (req) => createClaimSession(req.params.token, req.body), + { successMessage: '浏览器会话已创建', errorMessage: '创建领取会话失败', scope: '[claims/:token/session]' }, +)) -router.get('/:token/session/summary', async (req, res) => { - try { - const data = await getClaimSessionSummary(req.params.token) - res.json(buildSuccessPayload(data, 'ok')) - } catch (error) { - sendRouteError(res, error, '查询领取会话摘要失败', '[claims/:token/session/summary]') - } -}) +router.get('/:token/session/summary', createRouteHandler( + (req) => getClaimSessionSummary(req.params.token), + { errorMessage: '查询领取会话摘要失败', scope: '[claims/:token/session/summary]' }, +)) router.post('/:token/session/refresh', async (req, res) => { try { @@ -56,77 +50,45 @@ router.post('/:token/session/refresh', async (req, res) => { } }) -router.delete('/:token/session', async (req, res) => { - try { - const data = await closeClaimSession(req.params.token) - res.json(buildSuccessPayload(data, '领取会话已关闭')) - } catch (error) { - sendRouteError(res, error, '关闭领取会话失败', '[claims/:token/session]') - } -}) +router.delete('/:token/session', createRouteHandler( + (req) => closeClaimSession(req.params.token), + { successMessage: '领取会话已关闭', errorMessage: '关闭领取会话失败', scope: '[claims/:token/session]' }, +)) -router.post('/:token/confirm-role', async (req, res) => { - try { - const data = await confirmClaimRole(req.params.token) - res.json(buildSuccessPayload(data, '角色已确认')) - } catch (error) { - sendRouteError(res, error, '确认角色失败', '[claims/:token/confirm-role]') - } -}) +router.post('/:token/confirm-role', createRouteHandler( + (req) => confirmClaimRole(req.params.token), + { successMessage: '角色已确认', errorMessage: '确认角色失败', scope: '[claims/:token/confirm-role]' }, +)) -router.post('/:token/redeem', async (req, res) => { - try { - const data = await redeemClaimTask(req.params.token) - res.json(buildSuccessPayload(data, '兑换完成')) - } catch (error) { - sendRouteError(res, error, '执行领取兑换失败', '[claims/:token/redeem]') - } -}) +router.post('/:token/redeem', createRouteHandler( + (req) => redeemClaimTask(req.params.token), + { successMessage: '兑换完成', errorMessage: '执行领取兑换失败', scope: '[claims/:token/redeem]' }, +)) -router.post('/:token/kuaishou-cloud/verify-ticket', async (req, res) => { - try { - const data = await verifyKuaishouCloudClaimTicket(req.params.token, req.body) - res.json(buildSuccessPayload(data, '核销码校验成功')) - } catch (error) { - sendRouteError(res, error, '校验核销码失败', '[claims/:token/kuaishou-cloud/verify-ticket]') - } -}) +router.post('/:token/kuaishou-cloud/verify-ticket', createRouteHandler( + (req) => verifyKuaishouCloudClaimTicket(req.params.token, req.body), + { successMessage: '核销码校验成功', errorMessage: '校验核销码失败', scope: '[claims/:token/kuaishou-cloud/verify-ticket]' }, +)) -router.post('/:token/kuaishou-cloud/confirm-role', async (req, res) => { - try { - const data = await confirmKuaishouCloudClaimRole(req.params.token) - res.json(buildSuccessPayload(data, '角色已确认')) - } catch (error) { - sendRouteError(res, error, '确认角色失败', '[claims/:token/kuaishou-cloud/confirm-role]') - } -}) +router.post('/:token/kuaishou-cloud/confirm-role', createRouteHandler( + (req) => confirmKuaishouCloudClaimRole(req.params.token), + { successMessage: '角色已确认', errorMessage: '确认角色失败', scope: '[claims/:token/kuaishou-cloud/confirm-role]' }, +)) -router.post('/:token/kuaishou-cloud/redeem', async (req, res) => { - try { - const data = await redeemKuaishouCloudClaim(req.params.token) - res.json(buildSuccessPayload(data, '兑换请求已提交')) - } catch (error) { - sendRouteError(res, error, '兑换失败', '[claims/:token/kuaishou-cloud/redeem]') - } -}) +router.post('/:token/kuaishou-cloud/redeem', createRouteHandler( + (req) => redeemKuaishouCloudClaim(req.params.token), + { successMessage: '兑换请求已提交', errorMessage: '兑换失败', scope: '[claims/:token/kuaishou-cloud/redeem]' }, +)) -router.get('/:token/screenshot', async (req, res) => { - try { - const screenshotPath = await getClaimScreenshotPath(req.params.token) - res.sendFile(screenshotPath) - } catch (error) { - sendRouteError(res, error, '读取领取截图失败', '[claims/:token/screenshot]') - } -}) +router.get('/:token/screenshot', createRouteFileHandler( + (req) => getClaimScreenshotPath(req.params.token), + { errorMessage: '读取领取截图失败', scope: '[claims/:token/screenshot]' }, +)) -router.get('/assets/kuaishou-cloud/:filename', async (req, res) => { - try { - const filePath = await getKuaishouCloudClaimGuideAssetPath(req.params.filename) - res.sendFile(filePath) - } catch (error) { - sendRouteError(res, error, '读取指引图片失败', '[claims/assets/kuaishou-cloud/:filename]') - } -}) +router.get('/assets/kuaishou-cloud/:filename', createRouteFileHandler( + (req) => getKuaishouCloudClaimGuideAssetPath(req.params.filename), + { errorMessage: '读取指引图片失败', scope: '[claims/assets/kuaishou-cloud/:filename]' }, +)) router.use((req, res) => { res.status(404).json(buildNotFoundPayload(req)) diff --git a/apps/backend/src/routes/tencent.ts b/apps/backend/src/routes/tencent.ts index ccea0a9c..a4125e5d 100644 --- a/apps/backend/src/routes/tencent.ts +++ b/apps/backend/src/routes/tencent.ts @@ -12,19 +12,17 @@ import { import { buildNotFoundPayload, buildSuccessPayload, + createRouteFileHandler, + createRouteHandler, sendRouteError, } from '../utils/http.js' const router = Router() -router.post('/browser/session', async (req, res) => { - try { - const data = await createTencentBrowserSession(req.body) - res.json(buildSuccessPayload(data, '浏览器会话已创建')) - } catch (error) { - sendRouteError(res, error, '创建浏览器会话失败', '[browser/session]') - } -}) +router.post('/browser/session', createRouteHandler( + (req) => createTencentBrowserSession(req.body), + { successMessage: '浏览器会话已创建', errorMessage: '创建浏览器会话失败', scope: '[browser/session]' }, +)) router.get('/browser/session/:sessionId', async (req, res) => { try { @@ -62,23 +60,15 @@ router.post('/browser/session/:sessionId/redeem', async (req, res) => { } }) -router.get('/browser/session/:sessionId/screenshot', async (req, res) => { - try { - const screenshotPath = await getTencentBrowserSessionScreenshotPath(req.params.sessionId) - res.sendFile(screenshotPath) - } catch (error) { - sendRouteError(res, error, '读取兑换截图失败', '[browser/session/:sessionId/screenshot]') - } -}) +router.get('/browser/session/:sessionId/screenshot', createRouteFileHandler( + (req) => getTencentBrowserSessionScreenshotPath(req.params.sessionId), + { errorMessage: '读取兑换截图失败', scope: '[browser/session/:sessionId/screenshot]' }, +)) -router.delete('/browser/session/:sessionId', async (req, res) => { - try { - const data = await closeTencentBrowserSession(req.params.sessionId) - res.json(buildSuccessPayload(data, '浏览器会话已关闭')) - } catch (error) { - sendRouteError(res, error, '关闭浏览器会话失败', '[browser/session/:sessionId]') - } -}) +router.delete('/browser/session/:sessionId', createRouteHandler( + (req) => closeTencentBrowserSession(req.params.sessionId), + { successMessage: '浏览器会话已关闭', errorMessage: '关闭浏览器会话失败', scope: '[browser/session/:sessionId]' }, +)) router.use((req, res) => { res.status(404).json(buildNotFoundPayload(req))