Initial commit of akmon project

This commit is contained in:
2026-01-20 08:04:15 +08:00
commit 77a2bab985
1309 changed files with 343305 additions and 0 deletions

View File

@@ -0,0 +1,118 @@
# 推送消息接收服务表名前缀更新完成
## 🎉 更新完成
所有推送消息接收服务相关的数据库表已成功添加 `ps_` 前缀,以避免与现有系统表的命名冲突。
## 📋 表名变更对照
| 原表名 | 新表名 | 用途 |
|--------|--------|------|
| `push_messages` | `ps_push_messages` | 推送消息主表 |
| `push_types` | `ps_push_types` | 推送类型配置表 |
| `message_processing_logs` | `ps_message_processing_logs` | 消息处理日志表 |
| `system_stats` | `ps_system_stats` | 系统统计表 |
## 🔧 更新内容
### 1. 数据库结构文件
-`database/supabase-init.sql` - 所有表定义、索引、触发器、视图、函数都已更新
### 2. 应用代码
-`lib/supabase-database.js` - 所有数据库操作方法中的表名引用已更新
-`check-config.js` - 配置检查脚本中的表名引用已更新
### 3. 文档
-`SUPABASE_ADAPTATION.md` - 适配说明文档已更新
-`README.md` - 使用说明已更新
### 4. 视图和函数
-`ps_recent_message_stats` - 消息统计视图
-`ps_active_devices_stats` - 设备活跃度统计视图
-`ps_cleanup_old_messages()` - 清理旧消息函数
-`ps_get_message_stats()` - 获取消息统计函数
### 5. 索引和约束
- ✅ 所有索引名称已更新为带 `ps_` 前缀
- ✅ 外键约束已正确关联到 `ak_users``ak_devices`
- ✅ 触发器名称已更新
## 🚀 部署步骤
### 1. 数据库初始化
```bash
# 在 Supabase SQL Editor 中执行
# 文件: database/supabase-init.sql
```
### 2. 环境配置
```bash
# 确保 .env 文件中有正确的 Supabase 配置
SUPABASE_URL=your-supabase-url
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
API_KEY=your-api-key
```
### 3. 测试服务
```bash
# 检查配置
npm run check-config
# 运行测试
npm test
# 启动服务
npm start
```
## 📊 API 使用无变化
API 接口和使用方式保持不变,只是底层数据库表名发生了变化:
```javascript
// API 调用方式不变
const response = await fetch('/api/push/message', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-API-Key': 'your-api-key'
},
body: JSON.stringify({
type: 'HEALTH',
data: {
user_id: '123e4567-e89b-12d3-a456-426614174000',
device_id: '987fcdeb-51a2-43d7-8f9e-123456789abc',
H: 72,
O: 98,
T: 36.5
}
})
});
```
## 🛡️ 数据安全
- ✅ 所有现有数据保持不变
- ✅ 与现有 `ak_*` 表系统完全兼容
- ✅ 外键约束确保数据完整性
- ✅ RLS行级安全策略已正确配置
## 🔍 监控和维护
推送消息服务现在使用独立的 `ps_` 前缀表,可以通过以下方式监控:
- 查看 `ps_push_messages` 表了解消息接收情况
- 查看 `ps_message_processing_logs` 表了解处理日志
- 查看 `ps_system_stats` 表了解系统统计
- 使用 `ps_recent_message_stats` 视图获取实时统计
## ✅ 完成状态
- [x] 数据库表结构更新
- [x] 应用代码适配
- [x] 文档更新
- [x] 配置检查工具更新
- [x] 视图和函数更新
- [x] 索引和约束更新
服务现在已准备就绪,可以在您的 Supabase 环境中部署和使用!