Skip to content

Conversation

@tempChanghong
Copy link
Contributor

此 PR 旨在解决教师发送紧急通知时,接收端仅显示“测试设备”导致身份无法识别的问题。
主要变更集中在 src/components/UrgentTestDialog.vue,通过引入 v-combobox 和 localStorage 实现了发送者姓名的自定义输入与自动记忆功能。

主要改动 (Key Changes)

在发送通知弹窗中新增“发送者姓名”输入框(使用 v-combobox)。
支持从下拉列表中选择历史常用的教师姓名,或直接输入新名字。
去除硬编码: 将原有的 deviceName: '测试设备' 替换为用户输入的动态名字。
本地记忆: 发送成功后,将名字保存至 localStorage,下次打开自动填充。
云端同步: 利用 dataProvider 读取和更新 classworks-teacher-list,实现设备间共享教师名单(输入新名字自动追加到云端列表)。
完全基于前端逻辑实现,利用了现有的 Socket 透传机制,无需修改后端代码。
相关 Issue:#16(未完全实现issue中提到的所有功能)

务必注意 (Attention Reviewer)

本 PR 中的部分核心逻辑与代码实现由 AI 辅助生成。
虽然代码逻辑已经过上下文分析,旨在符合现有的项目架构(如使用 dataProvider 和 socketClient),但强烈建议在合并代码前使用Copilot进行检查并进行以下测试,以确保代码的可用性与稳定性:

  • 功能测试:验证发送通知后,学生端是否正确显示了自定义的教师姓名。
  • 数据持久化:验证 localStorage 是否正确记住了上次输入的名字。
  • 列表同步:验证输入新名字后,是否正确更新了云端的 classworks-teacher-list 并在下次从下拉框中可选。
  • 边界情况:测试不输入名字(使用默认值)或网络延迟时的表现。

@Sunwuyuan
Copy link
Member

我感觉这个实现不太好,我想做成预先填教师姓名,直接记录为token数据的

@tempChanghong
Copy link
Contributor Author

其实我也觉得这个实现差点,只是提供一种思路😂

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