初始化
This commit is contained in:
62
docs/projects/xk-api/modules/chat.md
Normal file
62
docs/projects/xk-api/modules/chat.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# 聊天通讯模块
|
||||
|
||||
## 概述
|
||||
|
||||
聊天通讯模块负责好友管理和即时通讯功能。
|
||||
|
||||
---
|
||||
|
||||
## 好友管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `chat-friends/list` | 好友列表 |
|
||||
| POST | `chat-friends/add` | 添加好友 |
|
||||
| POST | `chat-friends/delete` | 删除好友 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ChatFriendsController` | `app/Http/Controllers/admin/chat/ChatFriendsController.php` | 控制器 |
|
||||
| `ChatFriendsService` | `app/Service/admin/chat/ChatFriendsService.php` | 业务服务 |
|
||||
|
||||
---
|
||||
|
||||
## 即时通讯
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `WebSocketApiClient` | `app/Service/common/http/WebSocketApiClient.php` | WebSocket 客户端 |
|
||||
| `ReadMessagesJob` | `app/Jobs/chat/ReadMessagesJob.php` | 消息已读 Job |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ChatMessageModel` | `xk_chat_messages` | 聊天消息 |
|
||||
| `ChatRoomModel` | `xk_chat_room` | 聊天房间 |
|
||||
|
||||
### 消息类型
|
||||
|
||||
| 类型 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 文字 | 0 | 文本消息 |
|
||||
| 图片 | 1 | 图片消息 |
|
||||
| 语音 | 2 | 语音消息 |
|
||||
| 视频 | 3 | 视频消息 |
|
||||
| 处方 | 4 | 处方消息 |
|
||||
| 病历 | 5 | 病历文件 |
|
||||
| 视频通话 | 6 | 视频通话 |
|
||||
| 语音通话 | 7 | 语音通话 |
|
||||
| 文件 | 8 | 文件消息 |
|
||||
| 系统 | 9 | 系统消息 |
|
||||
| 挂号 | 10 | 挂号消息 |
|
||||
| 患者体验 | 11 | 患者体验 |
|
||||
| 产品卡片 | 12 | 产品卡片 |
|
||||
| 结束问诊 | 13 | 结束问诊 |
|
||||
| 转诊处方 | 14 | 转诊处方 |
|
||||
213
docs/projects/xk-api/modules/doctor.md
Normal file
213
docs/projects/xk-api/modules/doctor.md
Normal file
@@ -0,0 +1,213 @@
|
||||
# 医生管理模块
|
||||
|
||||
## 概述
|
||||
|
||||
医生管理模块负责医生、药师的信息管理、接诊、在线问诊、患者管理等。
|
||||
|
||||
---
|
||||
|
||||
## 医生管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `doctor/list` | 医生列表 |
|
||||
| GET | `doctor/detail` | 医生详情 |
|
||||
| POST | `doctor/update` | 更新医生信息 |
|
||||
| GET | `doctor/option` | 医生选项 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `DoctorController` | `app/Http/Controllers/admin/business/doctor/DoctorController.php` | 控制器 |
|
||||
| `DoctorService` | `app/Service/admin/business/doctor/DoctorService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DoctorInfoModel` | `yii_doctor_info` | 医生信息 |
|
||||
| `DoctorServiceModel` | `yii_doctor_service` | 医生服务设置 |
|
||||
| `DoctorStoreModel` | `yii_store_doctor` | 门店-医生关联 |
|
||||
| `DoctorIdentityModel` | `yii_doctor_identity` | 身份验证 |
|
||||
| `DoctorPracticingModel` | `yii_doctor_practicing` | 执业证书 |
|
||||
| `DoctorTitleModel` | `yii_doctor_title` | 职称 |
|
||||
| `DoctorRegisterModel` | `yii_doctor_register` | 挂号设置 |
|
||||
| `DoctorRosteringModel` | `yii_doctor_rostering` | 排班 |
|
||||
| `DoctorNoticeModel` | `yii_doctor_notice` | 停诊通知 |
|
||||
|
||||
---
|
||||
|
||||
## 药师管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `pharmacist/list` | 药师列表 |
|
||||
| GET | `pharmacist/detail` | 药师详情 |
|
||||
| POST | `pharmacist/update` | 更新药师信息 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `PharmacistController` | `app/Http/Controllers/admin/business/doctor/PharmacistController.php` | 控制器 |
|
||||
| `PharmacistService` | `app/Service/admin/business/doctor/PharmacistService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `PharmacistInfoModel` | `yii_pharmacist_info` | 药师信息 |
|
||||
| `PharmacistIdentityModel` | `yii_pharmacist_identity` | 身份验证 |
|
||||
| `PharmacistPracticingModel` | `yii_pharmacist_practicing` | 执业证书 |
|
||||
|
||||
---
|
||||
|
||||
## 医生接诊
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `doctor-reception/list` | 接诊列表 |
|
||||
| GET | `doctor-reception/detail` | 接诊详情 |
|
||||
| POST | `doctor-reception/accept` | 接诊 |
|
||||
| POST | `doctor-reception/refuse` | 拒绝 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `DoctorReceptionController` | `app/Http/Controllers/admin/business/doctor/DoctorReceptionController.php` | 控制器 |
|
||||
| `DoctorReceptionService` | `app/Service/admin/business/doctor/DoctorReceptionService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `OrderModel` | `yii_order` | 咨询订单 |
|
||||
|
||||
---
|
||||
|
||||
## 在线问诊
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `online-consultation/list` | 问诊列表 |
|
||||
| POST | `online-consultation/config` | 问诊配置 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `OnlineConsultationController` | `app/Http/Controllers/admin/business/doctor/OnlineConsultationController.php` | 控制器 |
|
||||
| `OnlineConsultationService` | `app/Service/admin/business/doctor/OnlineConsultationService.php` | 业务服务 |
|
||||
| `OnlineConsultationClinicController` | `app/Http/Controllers/admin/business/doctor/OnlineConsultationClinicController.php` | 门店问诊控制器 |
|
||||
| `OnlineConsultationClinicService` | `app/Service/admin/business/doctor/OnlineConsultationClinicService.php` | 门店问诊服务 |
|
||||
|
||||
---
|
||||
|
||||
## 患者管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `patient-management/list` | 患者列表 |
|
||||
| GET | `patient-management/detail` | 患者详情 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `PatientManagementController` | `app/Http/Controllers/admin/business/doctor/PatientManagementController.php` | 控制器 |
|
||||
| `PatientManagementService` | `app/Service/admin/business/doctor/PatientManagementService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DoctorPatientModel` | `yii_doctor_patient` | 医生患者列表 |
|
||||
| `DoctorPatientRemarkModel` | `yii_doctor_patient_remark` | 患者备注 |
|
||||
| `PatientVisitRecordModel` | `yii_patient_visit_record` | 就诊记录 |
|
||||
| `UserPatientCaseModel` | `yii_user_patient_case` | 患者病历 |
|
||||
|
||||
---
|
||||
|
||||
## 医生文章
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `doctor-article/list` | 文章列表 |
|
||||
| GET | `doctor-article/detail` | 文章详情 |
|
||||
| POST | `doctor-article/create` | 创建文章 |
|
||||
| POST | `doctor-article/update` | 更新文章 |
|
||||
| POST | `doctor-article/delete` | 删除文章 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `DoctorArticleController` | `app/Http/Controllers/admin/business/doctor/DoctorArticleController.php` | 控制器 |
|
||||
| `DoctorArticleService` | `app/Service/admin/business/doctor/DoctorArticleService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DoctorArticleModel` | `yii_doctor_article` | 医生文章 |
|
||||
|
||||
---
|
||||
|
||||
## 文章分类
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `article-categories/list` | 分类列表 |
|
||||
| POST | `article-categories/create` | 创建分类 |
|
||||
| POST | `article-categories/update` | 更新分类 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ArticleCategoriesController` | `app/Http/Controllers/admin/business/doctor/ArticleCategoriesController.php` | 控制器 |
|
||||
| `ArticleCategoriesService` | `app/Service/admin/business/doctor/ArticleCategoriesService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ArticleCategoriesModel` | `yii_categories` | 文章分类 |
|
||||
|
||||
---
|
||||
|
||||
## 医生改价
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| POST | `doctor-reception/adjust-price` | 医生改价 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `OrderPriceAdjustService` | `app/Service/admin/business/doctor/OrderPriceAdjustService.php` | 改价服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ProductOrderPriceAdjustLogModel` | `xk_product_order_price_adjust_log` | 改价日志 |
|
||||
217
docs/projects/xk-api/modules/drug.md
Normal file
217
docs/projects/xk-api/modules/drug.md
Normal file
@@ -0,0 +1,217 @@
|
||||
# 药品管理模块
|
||||
|
||||
## 概述
|
||||
|
||||
药品管理模块负责药品目录、分类、定价、仓库管理、价格同步等。
|
||||
|
||||
---
|
||||
|
||||
## 西药/中成药
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `western-medicine/list` | 药品列表 |
|
||||
| GET | `western-medicine/detail` | 药品详情 |
|
||||
| POST | `western-medicine/create` | 创建药品 |
|
||||
| POST | `western-medicine/update` | 更新药品 |
|
||||
| POST | `western-medicine/status` | 上下架 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `WesternMedicineController` | `app/Http/Controllers/admin/business/product/WesternMedicineController.php` | 控制器 |
|
||||
| `WesternMedicineService` | `app/Service/admin/business/product/WesternMedicineService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DrugModel` | `yii_drug` | 药品主表 |
|
||||
| `DrugStoreRelationsModel` | `yii_drug_store_relations` | 药品-门店定价 |
|
||||
|
||||
---
|
||||
|
||||
## 中药
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `china-medicine/list` | 中药列表 |
|
||||
| GET | `china-medicine/detail` | 中药详情 |
|
||||
| POST | `china-medicine/create` | 创建中药 |
|
||||
| POST | `china-medicine/update` | 更新中药 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ChinaMedicineController` | `app/Http/Controllers/admin/business/product/ChinaMedicineController.php` | 控制器 |
|
||||
| `ChinaMedicineService` | `app/Service/admin/business/product/ChinaMedicineService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DrugModel` | `yii_drug` | 药品主表 |
|
||||
| `DrugNatureModel` | `yii_drug_nature` | 药品配伍(十八反十九畏) |
|
||||
|
||||
### 中药配伍禁忌
|
||||
|
||||
| 类型 | 常量 | 说明 |
|
||||
|------|------|------|
|
||||
| 十八反 | `OPPOSITION` | 相反药物不能同用 |
|
||||
| 十九畏 | `CONFLICT` | 相畏药物需谨慎 |
|
||||
| 有毒药材 | `POISONOUS` | 有毒性药材 |
|
||||
|
||||
---
|
||||
|
||||
## 保健食品
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `health-food/list` | 保健食品列表 |
|
||||
| POST | `health-food/create` | 创建 |
|
||||
| POST | `health-food/update` | 更新 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `HealthFoodController` | `app/Http/Controllers/admin/business/product/HealthFoodController.php` | 控制器 |
|
||||
| `HealthFoodService` | `app/Service/admin/business/product/HealthFoodService.php` | 业务服务 |
|
||||
|
||||
---
|
||||
|
||||
## 非药品/医疗器械
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `non-drug/list` | 非药品列表 |
|
||||
| POST | `non-drug/create` | 创建 |
|
||||
| GET | `medical-device/list` | 医疗器械列表 |
|
||||
| POST | `medical-device/create` | 创建 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `NonDrugController` | `app/Http/Controllers/admin/business/product/NonDrugController.php` | 非药品控制器 |
|
||||
| `MedicalDeviceController` | `app/Http/Controllers/admin/business/product/MedicalDeviceController.php` | 医疗器械控制器 |
|
||||
| `NonDrugService` | `app/Service/admin/business/product/NonDrugService.php` | 非药品服务 |
|
||||
| `MedicalDeviceService` | `app/Service/admin/business/product/MedicalDeviceService.php` | 医疗器械服务 |
|
||||
|
||||
---
|
||||
|
||||
## 药品分类
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `drug-categories/list` | 分类列表 |
|
||||
| POST | `drug-categories/create` | 创建分类 |
|
||||
| POST | `drug-categories/update` | 更新分类 |
|
||||
| POST | `drug-categories/delete` | 删除分类 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `DrugCategoriesController` | `app/Http/Controllers/admin/business/product/DrugCategoriesController.php` | 控制器 |
|
||||
| `DrugCategoriesService` | `app/Service/admin/business/product/DrugCategoriesService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DrugCategoriesModel` | `yii_drug_categories` | 药品分类 |
|
||||
|
||||
---
|
||||
|
||||
## 仓库管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `warehouse-drug-management/list` | 仓库药品列表 |
|
||||
| POST | `warehouse-drug-management/update-price` | 更新价格 |
|
||||
| POST | `warehouse-drug-management/update-status` | 更新状态 |
|
||||
| GET | `warehouse-drug-management-store/list` | 门店药品列表 |
|
||||
| POST | `warehouse-drug-management-store/sync` | 同步到门店 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `WarehouseDrugManagementController` | `app/Http/Controllers/admin/business/warehouseDrugManagement/WarehouseDrugManagementController.php` | 仓库控制器 |
|
||||
| `WarehouseDrugManagementStoreController` | `app/Http/Controllers/admin/business/warehouseDrugManagement/WarehouseDrugManagementStoreController.php` | 门店控制器 |
|
||||
| `WarehouseDrugManagementService` | `app/Service/admin/business/warehouseDrugManagement/WarehouseDrugManagementService.php` | 仓库服务 |
|
||||
| `WarehouseDrugManagementStoreService` | `app/Service/admin/business/warehouseDrugManagement/WarehouseDrugManagementStoreService.php` | 门店服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DrugStoreModel` | `yii_drugstore` | 药品仓库 |
|
||||
| `DrugStoreDrugModel` | `yii_drugstore_drug` | 仓库药品 |
|
||||
| `DrugStoreRelationsModel` | `yii_drug_store_relations` | 药品-门店定价 |
|
||||
|
||||
### 价格同步流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant WH as 仓库
|
||||
participant API as xk-api
|
||||
participant STORE as 门店
|
||||
|
||||
WH->>API: 价格变更
|
||||
API->>API: BatchSyncDrugPriceJob
|
||||
API->>STORE: 同步采购价(warehouse * z_buy_percent)
|
||||
API->>STORE: 同步销售价(warehouse * z_sale_percent)
|
||||
STORE->>STORE: 更新 yii_drug_store_relations
|
||||
```
|
||||
|
||||
### 关联 Job
|
||||
|
||||
| Job | 文件 | 说明 |
|
||||
|-----|------|------|
|
||||
| `BatchSyncDrugPriceJob` | `app/Jobs/admin/store/BatchSyncDrugPriceJob.php` | 批量同步价格 |
|
||||
| `SyncDrugPriceBySubscribeJob` | `app/Jobs/admin/store/SyncDrugPriceBySubscribeJob.php` | 订阅同步 |
|
||||
| `SyncSingleDrugPriceBySubscribeJob` | `app/Jobs/admin/store/SyncSingleDrugPriceBySubscribeJob.php` | 单品同步 |
|
||||
| `UpdateStoreChinesePriceByRatioJob` | `app/Jobs/admin/products/UpdateStoreChinesePriceByRatioJob.php` | 按比例更新中药价格 |
|
||||
| `UpdateStoreChineseSalePriceJob` | `app/Jobs/admin/products/UpdateStoreChineseSalePriceJob.php` | 更新中药销售价百分比 |
|
||||
|
||||
---
|
||||
|
||||
## 加工费管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `process/list` | 加工费列表 |
|
||||
| POST | `process/create` | 创建加工费 |
|
||||
| POST | `process/update` | 更新加工费 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ProsessController` | `app/Http/Controllers/admin/system/ProsessController.php` | 控制器 |
|
||||
| `ProcessService` | `app/Service/admin/system/ProcessService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ProcessRuleModel` | `yii_process_rule` | 加工规则 |
|
||||
| `ProcessRuleNoteModel` | `yii_process_rule_note` | 加工规则说明 |
|
||||
219
docs/projects/xk-api/modules/finance.md
Normal file
219
docs/projects/xk-api/modules/finance.md
Normal file
@@ -0,0 +1,219 @@
|
||||
# 财务结算模块
|
||||
|
||||
## 概述
|
||||
|
||||
财务结算模块负责分账、提现、对账、资金流水、月结等财务管理功能。
|
||||
|
||||
---
|
||||
|
||||
## 分账结算
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `settlement/list` | 结算列表 |
|
||||
| GET | `settlement/detail` | 结算详情 |
|
||||
| POST | `settlement/settle` | 执行结算 |
|
||||
| GET | `settlement/export` | 导出结算单 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SettlementController` | `app/Http/Controllers/admin/finance/SettlementController.php` | 控制器 |
|
||||
| `SettlementService` | `app/Service/admin/finance/SettlementService.php` | 业务服务 |
|
||||
| `LedgerService` | `app/Service/finance/LedgerService.php` | 分账服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `LedgerModel` | `yii_ledger` | 分账记录 |
|
||||
| `LedgerLogModel` | `yii_ledger_log` | 分账变更日志 |
|
||||
| `AccountAbleChangeLogModel` | `xk_account_able_change_log` | 可提现金额变更 |
|
||||
|
||||
### 分账规则
|
||||
|
||||
| 费用类型 | 值 | 说明 |
|
||||
|----------|-----|------|
|
||||
| 药品费用 | 1 | 产品订单药品费用 |
|
||||
| 挂号费用 | 2 | 挂号订单费用 |
|
||||
| 快递费用 | 3 | 快递费用 |
|
||||
| 处方费 | 4 | 处方费用 |
|
||||
| 加工费 | 5 | 代煎/加工费用 |
|
||||
| 诊疗费 | 6 | 诊疗费用 |
|
||||
|
||||
### 分账流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant P as 支付回调
|
||||
participant J as ProductOrderPaidJob
|
||||
participant L as LedgerService
|
||||
participant DB as 数据库
|
||||
|
||||
P->>J: 支付成功
|
||||
J->>L: createLedger(order)
|
||||
L->>L: calculateSplit(order)
|
||||
L->>DB: INSERT INTO yii_ledger (门店)
|
||||
L->>DB: INSERT INTO yii_ledger (平台)
|
||||
L->>DB: INSERT INTO xk_account_able_change_log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 提现管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `withdrawal-application/list` | 提现申请列表 |
|
||||
| GET | `withdrawal-application/detail` | 申请详情 |
|
||||
| POST | `withdrawal-application/audit` | 审核申请 |
|
||||
| POST | `withdrawal-application/pay` | 打款 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `WithdrawalApplicationController` | `app/Http/Controllers/admin/finance/WithdrawalApplicationController.php` | 控制器 |
|
||||
| `WithdrawalApplicationService` | `app/Service/admin/finance/WithdrawalApplicationService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `CashApplyModel` | `yii_cash_apply` | 提现申请 |
|
||||
| `CashAccountModel` | `yii_cash_account` | 提现账户 |
|
||||
|
||||
### 提现审核流程
|
||||
|
||||
```mermaid
|
||||
stateDiagram-v2
|
||||
[*] --> 审核中: 提交申请
|
||||
审核中 --> 已通过: 审核通过
|
||||
审核中 --> 已拒绝: 审核拒绝
|
||||
已通过 --> 打款中: 发起打款
|
||||
打款中 --> 已打款: 打款成功
|
||||
打款中 --> 打款失败: 打款失败
|
||||
已拒绝 --> 审核中: 重新申请
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 对账管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `reconciliation/list` | 对账列表 |
|
||||
| GET | `reconciliation/detail` | 对账详情 |
|
||||
| GET | `reconciliation/export` | 导出对账单 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ReconciliationController` | `app/Http/Controllers/admin/finance/ReconciliationController.php` | 控制器 |
|
||||
| `ReconciliationService` | `app/Service/admin/finance/ReconciliationService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ReconciliationModel` | `yii_reconciliation` | 对账记录 |
|
||||
|
||||
---
|
||||
|
||||
## 资金流水
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `fund-water/list` | 流水列表 |
|
||||
| GET | `fund-water/detail` | 流水详情 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `FundWaterController` | `app/Http/Controllers/admin/finance/FundWaterController.php` | 控制器 |
|
||||
| `FundWaterService` | `app/Service/admin/finance/FundWaterService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `FundWaterModel` | `yii_fund_water` | 资金流水 |
|
||||
|
||||
---
|
||||
|
||||
## 月结管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `monthly-payment/list` | 月结列表 |
|
||||
| GET | `monthly-payment/detail` | 月结详情 |
|
||||
| POST | `monthly-payment/settle` | 结算 |
|
||||
| POST | `monthly-payment/cancel` | 取消 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `MonthlyPaymentController` | `app/Http/Controllers/admin/finance/MonthlyPaymentController.php` | 控制器 |
|
||||
| `MonthlyPaymentService` | `app/Service/admin/finance/MonthlyPaymentService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `MonthlyPaymentModel` | `xk_monthly_payment` | 月结账单 |
|
||||
| `MonthlyPaymentSettlementModel` | `xk_monthly_payment_settlement` | 月结结算记录 |
|
||||
|
||||
---
|
||||
|
||||
## 代理付款
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `charge-cash-pay-record/list` | 付款记录列表 |
|
||||
| POST | `charge-cash-pay-record/create` | 创建付款记录 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ChargeCashPayRecordController` | `app/Http/Controllers/admin/finance/ChargeCashPayRecordController.php` | 控制器 |
|
||||
| `ChargeCashPayRecordService` | `app/Service/admin/finance/ChargeCashPayRecordService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ChargeCashPayRecordModel` | `yii_charge_cash_pay_record` | 代理付款记录 |
|
||||
|
||||
---
|
||||
|
||||
## 财务可视化
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `visualization-chart/data` | 图表数据 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `VisualizationChartController` | `app/Http/Controllers/admin/finance/VisualizationChartController.php` | 控制器 |
|
||||
| `VisualizationChartService` | `app/Service/admin/finance/VisualizationChartService.php` | 业务服务 |
|
||||
180
docs/projects/xk-api/modules/hy-supervise.md
Normal file
180
docs/projects/xk-api/modules/hy-supervise.md
Normal file
@@ -0,0 +1,180 @@
|
||||
# 监管上报模块
|
||||
|
||||
## 概述
|
||||
|
||||
监管上报模块负责与浙江省互联网医院监管平台对接,实现咨询、转诊、处方、核销等数据的上报和回调。
|
||||
|
||||
---
|
||||
|
||||
## 监管批次管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| POST | `transit/batch/create` | 创建批次 |
|
||||
| POST | `transit/batch/callback` | 批次回调 |
|
||||
| POST | `transit/batch/finish` | 完成批次 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `HyTransitBatchController` | `app/Http/Controllers/hy/HyTransitBatchController.php` | 控制器 |
|
||||
| `HyTransitRecordService` | `app/Service/admin/hy/HyTransitRecordService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `HyTransitBatchModel` | `xk_hy_transit_batch` | 监管同步批次 |
|
||||
| `HyTransitRecordModel` | `xk_hy_transit_record` | 监管拉取/回调记录 |
|
||||
|
||||
### 批次状态
|
||||
|
||||
| 状态 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 拉取中 | pulling | 正在拉取数据 |
|
||||
| 拉取完成 | done | 数据拉取完成 |
|
||||
| 拉取失败 | failed | 数据拉取失败 |
|
||||
|
||||
### 回调状态
|
||||
|
||||
| 状态 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 待回调 | pending | 等待回调 |
|
||||
| 回调完成 | done | 回调完成 |
|
||||
|
||||
---
|
||||
|
||||
## 监管数据拉取
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `supervise/consult` | 拉取咨询数据 |
|
||||
| GET | `supervise/referral` | 拉取转诊数据 |
|
||||
| GET | `supervise/recipe` | 拉取处方数据 |
|
||||
| GET | `supervise/verification` | 拉取核销数据 |
|
||||
| GET | `supervise/config` | 获取机构配置 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `HySupervisePullController` | `app/Http/Controllers/hy/HySupervisePullController.php` | 控制器 |
|
||||
| `HyApiService` | `app/Service/admin/hy/HyApiService.php` | API 服务 |
|
||||
| `HySupervisePayloadValidator` | `app/Service/admin/hy/HySupervisePayloadValidator.php` | 数据校验 |
|
||||
|
||||
### 监管步骤
|
||||
|
||||
| 步骤 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 在线咨询 | consult | 咨询信息上报 |
|
||||
| 在线复诊 | referral | 转诊/复诊信息上报 |
|
||||
| 在线处方 | recipe | 处方信息上报 |
|
||||
| 处方核销 | verification | 处方核销信息上报 |
|
||||
|
||||
### 监管数据类型
|
||||
|
||||
| 接口 | 说明 |
|
||||
|------|------|
|
||||
| `uploadConsultIndicators` | 咨询信息上报 |
|
||||
| `uploadReferralIndicators` | 转诊/复诊信息上报 |
|
||||
| `uploadRecipeIndicators` | 处方信息上报(含中药扩展) |
|
||||
| `uploadRecipeVerificationIndicators` | 处方核销信息上报 |
|
||||
|
||||
### 监管数据流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant API as xk-api
|
||||
participant GO as xk-hy-forward-go
|
||||
participant GOV as 浙江省政务云
|
||||
|
||||
Note over API: 定时触发 / 手动拉取
|
||||
API->>API: 1. 创建批次 (batch/create)
|
||||
API->>API: 2. 拉取数据 (supervise/consult, /recipe, ...)
|
||||
API->>API: 3. 加密打包数据
|
||||
API->>GO: 4. 转发加密数据
|
||||
GO->>GOV: 5. 透传至政务云
|
||||
GOV-->>GO: 6. 返回处理结果
|
||||
GO-->>API: 7. 回调结果
|
||||
API->>API: 8. 更新批次状态
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 处方打印
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `PrescriptionPrintService` | `app/Service/admin/hy/PrescriptionPrintService.php` | 打印服务 |
|
||||
| `HyRecipeHtmlRenderer` | `app/Service/admin/hy/HyRecipeHtmlRenderer.php` | HTML 渲染 |
|
||||
|
||||
### 处方详情
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET/POST | `transit/prescription/detail` | 处方详情 + 打印 HTML |
|
||||
| POST | `transit/prescription/recipe-file` | 保存处方文件 ID |
|
||||
|
||||
---
|
||||
|
||||
## 监管查询(管理后台)
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `log/hy-transit-batch-list` | 批次列表 |
|
||||
| GET | `log/hy-transit-record-list` | 记录列表 |
|
||||
| GET | `log/hy-transit-record-detail` | 记录详情 |
|
||||
|
||||
---
|
||||
|
||||
## 加密规则
|
||||
|
||||
::: warning 安全信息
|
||||
- 算法: AES-128-ECB + PKCS7 + Base64
|
||||
- 密钥: `substr(sha256(HY_TRANSIT_API_TOKEN), 0, 16)`
|
||||
- 默认启用加密(`HY_TRANSIT_PAYLOAD_ENCRYPT=true`)
|
||||
:::
|
||||
|
||||
### 签名规则
|
||||
|
||||
```
|
||||
sign = HmacSHA256(requestBody + secret + header params sorted alphabetically)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 政务云接口规范
|
||||
|
||||
### HTTP 层返回码
|
||||
|
||||
| 代码 | 说明 |
|
||||
|------|------|
|
||||
| 200 | 成功 |
|
||||
| -1 | 系统繁忙 |
|
||||
| 40001 | 参数错误 |
|
||||
| 40002 | appKey 未找到 |
|
||||
| 40003 | appKey 已冻结 |
|
||||
| 40004 | appKey/appSecret 不匹配 |
|
||||
| 40006 | 无权限 |
|
||||
| 40007 | IP 未在白名单 |
|
||||
| 40010 | 签名无效 |
|
||||
| 40011 | 请求已过期 |
|
||||
| 40012 | 其他服务错误 |
|
||||
|
||||
### 业务层 msgCode
|
||||
|
||||
| 代码 | 说明 |
|
||||
|------|------|
|
||||
| 200 | 成功 |
|
||||
| -99 | 参数字段为空 |
|
||||
| -98 | 数据为空 |
|
||||
| -1 | 具体失败原因 |
|
||||
64
docs/projects/xk-api/modules/index.md
Normal file
64
docs/projects/xk-api/modules/index.md
Normal file
@@ -0,0 +1,64 @@
|
||||
# xk-api 功能模块
|
||||
|
||||
## 模块总览
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph 系统管理
|
||||
S1[管理员管理]
|
||||
S2[角色权限]
|
||||
S3[菜单管理]
|
||||
S4[系统配置]
|
||||
S5[操作日志]
|
||||
S6[公告通知]
|
||||
end
|
||||
|
||||
subgraph 业务核心
|
||||
B1[处方管理]
|
||||
B2[订单管理]
|
||||
B3[挂号管理]
|
||||
B4[药品管理]
|
||||
B5[门店管理]
|
||||
B6[医生管理]
|
||||
B7[药师管理]
|
||||
end
|
||||
|
||||
subgraph 财务结算
|
||||
F1[分账结算]
|
||||
F2[提现管理]
|
||||
F3[对账管理]
|
||||
F4[资金流水]
|
||||
F5[月结管理]
|
||||
end
|
||||
|
||||
subgraph 销售推广
|
||||
SP1[推广员管理]
|
||||
SP2[佣金计算]
|
||||
SP3[佣金结算]
|
||||
SP4[转诊管理]
|
||||
end
|
||||
|
||||
subgraph 特色功能
|
||||
TF1[特色处方]
|
||||
TF2[画布表格]
|
||||
TF3[监管上报]
|
||||
TF4[MES 对接]
|
||||
end
|
||||
```
|
||||
|
||||
## 模块清单
|
||||
|
||||
| 模块 | 说明 | 页面 |
|
||||
|------|------|------|
|
||||
| 系统管理 | 管理员、角色、菜单、配置 | [系统管理](./system.md) |
|
||||
| 处方管理 | 处方开具、审核、转诊 | [处方管理](./prescription.md) |
|
||||
| 订单管理 | 产品订单、挂号、快递 | [订单管理](./order.md) |
|
||||
| 药品管理 | 药品目录、仓库、价格同步 | [药品管理](./drug.md) |
|
||||
| 医生管理 | 医生、药师、接诊、问诊 | [医生管理](./doctor.md) |
|
||||
| 门店管理 | 门店、入驻、银行卡上报 | [门店管理](./store.md) |
|
||||
| 财务结算 | 分账、提现、对账、月结 | [财务结算](./finance.md) |
|
||||
| 销售推广 | 推广员、佣金、结算 | [销售推广](./salesperson.md) |
|
||||
| 特色处方 | 特色处方、SKU、定价 | [特色处方](./special-prescription.md) |
|
||||
| 监管上报 | 互联网医院监管数据上报 | [监管上报](./hy-supervise.md) |
|
||||
| 聊天通讯 | 好友、即时通讯 | [聊天通讯](./chat.md) |
|
||||
| 画布表格 | 表格配置、编辑历史、公式 | [画布表格](./spreadsheet.md) |
|
||||
173
docs/projects/xk-api/modules/order.md
Normal file
173
docs/projects/xk-api/modules/order.md
Normal file
@@ -0,0 +1,173 @@
|
||||
# 订单管理模块
|
||||
|
||||
## 概述
|
||||
|
||||
订单管理模块负责产品订单、挂号订单的全流程管理,包括创建、支付、发货、退款等。
|
||||
|
||||
---
|
||||
|
||||
## 产品订单
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| 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` | 业务服务 |
|
||||
270
docs/projects/xk-api/modules/prescription.md
Normal file
270
docs/projects/xk-api/modules/prescription.md
Normal file
@@ -0,0 +1,270 @@
|
||||
# 处方管理模块
|
||||
|
||||
## 概述
|
||||
|
||||
处方管理模块是 XK 系统的核心业务模块,负责处方的开具、审核、转诊、打印等全流程管理。
|
||||
|
||||
---
|
||||
|
||||
## 处方开具
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `prescription/list` | 处方列表 |
|
||||
| GET | `prescription/detail` | 处方详情 |
|
||||
| POST | `prescription/add-chinese` | 创建中药处方 |
|
||||
| POST | `prescription/add-west` | 创建西药处方 |
|
||||
| POST | `prescription/add-granular` | 创建颗粒处方 |
|
||||
| POST | `prescription/add-simple` | 创建简单处方(中成药/服务包/非药品/医疗器械) |
|
||||
| POST | `prescription/update` | 更新处方 |
|
||||
| POST | `prescription/delete` | 删除处方 |
|
||||
| GET | `prescription/print` | 处方打印 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `PrescriptionController` | `app/Http/Controllers/admin/business/prescription/PrescriptionController.php` | 控制器 |
|
||||
| `PrescriptionService` | `app/Service/admin/business/prescription/PrescriptionService.php` | 业务服务 |
|
||||
| `PrescriptionModel` | `app/Models/old/prescription/PrescriptionModel.php` | 主处方模型 |
|
||||
| `PrescriptionChineseModel` | `app/Models/old/prescription/PrescriptionChineseModel.php` | 中药处方模型 |
|
||||
| `PrescriptionWestModel` | `app/Models/old/prescription/PrescriptionWestModel.php` | 西药处方模型 |
|
||||
| `PrescriptionGranularModel` | `app/Models/old/prescription/PrescriptionGranularModel.php` | 颗粒处方模型 |
|
||||
| `PrescriptionServerModel` | `app/Models/old/prescription/PrescriptionServerModel.php` | 服务包处方模型 |
|
||||
| `PrescriptionPrintService` | `app/Service/admin/hy/PrescriptionPrintService.php` | 打印服务 |
|
||||
| `HyRecipeHtmlRenderer` | `app/Service/admin/hy/HyRecipeHtmlRenderer.php` | HTML 渲染 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `PrescriptionModel` | `yii_prescription` | 主处方表 |
|
||||
| `PrescriptionChineseModel` | `yii_prescription_chinese` | 中药处方 |
|
||||
| `PrescriptionWestModel` | `yii_prescription_west` | 西药处方 |
|
||||
| `PrescriptionGranularModel` | `yii_prescription_granular` | 颗粒处方 |
|
||||
| `PrescriptionServerModel` | `yii_prescription_server` | 服务包处方 |
|
||||
|
||||
### 处方状态机
|
||||
|
||||
```mermaid
|
||||
stateDiagram-v2
|
||||
[*] --> 待审核: 医生开方
|
||||
待审核 --> 通过: 医生初审通过
|
||||
待审核 --> 未通过: 审核拒绝
|
||||
通过 --> 药师复审: 药师审核
|
||||
药师复审 --> 生效: 复审通过
|
||||
药师复审 --> 未通过: 复审拒绝
|
||||
生效 --> 已使用: 患者购药
|
||||
生效 --> 已过期: 超时未用
|
||||
```
|
||||
|
||||
### 处方类型
|
||||
|
||||
| 类型 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 中药 | 1 | 中药饮片处方 |
|
||||
| 西药 | 2 | 西药处方 |
|
||||
| 颗粒 | 3 | 配方颗粒处方 |
|
||||
| 中成药 | 4 | 中成药处方 |
|
||||
| 产品服务包 | 5 | 服务包处方 |
|
||||
|
||||
### 处方状态
|
||||
|
||||
| 状态 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 待审核 | 0 | 医生已开方,等待审核 |
|
||||
| 通过 | 1 | 审核通过 |
|
||||
| 未通过 | 2 | 审核拒绝 |
|
||||
| 无需审核 | 3 | 免审处方 |
|
||||
|
||||
### 处方开具流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant D as 医生
|
||||
participant C as PrescriptionController
|
||||
participant S as PrescriptionService
|
||||
participant M as PrescriptionModel
|
||||
participant DB as 数据库
|
||||
|
||||
D->>C: POST prescription/add-chinese
|
||||
C->>S: addChinesePrescription(data)
|
||||
S->>S: validateData(data)
|
||||
S->>M: create(prescription)
|
||||
M->>DB: INSERT INTO yii_prescription
|
||||
S->>M: createChinese(items)
|
||||
M->>DB: INSERT INTO yii_prescription_chinese
|
||||
S-->>C: prescription_id
|
||||
C-->>D: 处方创建成功
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 处方审核
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `audit-prescription/list` | 待审处方列表 |
|
||||
| GET | `audit-prescription/detail` | 处方详情 |
|
||||
| POST | `audit-prescription/audit` | 审核操作 |
|
||||
| POST | `audit-prescription/reject` | 拒绝操作 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `AuditPrescriptionController` | `app/Http/Controllers/admin/business/prescription/AuditPrescriptionController.php` | 控制器 |
|
||||
| `AuditPrescriptionService` | `app/Service/admin/business/prescription/AuditPrescriptionService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `PrescriptionModel` | `yii_prescription` | 主处方表 |
|
||||
|
||||
### 审核流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant A as 审核员
|
||||
participant C as AuditPrescriptionController
|
||||
participant S as AuditPrescriptionService
|
||||
participant M as PrescriptionModel
|
||||
|
||||
A->>C: POST audit-prescription/audit
|
||||
C->>S: audit(prescription_id, action)
|
||||
S->>M: findById(prescription_id)
|
||||
S->>S: checkPermission(audit_user)
|
||||
|
||||
alt 医生初审
|
||||
S->>M: update(status=1, first_view, first_sign)
|
||||
else 药师复审
|
||||
S->>M: update(status=1, again_view, again_sign)
|
||||
end
|
||||
|
||||
S-->>C: audit_result
|
||||
C-->>A: 审核成功
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 转诊处方
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `transfer-prescription/list` | 转诊处方列表 |
|
||||
| GET | `transfer-prescription/detail` | 转诊详情 |
|
||||
| POST | `transfer-prescription/create` | 创建转诊 |
|
||||
| POST | `transfer-prescription/confirm` | 确认转诊 |
|
||||
| POST | `transfer-prescription/import` | 导入转诊 |
|
||||
| POST | `transfer-prescription/cancel` | 取消转诊 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `TransferPrescriptionController` | `app/Http/Controllers/admin/business/prescription/TransferPrescriptionController.php` | 控制器 |
|
||||
| `TransferPrescriptionService` | `app/Service/admin/business/prescription/TransferPrescriptionService.php` | 业务服务 |
|
||||
| `TransferPrescriptionModel` | `app/Models/old/prescription/TransferPrescriptionModel.php` | 模型 |
|
||||
| `TransferQuestionService` | `app/Service/admin/business/prescription/TransferQuestionService.php` | 问题配置 |
|
||||
| `TransferAssistantConfigService` | `app/Service/admin/business/prescription/TransferAssistantConfigService.php` | 助手配置 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `TransferPrescriptionModel` | `yii_transfer_prescription` | 转诊处方 |
|
||||
| `TransferQuestionModel` | `xk_transfer_question` | 转诊问题 |
|
||||
| `TransferPrescriptionQuestionModel` | `xk_transfer_prescription_question` | 转诊问答 |
|
||||
| `TransferAssistantConfigModel` | `xk_transfer_assistant_config` | 转诊助手配置 |
|
||||
|
||||
### 转诊流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant O as 转诊方(发起)
|
||||
participant R as 接收方(接收)
|
||||
participant DB as 数据库
|
||||
|
||||
O->>DB: 创建转诊处方(transfer_prescription)
|
||||
O->>O: 设置 is_from_transfer=1
|
||||
|
||||
Note over O,R: 转诊方获得 100% 利润
|
||||
|
||||
R->>DB: 确认接收
|
||||
R->>DB: 导入为注册订单(register)
|
||||
R->>DB: 创建处方(prescription)
|
||||
R->>DB: 设置 store_id = delegate_store_id
|
||||
```
|
||||
|
||||
### 转诊分账规则
|
||||
|
||||
::: warning 关键逻辑
|
||||
- 转诊方(发起方)获得 **100%** 利润
|
||||
- 接收方(被转方)获得 **0%** 利润
|
||||
- 处方来源自动设为接收方门店(`store_id = delegate_store_id`)
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## 常用处方
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `common-prescription/list` | 常用处方列表 |
|
||||
| POST | `common-prescription/create` | 创建常用处方 |
|
||||
| POST | `common-prescription/update` | 更新常用处方 |
|
||||
| POST | `common-prescription/delete` | 删除常用处方 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `CommonPrescriptionController` | `app/Http/Controllers/admin/business/doctor/CommonPrescriptionController.php` | 控制器 |
|
||||
| `CommonPrescriptionService` | `app/Service/admin/business/doctor/CommonPrescriptionService.php` | 业务服务 |
|
||||
|
||||
---
|
||||
|
||||
## 转诊问题配置
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `transfer-question/list` | 问题列表 |
|
||||
| POST | `transfer-question/create` | 创建问题 |
|
||||
| POST | `transfer-question/update` | 更新问题 |
|
||||
| POST | `transfer-question/delete` | 删除问题 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `TransferQuestionController` | `app/Http/Controllers/admin/business/prescription/TransferQuestionController.php` | 控制器 |
|
||||
| `TransferQuestionService` | `app/Service/admin/business/prescription/TransferQuestionService.php` | 业务服务 |
|
||||
|
||||
---
|
||||
|
||||
## 转诊助手配置
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `transfer-assistant-config/detail` | 助手配置详情 |
|
||||
| POST | `transfer-assistant-config/update` | 更新助手配置 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `TransferAssistantConfigController` | `app/Http/Controllers/admin/business/prescription/TransferAssistantConfigController.php` | 控制器 |
|
||||
| `TransferAssistantConfigService` | `app/Service/admin/business/prescription/TransferAssistantConfigService.php` | 业务服务 |
|
||||
228
docs/projects/xk-api/modules/salesperson.md
Normal file
228
docs/projects/xk-api/modules/salesperson.md
Normal file
@@ -0,0 +1,228 @@
|
||||
# 销售推广模块
|
||||
|
||||
## 概述
|
||||
|
||||
销售推广模块负责推广员管理、佣金计算、佣金结算等。
|
||||
|
||||
---
|
||||
|
||||
## 推广员管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `salesperson/list` | 推广员列表 |
|
||||
| GET | `salesperson/detail` | 推广员详情 |
|
||||
| POST | `salesperson/create` | 创建推广员 |
|
||||
| POST | `salesperson/update` | 更新推广员 |
|
||||
| POST | `salesperson/delete` | 删除推广员 |
|
||||
| GET | `salesperson/option` | 推广员选项 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SalespersonController` | `app/Http/Controllers/admin/salesperson/SalespersonController.php` | 控制器 |
|
||||
| `SalespersonService` | `app/Service/admin/salesperson/SalespersonService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ClinicSalespersonModel` | `xk_clinic_salesperson` | 门店推广员 |
|
||||
| `AdminSalespersonModel` | `xk_admin_salesperson` | 管理员-推广员关联 |
|
||||
| `UserSalespersonModel` | `xk_user_salesperson` | 用户-推广员绑定 |
|
||||
| `SalespersonQrCodeModel` | `xk_salesperson_qr_code` | 推广员二维码 |
|
||||
| `SalespersonStoreConfigModel` | `xk_salesperson_store_config` | 推广员门店配置 |
|
||||
|
||||
---
|
||||
|
||||
## 佣金计算
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SalespersonCommissionAccrualService` | `app/Service/admin/salesperson/SalespersonCommissionAccrualService.php` | 佣金计提 |
|
||||
| `SalespersonCommissionCalculator` | `app/Service/admin/salesperson/SalespersonCommissionCalculator.php` | 佣金计算 |
|
||||
| `SalespersonCommissionRecordFormatter` | `app/Service/admin/salesperson/SalespersonCommissionRecordFormatter.php` | 记录格式化 |
|
||||
| `SalespersonOrderBindService` | `app/Service/admin/salesperson/SalespersonOrderBindService.php` | 订单绑定 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SalespersonCommissionRecordModel` | `xk_salesperson_commission_record` | 佣金记录 |
|
||||
| `SalespersonCommissionTemplateModel` | `xk_salesperson_commission_template` | 佣金模板 |
|
||||
| `SalespersonCommissionTemplateItemModel` | `xk_salesperson_commission_template_item` | 佣金模板明细 |
|
||||
| `SalespersonDrugCommissionModel` | `xk_salesperson_drug_commission` | 药品佣金配置 |
|
||||
|
||||
### 佣金计算方式
|
||||
|
||||
| 方式 | 说明 |
|
||||
|------|------|
|
||||
| 固定金额 | 按模板/药品配置固定佣金 |
|
||||
| 百分比 | 按订单金额百分比计算 |
|
||||
|
||||
### 佣金来源
|
||||
|
||||
| 来源 | 说明 |
|
||||
|------|------|
|
||||
| 直接 | 推广员直接推广的订单 |
|
||||
| 邀请 | 推广员邀请的用户产生的订单 |
|
||||
|
||||
### 佣金计提流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant C as 定时任务
|
||||
participant SVC as SalespersonCommissionAccrualService
|
||||
participant DB as 数据库
|
||||
|
||||
C->>SVC: app:accrue-salesperson-commission
|
||||
SVC->>DB: 查询今天已付款但无佣金的订单
|
||||
loop 每个订单
|
||||
SVC->>SVC: calculateCommission(order)
|
||||
SVC->>DB: INSERT INTO xk_salesperson_commission_record
|
||||
end
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 佣金结算
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `settlement/list` | 结算单列表 |
|
||||
| GET | `settlement/detail` | 结算单详情 |
|
||||
| POST | `settlement/create` | 创建结算单 |
|
||||
| POST | `settlement/settle` | 执行结算 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SalespersonSettlementService` | `app/Service/admin/salesperson/SalespersonSettlementService.php` | 结算服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SalespersonSettlementModel` | `xk_salesperson_settlement` | 推广员结算单 |
|
||||
| `SalespersonSettlementRecordModel` | `xk_salesperson_settlement_record` | 结算-佣金关联 |
|
||||
|
||||
### 结算方式
|
||||
|
||||
| 方式 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 按时段 | 1 | 按时间段结算 |
|
||||
| 按订单 | 2 | 按订单逐笔结算 |
|
||||
|
||||
---
|
||||
|
||||
## 佣金冲销
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SalespersonCommissionReversalService` | `app/Service/admin/salesperson/SalespersonCommissionReversalService.php` | 冲销服务 |
|
||||
|
||||
### 关联 Job
|
||||
|
||||
| Job | 文件 | 说明 |
|
||||
|-----|------|------|
|
||||
| `SalespersonCommissionRefundJob` | `app/Jobs/SalespersonCommissionRefundJob.php` | 退款后佣金冲销 |
|
||||
|
||||
### 冲销流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant R as 退款回调
|
||||
participant J as SalespersonCommissionRefundJob
|
||||
participant SVC as SalespersonCommissionReversalService
|
||||
participant DB as 数据库
|
||||
|
||||
R->>J: 退款成功
|
||||
J->>SVC: reverseCommission(order_id)
|
||||
SVC->>DB: 查询原佣金记录
|
||||
SVC->>DB: INSERT INTO xk_salesperson_commission_record (record_type=退款冲销)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 佣金模板
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `commission-template/list` | 模板列表 |
|
||||
| POST | `commission-template/create` | 创建模板 |
|
||||
| POST | `commission-template/update` | 更新模板 |
|
||||
| POST | `commission-template/delete` | 删除模板 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SalespersonCommissionTemplateService` | `app/Service/admin/salesperson/SalespersonCommissionTemplateService.php` | 模板服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SalespersonCommissionTemplateModel` | `xk_salesperson_commission_template` | 佣金模板 |
|
||||
| `SalespersonCommissionTemplateItemModel` | `xk_salesperson_commission_template_item` | 佣金模板明细 |
|
||||
|
||||
---
|
||||
|
||||
## 门店推广员
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `clinic-salesperson-self/info` | 门店推广员信息 |
|
||||
| POST | `clinic-salesperson-self/update` | 更新信息 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `ClinicSalespersonSelfController` | `app/Http/Controllers/admin/salesperson/ClinicSalespersonSelfController.php` | 控制器 |
|
||||
| `SalespersonAdminAccountService` | `app/Service/admin/salesperson/SalespersonAdminAccountService.php` | 账户服务 |
|
||||
|
||||
---
|
||||
|
||||
## 推广员门店配置
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `salesperson-store-config/list` | 配置列表 |
|
||||
| POST | `salesperson-store-config/update` | 更新配置 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SalespersonStoreConfigController` | `app/Http/Controllers/admin/salesperson/SalespersonStoreConfigController.php` | 控制器 |
|
||||
| `SalespersonStoreConfigService` | `app/Service/admin/salesperson/SalespersonStoreConfigService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SalespersonStoreConfigModel` | `xk_salesperson_store_config` | 推广员门店配置 |
|
||||
|
||||
### 配置说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `store_id` | int | 门店 ID(唯一) |
|
||||
| `see_price` | tinyint | 是否可见价格:0=否, 1=是 |
|
||||
201
docs/projects/xk-api/modules/special-prescription.md
Normal file
201
docs/projects/xk-api/modules/special-prescription.md
Normal file
@@ -0,0 +1,201 @@
|
||||
# 特色处方模块
|
||||
|
||||
## 概述
|
||||
|
||||
特色处方模块是 XK 系统的特色功能,提供标准化的处方产品,具有独立的 SKU 和定价体系。
|
||||
|
||||
---
|
||||
|
||||
## 特色处方管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `special-prescription/list` | 处方列表 |
|
||||
| GET | `special-prescription/detail` | 处方详情 |
|
||||
| POST | `special-prescription/create` | 创建处方 |
|
||||
| POST | `special-prescription/update` | 更新处方 |
|
||||
| POST | `special-prescription/status` | 上下架 |
|
||||
| GET | `special-prescription/sku-list` | SKU 列表 |
|
||||
| POST | `special-prescription/sku/create` | 创建 SKU |
|
||||
| POST | `special-prescription/sku/update` | 更新 SKU |
|
||||
| POST | `special-prescription/sku/delete` | 删除 SKU |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpecialPrescriptionController` | `app/Http/Controllers/admin/business/special_prescription/SpecialPrescriptionController.php` | 控制器 |
|
||||
| `SpecialPrescriptionService` | `app/Service/admin/business/special_prescription/SpecialPrescriptionService.php` | 业务服务 |
|
||||
| `SpecialPrescriptionPriceConfigService` | `app/Service/admin/business/special_prescription/SpecialPrescriptionPriceConfigService.php` | 价格配置 |
|
||||
| `SpecialPrescriptionPriceResolver` | `app/Service/admin/business/special_prescription/SpecialPrescriptionPriceResolver.php` | 价格解析 |
|
||||
| `SpecialPrescriptionPriceDistributor` | `app/Service/admin/business/special_prescription/SpecialPrescriptionPriceDistributor.php` | 价格分发 |
|
||||
| `SpecialPrescriptionShippingResolver` | `app/Service/admin/business/special_prescription/SpecialPrescriptionShippingResolver.php` | 运费解析 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpecialPrescriptionModel` | `xk_special_prescription` | 特色处方主表 |
|
||||
| `SpecialPrescriptionSkuModel` | `xk_special_prescription_sku` | SKU 剂量规格 |
|
||||
| `SpecialPrescriptionDrugPriceModel` | `xk_special_prescription_drug_price` | 药品分摊价格 |
|
||||
| `SpecialPrescriptionIntroductionImageModel` | `xk_special_prescription_introduction_images` | 介绍图片 |
|
||||
|
||||
### 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `prescription_sub_type` | tinyint | 1=中药, 2=西药, 3=颗粒 |
|
||||
| `name` | varchar | 处方名称 |
|
||||
| `category_id` | int | 分类 ID |
|
||||
| `cover_image` | varchar | 封面图 |
|
||||
| `intro_text` | mediumtext | 介绍文本 |
|
||||
| `tags` | json | 标签 |
|
||||
| `price_per_dose` | decimal | 每剂价格 |
|
||||
| `price_calc_scheme` | tinyint | 1=固定价, 3=门店浮动价 |
|
||||
| `buy_price_per_dose` | decimal | 每剂采购价 |
|
||||
| `sale_price_per_dose` | decimal | 每剂销售价 |
|
||||
| `sales_count` | int | 销量 |
|
||||
| `status` | tinyint | 状态 |
|
||||
| `is_free_shipping` | tinyint | 是否包邮 |
|
||||
| `free_shipping_min_doses` | int | 包邮最小剂量数 |
|
||||
| `store_id` | int | 门店 ID |
|
||||
|
||||
---
|
||||
|
||||
## 特色处方分类
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `special-prescription-category/list` | 分类列表 |
|
||||
| POST | `special-prescription-category/create` | 创建分类 |
|
||||
| POST | `special-prescription-category/update` | 更新分类 |
|
||||
| POST | `special-prescription-category/delete` | 删除分类 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpecialPrescriptionCategoryController` | `app/Http/Controllers/admin/business/special_prescription/SpecialPrescriptionCategoryController.php` | 控制器 |
|
||||
| `SpecialPrescriptionCategoryService` | `app/Service/admin/business/special_prescription/SpecialPrescriptionCategoryService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpecialPrescriptionCategoryModel` | `xk_special_prescription_category` | 处方分类 |
|
||||
|
||||
---
|
||||
|
||||
## SKU 管理
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpecialPrescriptionSkuModel` | `xk_special_prescription_sku` | SKU 剂量规格 |
|
||||
|
||||
### SKU 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `special_prescription_id` | int | 特色处方 ID |
|
||||
| `store_id` | int | 门店 ID |
|
||||
| `sku_name` | varchar | SKU 名称(如"7剂") |
|
||||
| `dose_count` | int | 剂量数 |
|
||||
| `status` | tinyint | 状态 |
|
||||
| `is_free_shipping` | tinyint | 是否包邮 |
|
||||
| `is_default` | tinyint | 是否默认 SKU |
|
||||
| `buy_price` | decimal | 采购价 |
|
||||
| `sale_price` | decimal | 销售价 |
|
||||
| `sort` | int | 排序 |
|
||||
|
||||
---
|
||||
|
||||
## 药品分摊价格
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpecialPrescriptionDrugPriceModel` | `xk_special_prescription_drug_price` | 药品分摊价格 |
|
||||
|
||||
### 分摊逻辑
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
subgraph 特色处方
|
||||
SP[特色处方总价]
|
||||
end
|
||||
|
||||
subgraph SKU
|
||||
SKU1[SKU1: 7剂 ¥70]
|
||||
SKU2[SKU2: 14剂 ¥130]
|
||||
SKU3[SKU3: 21剂 ¥189]
|
||||
end
|
||||
|
||||
subgraph 药品分摊
|
||||
DRUG1[药品A: ¥10/剂]
|
||||
DRUG2[药品B: ¥8/剂]
|
||||
DRUG3[药品C: ¥5/剂]
|
||||
DRUG4[药品D: ¥7/剂]
|
||||
end
|
||||
|
||||
SP --> SKU1
|
||||
SP --> SKU2
|
||||
SP --> SKU3
|
||||
SKU1 --> DRUG1
|
||||
SKU1 --> DRUG2
|
||||
SKU1 --> DRUG3
|
||||
SKU1 --> DRUG4
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 特色处方订单
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpecialPrescriptionOrderModel` | `xk_special_prescription_order` | 处方订单快照 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpecialPrescriptionOrderPricingService` | `app/Service/admin/business/special_prescription/SpecialPrescriptionOrderPricingService.php` | 订单定价 |
|
||||
| `SpecialPrescriptionPackageOrderItemBuilder` | `app/Service/admin/business/special_prescription/SpecialPrescriptionPackageOrderItemBuilder.php` | 订单项构建 |
|
||||
|
||||
---
|
||||
|
||||
## 患者处方记录
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpecialPrescriptionPatientRecordModel` | `xk_special_prescription_patient_record` | 患者处方记录 |
|
||||
|
||||
### 状态流转
|
||||
|
||||
```mermaid
|
||||
stateDiagram-v2
|
||||
[*] --> 待应用: 患者选择
|
||||
待应用 --> 已应用: 应用到处方
|
||||
已应用 --> 完成: 购药完成
|
||||
待应用 --> 取消: 患者取消
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 特色处方模板
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpecialPrescriptionTemplateService` | `app/Service/admin/business/special_prescription/SpecialPrescriptionTemplateService.php` | 模板服务 |
|
||||
130
docs/projects/xk-api/modules/spreadsheet.md
Normal file
130
docs/projects/xk-api/modules/spreadsheet.md
Normal file
@@ -0,0 +1,130 @@
|
||||
# 画布表格模块
|
||||
|
||||
## 概述
|
||||
|
||||
画布表格模块提供类似 Excel 的在线表格编辑功能,支持表格配置、编辑历史、公式库等。
|
||||
|
||||
---
|
||||
|
||||
## 表格配置
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `spreadsheet-table-config/list` | 配置列表 |
|
||||
| GET | `spreadsheet-table-config/detail` | 配置详情 |
|
||||
| POST | `spreadsheet-table-config/create` | 创建配置 |
|
||||
| POST | `spreadsheet-table-config/update` | 更新配置 |
|
||||
| POST | `spreadsheet-table-config/delete` | 删除配置 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpreadsheetTableConfigController` | `app/Http/Controllers/admin/system/SpreadsheetTableConfigController.php` | 控制器 |
|
||||
| `SpreadsheetTableConfigService` | `app/Service/admin/system/SpreadsheetTableConfigService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpreadsheetTableConfigModel` | `xk_spreadsheet_table_config` | 画布表格配置 |
|
||||
|
||||
### 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `admin_id` | bigint | 管理员 ID |
|
||||
| `table_name` | varchar | 表名 |
|
||||
| `sheet_key` | varchar | 工作表标识 |
|
||||
| `name` | varchar | 配置名称 |
|
||||
| `is_default` | tinyint | 是否默认配置 |
|
||||
| `config` | json | 表格配置 |
|
||||
|
||||
---
|
||||
|
||||
## 编辑历史
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `spreadsheet-history/list` | 历史列表 |
|
||||
| POST | `spreadsheet-history/rollback` | 回滚操作 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpreadsheetHistoryController` | `app/Http/Controllers/admin/system/SpreadsheetHistoryController.php` | 控制器 |
|
||||
| `SpreadsheetHistoryService` | `app/Service/admin/system/SpreadsheetHistoryService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpreadsheetEditHistoryModel` | `xk_spreadsheet_edit_history` | 画布编辑历史 |
|
||||
|
||||
### 操作类型
|
||||
|
||||
| 类型 | 说明 |
|
||||
|------|------|
|
||||
| edit | 编辑单元格 |
|
||||
| fill | 填充 |
|
||||
| paste | 粘贴 |
|
||||
| rollback | 回滚 |
|
||||
|
||||
### 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `table_name` | varchar | 表名 |
|
||||
| `sheet_key` | varchar | 工作表标识 |
|
||||
| `admin_user_id` | bigint | 操作管理员 |
|
||||
| `admin_user_name` | varchar | 管理员名称 |
|
||||
| `row_key` | varchar | 行标识 |
|
||||
| `field_id` | varchar | 字段 ID |
|
||||
| `action` | varchar | 操作类型 |
|
||||
| `before_snapshot` | json | 操作前快照 |
|
||||
| `after_snapshot` | json | 操作后快照 |
|
||||
| `client_entry_id` | varchar | 客户端条目 ID |
|
||||
|
||||
---
|
||||
|
||||
## 公式库
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `spreadsheet-formula/list` | 公式列表 |
|
||||
| GET | `spreadsheet-formula/detail` | 公式详情 |
|
||||
| POST | `spreadsheet-formula/create` | 创建公式 |
|
||||
| POST | `spreadsheet-formula/update` | 更新公式 |
|
||||
| POST | `spreadsheet-formula/delete` | 删除公式 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SpreadsheetFormulaController` | `app/Http/Controllers/admin/system/SpreadsheetFormulaController.php` | 控制器 |
|
||||
| `SpreadsheetFormulaService` | `app/Service/admin/system/SpreadsheetFormulaService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SpreadsheetFormulaModel` | `xk_spreadsheet_formula` | 画布公式库 |
|
||||
|
||||
### 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `code` | varchar | 公式编码(唯一) |
|
||||
| `name` | varchar | 公式名称 |
|
||||
| `description` | varchar | 公式描述 |
|
||||
| `expression_template` | text | 表达式模板 |
|
||||
| `ref_slots` | json | 引用槽位 |
|
||||
| `sort` | int | 排序 |
|
||||
| `status` | tinyint | 状态 |
|
||||
176
docs/projects/xk-api/modules/store.md
Normal file
176
docs/projects/xk-api/modules/store.md
Normal file
@@ -0,0 +1,176 @@
|
||||
# 门店管理模块
|
||||
|
||||
## 概述
|
||||
|
||||
门店管理模块负责门店信息管理、入驻审核、银行卡上报等。
|
||||
|
||||
---
|
||||
|
||||
## 门店管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `store/list` | 门店列表 |
|
||||
| GET | `store/detail` | 门店详情 |
|
||||
| POST | `store/create` | 创建门店 |
|
||||
| POST | `store/update` | 更新门店 |
|
||||
| POST | `store/audit` | 审核门店 |
|
||||
| GET | `store/option` | 门店选项 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `StoreController` | `app/Http/Controllers/admin/system/StoreController.php` | 控制器 |
|
||||
| `StoreService` | `app/Service/admin/system/StoreService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `StoreInputModel` | `xk_store_input` | 门店预填表单 |
|
||||
| `StoreModel` | `yii_store` | 门店表 |
|
||||
|
||||
### 门店类型
|
||||
|
||||
| 类型 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 诊所 | 0 | 中医/西医诊所 |
|
||||
| 药店 | 1 | 药品零售店 |
|
||||
|
||||
### 诊所类型
|
||||
|
||||
| 类型 | 值 | 说明 |
|
||||
|------|-----|------|
|
||||
| 西医 | 1 | 西医诊所 |
|
||||
| 中医 | 2 | 中医诊所 |
|
||||
|
||||
---
|
||||
|
||||
## 门店预填
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `store-input/list` | 预填列表 |
|
||||
| GET | `store-input/detail` | 预填详情 |
|
||||
| POST | `store-input/create` | 创建预填 |
|
||||
| POST | `store-input/update` | 更新预填 |
|
||||
| POST | `store-input/audit` | 审核预填 |
|
||||
| POST | `store-input/upload-contract` | 上传合同 |
|
||||
| POST | `store-input/add-nav` | 添加轮播图 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `StoreInputController` | `app/Http/Controllers/admin/system/StoreInputController.php` | 控制器 |
|
||||
| `StoreInputService` | `app/Service/admin/system/StoreInputService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `StoreInputModel` | `xk_store_input` | 门店预填表单 |
|
||||
| `StoreInputContractModel` | `xk_store_input_contract` | 门店合同文件 |
|
||||
| `StoreInputNavModel` | `xk_store_input_nav` | 门店轮播图 |
|
||||
|
||||
### 门店审核流程
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant S as 门店
|
||||
participant A as 管理员
|
||||
participant C as StoreInputController
|
||||
participant SVC as StoreInputService
|
||||
participant M as StoreInputModel
|
||||
|
||||
S->>C: POST store-input/create
|
||||
C->>SVC: create(data)
|
||||
SVC->>M: create(data)
|
||||
M-->>C: store_input_id
|
||||
C-->>S: 提交成功,等待审核
|
||||
|
||||
A->>C: POST store-input/audit
|
||||
C->>SVC: audit(id, status, remark)
|
||||
SVC->>M: update(status, audit_time)
|
||||
|
||||
alt 审核通过
|
||||
SVC->>SVC: syncToStore(store_input)
|
||||
SVC-->>C: 门店创建成功
|
||||
else 审核拒绝
|
||||
SVC-->>C: 已拒绝
|
||||
end
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 医生预填
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `doctor-input/list` | 预填列表 |
|
||||
| GET | `doctor-input/detail` | 预填详情 |
|
||||
| POST | `doctor-input/create` | 创建预填 |
|
||||
| POST | `doctor-input/update` | 更新预填 |
|
||||
| POST | `doctor-input/audit` | 审核预填 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `DoctorInputController` | `app/Http/Controllers/admin/system/DoctorInputController.php` | 控制器 |
|
||||
| `DoctorInputService` | `app/Service/admin/system/DoctorInputService.php` | 业务服务 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `DoctorInputModel` | `xk_doctor_input` | 医生预填表单 |
|
||||
| `DoctorInputStoreModel` | `xk_doctor_input_store` | 医生-门店绑定 |
|
||||
|
||||
---
|
||||
|
||||
## 银行卡上报
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `store-bank-card-report/list` | 上报列表 |
|
||||
| GET | `store-bank-card-report/detail` | 上报详情 |
|
||||
| POST | `store-bank-card-report/create` | 创建上报 |
|
||||
| POST | `store-bank-card-report/update` | 更新上报 |
|
||||
| GET | `store-bank-card-report/sync-status` | 同步状态 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `StoreBankCardReportController` | `app/Http/Controllers/admin/system/StoreBankCardReportController.php` | 控制器 |
|
||||
| `StoreBankCardReportService` | `app/Service/admin/system/StoreBankCardReportService.php` | 业务服务 |
|
||||
| `SyncStoreBankCardStatusCommand` | `app/Console/Commands/SyncStoreBankCardStatusCommand.php` | 状态同步命令 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `StoreBankCardReportModel` | `xk_store_bank_card_report` | 门店银行卡上报 |
|
||||
|
||||
### 上报状态流程
|
||||
|
||||
```mermaid
|
||||
stateDiagram-v2
|
||||
[*] --> 待上报: 创建上报
|
||||
待上报 --> 上报中: 提交易票联
|
||||
上报中 --> 已通过: 审核通过
|
||||
上报中 --> 已拒绝: 审核拒绝
|
||||
已拒绝 --> 待上报: 重新上报
|
||||
已通过 --> 已修改: 信息变更
|
||||
已修改 --> 上报中: 重新上报
|
||||
```
|
||||
259
docs/projects/xk-api/modules/system.md
Normal file
259
docs/projects/xk-api/modules/system.md
Normal file
@@ -0,0 +1,259 @@
|
||||
# 系统管理模块
|
||||
|
||||
## 概述
|
||||
|
||||
系统管理模块负责管理后台的基础配置,包括管理员、角色权限、菜单、系统配置、操作日志、公告通知等。
|
||||
|
||||
---
|
||||
|
||||
## 管理员管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| POST | `admin/login` | 登录 |
|
||||
| POST | `admin/send-verification-code` | 发送验证码 |
|
||||
| POST | `admin/logout` | 退出 |
|
||||
| GET | `admin/my-info` | 当前用户信息 |
|
||||
| GET | `admin/codes` | 权限码列表 |
|
||||
| GET | `admin/menu` | 菜单列表 |
|
||||
| GET | `admin/my-belong-id` | 当前归属 ID |
|
||||
| GET | `admin/sibling-accounts` | 同级账户列表 |
|
||||
| POST | `admin/switch-account` | 切换账户 |
|
||||
| GET | `admin/my-balance` | 我的余额 |
|
||||
| GET | `admin/my-card` | 我的银行卡 |
|
||||
| GET | `admin/get-quick-menu` | 快捷菜单 |
|
||||
| GET | `admin/list` | 管理员列表 |
|
||||
| GET | `admin/option` | 管理员选项 |
|
||||
| GET | `admin/detail` | 管理员详情 |
|
||||
| GET | `admin/creatable-roles` | 可创建角色 |
|
||||
| POST | `admin/create` | 创建管理员 |
|
||||
| POST | `admin/update` | 更新管理员 |
|
||||
| POST | `admin/delete` | 删除管理员 |
|
||||
| POST | `admin/reset-password` | 重置密码 |
|
||||
| POST | `admin/update-password` | 修改密码 |
|
||||
| POST | `admin/save-card` | 保存银行卡 |
|
||||
| POST | `admin/generate-login-account` | 生成登录账号 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `AdminController` | `app/Http/Controllers/admin/system/AdminController.php` | 控制器 |
|
||||
| `AdminService` | `app/Service/admin/system/AdminService.php` | 业务服务 |
|
||||
| `AdminModel` | `app/Models/new/admin/AdminModel.php` | 模型 |
|
||||
| `AdminNoticeModel` | `app/Models/new/admin/AdminNoticeModel.php` | 通知模型 |
|
||||
| `AdminNoticeRelationsModel` | `app/Models/new/admin/AdminNoticeRelationsModel.php` | 通知关联 |
|
||||
| `JWTService` | `app/Service/common/JWTService.php` | JWT 认证 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `AdminModel` | `xk_admin` | 管理员用户 |
|
||||
| `AdminNoticeModel` | `xk_admin_notice` | 管理员消息 |
|
||||
| `AdminNoticeRelationsModel` | `xk_admin_notice_relations` | 用户通知关联 |
|
||||
|
||||
### 流程图
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant C as 客户端
|
||||
participant A as AdminController
|
||||
participant S as AdminService
|
||||
participant M as AdminModel
|
||||
participant JWT as JWTService
|
||||
|
||||
C->>A: POST admin/login
|
||||
A->>S: login(account, password)
|
||||
S->>M: findByAccount(account)
|
||||
M-->>S: admin
|
||||
S->>S: verifyPassword(password, hash)
|
||||
S->>JWT: generateToken(admin)
|
||||
JWT-->>C: token
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 角色权限
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `role/list` | 角色列表 |
|
||||
| GET | `role/detail` | 角色详情 |
|
||||
| POST | `role/create` | 创建角色 |
|
||||
| POST | `role/update` | 更新角色 |
|
||||
| POST | `role/delete` | 删除角色 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `RoleController` | `app/Http/Controllers/admin/system/RoleController.php` | 控制器 |
|
||||
| `RoleService` | `app/Service/admin/system/RoleService.php` | 业务服务 |
|
||||
| `RoleModel` | `app/Models/new/admin/RoleModel.php` | 模型 |
|
||||
| `RoleMenuRelationsModel` | `app/Models/new/admin/RoleMenuRelationsModel.php` | 角色-菜单关联 |
|
||||
| `RoleQuickNavModel` | `app/Models/new/admin/RoleQuickNavModel.php` | 快捷导航 |
|
||||
| `RoleEnum` | `app/Enum/RoleEnum.php` | 角色枚举 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `RoleModel` | `xk_role` | 角色定义 |
|
||||
| `RoleMenuRelationsModel` | `xk_role_menu_relations` | 角色-菜单绑定 |
|
||||
| `RoleQuickNavModel` | `xk_role_quick_nav` | 角色快捷导航 |
|
||||
|
||||
### 角色枚举 (RoleEnum)
|
||||
|
||||
| 值 | 常量 | 说明 |
|
||||
|----|------|------|
|
||||
| 1 | `SUPPER_ADMIN` | 超级管理员 |
|
||||
| 2 | `ADMIN` | 管理员 |
|
||||
| 3 | `PROVINCE_MANAGER` | 省经理 |
|
||||
| 4 | `CITY_MANAGER` | 市经理 |
|
||||
| 5 | `DISTRICT_MANAGER` | 区经理 |
|
||||
| 6 | `SALESPERSON` | 推广员 |
|
||||
| 7 | `SUPPLIER` | 供应商 |
|
||||
| 8 | `CLINIC_ADMINISTRATOR` | 门店管理员 |
|
||||
| 9 | `CLINIC_STAFF` | 门店员工 |
|
||||
| 10 | `DOCTOR` | 医生 |
|
||||
| 11 | `PHARMACIST` | 药师 |
|
||||
| 12 | `HEADQUARTERS_FINANCE` | 总部财务 |
|
||||
| 14 | `CLINIC_SALESPERSON` | 门店推广员 |
|
||||
|
||||
---
|
||||
|
||||
## 菜单管理
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `menu/list` | 菜单列表 |
|
||||
| POST | `menu/create` | 创建菜单 |
|
||||
| POST | `menu/update` | 更新菜单 |
|
||||
| POST | `menu/delete` | 删除菜单 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `MenuController` | `app/Http/Controllers/admin/system/MenuController.php` | 控制器 |
|
||||
| `MenuService` | `app/Service/admin/system/MenuService.php` | 业务服务 |
|
||||
| `MenuModel` | `app/Models/new/admin/MenuModel.php` | 模型 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `MenuModel` | `xk_menu` | 菜单定义 |
|
||||
|
||||
### 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `title` | varchar | 菜单名称 |
|
||||
| `icon` | varchar | 图标 |
|
||||
| `name` | varchar | 路由名称 |
|
||||
| `path` | varchar | 路由路径 |
|
||||
| `component` | varchar | 组件路径 |
|
||||
| `redirect` | varchar | 重定向 |
|
||||
| `pid` | int | 父级 ID |
|
||||
| `sort` | int | 排序 |
|
||||
| `hide_in_menu` | tinyint | 是否隐藏 |
|
||||
| `affix_tab` | tinyint | 是否固定标签 |
|
||||
|
||||
---
|
||||
|
||||
## 系统配置
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `system-config/list` | 配置列表 |
|
||||
| POST | `system-config/update` | 更新配置 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `SystemConfigController` | `app/Http/Controllers/admin/system/SystemConfigController.php` | 控制器 |
|
||||
| `SystemConfigService` | `app/Service/admin/system/SystemConfigService.php` | 业务服务 |
|
||||
| `SystemConfigModel` | `app/Models/new/config/SystemConfigModel.php` | 模型 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `SystemConfigModel` | `xk_system_config` | 系统配置 |
|
||||
|
||||
### 字段说明
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
|------|------|------|
|
||||
| `config_key` | varchar | 配置键(唯一) |
|
||||
| `config_value` | text | 配置值 |
|
||||
| `value_type` | varchar | 值类型:string/int/float/bool/json |
|
||||
| `config_group` | varchar | 配置分组 |
|
||||
| `description` | varchar | 描述 |
|
||||
| `is_system` | tinyint | 是否系统配置 |
|
||||
|
||||
---
|
||||
|
||||
## 操作日志
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `log/list` | 日志列表 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `OldController` | `app/Http/Controllers/admin/log/OldController.php` | 控制器 |
|
||||
| `OldLogService` | `app/Service/admin/log/OldLogService.php` | 业务服务 |
|
||||
| `ApiOpLogModel` | `app/Models/new/log/ApiOpLogModel.php` | 模型 |
|
||||
| `ErrorLogModel` | `app/Models/new/log/ErrorLogModel.php` | 错误日志模型 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `ApiOpLogModel` | `xk_api_op_log` | API 操作日志 |
|
||||
| `ErrorLogModel` | `xk_error_log` | 错误日志 |
|
||||
|
||||
---
|
||||
|
||||
## 公告通知
|
||||
|
||||
### 接口
|
||||
|
||||
| 方法 | 路径 | 说明 |
|
||||
|------|------|------|
|
||||
| GET | `notice/list` | 通知列表 |
|
||||
| POST | `notice/create` | 创建通知 |
|
||||
| POST | `notice/update` | 更新通知 |
|
||||
| POST | `notice/delete` | 删除通知 |
|
||||
|
||||
### 关联类
|
||||
|
||||
| 类 | 文件 | 说明 |
|
||||
|----|------|------|
|
||||
| `NoticeController` | `app/Http/Controllers/admin/system/NoticeController.php` | 控制器 |
|
||||
| `NoticeService` | `app/Service/admin/system/NoticeService.php` | 业务服务 |
|
||||
| `NoticeModel` | `app/Models/new/admin/NoticeModel.php` | 模型 |
|
||||
| `AdminNoticeModel` | `app/Models/new/admin/AdminNoticeModel.php` | 管理员通知模型 |
|
||||
|
||||
### 关联模型
|
||||
|
||||
| 模型 | 表名 | 说明 |
|
||||
|------|------|------|
|
||||
| `NoticeModel` | `xk_notice` | 公告 |
|
||||
| `AdminNoticeModel` | `xk_admin_notice` | 管理员消息 |
|
||||
Reference in New Issue
Block a user