Repository navigation
v1.1.0
NPClassworks v1.1.0 · Ikuyo(喜多郁代)
版本概述
v1.1.0 是基于 v1.0.1 的功能与可靠性更新,版本代号为 Ikuyo(喜多郁代)。
本次更新新增作业打印与图片清单、明确无作业标记、一周总览、作业更正提示、单科放大、次要通知、班级名单管理和预设背景,并继续完善大屏长期运行、通知送达、离线保存及应用升级体验。
新增功能
作业查看与分享
- 作业打印清单:按所选班级范围和作业板日期生成简洁清单,支持浏览器打印或另存为 PDF,保留教师确认、无作业及缓存提示。
- 作业清单图片:生成适合分享的 PNG 图片,包含班级、日期、科目和内容更新时间;长正文自动分页,每页保留范围信息,支持逐张保存。
- 明确“今日无作业”:教师可按科目和发布目标主动标记无作业。学生页和大屏区分尚未录入、已有作业、明确无作业;作业与无作业标记并存时提示核对,继续显示实际作业。
- 一周作业总览:支持按作业板日期或截止日期查看,提供前后周、本周及科目筛选;截止日期视图包含更早布置但在本周截止的作业。
- 作业更正提示:大屏对已经显示过、随后被修改的作业短暂突出前后差异,提醒学生核对已抄内容;提示保留两分钟,完整记录可从版本历史查看。
- 单科作业放大:点击作业可临时放大正文和截止时间,长内容支持滚动,关闭后回到原来的浏览位置。
通知与大屏
- 新增“次要”通知等级:次要通知使用 Teams 默认提示音,发布时可选择是否弹窗;普通、重要、紧急通知强制启用弹窗。
- 通知栏折叠:大屏通知栏可手动折叠;收到新通知或通知新版本时自动展开,方便及时查看变化。
- 手动噪声监测跨页面运行:手动启动后离开监测页面仍继续工作,支持主动停止;单次手动监测最长三小时,到期自动结束手动模式。定时监测按独立计划管理。
- 麦克风对照诊断:增加“安静 / 说话”两阶段对照,展示实际输入设备、数字电平变化及浏览器报告的音频处理状态,帮助选择和检查麦克风。
学校管理与外观
- 远程管理行政班名单:学校管理员可查看、编辑、排序和批量粘贴学生名单,支持合并或整班替换;保存前预览变化,版本冲突时保留输入。名单更新会通知绑定该班的大屏。
- 预设背景:内置分类图片预设,先显示缩略图,选择后才下载大图;成功缓存后可离线使用。支持取消下载,离开设置时终止未完成的请求。
- 独立项目图标:更新网站、PWA 安装及相关平台图标,使用 NPClassworks 的新标志。
体验优化
- 大屏同步状态更可信:分别展示实时连接和内容加载情况。连接正常但内容请求失败时,不再显示为正常同步;可查看当前内容更新时间。
- 周总览刷新保留结果:同一范围刷新失败保留上次完整结果,并标明时间和可能过时的状态;切周、切换查看方式或班级时隔离旧数据,避免混用。
- 管理列表刷新更稳妥:大屏列表遇到临时错误时保留旧结果,合并重复刷新;账号修改后保证补取新数据,刷新完成不会提前解除正在保存的状态。
- 通知确认反馈更明确:通知弹窗和通知中心共用当前版本的确认状态,展示处理中或保存失败反馈;同一绑定的其他标签页确认后,当前页面及时同步。
- 保留编辑中的内容:PWA 更新、设置页刷新和恢复刷新统一检查未保存输入及进行中的保存;名单、发布与学校管理表单遇到错误或冲突时提示处理。
- 更好地处理无效选班:已停用的走班教学班不再作为有效选择继续使用;选择器、活动作业板和手动刷新相互配合,保留仍然有效的行政班内容。
Bug 修复
作业与发布状态
- 修复各科录入状态直接显示科目 ID,以及新增作业被误报为作业更正的问题。
- 修复范围、日期、绑定或会话变化后,旧请求结果覆盖当前作业板、缓存或错误状态的问题。
- 修复通知错误显示“待教师确认”的问题,区分账号发布通知与需要按授课范围确认的作业。
- 修复列表分页读取不完整影响教师搜索、待处理筛选和大屏内容展示的问题;刷新失败时避免以部分页面覆盖完整结果。
- 修复通知过期、撤回、版本变化和离线恢复时的显示与确认状态处理,并保持通知生命周期与作业板日期查询的区别。
- 改善作业日期、截止时间、无作业元数据和考勤名单的输入校验,减少看似保存成功但显示含义不一致的情况。
离线与多标签页
- 将待发送通知回执持久化并按绑定隔离;断网确认、刷新后即使通知离开当前列表,也可继续处理已保存的回执。
- 修复同一版本的展示回执与确认回执竞争导致状态倒退、跨标签确认未及时反映到弹窗的问题。
- 为大屏离线队列读改写增加跨标签互斥;草稿按标签隔离,避免一个标签保存或删除草稿影响另一标签的输入。
- 修复恢复旧草稿时丢失原修订号的问题,远端已修改时要求确认,避免无提示覆盖新内容。
- 改善教师目标收藏与最近使用的并发同步,保留离线移除意图,避免旧数据重新填回已取消的收藏。
- 完善大屏临时退出后的教师会话边界,防止旧登录、刷新或请求响应延长临时访问或覆盖新会话。
声音、背景与噪声历史
- 修复次要通知等级在提示音、弹窗和显示路径中的不一致,并加强不同通知版本的提醒去重。
- 为提示音准备阶段增加等待上限,忽略超时后的迟到播放,减少重复解码及旧音频资源干扰。
- 修复手动监测离开页面即停止、晚到授权或测试结果重新开启已停止监测等生命周期问题。
- 修复背景下载仅收到响应头后就失去超时保护的问题;新增解码超时与取消处理,失败时保留已保存的背景。
- 为噪声历史数据库打开和事务增加超时恢复。超时写事务会实际中止,迟到打开结果不能破坏新连接或影响清空后的数据。
- 修复名单粘贴对空学号、姓名空格及同名无学号学生的错误处理,拒绝含义不明确的导入并保留原文。
性能与资源优化
- 实时订阅按协议上限分批发送,支持工作区较多的教师,并在重连后恢复完整订阅。
- 按分页协议读取发布列表,减少遗漏和重复读取;大屏管理的手动刷新与轮询共用正在执行的请求。
- 预设背景按需下载并限制缓存数量,取消过时网络请求,释放失败解码和关闭预览产生的临时图片资源。
- 长作业导图采用分段排版,改善关闭和取消的响应。调度会增加完整排版耗时,本项不代表导出总速度提升。
- 合并和清理通知提醒的本地协调记录,减少重复播放与过期记录积累。
- 继续拆分学校管理、大屏设备和学校作业设置模块,并补充组件与实际交互回归,降低后续修改的影响范围。
测试与发布保障
- 增加真实前后端与 PostgreSQL 的全链路测试,覆盖会话、发布同步、通知回执及离线恢复;前后端生产部署都将配套验证作为前置条件。
- 增加真实路由和 Socket.IO 契约测试,验证科目目录、大屏会话、分页及超限分批订阅。
- 扩展浏览器测试,覆盖手动监测跨页、通知弹窗与提示音、名单导入和冲突、背景下载取消、IndexedDB 阻塞及 PWA 升级。
- 修正 CI 中嵌套后端依赖安装、测试环境隔离、时区与异步等待问题,提高部署检查的可信度。
升级说明
- 建议与 NPClassworksKV v1.1.0 · Ikuyo(喜多郁代) 配套升级。保留现有前端与独立 API 域名部署方式,无需为本次版本变更修改服务器部署代理。
- 大屏应在保存当前输入后更新应用。旧版前端不认识“次要”通知,可能按普通通知显示和播放;仅升级后端不能修正已打开的旧页面。
- 名单保存增加版本校验。旧版大屏仍可读取,但缺少版本的保存会被新版后端拒绝,请更新前端并重新加载名单。
- 管理员远程名单功能不提供代改每日考勤;移出学生保留已有学生记录和历史考勤。
- 无作业标记沿用现有字段,旧客户端可读取标题和正文;一周总览及新通知规则需要新版后端配合。
- 多标签离线保存依赖安全上下文中的 Web Locks。不支持时明确提示失败并保留输入;旧页面不遵守新锁,应更新同时运行的旧标签。
- 不需要清除浏览器数据。清除站点数据会影响本机草稿、待上传作业和缓存;普通草稿七天过期、待上传作业保留供处理的规则继续有效。
- 麦克风对照诊断使用 dBFS 数字电平,不是经校准的 dBA 声压测量;不保存录音。