feat: 完善紫微斗数分析系统 - 增加四化飞星和大限分析详细解释

主要更新内容:
1. 修复大限分析岁数计算问题,使用真实出生年份
2. 增加命宫主星详细解释,包含性格、事业、财运分析
3. 完善四化飞星解释系统,详细说明化禄、化权、化科、化忌
4. 增加十二宫位大限分析,提供重点领域、机会、挑战、建议
5. 优化前端显示效果,改进布局和视觉设计
6. 修复大限显示限制问题,现在显示完整的12个大限
7. 提升用户体验,增加专业性和实用性

技术改进:
- 重构大限计算方法,传递真实出生年份参数
- 建立完整的星曜和宫位解释数据库
- 优化前端组件结构和样式设计
- 增强响应式布局和交互效果
This commit is contained in:
patdelphi
2025-08-19 01:02:29 +08:00
parent 2a70320730
commit 07de78c4a8
7 changed files with 2481 additions and 118 deletions

View File

@@ -1,5 +1,6 @@
import React from 'react';
import CompleteBaziAnalysis from './CompleteBaziAnalysis';
import CompleteZiweiAnalysis from './CompleteZiweiAnalysis';
import BaziAnalysisDisplay from './BaziAnalysisDisplay';
interface AnalysisResultDisplayProps {
@@ -70,13 +71,29 @@ const AnalysisResultDisplay: React.FC<AnalysisResultDisplayProps> = ({ analysisR
// 渲染紫微斗数分析
const renderZiweiAnalysis = () => {
// 处理新的数据结构: { type: 'ziwei', data: analysisResult }
// 如果有 birthDate使用新的 CompleteZiweiAnalysis 组件
if (birthDate) {
return <CompleteZiweiAnalysis birthDate={birthDate} />;
}
// 如果有分析结果但没有 birthDate尝试从结果中提取出生信息
if (analysisResult && analysisResult.data) {
const basicInfo = analysisResult.data.basic_info;
if (basicInfo && basicInfo.personal_data) {
const extractedBirthDate = {
date: basicInfo.personal_data.birth_date || '',
time: basicInfo.personal_data.birth_time || '12:00',
name: basicInfo.personal_data.name || '',
gender: basicInfo.personal_data.gender === '男性' ? 'male' : 'female'
};
return <CompleteZiweiAnalysis birthDate={extractedBirthDate} />;
}
}
// 回退到旧的渲染方式(向后兼容)
const data = analysisResult?.data || analysisResult;
const ziweiData = data?.ziwei_analysis || data?.ziwei || data;
const analysisData = data?.detailed_analysis || data?.analysis || data;
return (
<div className="space-y-8">
{/* 命宫信息 */}

File diff suppressed because it is too large Load Diff