|
|
|
|
|
我来帮您整理项目情况。让我先查看项目的整体结构。
|
|
|
|
|
|
|
|
|
|
|
|
[14 tools called]
|
|
|
|
|
|
|
|
|
|
|
|
根据我对项目的分析,现在为您整理项目的详细情况:
|
|
|
|
|
|
|
|
|
|
|
|
## 📊 天天护工管理平台 - 项目情况整理
|
|
|
|
|
|
|
|
|
|
|
|
### 一、技术栈
|
|
|
|
|
|
|
|
|
|
|
|
#### **后端技术**
|
|
|
|
|
|
- **框架**: Laravel 7.x (PHP 7.2.5+)
|
|
|
|
|
|
- **数据库**: MySQL (使用 Eloquent ORM)
|
|
|
|
|
|
- **认证**: JWT (tymon/jwt-auth)
|
|
|
|
|
|
- **权限管理**: Spatie Laravel Permission
|
|
|
|
|
|
- **主要依赖包**:
|
|
|
|
|
|
- `intervention/image` - 图片处理
|
|
|
|
|
|
- `maatwebsite/excel` - Excel导入导出
|
|
|
|
|
|
- `simplesoftwareio/simple-qrcode` - 二维码生成
|
|
|
|
|
|
- `guzzlehttp/guzzle` - HTTP客户端
|
|
|
|
|
|
- `barryvdh/laravel-snappy` - PDF生成
|
|
|
|
|
|
- `zircote/swagger-php` - API文档
|
|
|
|
|
|
|
|
|
|
|
|
#### **前端技术**
|
|
|
|
|
|
- **基础框架**:
|
|
|
|
|
|
- Vue.js 2.x (用于H5移动端和护工端)
|
|
|
|
|
|
- Bootstrap 4.x (用于后台管理界面)
|
|
|
|
|
|
- jQuery (用于数据大屏和部分后台功能)
|
|
|
|
|
|
|
|
|
|
|
|
- **UI组件库**:
|
|
|
|
|
|
- Hyper Admin Template (管理后台主题)
|
|
|
|
|
|
- Layui (部分表单和弹窗)
|
|
|
|
|
|
- Select2 (下拉选择)
|
|
|
|
|
|
- DataTables (数据表格)
|
|
|
|
|
|
- ECharts (数据可视化)
|
|
|
|
|
|
|
|
|
|
|
|
- **前端插件**:
|
|
|
|
|
|
- WebUploader (文件上传)
|
|
|
|
|
|
- UEditor (富文本编辑器)
|
|
|
|
|
|
- jQuery Treetable (树形表格)
|
|
|
|
|
|
- SweetAlert2 (提示框)
|
|
|
|
|
|
- Moment.js (时间处理)
|
|
|
|
|
|
|
|
|
|
|
|
#### **支付集成**
|
|
|
|
|
|
- 支付宝支付 (F2F当面付)
|
|
|
|
|
|
- 微信支付 (小程序支付、扫码支付)
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 二、项目模块结构
|
|
|
|
|
|
|
|
|
|
|
|
#### **1. 后台管理模块 (Admin)**
|
|
|
|
|
|
**位置**: `app/Http/Controllers/Admin/`
|
|
|
|
|
|
|
|
|
|
|
|
主要功能控制器:
|
|
|
|
|
|
- `AdminController` - 管理员管理
|
|
|
|
|
|
- `RoleController` - 角色管理
|
|
|
|
|
|
- `PermissionController` - 权限管理
|
|
|
|
|
|
- `ProjectController` - 项目/医院管理
|
|
|
|
|
|
- `ProductController` - 产品/服务管理
|
|
|
|
|
|
- `OrdersController` - 订单管理
|
|
|
|
|
|
- `ParamedicController` - 护工管理
|
|
|
|
|
|
- `ManagerController` - 项目经理管理
|
|
|
|
|
|
- `TrainingController` - 培训管理
|
|
|
|
|
|
- `StatisticsController` - 数据统计
|
|
|
|
|
|
- `AdverseController` - 不良事件管理
|
|
|
|
|
|
- `FactorController` - 因素管理
|
|
|
|
|
|
- `WechatpayAccountController` - 微信支付账户管理
|
|
|
|
|
|
|
|
|
|
|
|
**前端页面**: `public/hyper/` - 使用Hyper管理后台模板
|
|
|
|
|
|
|
|
|
|
|
|
#### **2. 客户端模块 (Customer)**
|
|
|
|
|
|
**位置**: `app/Http/Controllers/Customer/`
|
|
|
|
|
|
|
|
|
|
|
|
主要功能:
|
|
|
|
|
|
- `AuthController` - 客户认证
|
|
|
|
|
|
- `OrdersController` - 订单下单、查询
|
|
|
|
|
|
- `PayCallbackController` - 支付回调处理
|
|
|
|
|
|
- `CommonController` - 通用功能(上传、获取配置等)
|
|
|
|
|
|
- `PublicController` - 公共数据接口
|
|
|
|
|
|
|
|
|
|
|
|
**前端页面**: `public/h5/` - UniApp编译的H5应用
|
|
|
|
|
|
|
|
|
|
|
|
#### **3. 护工端模块 (Worker)**
|
|
|
|
|
|
**位置**: `app/Http/Controllers/Worker/`
|
|
|
|
|
|
|
|
|
|
|
|
主要功能:
|
|
|
|
|
|
- `AuthController` - 护工认证登录
|
|
|
|
|
|
- `OrdersController` - 接单、订单管理
|
|
|
|
|
|
- `CommonController` - 通用功能
|
|
|
|
|
|
|
|
|
|
|
|
**前端页面**: `public/carer/` - Vue.js单页应用
|
|
|
|
|
|
|
|
|
|
|
|
#### **4. 项目经理端模块 (Manager)**
|
|
|
|
|
|
**位置**: `app/Http/Controllers/Manager/`
|
|
|
|
|
|
|
|
|
|
|
|
主要功能:
|
|
|
|
|
|
- `AuthController` - 经理认证
|
|
|
|
|
|
- `OrdersController` - 订单分配、管理
|
|
|
|
|
|
- `ParamedicController` - 护工管理
|
|
|
|
|
|
- `StatisticsController` - 数据统计
|
|
|
|
|
|
- `TrainingController` - 培训管理
|
|
|
|
|
|
- `CommonController` - 通用功能
|
|
|
|
|
|
|
|
|
|
|
|
#### **5. 数据大屏模块**
|
|
|
|
|
|
**位置**: `public/dashboard/`
|
|
|
|
|
|
|
|
|
|
|
|
功能:
|
|
|
|
|
|
- 实时数据展示驾驶舱
|
|
|
|
|
|
- ECharts数据可视化
|
|
|
|
|
|
- 护工陪护概况统计
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 三、核心业务模型
|
|
|
|
|
|
|
|
|
|
|
|
**主要数据表** (位于 `app/Models/`):
|
|
|
|
|
|
|
|
|
|
|
|
| 模型 | 说明 |
|
|
|
|
|
|
|------|------|
|
|
|
|
|
|
| `Orders` | 订单主表 |
|
|
|
|
|
|
| `OrderItems` | 订单明细 |
|
|
|
|
|
|
| `Paramedic` | 护工信息 |
|
|
|
|
|
|
| `ParamedicLevel` | 护工等级 |
|
|
|
|
|
|
| `Patient` | 患者信息 |
|
|
|
|
|
|
| `Product` | 产品/服务 |
|
|
|
|
|
|
| `ProductItems` | 产品项目 |
|
|
|
|
|
|
| `Project` | 项目/医院 |
|
|
|
|
|
|
| `Building` | 楼栋 |
|
|
|
|
|
|
| `Room` | 病房 |
|
|
|
|
|
|
| `Bed` | 床位 |
|
|
|
|
|
|
| `Training` | 培训记录 |
|
|
|
|
|
|
| `TrainingType` | 培训类型 |
|
|
|
|
|
|
| `Balance` | 余额账户 |
|
|
|
|
|
|
| `Recharge` | 充值记录 |
|
|
|
|
|
|
| `Refund` | 退款记录 |
|
|
|
|
|
|
| `Adverse` | 不良事件 |
|
|
|
|
|
|
| `Factor` | 因素评估 |
|
|
|
|
|
|
| `Approval` | 审批流程 |
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 四、开发风格特点
|
|
|
|
|
|
|
|
|
|
|
|
#### **1. 架构风格**
|
|
|
|
|
|
- **分层架构**: MVC模式,控制器、模型、视图分离
|
|
|
|
|
|
- **多端分离**: Admin、Customer、Worker、Manager各端独立控制器
|
|
|
|
|
|
- **RESTful API**: 移动端采用API接口方式
|
|
|
|
|
|
- **事件驱动**: 使用Laravel Events和Listeners处理业务逻辑
|
|
|
|
|
|
- `OrderAssigned` - 订单分配事件
|
|
|
|
|
|
- `ProductSaved` - 产品保存事件
|
|
|
|
|
|
- `RechargeSucceed` - 充值成功事件
|
|
|
|
|
|
|
|
|
|
|
|
#### **2. 代码组织**
|
|
|
|
|
|
- **表单构建器**: 使用 `kris/laravel-form-builder` 统一表单管理
|
|
|
|
|
|
- **动态CURD**: `CommonModel::generateCurdRouter()` 生成通用增删改查路由
|
|
|
|
|
|
- **导出功能**: 使用 `Exports/` 目录组织Excel导出类
|
|
|
|
|
|
- **自定义类库**: `app/Libs/` 存放支付SDK等第三方封装
|
|
|
|
|
|
|
|
|
|
|
|
#### **3. 前端风格**
|
|
|
|
|
|
- **多页面应用**: 后台管理采用传统多页面方式
|
|
|
|
|
|
- **单页应用**: 护工端、客户H5端采用Vue单页应用
|
|
|
|
|
|
- **响应式设计**: 使用Bootstrap实现响应式布局
|
|
|
|
|
|
- **组件化**: 公共CSS样式统一管理(`public/css/common.css`)
|
|
|
|
|
|
|
|
|
|
|
|
#### **4. 数据库设计**
|
|
|
|
|
|
- **软删除**: 使用`SoftDeletesModel`基类实现软删除
|
|
|
|
|
|
- **审计日志**: 集成`owen-it/laravel-auditing`记录操作日志
|
|
|
|
|
|
- **多租户**: 通过`AdminProjectScope`实现项目级数据隔离
|
|
|
|
|
|
- **关联查询**: Eloquent ORM实现模型关联
|
|
|
|
|
|
|
|
|
|
|
|
#### **5. 权限控制**
|
|
|
|
|
|
- **RBAC**: 基于角色的访问控制
|
|
|
|
|
|
- **中间件**: `authorize:admin` 身份验证,`rbac:admin` 权限验证
|
|
|
|
|
|
- **多角色**: Admin、Manager、Worker、Customer四种角色体系
|
|
|
|
|
|
|
|
|
|
|
|
#### **6. 接口规范**
|
|
|
|
|
|
- **Swagger文档**: 集成API文档系统
|
|
|
|
|
|
- **JWT认证**: Token方式的API认证
|
|
|
|
|
|
- **统一响应**: 使用helpers辅助函数统一返回格式
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 五、项目目录结构
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
tiantian2/
|
|
|
|
|
|
├── app/ # 应用核心代码
|
|
|
|
|
|
│ ├── Actions/ # 业务动作类
|
|
|
|
|
|
│ ├── Console/ # 命令行任务
|
|
|
|
|
|
│ ├── Events/ # 事件定义
|
|
|
|
|
|
│ ├── Exports/ # 导出类
|
|
|
|
|
|
│ ├── Forms/ # 表单构建器
|
|
|
|
|
|
│ ├── Http/
|
|
|
|
|
|
│ │ ├── Controllers/ # 控制器(Admin/Customer/Manager/Worker)
|
|
|
|
|
|
│ │ └── Middleware/ # 中间件
|
|
|
|
|
|
│ ├── Libs/ # 第三方类库封装
|
|
|
|
|
|
│ ├── Listeners/ # 事件监听器
|
|
|
|
|
|
│ ├── Models/ # 数据模型
|
|
|
|
|
|
│ └── Notifications/ # 通知类
|
|
|
|
|
|
├── public/ # 公共资源目录
|
|
|
|
|
|
│ ├── h5/ # 客户端H5应用(UniApp)
|
|
|
|
|
|
│ ├── carer/ # 护工端应用(Vue)
|
|
|
|
|
|
│ ├── dashboard/ # 数据大屏
|
|
|
|
|
|
│ ├── hyper/ # 管理后台模板
|
|
|
|
|
|
│ ├── plugins/ # 前端插件库
|
|
|
|
|
|
│ └── css/js/ # 公共样式和脚本
|
|
|
|
|
|
├── database/
|
|
|
|
|
|
│ ├── migrations/ # 数据库迁移(108个文件)
|
|
|
|
|
|
│ └── seeds/ # 数据填充
|
|
|
|
|
|
├── routes/
|
|
|
|
|
|
│ ├── web.php # Web路由
|
|
|
|
|
|
│ └── api.php # API路由
|
|
|
|
|
|
└── config/ # 配置文件
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 六、开发特色
|
|
|
|
|
|
|
|
|
|
|
|
1. **多端适配**: 一套后端服务四个前端应用(管理后台、H5客户端、护工端、项目经理端)
|
|
|
|
|
|
2. **插件化设计**: 前端插件独立管理,便于维护和升级
|
|
|
|
|
|
3. **模板复用**: 使用成熟的Hyper管理后台模板
|
|
|
|
|
|
4. **移动优先**: H5和护工端使用Vue/UniApp实现原生体验
|
|
|
|
|
|
5. **数据驱动**: 数据大屏实时展示业务数据
|
|
|
|
|
|
6. **完整业务流程**: 从订单创建、护工分配、服务执行到结算的完整闭环
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 七、技术亮点
|
|
|
|
|
|
|
|
|
|
|
|
✅ **RBAC权限系统** - 细粒度权限控制
|
|
|
|
|
|
✅ **多支付方式** - 支付宝+微信支付集成
|
|
|
|
|
|
✅ **事件驱动架构** - 解耦业务逻辑
|
|
|
|
|
|
✅ **Excel导入导出** - 数据批量处理
|
|
|
|
|
|
✅ **二维码生成** - 护工工牌、订单扫码
|
|
|
|
|
|
✅ **图片处理** - 头像裁剪、缩略图生成
|
|
|
|
|
|
✅ **API文档** - Swagger自动生成
|
|
|
|
|
|
✅ **审计日志** - 操作记录可追溯
|
|
|
|
|
|
✅ **软删除** - 数据安全保护
|
|
|
|
|
|
✅ **多租户隔离** - 项目级数据隔离
|
|
|
|
|
|
|
|
|
|
|
|
这是一个**成熟的护工管理SaaS平台**,采用**前后端分离+多端适配**的技术架构,业务逻辑完整,代码组织规范。
|