本文档旨在详细说明CRMEB系统中服务管理模块的设计架构、核心功能、代码实现及开发规范,为系统开发人员提供完整的开发参考。
本文档适用于CRMEB系统开发人员、维护人员及二次开发人员,用于指导服务管理模块的开发、扩展和维护工作。
| 术语 | 解释 |
|---|---|
| 服务套餐 | 系统提供的各种增值服务组合 |
| 电子面单 | 在线生成的快递单模板 |
| 短信服务 | 用于发送验证码、通知等短信的服务 |
| 商品复制 | 从其他平台复制商品信息到本地系统的服务 |
| 小票打印 | 打印订单小票的服务 |
| 电子发票 | 在线生成和管理电子发票的服务 |
| Access Token | 服务API的认证令牌 |
系统采用分层架构设计,严格遵循MVC设计模式,并采用驱动模式支持多种服务提供商:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Routes │────▶│ Controllers │────▶│ Services │────▶│ Storage │
└─────────────────┘ └─────────────────┘ └─────────────────┘ └─────────────────┘
▲ ▲ ▲ ▲
│ │ │ │
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Request & │ │ FormBuilder │ │ BaseManager │ │ External APIs │
│ Response │ └─────────────────┘ └─────────────────┘ └─────────────────┘
└─────────────────┘
服务路由:crmeb/app/adminapi/route/serve.php
服务控制器:crmeb/app/adminapi/controller/v1/serve/
Serve.php - 核心服务控制器,处理服务套餐、支付、开通、记录查询等功能Export.php - 处理电子面单相关功能Sms.php - 处理短信服务相关功能Login.php - 处理服务平台登录相关功能服务管理Services:crmeb/app/services/serve/
ServeServices.php - 核心服务管理服务,提供服务实例化方法
sms():短信服务copy():商品复制服务express():电子面单服务orderPrint():小票打印服务user():用户服务invoice():电子发票服务服务管理器:crmeb/crmeb/services/serve/Serve.php
服务存储:crmeb/crmeb/services/serve/storage/Crmeb.php
AccessToken服务:crmeb/app/services/serve/AccessTokenServeService.php
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 套餐ID |
| name | varchar(100) | 套餐名称 |
| type | varchar(20) | 服务类型 |
| price | decimal(10,2) | 套餐价格 |
| description | text | 套餐描述 |
| days | int(10) | 有效期(天) |
| status | tinyint(1) | 状态(0-关闭,1-开启) |
| sort | int(10) | 排序 |
| add_time | int(10) | 添加时间 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 记录ID |
| uid | int(10) | 用户ID |
| type | varchar(20) | 服务类型 |
| status | tinyint(1) | 状态(0-未开通,1-已开通,2-已过期) |
| start_time | int(10) | 开始时间 |
| end_time | int(10) | 结束时间 |
| add_time | int(10) | 添加时间 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 记录ID |
| uid | int(10) | 用户ID |
| type | varchar(20) | 服务类型 |
| money | decimal(10,2) | 消费金额 |
| mark | varchar(255) | 消费原因 |
| add_time | int(10) | 消费时间 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 模板ID |
| name | varchar(100) | 模板名称 |
| content | text | 模板内容 |
| status | tinyint(1) | 状态(0-审核中,1-已通过,2-未通过) |
| add_time | int(10) | 添加时间 |
| audit_time | int(10) | 审核时间 |
| audit_msg | varchar(255) | 审核备注 |
| 字段名 | 数据类型 | 描述 |
|---|---|---|
| id | int(10) unsigned | 配置ID |
| uid | int(10) | 用户ID |
| company | varchar(50) | 快递公司 |
| app_id | varchar(100) | 应用ID |
| app_key | varchar(100) | 应用密钥 |
| config | text | 其他配置(JSON格式) |
| status | tinyint(1) | 状态(0-未开通,1-已开通) |
| add_time | int(10) | 添加时间 |
/adminapi/v1/serve/meal/list/adminapi/v1/serve/meal/buy/{id}/adminapi/v1/serve/open/list/adminapi/v1/serve/open/{type}/adminapi/v1/serve/record/list/adminapi/v1/serve/sms/template/list/adminapi/v1/serve/sms/template/apply/adminapi/v1/serve/export/open/adminapi/v1/serve/export/generate命名规范:
ServeServicesgetMealListserviceConfigSERVE_TYPE_SMS代码结构:
API交互:
问题:API请求认证失败 解决方案:
问题:服务开通或配置失败 解决方案:
问题:外部API请求超时 解决方案:
问题:本地数据与服务平台数据不同步 解决方案:
| 版本 | 更新日期 | 更新内容 | 更新人 |
|---|---|---|---|
| 1.0 | 2026-01-19 | 初始版本,包含服务开通与管理、消费记录管理、用户信息管理、短信服务管理、电子面单服务、商品复制服务、小票打印服务、电子发票服务等核心功能 | AI Assistant |
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Routes │────▶│ Controllers │────▶│ Services │────▶│ Storage │
└─────────────────┘ └─────────────────┘ └─────────────────┘ └─────────────────┘
▲ ▲ ▲ ▲
│ │ │ │
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Request & │ │ FormBuilder │ │ BaseManager │ │ External APIs │
│ Response │ └─────────────────┘ └─────────────────┘ └─────────────────┘
└─────────────────┘
服务开通流程:
1. 用户选择服务套餐
2. 系统生成服务订单
3. 用户支付订单
4. 支付成功后,系统调用服务API开通服务
5. 系统更新服务状态
6. 系统记录消费记录
7. 发送服务开通通知给用户
API请求流程:
1. 客户端发起API请求
2. 服务端验证请求参数
3. AccessTokenServeService验证AccessToken
4. 服务控制器处理请求
5. 服务层调用相应的服务驱动
6. 服务驱动调用外部API
7. 外部API返回结果
8. 服务驱动处理结果
9. 服务控制器返回响应给客户端
| 常量 | 描述 |
|---|---|
| SERVE_TYPE_SMS | 短信服务 |
| SERVE_TYPE_COPY | 商品复制服务 |
| SERVE_TYPE_EXPRESS | 电子面单服务 |
| SERVE_TYPE_ORDER_PRINT | 小票打印服务 |
| SERVE_TYPE_INVOICE | 电子发票服务 |
提示:该文档由AI生成,仅供参考。