# 管理会计OS 企业级管理会计操作系统,基于BSC平衡计分卡框架,提供从战略制定到日常执行的全流程数字化管理。 ## 项目结构 ``` cma-management/ ├── frontend/ # Vue3 + Vite + TypeScript + Element Plus │ └── src/ │ ├── api/ # axios 接口封装 │ ├── layouts/ # 布局组件(左侧栏+顶栏) │ ├── views/ # 页面组件 │ ├── router/ # 路由配置 │ └── permission.ts # 菜单+角色权限配置 ├── backend/ # FastAPI + SQLAlchemy + MySQL │ └── app/ │ ├── api/ # 路由层 │ ├── models/ # 数据模型 │ └── utils/ # 工具函数 ├── docs/ # 需求文档和设计文档 ├── ARCHITECTURE.md # 架构说明 └── CHANGELOG.md # 版本变更记录 ``` ## 分支策略 (Git Flow) ``` main ─── 生产分支,只从 release 合并 develop ─── 开发主分支 feature/* ─── 新功能分支,从 develop 拉出,合并回 develop release/* ─── 发布分支,从 develop 拉出,合并到 main + develop hotfix/* ─── 紧急修复,从 main 拉出,合并到 main + develop ``` ### 分支命名规范 - 功能分支:`feature/模块名-简要描述` 如 `feature/战略回顾会-聚合API` - 发布分支:`release/v版本号` 如 `release/v1.1.0` - 修复分支:`hotfix/简要描述` 如 `hotfix/登录token过期` ## 开发流程 1. 从 develop 拉出 feature 分支 2. 在 feature 分支上开发和测试 3. 提交 PR/MR 合并到 develop(至少1人review) 4. 从 develop 拉出 release 分支做最终测试 5. 发布前更新 CHANGELOG.md 6. 合并到 main + 打 tag 7. 部署后切回 develop ## 版本号规范 遵循语义化版本:`主版本.次版本.修订号` - 主版本:不兼容的API/架构变更 - 次版本:向下兼容的新功能 - 修订号:向下兼容的bug修复 ## 技术栈 | 层 | 技术 | 说明 | |----|------|------| | 前端框架 | Vue 3 + Vite + TypeScript | 组合式API | | UI组件 | Element Plus | 后台管理组件库 | | 后端框架 | FastAPI | Python异步框架 | | ORM | SQLAlchemy 2.0 | 数据库映射 | | 数据库 | MySQL 8.0 | 主数据存储 | | 缓存 | Redis | Token存储+数据缓存 | | 部署 | systemd + Nginx | 反向代理+服务管理 | ## 启动方式 ### 后端 ```bash cd backend pip install -r requirements.txt uvicorn app.main:app --host 127.0.0.1 --port 8010 ``` ### 前端 ```bash cd frontend npm install npm run dev ``` ### 生产部署 ```bash # 后端 systemctl restart cma-backend # 前端 cd frontend && npm run build cp -r dist/* /var/www/cma/ ```