面向班组、包工头与个体用工的记工记账应用:按天、按时、计件记工,工资自动计算,借支与结算管理,考勤日历,一键生成工资条
v0.1.0点工(按天,支持半天)/ 点时(按小时)/ 计件(数量 × 单价),一个应用覆盖工地与工厂的常见算法
单价自动带出工人默认日薪、时薪或计件项目默认单价,单条记录可临时覆盖;金额以整数「分」存储,避免浮点误差
移动端优先的日历记工页,30 秒完成一笔录入;支持休息标记、多天连记与「确认并再记一笔」
老板 / 组长 / 员工三种角色:老板建班组,工人凭邀请码加入;组长可帮工人记工、记借支,员工只能给自己记工
月历展示每个工人的出勤状态(1 个工 / 0.5 个工 / 小时 / 件 / 休),并汇总当月工钱,出勤与工资一目了然
未结算汇总按工人实时列出应发、借支与净应付;支持单人结算与一键月结,结算后记录锁定且可撤销重结;工资条含明细、借支抵扣、实发与签字栏,一键导出 PNG 或复制文字
可选填工地或项目,统计可按工地筛选,未结工资支持按人结算或按项目(工地)结算
记录工人的预支款项(现金 / 微信 / 支付宝),结算时自动抵扣,净应付不会算错
月度统计每人的出勤天数、工时、计件数量、应发工资、借支与净额;也可按人员 + 时间段自定义查询,明细与汇总均可导出 CSV
数据全部保存在本地 SQLite(WAL 模式),不上传云端;数据按用户隔离,多用户互不可见;支持 CSV / JSON 导出与数据库快照备份
支持飞牛 fnOS NAS 账号一键登录,自动绑定或注册应用账号,手机与电脑共用同一份数据
深浅色主题自适应,工地现场光线再差也能看清记工明细
工记基于 smallgo 应用框架实例化,模块化注册(server/worklog/),前后端产物可打包为单个可执行文件分发。
techfunway-worklog 安装包(.fpk,支持 amd64 / arm64).fpk 文件docker run -d \ --name techfunway-worklog \ -p 8909:8909 \ -v worklog-data:/app/data \ -e TZ=Asia/Shanghai \ --restart unless-stopped \ techfunways/worklog:latest
services:
worklog:
image: techfunways/worklog:latest
container_name: techfunway-worklog
restart: unless-stopped
ports:
- "8909:8909"
volumes:
- worklog-data:/app/data
environment:
- TZ=Asia/Shanghai
volumes:
worklog-data:数据库、上传文件与运行日志都存放在数据卷 worklog-data(容器内 /app/data),重建或升级容器不会丢失记工数据。
解压对应平台的发布压缩包后,按下面的命令启动:
# Linux / macOS ./worklog -data-dir ./data -port 8909 # 开发模式(构建前后端并模拟生产目录结构运行) make dev
启动后浏览器访问 http://localhost:8909,首个注册用户自动成为管理员。记账数据存储于 data/db/worklog.db(SQLite,WAL 模式)。
-port 参数或 PORT 环境变量均可修改)
techfunway-worklog
worklog-data → 容器内 /app/data(数据库、上传文件、日志)
techfunways/worklog(多平台,端口 8909)
techfunway-worklog(桌面显示名「工记」)
TechFunWay/worklog(Go + Gin + GORM + SQLite / Vue 3 + TypeScript)
data/db/worklog.db(SQLite WAL),管理员可下载数据库快照备份
smallgo,后端模块名为 smallgo/server
飞牛 NAS 安装时可在向导中设置端口(默认 8909)。Docker 方式通过 -p 参数映射端口。二进制方式通过 -port 参数指定端口。
点工按天(支持 0.5 天)、点时按小时、计件按「数量 × 单价」计算,单价自动带出工人的默认日薪 / 时薪或计件项目的默认单价,单条记录可以覆盖。金额在服务端以整数「分」存储,前端展示时再转成元,不会出现浮点误差。
不能。员工角色的账号只能给自己记工,可以查看自己的考勤、工资与结算单;组长可以帮本组工人记工、记借支;老板负责建班组、管理与月结。工人凭邀请码加入班组。
结算页面一键生成工资条,含记工明细、借支抵扣、实发金额与签字栏,可导出为 PNG 图片(直接微信发给工人)或复制为文字,方便工人确认留档。
所有数据都保存在本地 SQLite 数据库(data/db/worklog.db),不上传云端;数据按用户隔离,多用户互不可见。备份数据目录即可,管理员也可以在应用内下载数据库快照或导出 CSV / JSON。应用内置的匿名使用统计只上报版本与部署形态等设备信息,可在系统配置中关闭。