CaiWuXiTong 财务系统

本项目基于 Akaunting 二次开发,包含统一系统设置、用户和侧边栏管理、多个只读云数据库来源,以及财务业务页面。

开发者快速开始

  1. 启动 Docker Desktop。
  2. 在仓库根目录执行:
bash deploy/local-init.sh --build
  1. 打开 http://127.0.0.1:18088。
  2. 首次从脚本提示的本机私有凭据文件读取临时账号并登录;不要把内容发到聊天或提交到 Git。
  3. 打开“系统设置 → 数据库管理 → 系统数据库”。
  4. 点击系统数据库的“连接”,只填写负责人提供的系统数据库密码。
  5. 使用系统数据库中属于自己的账号重新登录。

连接成功后,用户、侧边栏、系统设置、云数据库登记和共享快照会自动统一。不需要填写主机、端口、库名、账号、TLS、证书或两个云数据库密码,也不要复制生产环境或其他开发者的 APP_KEY、.env。

完整步骤和排错说明见 LOCAL_DEPLOY.md。

数据库边界

  • 本机 MySQL 只负责第一次启动和临时登录,不是团队业务数据源。
  • 系统数据库统一保存应用用户、系统设置、侧边栏配置和云数据库连接记录。
  • 云数据库属于只读上游,业务必须经过固定适配器、允许范围和共享按需查询快照读取。
  • 系统数据库保存查询登记和共享快照,但不会执行 SQL,也不是 SQL Server 网络代理;标准模式由具备上游连通性的生产后台刷新进程获取数据。
  • 开发者需要尚未缓存的新表或字段时,先在分支中实现固定只读查询、数据范围和刷新器;合并部署后再开放该范围,由后台进程生成首份共享快照。
  • 不得把数据库密码、连接串、生产 APP_KEY、Token、SSH 私钥或 runtime/.env 提交到 Git。

开发和发布

正式发布只能使用已经合并的 main,并通过 scripts/deploy-from-workstation.ps1 在开发机构建提交 SHA 镜像。生产服务器只运行镜像,不执行源码构建。

技术基础

  • PHP 8.3
  • Laravel
  • Vue
  • Apache
  • MySQL / MariaDB
  • Docker
  • Akaunting

上游 Akaunting 的版权和许可证信息见 LICENSE.txt。

Description
财务系统,需要开分支
Readme 53 MiB
Languages
PHP 76.3%
Blade 19.1%
Vue 3.1%
Shell 0.5%
PowerShell 0.5%
Other 0.4%