DutyForPutisland —— 值日安排自动发送工具
一个基于 Tauri 2 的 Windows 桌面值日排班工具:自动生成每日值日安排,一键推送到 PutIsland(ClassIsland 插件),支持自动轮换、手动编排、模板轮换,以及定时自动发送、系统托盘、URL 协议等桌面集成能力。
功能特点
- 三种排班模式:自动循环轮换 / 手动编排 / 模板轮换
- 两种轮换策略:按组轮换 / 按周几固定
- 模板化管理:多模板集、多值日表(计划)、独立轮换周期、今日组别
- 灵活的值日项目:自定义项目名称与每组人数,可增删列、编辑表头
- 休息日设置:按星期设置休息日,自动跳过不排班、不发送
- Excel 导入:导入学生名单与值日表(支持映射、行列转置、预览)
- 一键发送:将当天(或明天)值日安排发送到 PutIsland
- 发送文案模板:自定义文案与占位符,支持日期、时间、职务简称,实时预览
- 定时自动发送:多时间点、时间段规则(如 19:00 后自动发送明天)、防重复
- URL 协议:浏览器或 ClassIsland 自动化中打开
duty://send 一键触发生成并发送
- 系统托盘:关闭窗口最小化到托盘,托盘菜单与左键行为可配置
- 跳过今日:标记某天不发送、不占用轮换
- 断档续轮:某天未运行时跳过,从上次发送的值日表继续轮换
- 外观与系统集成:自定义主题色 / 跟随系统主题色 / 开机自启
前期准备
| 组件 | 说明 | 获取方式 |
| ClassIsland | 课表软件(插件运行环境) | 官网 |
| PutIsland | 值日推送插件 | 插件安装页 · 插件源码 |
使用方法
- 启动软件,在「设置」中填写 PutIsland 地址与 Token(默认
localhost:36000,Token 需与 PutIsland 组件设置中一致)。
- 在「名单设置」中输入或导入学生名单。
- 在「值日设置」中选择排班模式并配置规则。
- 在连接地址栏右侧填写发送文案模板,可实时预览。
- 点击「发送到 PutIsland」即可推送当天值日安排。
发送文案模板
支持以下占位符(输入时实时预览):
| 占位符 | 含义 | 示例 |
%duty | 值日安排(职务全称) | 扫地:张三 值日:李四 |
%dutylite | 值日安排(职务简称) | 扫:张三 值:李四 |
%yyyy | 目标年份 | 2026 |
%mm | 目标月份(两位) | 08 |
%dd | 目标日期(两位) | 08 |
%HH | 发送时刻(时,两位) | 07 |
%MM | 发送时刻(分,两位) | 30 |
例如模板 %yyyy年%mm月%dd日 %duty 渲染为:2026年08月08日 扫地:张三 值日:李四。
职务简称:软件会自动读取值日表中的职务名称,你只需在「职务简称」页面为每个职务填写简称;%dutylite 会显示简称,未设置简称的显示全称。
常见问题
- Q:Token 留空了? A:发送时若 Token 为空会提示「请填写 <token> 字段,并确保与组件设置中 token 一致」,请先在设置中填写。
- Q:应用没开的那天怎么算? A:开启「断档续轮」后,未运行的日期不占用轮换位置,从上次发送的值日表继续轮换。
- Q:每天不想手动发? A:开启「定时自动发送」,添加时间点即可自动发送;还支持「19:00 起发送明天」等时间段规则。
技术栈
Tauri 2 + Rust + HTML/CSS/JavaScript,Excel 解析使用 calamine,系统主题色读取使用 winreg。
许可证
MIT