以下均为系统实际运行截图:同一套 Apple HIG 设计令牌,亮暗双模,桌面与移动端同一份代码。
业务模块是数据,不是代码。审批动词与钩子集中在引擎层,模块只负责声明字段与流程节点。
任意节点 + 条件分支(and / or)、会签与或签、抄送、转交、撤销、催办、超时提醒。空审批人策略支持跳过 / 上报 / 交管理员。
权限注册表支持通配;数据范围四级:仅本人 / 本部门 / 本部门及下级 / 全部。所有列表与导出统一走范围过滤,越权直接 403。
字段类型、列表列、搜索项、流程节点、审核后钩子全部在 packs/*.php 里声明,热同步生效,新增模块不碰引擎。
打卡、补卡与补卡审核、月度明细与统计、迟到早退判定;制造与教育包附带排班 / 课表维度。
审批通过自动写考勤、扣减年假额度、留审批日志 —— 通过 on_approved / on_canceled 钩子完成,非法状态不会落库。
一条 cron 跑完提醒、备份与统计;命令行可重建统计、同步模板、备份数据库,运维不必进后台点按钮。
安装时勾选即启用,之后可随时增删。每个包只贡献数据结构,共享同一套引擎与权限体系。
Apple HIG 设计令牌驱动:40 个 CSS 变量、系统字体栈、毛玻璃层、柔和投影。默认跟随系统偏好,也可以手动锁定并记住选择。
单入口路由 + 自适应布局:侧栏在窄屏收成抽屉,卡片自动堆叠,打卡与审批在手机上同样顺手。
不依赖任何安全框架,全部自研并逐项冒烟验证。
password_hash / 自带盐与算法升级hash_equals 恒定时间比较,覆盖全部 POST失败计数 + 时间窗,挡暴力破解HttpOnly / SameSite / 登录后重建 ID扩展名白名单 + HMAC 签名链接,附件目录禁止直接访问登录、审批、权限变更、数据导出全程留痕X-Frame-Options / nosniff / Referrer-Policyapp / packs / data / bin / tests 均禁止 Web 访问不需要 composer、不需要构建、不需要 CDN。上传解压 → 向导安装 → 删除安装文件。
# 1 · 上传解压到站点根目录
unzip heoa.zip -d /www/wwwroot/
# 2 · 浏览器打开安装向导,三步完成
# 选行业包 → 建管理员 → 写入演示数据
https://demo.example.com/install.php
# 3 · 删除安装文件,配好定时任务
rm /www/wwwroot/heoa/install.php
crontab -e
# 每小时提醒 + 备份;php 用面板里的绝对路径
0 * * * * php /www/wwwroot/heoa/bin/cron.php all \
>> /www/wwwroot/heoa/data/logs/cron.log 2>&1
PHP ≥ 8.1,启用 pdo_sqlite(或 pdo_mysql)、mbstring、openssl、fileinfo。SQLite 默认即可跑,无需先建库。
默认 SQLite(WAL,单文件,随时打包备份);也可在安装向导里改选 MySQL / MariaDB(MySQL ≥ 8.0.13 或 MariaDB ≥ 10.2.1)。DDL 由引擎自动做方言转换,无需手工建表。
宝塔面板、Nginx、Apache 三种部署方式与伪静态规则、cron 配置、备份恢复、二次开发指引,全部写在仓库的 README.md 里。
当前版本的功能是完整的、能直接上线的,但下面这些能力还没有随包发布 —— 写在这里,是为了不让「还没做」被当成「已经做了」。
现在通知只落在站内消息表 notifications,登录才看得到。邮件 / 短信 / 企业微信 / 飞书 Webhook 正在接入,目标是待办直接推到人手上。
目前字段、列表列、流程节点都靠手写 packs/*.php。拖拽式编辑器做好后,业务方自己就能加字段、调节点,不必改代码。
工作台目前只有统计数字,还没有图形化报表。自助取数、按维度出图、一键导出表格在开发排期里。
OAuth2 / LDAP / 企业微信通讯录同步,以及单点登录与离职自动停用 —— 用于和现有账号体系对接。
手机端现在是同一份代码的响应式网页(见上方截图),打卡、审批都能用。原生壳与小程序还在排期。
PDF / Office 在线预览、移动端手写签名、审批意见留痕盖印 —— 现在附件需要下载后本地查看。
标记「研发中」的已经在做,「规划中」的还只有设计稿,接口可能还会变。以上能力均不属于当前版本,请勿按已实现来评估。