#更新需求 ##1.第一阶段更新需求 1.1. 修改:同步屏窗口不要使用圆角,底色使用黑色#000,同步屏窗口置顶显示。 1.2. 添加:使用tauri::menu API 创建菜单项,右键点击同步屏窗口,弹出该菜单,菜单项有:配置同步屏窗口、退出。点击配置同步屏窗口,弹出一个窗口。点击退出,退出应用。 ##2.第二阶段更新需求 2.1. 添加:配置文件使用XGD规则保存到本地,使用@tauri-apps/plugin-store读写配置文件,使配置参数在应用整个生命周期内中可以随时读写。 2.2. 在配置窗口添加如下配置项: - 同步屏中主div的总长度(默认800px),高度(默认64px) - 主div切割后分成几段,每段的长度、每段左顶点的起始坐标 - 标尺是否显示 2.3. 在2.2中的配置项使用2.1的配置文件保存,并在应用启动时读取并应用配置文件且实时更新同步屏窗口。 ##3.第二阶段更新问题修复 3.1. 配置项窗口不是无边框窗口,可拖动,背景为白色#fff 3.2. 配置项窗口没有保存配置的按钮,点击保存配置后再写入配置文件。 3.3. 主div切割分成几段需要使用添加按钮手动来添加,并且每段的参数需要可以修改,可以通过列表来展示修改的段,并修改参数。 3.4. 同步屏窗口的长度不要超过主屏幕分辨的宽度。 ##4.第三阶段更新需求 4.1. 修改:去除子元素跨段切片行为验证,去除验证代码,保留功能 4.2. 添加:配置项窗口加入添加子div(窗口区域)功能,可以设置窗口区域的宽度、高度、左顶点起始坐标。 4.3. 添加:窗口区域中包含两个子区域:窗口号区域、文本区域,子区域横向排列,在窗口区域中显示占比为1:2.5。 4.4. 添加:窗口号区域显示窗口编号,文本水平垂直居中显示,可设置文本是否带圆圈边框,文字大小、颜色、粗细。 4.5. 添加:文本区域包两个字区域:静态文本区域、动态文本区域,两个文本区域纵向排列,在文本区域中显示占比为1:1,两个区域中的文字水平垂直居中显示,可设置文字大小、颜色、粗细。 4.6. 有需要的话,可以引入前端UI框架来优化配置窗口界面。 ##5.第三阶段更新问题修复 5.1. 配置了3个窗口区域,只有第一个分段显示了窗口区域,第2个窗口区域没有跨段显示,第3个窗口区域没有显示在第二个分段上。 5.2. 窗口区域及其子区域去除边框,背景使用黑色。 5.3. 配置窗口每个大配置项做成折叠面板,每个面板和窗口背景色的色差调大一些。 ##6.第四阶段更新需求 6.1. 添加:在保存配置旁边添加一个按钮,点击按钮启动socket服务,并监听9501端口,并用红绿灯方式展示socket服务状态。 6.2. 添加:根据socket消息内容,动态修改窗口区域中动态文本区域的内容。收到的消息报文如下: { "action": "CALL", "windowId": 1, "windowName": "A12窗口", "ledAddress": "192.168.1.100", "timestamp": 1712567890000, "payload": { "ticketNumber": "A001", "displayText": "请 A001 号办理", "voiceText": "请 A001 号到 A12 窗口办理", "flash": true } } 其中windowId代表窗口区域的编号,displayText代表动态文本区域所要展示的内容。 ##7.第五阶段更新需求 7.1. 添加:日志模块,用于记录socket服务启动、停止、消息接收、消息处理等操作。日志文件使用XGD规则保存到本地 ##8.第六阶段更新需求 8.1. 修改:标尺每100px之间再加入50px的刻度线,比10px的刻度线高一点比100px的刻度线低一点. 8.2. 添加:同步屏窗口右键菜单加入一项最小化,点击后同步屏窗口最小化,在系统任务栏中点击同步屏窗口图标,恢复同步屏窗口。 8.3. 添加:窗口区域配置中加一个勾选项:切换为时钟窗口,如果切换为时钟窗口,则不显示窗口号区域和文本区域,只显示hhh:mm格式的时间,时间文字样式由动态文本区域样式决定。 8.4. 添加:添加一个折叠面板,用于滚动字幕区域的添加和配置,滚动字幕的区域和可以设置区域的宽度、高度、左顶点起始坐标、其中滚动字幕的文本、文本字体大小颜色,文本滚动速度,设置完成之后文本会在滚动字幕区域从左往右持续滚动。 ##9.补充细节修改 9.1. 修改:配置文件和日志的保存位置在不同的路径下,日志文件生成时文件名拼接上日期和时间,限制单个日志文件大小,日志最多保存7天。 9.2. 修改:窗口号区域的圆圈边框增加可以修改边框大小、边框粗细、圆角半径。