From 2f69f83d16e87abb6a4bfd68129b1745a71be68f Mon Sep 17 00:00:00 2001 From: zdl <3489966805@qq.com> Date: Tue, 16 Dec 2025 20:27:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(mock):=20=E6=B7=BB=E5=8A=A0=E4=B8=9A?= =?UTF-8?q?=E7=BB=A9=E9=A2=84=E5=91=8A=20mock=20=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增 /api/stock/:stockCode/forecast handler - 支持动态跟踪下的业绩预告面板 --- src/mocks/handlers/stock.js | 62 +++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/src/mocks/handlers/stock.js b/src/mocks/handlers/stock.js index 8581d1e5..2038af87 100644 --- a/src/mocks/handlers/stock.js +++ b/src/mocks/handlers/stock.js @@ -341,6 +341,68 @@ export const stockHandlers = [ } }), + // 获取股票业绩预告 + http.get('/api/stock/:stockCode/forecast', async ({ params }) => { + await delay(200); + + const { stockCode } = params; + console.log('[Mock Stock] 获取业绩预告:', { stockCode }); + + // 生成股票列表用于查找名称 + const stockList = generateStockList(); + const stockInfo = stockList.find(s => s.code === stockCode.replace(/\.(SH|SZ)$/i, '')); + const stockName = stockInfo?.name || `股票${stockCode}`; + + // 业绩预告类型列表 + const forecastTypes = ['预增', '预减', '略增', '略减', '扭亏', '续亏', '首亏', '续盈']; + + // 生成业绩预告数据 + const forecasts = [ + { + forecast_type: '预增', + report_date: '2024年年报', + content: `${stockName}预计2024年度归属于上市公司股东的净利润为58亿元至62亿元,同比增长10%至17%。`, + reason: '报告期内,公司主营业务收入稳步增长,产品结构持续优化,毛利率提升;同时公司加大研发投入,新产品市场表现良好。', + change_range: { + lower: 10, + upper: 17 + }, + publish_date: '2024-10-15' + }, + { + forecast_type: '略增', + report_date: '2024年三季报', + content: `${stockName}预计2024年1-9月归属于上市公司股东的净利润为42亿元至45亿元,同比增长5%至12%。`, + reason: '公司积极拓展市场渠道,销售规模持续扩大,经营效益稳步提升。', + change_range: { + lower: 5, + upper: 12 + }, + publish_date: '2024-07-12' + }, + { + forecast_type: forecastTypes[Math.floor(Math.random() * forecastTypes.length)], + report_date: '2024年中报', + content: `${stockName}预计2024年上半年归属于上市公司股东的净利润为28亿元至30亿元。`, + reason: '受益于行业景气度回升及公司降本增效措施效果显现,经营业绩同比有所改善。', + change_range: { + lower: 3, + upper: 8 + }, + publish_date: '2024-04-20' + } + ]; + + return HttpResponse.json({ + success: true, + data: { + stock_code: stockCode, + stock_name: stockName, + forecasts: forecasts + } + }); + }), + // 获取股票报价(批量) http.post('/api/stock/quotes', async ({ request }) => { await delay(200);