You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

8.1 KiB

我来帮您整理项目情况。让我先查看项目的整体结构。

[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平台,采用前后端分离+多端适配的技术架构,业务逻辑完整,代码组织规范。