feat: 市场看板 - 聚合同花顺SDK全量数据的A股实时看板

- 新增 /dashboard 页面:暗色主题,指数行情/市场温度/涨跌分布/行业强度/概念热度/事件情报
- 后端聚合接口 /api/market-dashboard,30秒缓存
- 利用SDK接口:指数行情、全市场快照、涨停/跌停/炸板池、连板天梯、热门股、飙升榜、龙虎榜、异动分析、集合竞价基准、行业/概念目录
- 市场温度评分:6因子加权(涨跌比/中位涨跌/强弱比/涨停活跃度/炸板惩罚/竞价信号)
- 首页添加市场看板导航入口
This commit is contained in:
Sakurasan
2026-08-31 10:29:37 +08:00
parent b1f216b2a4
commit d7d019c2c4
7 changed files with 1215 additions and 2 deletions
+21
View File
@@ -12,6 +12,7 @@ import { Route as rootRouteImport } from './routes/__root'
import { Route as ThemesRouteImport } from './routes/themes'
import { Route as ThemeHistoryRouteImport } from './routes/theme-history'
import { Route as HotMapRouteImport } from './routes/hot-map'
import { Route as DashboardRouteImport } from './routes/dashboard'
import { Route as CoreStocksRouteImport } from './routes/core-stocks'
import { Route as IndexRouteImport } from './routes/index'
import { Route as ThemeCodeRouteImport } from './routes/theme.$code'
@@ -33,6 +34,11 @@ const HotMapRoute = HotMapRouteImport.update({
path: '/hot-map',
getParentRoute: () => rootRouteImport,
} as any)
const DashboardRoute = DashboardRouteImport.update({
id: '/dashboard',
path: '/dashboard',
getParentRoute: () => rootRouteImport,
} as any)
const CoreStocksRoute = CoreStocksRouteImport.update({
id: '/core-stocks',
path: '/core-stocks',
@@ -62,6 +68,7 @@ const ShareCodeRoute = ShareCodeRouteImport.update({
export interface FileRoutesByFullPath {
'/': typeof IndexRoute
'/core-stocks': typeof CoreStocksRoute
'/dashboard': typeof DashboardRoute
'/hot-map': typeof HotMapRoute
'/theme-history': typeof ThemeHistoryRoute
'/themes': typeof ThemesRoute
@@ -72,6 +79,7 @@ export interface FileRoutesByFullPath {
export interface FileRoutesByTo {
'/': typeof IndexRoute
'/core-stocks': typeof CoreStocksRoute
'/dashboard': typeof DashboardRoute
'/hot-map': typeof HotMapRoute
'/theme-history': typeof ThemeHistoryRoute
'/themes': typeof ThemesRoute
@@ -83,6 +91,7 @@ export interface FileRoutesById {
__root__: typeof rootRouteImport
'/': typeof IndexRoute
'/core-stocks': typeof CoreStocksRoute
'/dashboard': typeof DashboardRoute
'/hot-map': typeof HotMapRoute
'/theme-history': typeof ThemeHistoryRoute
'/themes': typeof ThemesRoute
@@ -95,6 +104,7 @@ export interface FileRouteTypes {
fullPaths:
| '/'
| '/core-stocks'
| '/dashboard'
| '/hot-map'
| '/theme-history'
| '/themes'
@@ -105,6 +115,7 @@ export interface FileRouteTypes {
to:
| '/'
| '/core-stocks'
| '/dashboard'
| '/hot-map'
| '/theme-history'
| '/themes'
@@ -115,6 +126,7 @@ export interface FileRouteTypes {
| '__root__'
| '/'
| '/core-stocks'
| '/dashboard'
| '/hot-map'
| '/theme-history'
| '/themes'
@@ -126,6 +138,7 @@ export interface FileRouteTypes {
export interface RootRouteChildren {
IndexRoute: typeof IndexRoute
CoreStocksRoute: typeof CoreStocksRoute
DashboardRoute: typeof DashboardRoute
HotMapRoute: typeof HotMapRoute
ThemeHistoryRoute: typeof ThemeHistoryRoute
ThemesRoute: typeof ThemesRoute
@@ -157,6 +170,13 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof HotMapRouteImport
parentRoute: typeof rootRouteImport
}
'/dashboard': {
id: '/dashboard'
path: '/dashboard'
fullPath: '/dashboard'
preLoaderRoute: typeof DashboardRouteImport
parentRoute: typeof rootRouteImport
}
'/core-stocks': {
id: '/core-stocks'
path: '/core-stocks'
@@ -198,6 +218,7 @@ declare module '@tanstack/react-router' {
const rootRouteChildren: RootRouteChildren = {
IndexRoute: IndexRoute,
CoreStocksRoute: CoreStocksRoute,
DashboardRoute: DashboardRoute,
HotMapRoute: HotMapRoute,
ThemeHistoryRoute: ThemeHistoryRoute,
ThemesRoute: ThemesRoute,