feat: 路由改造
This commit is contained in:
172
src/mocks/data/events.js
Normal file
172
src/mocks/data/events.js
Normal file
@@ -0,0 +1,172 @@
|
||||
// Mock 事件相关数据
|
||||
|
||||
// Mock 股票池 - 常见的A股股票
|
||||
const stockPool = [
|
||||
{ stock_code: '600000.SH', stock_name: '浦发银行', industry: '银行' },
|
||||
{ stock_code: '600519.SH', stock_name: '贵州茅台', industry: '白酒' },
|
||||
{ stock_code: '600036.SH', stock_name: '招商银行', industry: '银行' },
|
||||
{ stock_code: '601318.SH', stock_name: '中国平安', industry: '保险' },
|
||||
{ stock_code: '600016.SH', stock_name: '民生银行', industry: '银行' },
|
||||
{ stock_code: '601398.SH', stock_name: '工商银行', industry: '银行' },
|
||||
{ stock_code: '601288.SH', stock_name: '农业银行', industry: '银行' },
|
||||
{ stock_code: '601166.SH', stock_name: '兴业银行', industry: '银行' },
|
||||
{ stock_code: '000001.SZ', stock_name: '平安银行', industry: '银行' },
|
||||
{ stock_code: '000002.SZ', stock_name: '万科A', industry: '房地产' },
|
||||
{ stock_code: '000858.SZ', stock_name: '五粮液', industry: '白酒' },
|
||||
{ stock_code: '000333.SZ', stock_name: '美的集团', industry: '家电' },
|
||||
{ stock_code: '002415.SZ', stock_name: '海康威视', industry: '安防' },
|
||||
{ stock_code: '002594.SZ', stock_name: 'BYD比亚迪', industry: '新能源汽车' },
|
||||
{ stock_code: '300750.SZ', stock_name: '宁德时代', industry: '新能源' },
|
||||
{ stock_code: '300059.SZ', stock_name: '东方财富', industry: '证券' },
|
||||
{ stock_code: '601888.SH', stock_name: '中国中免', industry: '免税' },
|
||||
{ stock_code: '600276.SH', stock_name: '恒瑞医药', industry: '医药' },
|
||||
{ stock_code: '600887.SH', stock_name: '伊利股份', industry: '乳制品' },
|
||||
{ stock_code: '601012.SH', stock_name: '隆基绿能', industry: '光伏' },
|
||||
{ stock_code: '688981.SH', stock_name: '中芯国际', industry: '半导体' },
|
||||
{ stock_code: '600309.SH', stock_name: '万华化学', industry: '化工' },
|
||||
{ stock_code: '603259.SH', stock_name: '药明康德', industry: '医药研发' },
|
||||
{ stock_code: '002475.SZ', stock_name: '立讯精密', industry: '电子' },
|
||||
{ stock_code: '000063.SZ', stock_name: '中兴通讯', industry: '通信设备' },
|
||||
];
|
||||
|
||||
// 关联描述模板
|
||||
const relationDescTemplates = [
|
||||
'主营业务直接相关,预计受事件影响较大',
|
||||
'产业链上游企业,间接受益',
|
||||
'产业链下游企业,需求端受影响',
|
||||
'同行业竞争对手,可能受到间接影响',
|
||||
'参股该领域相关企业,有一定关联性',
|
||||
'业务板块涉及相关领域,预计有正面影响',
|
||||
'控股子公司从事相关业务',
|
||||
'近期公告布局该领域,潜在受益标的',
|
||||
'行业龙头企业,市场关注度高',
|
||||
'技术储备充足,有望抢占市场先机',
|
||||
'已有成熟产品线,短期内可能受益',
|
||||
'战略转型方向与事件相关',
|
||||
];
|
||||
|
||||
// 生成随机关联股票数据
|
||||
export function generateRelatedStocks(eventId, count = 5) {
|
||||
// 使用事件ID作为随机种子,确保相同事件ID返回相同的股票列表
|
||||
const seed = parseInt(eventId) || 1;
|
||||
const selectedStocks = [];
|
||||
|
||||
// 伪随机选择股票(基于事件ID)
|
||||
for (let i = 0; i < Math.min(count, stockPool.length); i++) {
|
||||
const index = (seed * 17 + i * 13) % stockPool.length;
|
||||
const stock = stockPool[index];
|
||||
const descIndex = (seed * 7 + i * 11) % relationDescTemplates.length;
|
||||
|
||||
selectedStocks.push({
|
||||
stock_code: stock.stock_code,
|
||||
stock_name: stock.stock_name,
|
||||
relation_desc: relationDescTemplates[descIndex],
|
||||
industry: stock.industry,
|
||||
// 可选字段 - 用于前端显示更多信息
|
||||
relevance_score: Math.max(60, 100 - i * 8), // 相关性评分,递减
|
||||
impact_level: i < 2 ? 'high' : i < 4 ? 'medium' : 'low', // 影响程度
|
||||
});
|
||||
}
|
||||
|
||||
return selectedStocks;
|
||||
}
|
||||
|
||||
// Mock 事件相关股票数据映射
|
||||
// 这里可以为特定事件ID预设特定的股票列表
|
||||
export const mockEventStocks = {
|
||||
// 示例:事件ID为1的预设股票
|
||||
'1': [
|
||||
{
|
||||
stock_code: '600519.SH',
|
||||
stock_name: '贵州茅台',
|
||||
relation_desc: '白酒行业龙头,消费板块受政策影响',
|
||||
industry: '白酒',
|
||||
relevance_score: 95,
|
||||
impact_level: 'high',
|
||||
},
|
||||
{
|
||||
stock_code: '000858.SZ',
|
||||
stock_name: '五粮液',
|
||||
relation_desc: '白酒行业第二梯队,同样受消费政策影响',
|
||||
industry: '白酒',
|
||||
relevance_score: 90,
|
||||
impact_level: 'high',
|
||||
},
|
||||
{
|
||||
stock_code: '600887.SH',
|
||||
stock_name: '伊利股份',
|
||||
relation_desc: '消费品龙头,受益于消费复苏',
|
||||
industry: '乳制品',
|
||||
relevance_score: 75,
|
||||
impact_level: 'medium',
|
||||
},
|
||||
],
|
||||
|
||||
// 事件ID为2的预设股票(科技类)
|
||||
'2': [
|
||||
{
|
||||
stock_code: '002415.SZ',
|
||||
stock_name: '海康威视',
|
||||
relation_desc: 'AI视觉领域龙头,技术创新受政策支持',
|
||||
industry: '安防',
|
||||
relevance_score: 92,
|
||||
impact_level: 'high',
|
||||
},
|
||||
{
|
||||
stock_code: '000063.SZ',
|
||||
stock_name: '中兴通讯',
|
||||
relation_desc: '5G通信设备商,基础设施建设受益',
|
||||
industry: '通信设备',
|
||||
relevance_score: 88,
|
||||
impact_level: 'high',
|
||||
},
|
||||
{
|
||||
stock_code: '688981.SH',
|
||||
stock_name: '中芯国际',
|
||||
relation_desc: '半导体制造龙头,国产替代核心标的',
|
||||
industry: '半导体',
|
||||
relevance_score: 85,
|
||||
impact_level: 'high',
|
||||
},
|
||||
],
|
||||
|
||||
// 事件ID为3的预设股票(新能源类)
|
||||
'3': [
|
||||
{
|
||||
stock_code: '300750.SZ',
|
||||
stock_name: '宁德时代',
|
||||
relation_desc: '动力电池龙头,新能源产业链核心',
|
||||
industry: '新能源',
|
||||
relevance_score: 98,
|
||||
impact_level: 'high',
|
||||
},
|
||||
{
|
||||
stock_code: '002594.SZ',
|
||||
stock_name: 'BYD比亚迪',
|
||||
relation_desc: '新能源汽车龙头,产业链一体化布局',
|
||||
industry: '新能源汽车',
|
||||
relevance_score: 95,
|
||||
impact_level: 'high',
|
||||
},
|
||||
{
|
||||
stock_code: '601012.SH',
|
||||
stock_name: '隆基绿能',
|
||||
relation_desc: '光伏组件龙头,清洁能源受政策支持',
|
||||
industry: '光伏',
|
||||
relevance_score: 85,
|
||||
impact_level: 'medium',
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
// 获取事件相关股票
|
||||
export function getEventRelatedStocks(eventId) {
|
||||
// 优先返回预设的股票列表
|
||||
if (mockEventStocks[eventId]) {
|
||||
return mockEventStocks[eventId];
|
||||
}
|
||||
|
||||
// 否则生成随机股票列表(3-6只股票)
|
||||
const count = 3 + (parseInt(eventId) % 4);
|
||||
return generateRelatedStocks(eventId, count);
|
||||
}
|
||||
Reference in New Issue
Block a user