|
|
7 місяців тому | |
|---|---|---|
| .. | ||
| Commands | 7 місяців тому | |
| Contracts | 7 місяців тому | |
| Enums | 7 місяців тому | |
| Providers | 7 місяців тому | |
| Queues | 7 місяців тому | |
| Services | 7 місяців тому | |
| Validations | 7 місяців тому | |
| Validators | 7 місяців тому | |
| database | 7 місяців тому | |
| README.md | 7 місяців тому | |
通知模块是一个统一的消息通知系统,整合了短信、邮件、推送等多个通知渠道,提供统一的通知接口。
app/Module/Notification/
├── Controllers/ # 控制器目录
├── Models/ # 模型目录
├── Repositorys/ # 仓库目录
├── Services/ # 服务目录
├── Validators/ # 验证器目录
├── Validations/ # 验证规则目录
├── Queues/ # 队列目录
├── Enums/ # 枚举目录
└── Commands/ # 命令目录
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键ID |
| name | varchar(100) | 模板名称 |
| code | varchar(50) | 模板代码 |
| title | varchar(255) | 通知标题 |
| content | text | 通知内容 |
| variables | json | 变量定义 |
| channels | json | 通知渠道配置 |
| status | tinyint | 状态:0禁用 1启用 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 更新时间 |
| 字段名 | 类型 | 说明 |
|---|---|---|
| id | bigint | 主键ID |
| template_id | bigint | 模板ID |
| user_id | bigint | 用户ID |
| channels | json | 通知渠道 |
| title | varchar(255) | 通知标题 |
| content | text | 通知内容 |
| data | json | 通知数据 |
| status | varchar(20) | 状态 |
| message | varchar(255) | 发送结果 |
| sent_at | timestamp | 发送时间 |
| created_at | timestamp | 创建时间 |
| updated_at | timestamp | 更新时间 |
通知核心服务,负责通知的发送、模板管理等功能。
主要方法:
通知模块依赖以下模块:
通知服务通过以下服务发送通知:
// 发送通知
$notificationService = new NotificationService();
$notificationService->send([
'template_id' => 1,
'user_id' => 1,
'channels' => [
NotificationChannel::SMS,
NotificationChannel::MAIL,
NotificationChannel::PUSH
],
'data' => [
'order_id' => '123456',
'amount' => 100
]
]);
// 批量发送通知
$notificationService->sendBatch([
[
'template_id' => 1,
'user_id' => 1,
'channels' => [NotificationChannel::SMS],
'data' => ['order_id' => '123456']
],
[
'template_id' => 1,
'user_id' => 2,
'channels' => [NotificationChannel::MAIL],
'data' => ['order_id' => '654321']
]
]);