实时工资计算器 VSCode 插件
一个帮您实时计算当前工作收入的 VSCode 插件。让工作时间变得更有价值感!
🌟 功能特点
- 📊 实时显示:在状态栏显示当前已赚取的工资
- ⚙️ 灵活配置:可自定义月工资、工作时间、显示文字等
- 🕐 智能计算:自动识别工作日,过滤节假日
- 🎉 自动节假日:自动从API获取最新的中国法定节假日和调休信息
- 🔧 手动模式:支持手动配置节假日和调休工作日
- 💰 精确计算:基于实际工作分钟数计算收入
- 🏠 下班提醒:下班后显示当日总收入和自定义提示词
- 🎨 自定义前缀:可自定义实时工资显示的前缀文字
- ⚡ 智能缓存:本地缓存节假日数据,提升性能
- 🔄 自动刷新:月份变更时自动清理缓存
📱 显示逻辑
- 工作时间内:显示
$(symbol-currency) 实时💲:xx.xx 元
- 下班后:显示
$(symbol-currency) 实时💲:xx.xx 元 💰下班啦!
(可自定义提示词)
- 非工作时间:隐藏状态栏显示(包括上班前、节假日、周末)
🚀 使用方法
安装
- 在 VSCode 中按
Ctrl+Shift+P
打开命令面板
- 输入 "Extensions: Install from VSIX"
- 选择插件文件进行安装
配置
- 按
Ctrl+,
打开设置
- 搜索 "realTimeSalary"
- 配置以下参数:
基础配置
- 月总工资 (
monthlySalary
):您的月薪(元),默认:10000
- 上班时间 (
workStartTime
):格式为 HH:MM,默认:09:00
- 下班时间 (
workEndTime
):格式为 HH:MM,默认:18:00
- 每周工作天数 (
workDaysPerWeek
):5(周一至周五)、6(周一至周六)或 7(每天),默认:5
显示配置
- 实时工资前缀 (
salaryPrefix
):实时工资显示的前缀文字,默认:"实时💲:"
- 下班提示词 (
offWorkMessage
):下班后显示的自定义提示,默认:" 💰下班啦!"
节假日配置
- 自动获取节假日 (
autoFetchHolidays
):是否从API自动获取节假日信息(推荐开启),默认:true
- 节假日列表 (
holidays
):手动设置的节假日(仅在关闭自动获取时生效)
- 调休工作日 (
workdays
):手动设置的调休工作日(仅在关闭自动获取时生效)
使用
- 插件会在 VSCode 启动时自动开始计算
- 在工作时间内,状态栏右侧显示实时工资
- 下班后显示当日总收入和自定义提示词
- 非工作时间自动隐藏状态栏显示
- 点击状态栏项目可快速打开设置
命令
通过 Ctrl+Shift+P
打开命令面板,可使用以下命令:
开始实时工资计算
- 开始计算
停止实时工资计算
- 停止计算
工资计算设置
- 打开设置
更新节假日信息
- 手动更新当年节假日信息
📐 计算公式
每分钟工资 = 月总工资 / (当月工作天数 × 每天工作分钟数)
当前收入 = 已工作分钟数 × 每分钟工资
当日收入 = 每天工作分钟数 × 每分钟工资
其中:
- 每天工作分钟数 = 下班时间 - 上班时间(不包含午休)
- 当月工作天数 = 根据设置的每周工作天数计算,排除节假日,包含调休工作日
- 已工作分钟数 = 当前时间 - 上班时间
🎊 节假日功能
自动获取模式(推荐)
插件默认启用自动获取模式,会从 天行数据API 获取最新的中国法定节假日和调休信息,包括:
- 🎊 法定节假日:元旦、春节、清明节、劳动节、端午节、中秋节、国庆节等
- 📅 调休工作日:因节假日调休需要上班的周末
- 🔄 自动更新:每年自动获取最新的节假日安排
- 💾 本地缓存:减少网络请求,提高响应速度
- ⚡ 智能缓存管理:月份变更时自动清理过期缓存
手动配置模式
如果您需要自定义节假日安排,可以:
- 关闭"自动获取节假日"选项
- 在"节假日列表"中添加节假日,格式:["2025-01-01", "2025-10-01"]
- 在"调休工作日"中添加需要上班的周末,格式:["2025-02-17", "2025-04-27"]
更新节假日
- 自动更新:插件会自动缓存节假日信息,无需手动操作
- 手动更新:可通过命令面板执行"更新节假日信息"命令强制更新
- 离线模式:如果网络请求失败,会自动切换到手动配置模式
- 性能优化:采用智能缓存机制,避免重复API调用
🎨 自定义配置示例
自定义前缀文字
您可以在设置中自定义实时工资显示的前缀文字,例如:
- "实时💲:"(默认)
- "当前收入:"
- "💰赚了:"
- "Money:"
自定义下班提示词
您可以在设置中自定义下班后的提示词,例如:
- " 💰下班啦!"(默认)
- " 🎉今日收工!"
- " 😴该休息了!"
- " 🏡回家吃饭!"
配置文件示例
{
"realTimeSalary.monthlySalary": 15000,
"realTimeSalary.workStartTime": "09:30",
"realTimeSalary.workEndTime": "18:30",
"realTimeSalary.workDaysPerWeek": 5,
"realTimeSalary.salaryPrefix": "💰当前收入:",
"realTimeSalary.offWorkMessage": " 🎉今日收工!",
"realTimeSalary.autoFetchHolidays": true
}
🔧 开发
环境要求
- Node.js 16.x+
- VSCode 1.74.0+
- TypeScript 4.9.4+
编译
npm install
npm run compile
调试
- 在 VSCode 中打开项目
- 按
F5
开始调试
- 在新窗口中测试插件功能
打包
npm install -g vsce
vsce package
📋 更新日志
v0.0.1 (2025-01-XX)
- ✨ 新增自定义前缀文字功能
- ⚡ 优化节假日API调用性能
- 🔧 添加智能缓存管理机制
- 📝 完善配置选项和文档
- 🎨 改进用户界面和体验
- 🐛 修复月份切换时的缓存问题
🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 许可证
MIT License - 详见 LICENSE.txt 文件
📞 支持
如果您在使用过程中遇到问题,请:
- 查看本文档的常见问题解答
- 在 GitHub 上提交 Issue
- 通过邮件联系开发团队
享受您的工作时光,让每一分钟都有价值! 💰✨