diff --git a/src/views/Company/components/StockQuoteCard/components/CompanyInfo.tsx b/src/views/Company/components/StockQuoteCard/components/CompanyInfo.tsx deleted file mode 100644 index e9f4faf3..00000000 --- a/src/views/Company/components/StockQuoteCard/components/CompanyInfo.tsx +++ /dev/null @@ -1,87 +0,0 @@ -/** - * CompanyInfo - 公司信息原子组件 - * 显示公司基本信息(成立日期、注册资本、所在地、官网、简介) - */ - -import React, { memo } from 'react'; -import { Box, Flex, HStack, Text, Link, Icon, Divider } from '@chakra-ui/react'; -import { Calendar, Coins, MapPin, Globe } from 'lucide-react'; -import { formatRegisteredCapital, formatDate } from '../../CompanyOverview/utils'; -import { STOCK_CARD_THEME } from './theme'; - -export interface CompanyBasicInfo { - establish_date?: string; - reg_capital?: number; - province?: string; - city?: string; - website?: string; - company_intro?: string; -} - -export interface CompanyInfoProps { - basicInfo: CompanyBasicInfo; -} - -export const CompanyInfo: React.FC = memo(({ basicInfo }) => { - const { labelColor, valueColor, borderColor } = STOCK_CARD_THEME; - - return ( - <> - - - {/* 左侧:公司关键属性 (flex=1) */} - - - - - 成立: - - {formatDate(basicInfo.establish_date)} - - - - - 注册资本: - - {formatRegisteredCapital(basicInfo.reg_capital)} - - - - - 所在地: - - {basicInfo.province} {basicInfo.city} - - - - - {basicInfo.website ? ( - - 访问官网 - - ) : ( - 暂无官网 - )} - - - - - {/* 右侧:公司简介 (flex=2) */} - - - 公司简介: - {basicInfo.company_intro || '暂无'} - - - - - ); -}); - -CompanyInfo.displayName = 'CompanyInfo'; diff --git a/src/views/Company/components/StockQuoteCard/components/KeyMetrics.tsx b/src/views/Company/components/StockQuoteCard/components/KeyMetrics.tsx deleted file mode 100644 index f2258870..00000000 --- a/src/views/Company/components/StockQuoteCard/components/KeyMetrics.tsx +++ /dev/null @@ -1,114 +0,0 @@ -/** - * KeyMetrics - 关键指标原子组件 - * - * 显示估值和市值相关指标: - * - 市盈率 (PE) - * - 流通市值 - * - 发行总股本 - * - 流通股本 - * - 换手率 - * - 52周波动 - * - * 注意:标题由外层 GlassSection 提供 - */ - -import React, { memo } from 'react'; -import { VStack, HStack, Text } from '@chakra-ui/react'; -import { formatPrice } from './formatters'; -import { DEEP_SPACE_THEME as T } from './theme'; - -export interface KeyMetricsProps { - /** 市盈率 */ - pe: number; - /** 流通市值(已格式化字符串) */ - marketCap: string; - /** 发行总股本(亿股) */ - totalShares?: number; - /** 流通股本(亿股) */ - floatShares?: number; - /** 换手率(%) */ - turnoverRate?: number; - /** 52周最低价 */ - week52Low: number; - /** 52周最高价 */ - week52High: number; -} - -/** - * 指标行组件 - 内部使用 - */ -interface MetricRowProps { - label: string; - value: string | number; - valueColor?: string; - highlight?: boolean; -} - -const MetricRow: React.FC = ({ - label, - value, - valueColor = T.textWhite, - highlight = false, -}) => ( - - {label} - - {value} - - -); - -/** - * 关键指标展示组件 - * - * 纯展示组件,不包含标题 - * 应由 GlassSection 包装以提供标题 - */ -export const KeyMetrics: React.FC = memo(({ - pe, - marketCap, - totalShares, - floatShares, - turnoverRate, - week52Low, - week52High, -}) => ( - - - - - - 5 ? T.orange : T.textWhite} - /> - - -)); - -KeyMetrics.displayName = 'KeyMetrics'; diff --git a/src/views/Company/components/StockQuoteCard/components/index.ts b/src/views/Company/components/StockQuoteCard/components/index.ts index 03530d01..73a33de5 100644 --- a/src/views/Company/components/StockQuoteCard/components/index.ts +++ b/src/views/Company/components/StockQuoteCard/components/index.ts @@ -13,9 +13,7 @@ // ============================================ export { PriceDisplay } from './PriceDisplay'; export { SecondaryQuote } from './SecondaryQuote'; -export { KeyMetrics } from './KeyMetrics'; export { MainForceInfo } from './MainForceInfo'; -export { CompanyInfo } from './CompanyInfo'; export { StockHeader } from './StockHeader'; export { MetricRow } from './MetricRow'; @@ -47,9 +45,7 @@ export * from './formatters'; // ============================================ export type { PriceDisplayProps } from './PriceDisplay'; export type { SecondaryQuoteProps } from './SecondaryQuote'; -export type { KeyMetricsProps } from './KeyMetrics'; export type { MainForceInfoProps } from './MainForceInfo'; -export type { CompanyInfoProps, CompanyBasicInfo } from './CompanyInfo'; export type { StockHeaderProps } from './StockHeader'; export type { MetricRowProps } from './MetricRow'; export type { GlassSectionProps } from './GlassSection';