Skip to content

Major Improvements - #6

Merged
AperturePlus merged 42 commits into
mainfrom
iter2
Jun 14, 2026
Merged

AperturePlus merged 42 commits into
mainfrom
iter2

Conversation

@AperturePlus

Copy link
Copy Markdown
Owner

UI重构

starprince1234 and others added 30 commits June 9, 2026 20:17
直接部署
- 输入框改为聊天式底部固定布局,支持发送按钮和回车提交
- 顶部展示 'SchoNavi' 品牌标题和副标题
- 快捷标签改为水平滚动的 pill 样式,置于输入框下方
- 示例卡片改为 2 列 BentoGrid 布局替换横向滚动
- 添加 maxWidth 约束,居中布局,适配大屏
ChatMessage 新增 ChatMessageFeedback 枚举(none/like/dislike)、feedback字段及copyWith方法。
ChatNotifier 新增 regenerateMessage(单条重生成)和setFeedback(设置反馈)方法。
移除启动时的默认问候消息及_assistant辅助方法,内联赋值改用copyWith。
助手消息完成状态后展示操作栏:复制到剪贴板、重新生成、点赞/取消点赞、点踩/取消点踩。
消息内容包裹在 SelectionArea 中以支持文本选择。
- 新增 _WelcomeCard 欢迎卡片替换默认问候消息
- AppBar 改为透明背景、无阴影
- 输入栏改为圆角胶囊样式,聚焦时显示珊瑚色边框
- 发送/停止按钮改用 Material 圆形容器
- 快捷问题增加灯泡图标、调整间距和圆角
- 选填卡片增加内边距
- 更新 e2e / 路由 / 首页测试以适配新 UI
- 底部导航栏从4个标签精简为首页和个人2个标签
- 收藏和历史页面改为独立路由,使用共享轴过渡动画
- 首页添加侧边抽屉(HistoryDrawer),包含搜索历史和收藏入口
- AppBar 添加菜单按钮以打开抽屉
- 底部导航栏隐藏标签文字,缩减高度为56
- 更新测试用例适配新的导航结构
- 删除 ScaffoldWithBottomNav 组件
- 移除 StatefulShellRoute.indexedStack,改为独立 GoRoute
- 主页和个人页路由不再通过底部 tab 导航
- 删除 HistoryDrawer(左侧历史抽屉)
- 新增 AppMenuDrawer(右侧综合菜单,含档案、历史、收藏、设置)
- 新增 SchoNaviAppBar(可复用顶部栏,品牌标题左对齐,菜单按钮在右)
- 首页改用 endDrawer + 新 AppBar,品牌标题移至 AppBar
- 历史页改为 ConsumerStatefulWidget,支持本地搜索过滤
- 抽屉菜单的最近区域添加内嵌搜索框
- 首页右侧边缘滑动打开抽屉(RightEdgeOpenDrawer)
- 抽屉菜单按钮添加 Tooltip
- 更新相关测试用例
CompareProvider 不再自行校验 ID 数量/加载导师,
改为传入 List<String> 由 ComparisonRepository 实现层统一处理。
ComparisonReport 新增 professors 字段,
AiComparisonRepository / MockComparisonRepository 注入 ProfessorRepository。
新增 ValidationException 用于参数校验失败。
- favoriteRepositoryProvider / historyRepositoryProvider / profileRepositoryProvider /
  profileExtractionRepositoryProvider 根据 dataSource 分发 mock 或真实实现
- 新增 MockFavoriteRepository, MockHistoryRepository, MockProfileRepository,
  MockProfileExtractionRepository
- ProfileRepository 接口新增 clear(),LocalProfileRepository 实现之
- SettingsPage 清空数据改用 profileRepositoryProvider.clear()
RecommendationPage 移除 _recordHistoryOnce 和 _recordedSessionId,
改为在 recommendationProvider 的 Success 分支中通过 unawaited 自动记录。
测试补充 FakeHistoryRepo 和 historyRepositoryProvider override。
将 MatchPage 中局部 _overall 计算方法提取为 MatchAnalysis 的 overallScore getter,
消除重复逻辑并使领域层可直接获取综合契合度平均分。
@AperturePlus
AperturePlus merged commit 77c9b57 into main Jun 14, 2026
2 checks passed
@AperturePlus
AperturePlus deleted the iter2 branch July 8, 2026 08:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants