Appearance
概述
EBAOZU 系统基于 ThinkPHP 8.0 + Swoole 4 后端框架与 Vue 2.x 前端生态构建,采用前后端分离架构。本文档汇总系统根目录及核心子目录的组织结构与职责划分。
根目录总览
ebaozu_v4/
├── app/ # 后端应用程序核心目录(控制器、服务、DAO、模型等)
├── config/ # 系统配置文件目录
├── crmeb/ # 共享底层依赖库与服务
├── public/ # Web 运行根目录与编译产物
│ ├── index.php # Web 入口文件
│ └── uploads/ # 本地静态上传文件存储目录
├── route/ # 显式路由定义文件(按端划分)
├── view/ # 前端子系统源码目录
│ ├── admin/ # 总后台管理前端 (Vue 2 + View UI)
│ ├── store/ # 门店后台前端 (Vue 2 + View UI)
│ ├── cashier/ # 收银台前端 (Vue 2)
│ ├── supplier/ # 供应商后台前端 (Vue 2)
│ └── uniapp/ # 移动端用户端 (Vue 2 + Uni-app)
├── composer.json # 后端 PHP 依赖定义
├── think # ThinkPHP 命令行入口脚本
└── .env # 本地环境配置文件后端应用目录 (app/)
app/
├── controller/ # 控制器层(按 admin / api / store / cashier / supplier 划分)
├── services/ # 业务逻辑层(严格业务编排、事务处理)
├── dao/ # 数据访问层(DAO,封装 SQL 查询与条件构造)
├── model/ # ORM 数据模型层
├── jobs/ # 异步队列任务处理类
├── listener/ # 系统事件监听器
├── validate/ # 请求参数验证器
├── webscoket/ # WebSocket 处理器与房间管理
├── Request.php # 自定义 Request 类(注入用户/管理员鉴权上下文)
├── ExceptionHandle.php # 全局异常捕获与格式化输出
├── event.php # 事件与监听器注册文件
└── helpers_open.php # 全局明文公共辅助函数库路由目录 (route/)
由于系统禁用了路由注解,所有端接口均显式在 route/ 下定义:
| 路由文件 | 接口 URL 前缀 | 对应功能 |
|---|---|---|
admin.php | /adminapi/* | 总后台管理 API |
api.php | /api/* | 移动端用户 API |
store.php | /storeapi/* | 门店管理端 API |
supplier.php | /supplierapi/* | 供应商端 API |
cashier.php | /cashierapi/* | 收银台端 API |
前端子系统目录 (view/)
| 子系统 | 路径 | 适用端 | 详细指南 |
|---|---|---|---|
| 总管理后台 | view/admin/ | 平台超级管理员/运营人员 | view/admin/AGENTS.md |
| 门店后台 | view/store/ | 连锁门店店长/店员 | view/store/AGENTS.md |
| 移动端 | view/uniapp/ | 微信小程序、H5、APP | view/uniapp/AGENTS.md |
| 供应商端 | view/supplier/ | 入驻供应商 | view/supplier/AGENTS.md |
| 收银台端 | view/cashier/ | 线下门店收银 POS | view/cashier/AGENTS.md |
开发与分层规范
- 严格分层:调用链必须严格遵循
Controller → Services → DAO → Model,严禁在控制器中直接绕过 Service 调用 Model。 - 多端隔离:不同业务端拥有专属控制器和路由前缀,权限通过各自专属中间件严格隔离。
- 明文运行:遵循明文基类与明文助手函数规范,确保二次开发可维护性。