每日作战台 · 任务、习惯、客户跟进与收入工时看板
一个人同时推进几条业务线时用的每日看板:打开就知道今天做什么、做了什么、还能做什么;任务、习惯打卡、客户跟进、收入与工时放在一处,自托管、单用户、密码登录
项目概述
同时推进几条业务线时,最容易乱的是三件事:今天到底该先做什么、哪些客户该跟进了、时间花出去有没有换来收入。任务清单、表格和备忘录分散在各处,每天光是把它们对一遍就要十几分钟。
作战台把这些收进一个页面:每天打开就是「今天」——要做的任务、要打的卡、到期要跟进的客户,下面是本月收入、本周工时和各条线的进度。它是给我自己用的内部工具,已经部署在私有子域上,每天都在用。
核心功能
- 今日视图:今天的任务、习惯打卡、到期的客户跟进合在一个清单里,全部完成会有提示;顶部是计划第几天 / 第几周和里程碑倒计时
- 任务看板:待选 / 待办 / 进行中 / 已完成四栏,按业务线着色,带优先级、计划周和截止日期;待选池里会挑出适合今天做的几条
- 习惯打卡:按业务线设置每日习惯,一键打卡,看最近的连续记录
- 客户跟进:待联系 → 已联系 → 有回复 → 演示 → 试用 → 成交 / 流失七个阶段,每个客户有下次跟进日期和跟进记录时间线,到期自动出现在今日视图
- 收入与工时:按业务线记收入和工时,月度收入柱状图 + 工时折线,自动算出每条线的实际时薪,看时间花在哪里最值
- 周进度:每周计划任务的完成率,一眼看出哪一周掉队了
技术实现
- 框架:Next.js 15(App Router + Server Actions)+ Tailwind CSS 4,表单提交全部走 Server Actions,几乎没有客户端状态
- 数据:SQLite,用 sql.js(纯 WASM)读写,不需要编译原生模块,部署时只拷贝 standalone 产物
- 登录:单用户密码(scrypt 哈希)+ jose 签发的 JWT 会话 cookie,中间件统一拦截未登录请求
- 图表:Recharts 画收入与工时趋势
- 部署:自有服务器,pm2 常驻 + nginx 反代 + Let's Encrypt 证书;本地构建后 rsync 上传,数据库和密钥不会被覆盖;每天定时备份数据库,保留 14 份
在线 Demo
真实版本部署在私有子域、需要登录。点上方「访问」可以打开演示版,界面和交互与真实版本一致:
- 可以打卡、把任务推进到下一个状态、快速新增任务、记一笔收入或工时、推进客户阶段、添加跟进记录
- 全部是虚构的示例数据,日期会按今天自动生成;所有操作只在你的浏览器里运行,刷新即恢复初始状态
相关开发日志