- 后端: remaining_endpoints拆分为6个独立文件 - 后端: AI Agent Handler从ai_chat_endpoints抽取为7个独立处理器 - 后端: 食物识别prompt改为输出结构化JSON - 前端: 饮食识别从Mock替换为真实VLM API调用 - 前端: 首页图片上传URL修复(/api/upload→/api/files/upload) - 前端: 拍饮食按钮导航到独立DietCapturePage - 前端: 删除无用agent_bar.dart - 前端: 修复widget_test.dart过期属性名 - 前端: 恢复ServicePackageCard和详情页 - 新增6份实施文档(情况/问诊/报告/建档/日历/视觉统一)
75 lines
2.5 KiB
Dart
75 lines
2.5 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'navigation_provider.dart';
|
|
import '../pages/auth/login_page.dart';
|
|
import '../pages/home/home_page.dart';
|
|
import '../pages/chart/trend_page.dart';
|
|
import '../pages/medication/medication_list_page.dart';
|
|
import '../pages/medication/medication_edit_page.dart';
|
|
import '../pages/report/report_pages.dart';
|
|
import '../pages/report/ai_analysis_page.dart';
|
|
import '../pages/consultation/consultation_pages.dart';
|
|
import '../pages/settings/settings_pages.dart';
|
|
import '../pages/settings/notification_prefs_page.dart';
|
|
import '../pages/profile/profile_page.dart';
|
|
import '../pages/profile/profile_detail_page.dart';
|
|
import '../pages/profile/service_package_detail_page.dart';
|
|
import '../pages/diet/diet_capture_page.dart';
|
|
import '../pages/remaining_pages.dart';
|
|
|
|
/// 根据路由信息返回对应页面
|
|
Widget buildPage(RouteInfo route) {
|
|
final params = route.params;
|
|
switch (route.name) {
|
|
case 'login':
|
|
return const LoginPage();
|
|
case 'home':
|
|
return const HomePage();
|
|
case 'trend':
|
|
return TrendPage(metricType: params['type'] ?? '');
|
|
case 'calendar':
|
|
return const HealthCalendarPage();
|
|
case 'medications':
|
|
return const MedicationListPage();
|
|
case 'medicationEdit':
|
|
return const MedicationEditPage();
|
|
case 'reports':
|
|
return const ReportListPage();
|
|
case 'reportDetail':
|
|
return ReportDetailPage(id: params['id']!);
|
|
case 'aiAnalysis':
|
|
return const AiAnalysisPage();
|
|
case 'doctors':
|
|
return const DoctorListPage();
|
|
case 'consultation':
|
|
return DoctorChatPage(id: params['id']!);
|
|
case 'exercisePlan':
|
|
return const ExercisePlanPage();
|
|
case 'dietRecords':
|
|
return const DietRecordListPage();
|
|
case 'dietCapture':
|
|
return const DietCapturePage();
|
|
case 'profile':
|
|
return const ProfilePage();
|
|
case 'profileEdit':
|
|
return const ProfileDetailPage();
|
|
case 'editProfile':
|
|
return const EditProfilePage();
|
|
case 'devices':
|
|
return const DeviceManagementPage();
|
|
case 'healthArchive':
|
|
return const HealthArchivePage();
|
|
case 'followups':
|
|
return const FollowUpListPage();
|
|
case 'settings':
|
|
return const SettingsPage();
|
|
case 'notificationPrefs':
|
|
return const NotificationPrefsPage();
|
|
case 'staticText':
|
|
return StaticTextPage(type: params['type']!);
|
|
case 'servicePackageDetail':
|
|
return ServicePackageDetailPage(packageId: params['id']!);
|
|
default:
|
|
return const LoginPage();
|
|
}
|
|
}
|