Commit Graph

23 Commits

Author SHA1 Message Date
815085e98b 修复:支持员工按完整目标号码批量叫号
问题:批量叫号仅按数量输入,员工无法直接叫到 0002x 号段。

实现:允许输入完整目标号码,按待叫队列换算连续数量,保持 FIFO,并拦截非法目标和超上限操作。

验证:前端 68 项测试、类型检查和生产构建通过。
2026-08-01 21:42:41 +08:00
4405bf96f7 修复:将叫号音频内联到前端包
问题:音频使用 /audio 路径,浏览器预加载仍会向服务端发起独立请求。

实现:将 15 个 WAV 作为 Vite 内联资源编入前端 JS,后端继续仅返回叫号数据/文本。

验证:前端 66 项测试与生产构建通过;dist 中 WAV 文件为 0,含 15 个内联音频数据。
2026-08-01 12:16:54 +08:00
6d07612bc9 优化:公屏预加载叫号音频素材
需求:页面打开后缓存音频片段,叫号时避免临时下载造成延迟。

实现:页面挂载时预加载全部数字与提示语 WAV,后端继续返回叫号数据/文本,前端按文本映射片段播放。

验证:前端 66 项测试通过,生产构建通过。
2026-08-01 12:06:01 +08:00
01d261e893 优化:公屏叫号默认播放并移除声音控制
需求:服务端下发音频已验证可用,公屏无需再显示开启声音按钮和状态提示。

实现:移除声音控制组件与首次点击门槛,新叫号到达后直接播放内置音频队列。

验证:前端 65 项测试通过,生产构建通过。
2026-08-01 11:40:58 +08:00
6d911271e6 功能:内置公屏叫号音频并仅播号码
需求:屏行天下等设备缺少中文语音服务,speechSynthesis 无法播报;公屏不再播项目名。

实现:内置中文数字和提示语 WAV 素材,统一通过普通 audio 元素顺序组合播放,每次叫号重复三遍,并保留首次点击解锁。

验证:前端 65 项测试通过,生产构建通过,真实浏览器完成 WAV 解码播放且无媒体错误。
2026-07-31 23:11:39 +08:00
c2a5281534 修复:调整游客取号限流策略
问题:移动网络共享出口 IP 会造成游客取号被误限流。

实现:移除公开取号 IP 限制,改用项目总量与手机号 HMAC 限流,并支持 Retry-After 倒计时。
2026-07-31 22:56:33 +08:00
3f4a9bf398 统一单项目大屏与管理端全屏布局
需求:/display/{项目编码} 参照管理端项目大屏布局展示。

实现:抽取共享大屏组件,补充公开累计取号与最新号码字段,并完善桌面及窄屏适配。

验证:前端61项测试、TypeScript、Vite构建以及Go测试、vet、build均通过。
2026-07-31 18:43:10 +08:00
d26d36c3d3 修复:兼容Chrome公屏语音播放限制
问题:Chrome在页面没有用户操作时拒绝speechSynthesis并返回not-allowed,导致同机Safari有声但Chrome无声。
实现:两个公屏增加一次性声音启用操作,在用户手势中解锁语音;保留每次三遍播报,并补充暂停恢复、失败提示和回归测试。
复现:直接打开公屏页面后由员工端叫号,Chrome不播放声音。
2026-07-31 18:01:36 +08:00
6f3d14d314 修复单项目公示屏布局重叠
问题:/display/YYHHC 在 1280x720 下主卡片、右侧预计和最近叫号区域错位重叠。

实现:重置主内容网格行,统一底栏高度与预留空间,优化侧栏字号和窄屏页头;完成三种视口及前端全量验证。
2026-07-31 17:48:12 +08:00
af2c18a546 调整:叫号内容连续播报三次
需求:公屏每次播放叫号声音时重复三遍。
实现:单项目页和多项目公屏均为每个新批次排队三条相同语音,并更新回归测试。
2026-07-31 17:31:03 +08:00
9d56c181fb 修复:补齐多项目公屏叫号播报
需求:管理员公屏在员工叫号后需播放项目名与号码。
实现:复用单项目号码播报格式,按项目跟踪新批次并播报项目名加号码,补充回归测试。
2026-07-31 17:14:33 +08:00
9948c23bef 支持项目编码访问单项目公示屏
需求:无需查询公示 Token,直接通过项目编码打开单项目公示页。

实现:规范化项目编码并按 code 查询,同时保留既有 Token 哈希查询;补充前后端及集成回归测试。
2026-07-31 17:11:21 +08:00
78df07e074 实现叫号播报并调整现场业务规则
需求描述:发布屏在员工叫号后播放语音;同场次手机号被叫号后可重新取号;登录连续失败限制调整为10次。

实现思路:发布屏按新批次去重触发中文语音;重复手机号仅拦截WAITING号码;登录限流使用10次阈值,并补充前后端回归测试与接口说明。
2026-07-31 16:36:55 +08:00
d782227a23 开放多项目大屏免登录访问
需求描述:/admin/display 需要无需管理员登录即可直接查看多项目公开运行状态。

实现思路:新增公开字段白名单接口与独立大屏页面,移除该路由的管理员会话依赖,同时保留 /api/admin/overview 的鉴权并补充隐私、路由和页面回归测试。

验证:Go 全量测试通过;前端 18 个测试文件共 59 项通过,TypeScript 检查通过。
2026-07-31 16:36:03 +08:00
17d296263c 修复账号禁用及队列场次状态规则
问题与需求:后台禁用员工后旧会话仍可继续访问;实时队列跨天误读昨日场次;项目暂停后需禁止取号但允许叫号。

修复思路:账号权限变更时撤销会话并同步前端登录态;实时查询统一按项目时区当天场次过滤;拆分取号与叫号的状态校验,并补充前后端及 PostgreSQL 回归测试。
2026-07-30 12:02:05 +08:00
ea36e1155f 修改dockerfile 2026-07-25 22:19:26 +08:00
wangxuming
c6044d972c feat: add historical data management 2026-07-22 10:18:49 +08:00
wangxuming
66951b4dc3 feat: add party-size queueing and call modes 2026-07-16 11:40:34 +08:00
wangxuming
7f751bebae Add visitor phone lookup flow 2026-07-15 11:26:37 +08:00
wangxuming
331e30894b merge: project form and timezone fix 2026-07-15 11:02:49 +08:00
wangxuming
49435aeaa2 fix: unify project create form and timezone data 2026-07-15 10:05:33 +08:00
6c1af1fd05 build: add frontend container image 2026-07-14 19:40:36 +08:00
wangxuming
68d61700d5 Initial commit 2026-07-12 15:53:24 +08:00