174 lines
6.2 KiB
Markdown
174 lines
6.2 KiB
Markdown
# 订单管理模块
|
|
|
|
## 概述
|
|
|
|
订单管理模块负责产品订单、挂号订单的全流程管理,包括创建、支付、发货、退款等。
|
|
|
|
---
|
|
|
|
## 产品订单
|
|
|
|
### 接口
|
|
|
|
| 方法 | 路径 | 说明 |
|
|
|------|------|------|
|
|
| GET | `order/list` | 订单列表 |
|
|
| GET | `order/detail` | 订单详情 |
|
|
| POST | `order/ship` | 发货 |
|
|
| POST | `order/adjust-price` | 改价 |
|
|
| POST | `order/export` | 导出 |
|
|
| POST | `order/refund` | 退款 |
|
|
| POST | `order/simulate-pay` | 模拟支付 |
|
|
|
|
### 关联类
|
|
|
|
| 类 | 文件 | 说明 |
|
|
|----|------|------|
|
|
| `OrderController` | `app/Http/Controllers/admin/business/order/OrderController.php` | 控制器 |
|
|
| `OrderService` | `app/Service/admin/business/order/OrderService.php` | 业务服务 |
|
|
| `OrderTraceService` | `app/Service/admin/business/order/OrderTraceService.php` | 状态追踪 |
|
|
| `OrderSimulatePayService` | `app/Service/admin/business/order/OrderSimulatePayService.php` | 模拟支付 |
|
|
| `DrugStockRollbackService` | `app/Service/admin/business/order/DrugStockRollbackService.php` | 库存回滚 |
|
|
| `ProductOrderExportSchemeService` | `app/Service/admin/business/order/ProductOrderExportSchemeService.php` | 导出方案 |
|
|
|
|
### 关联模型
|
|
|
|
| 模型 | 表名 | 说明 |
|
|
|------|------|------|
|
|
| `ProductOrderModel` | `yii_product_order` | 产品订单 |
|
|
| `ProductOrderItemsModel` | `yii_product_order_items` | 订单明细 |
|
|
| `ProductOrderRefundModel` | `yii_product_order_refund` | 产品退款 |
|
|
| `PaymentProductOrderModel` | `yii_payment_product_order` | 产品支付 |
|
|
| `ProductOrderPriceAdjustLogModel` | `xk_product_order_price_adjust_log` | 改价日志 |
|
|
| `ProductOrderExportSchemeModel` | `xk_product_order_export_scheme` | 导出方案 |
|
|
|
|
### 订单状态
|
|
|
|
| 状态 | 值 | 说明 |
|
|
|------|-----|------|
|
|
| 待支付 | 0 | 订单已创建 |
|
|
| 待发货 | 1 | 已支付,等待发货 |
|
|
| 待收货 | 2 | 已发货,等待收货 |
|
|
| 待评价 | 3 | 已收货,等待评价 |
|
|
| 退款 | 4 | 已退款 |
|
|
| 退款中 | 5 | 退款处理中 |
|
|
| 已收货 | 6 | 已确认收货 |
|
|
| 确认收货 | 7 | 已确认收货 |
|
|
| 拒绝退款 | 8 | 退款被拒绝 |
|
|
| 已取消 | 9 | 订单已取消 |
|
|
|
|
### 订单流程
|
|
|
|
```mermaid
|
|
stateDiagram-v2
|
|
[*] --> 待支付: 创建订单
|
|
待支付 --> 待发货: 支付成功
|
|
待支付 --> 已取消: 超时未支付
|
|
待发货 --> 待收货: 发货
|
|
待收货 --> 已收货: 确认收货
|
|
待收货 --> 已收货: 自动确认
|
|
已收货 --> 已完成: 评价/超时
|
|
待支付 --> 退款中: 申请退款
|
|
退款中 --> 已退款: 退款成功
|
|
退款中 --> 待支付: 退款拒绝
|
|
```
|
|
|
|
### 关联 Job
|
|
|
|
| Job | 文件 | 触发时机 |
|
|
|-----|------|----------|
|
|
| `ProductOrderPaidJob` | `app/Jobs/ProductOrderPaidJob.php` | 支付成功后创建分账 |
|
|
| `ProductOrderRefundJob` | `app/Jobs/ProductOrderRefundJob.php` | 退款后更新分账 |
|
|
| `ProductOrderSendJob` | `app/Jobs/ProductOrderSendJob.php` | 发货后延迟结算 |
|
|
| `ProductOrderSyncPlatformJob` | `app/Jobs/ProductOrderSyncPlatformJob.php` | 同步订单状态 |
|
|
| `AutoConfirmReceiptOrderJob` | `app/Jobs/admin/order/AutoConfirmReceiptOrderJob.php` | 自动确认收货 |
|
|
| `AutomaticallyCancelTheOrderJob` | `app/Jobs/admin/order/AutomaticallyCancelTheOrderJob.php` | 自动取消订单 |
|
|
|
|
---
|
|
|
|
## 挂号管理
|
|
|
|
### 接口
|
|
|
|
| 方法 | 路径 | 说明 |
|
|
|------|------|------|
|
|
| GET | `register/list` | 挂号列表 |
|
|
| GET | `register/detail` | 挂号详情 |
|
|
| POST | `register/refund` | 退款 |
|
|
| POST | `register/accept` | 接诊 |
|
|
|
|
### 关联类
|
|
|
|
| 类 | 文件 | 说明 |
|
|
|----|------|------|
|
|
| `RegisterController` | `app/Http/Controllers/admin/business/registers/RegisterController.php` | 控制器 |
|
|
| `RegisterService` | `app/Service/admin/business/register/RegisterService.php` | 业务服务 |
|
|
| `RegisterRefundService` | `app/Service/admin/business/register/RegisterRefundService.php` | 退款服务 |
|
|
|
|
### 关联模型
|
|
|
|
| 模型 | 表名 | 说明 |
|
|
|------|------|------|
|
|
| `RegisterOrderModel` | `yii_register` | 挂号订单 |
|
|
| `RegisterRefundModel` | `yii_register_refund` | 挂号退款 |
|
|
| `PaymentRegisterModel` | `yii_payment_register` | 挂号支付 |
|
|
|
|
### 关联 Job
|
|
|
|
| Job | 文件 | 触发时机 |
|
|
|-----|------|----------|
|
|
| `RegisterPaidJob` | `app/Jobs/RegisterPaidJob.php` | 支付成功后创建分账 |
|
|
| `RegisterAcceptJob` | `app/Jobs/RegisterAcceptJob.php` | 接诊后结算 |
|
|
| `RegisterSmsJob` | `app/Jobs/RegisterSmsJob.php` | 支付后短信通知医生 |
|
|
|
|
---
|
|
|
|
## 快递管理
|
|
|
|
### 接口
|
|
|
|
| 方法 | 路径 | 说明 |
|
|
|------|------|------|
|
|
| GET | `express-companies/list` | 快递公司列表 |
|
|
| GET | `express-detail/list` | 物流详情列表 |
|
|
| GET | `express-detail/detail` | 物流详情 |
|
|
| POST | `express-detail/detail-by-order` | 按订单查物流 |
|
|
|
|
### 关联类
|
|
|
|
| 类 | 文件 | 说明 |
|
|
|----|------|------|
|
|
| `ExpressCompaniesController` | `app/Http/Controllers/admin/business/express/ExpressCompaniesController.php` | 快递公司控制器 |
|
|
| `ExpressDetailController` | `app/Http/Controllers/admin/business/express/ExpressDetailController.php` | 物流详情控制器 |
|
|
| `ExpressCompaniesService` | `app/Service/admin/business/express/ExpressCompaniesService.php` | 快递公司服务 |
|
|
| `ExpressDetailService` | `app/Service/admin/business/express/ExpressDetailService.php` | 物流详情服务 |
|
|
| `ExpressCommand` | `app/Console/Commands/ExpressCommand.php` | 快递同步命令 |
|
|
|
|
### 关联模型
|
|
|
|
| 模型 | 表名 | 说明 |
|
|
|------|------|------|
|
|
| `ExpressCompaniesModel` | `yii_express_companies` | 快递公司 |
|
|
| `ExpressNosModel` | `yii_express_nos` | 快递单号 |
|
|
| `ExpressDetailModel` | `yii_express_details` | 物流详情 |
|
|
|
|
---
|
|
|
|
## 服务包管理
|
|
|
|
### 接口
|
|
|
|
| 方法 | 路径 | 说明 |
|
|
|------|------|------|
|
|
| GET | `service-pack/list` | 服务包列表 |
|
|
| POST | `service-pack/create` | 创建服务包 |
|
|
| POST | `service-pack/update` | 更新服务包 |
|
|
| POST | `service-pack/delete` | 删除服务包 |
|
|
|
|
### 关联类
|
|
|
|
| 类 | 文件 | 说明 |
|
|
|----|------|------|
|
|
| `ServicePackController` | `app/Http/Controllers/admin/business/product/ServicePackController.php` | 控制器 |
|
|
| `ServicePackService` | `app/Service/admin/business/product/ServicePackService.php` | 业务服务 |
|