Files
cunkebao_v3/Server/.cursor/rules/06-data-models.mdc
2025-05-07 17:43:39 +08:00

97 lines
3.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
description:
globs:
alwaysApply: false
---
# 数据模型
系统使用ThinkPHP的ORM框架进行数据库操作主要模型如下
## 核心模型
### 设备相关
- **Device模型** - 设备信息
- 位置:[application/common/model/Device.php](mdc:application/common/model/Device.php)
- 主要字段id, name, device_id, status, online_status, created_at, updated_at
- **DeviceWechat模型** - 设备上的微信账号
- 位置:[application/common/model/DeviceWechat.php](mdc:application/common/model/DeviceWechat.php)
- 主要字段id, device_id, wechat_id, status, login_status, created_at, updated_at
### 微信相关
- **Wechat模型** - 微信账号信息
- 位置:[application/common/model/Wechat.php](mdc:application/common/model/Wechat.php)
- 主要字段id, wxid, nickname, avatar, gender, country, province, city, created_at, updated_at
- **WechatFriend模型** - 微信好友
- 位置:[application/common/model/WechatFriend.php](mdc:application/common/model/WechatFriend.php)
- 主要字段id, wechat_id, wxid, nickname, remark, avatar, gender, created_at, updated_at
- **WechatChatroom模型** - 微信群
- 位置:[application/common/model/WechatChatroom.php](mdc:application/common/model/WechatChatroom.php)
- 主要字段id, chatroom_id, name, owner_wxid, member_count, created_at, updated_at
### 内容相关
- **ContentLibrary模型** - 内容库
- 位置:[application/common/model/ContentLibrary.php](mdc:application/common/model/ContentLibrary.php)
- 主要字段id, title, content, type, category_id, tags, created_at, updated_at
- **ContentCategory模型** - 内容分类
- 位置:[application/common/model/ContentCategory.php](mdc:application/common/model/ContentCategory.php)
- 主要字段id, name, parent_id, sort, created_at, updated_at
### 工作台相关
- **Task模型** - 任务
- 位置:[application/common/model/Task.php](mdc:application/common/model/Task.php)
- 主要字段id, name, type, status, config, created_at, updated_at
- **Plan模型** - 计划
- 位置:[application/common/model/Plan.php](mdc:application/common/model/Plan.php)
- 主要字段id, name, type, status, config, schedule, created_at, updated_at
### 流量相关
- **TrafficPool模型** - 流量池
- 位置:[application/common/model/TrafficPool.php](mdc:application/common/model/TrafficPool.php)
- 主要字段id, name, description, created_at, updated_at
- **TrafficTag模型** - 流量标签
- 位置:[application/common/model/TrafficTag.php](mdc:application/common/model/TrafficTag.php)
- 主要字段id, name, color, created_at, updated_at
## 模型关联
系统中的模型通过ThinkPHP的关联关系进行关联
- Device模型 hasMany DeviceWechat模型
- DeviceWechat模型 belongsTo Device模型
- DeviceWechat模型 belongsTo Wechat模型
- Wechat模型 hasMany WechatFriend模型
- Wechat模型 hasMany WechatChatroom模型
- ContentLibrary模型 belongsTo ContentCategory模型
## 模型使用示例
```php
// 查询设备列表
$devices = Device::where('status', 1)->order('id', 'desc')->paginate(10);
// 关联查询设备上的微信账号
$device = Device::with('wechats')->find($deviceId);
// 创建新设备
$device = new Device;
$device->name = '设备名称';
$device->device_id = 'DEVICE_123456';
$device->status = 1;
$device->save();
```
## 数据验证
模型验证规则定义在对应的验证器类中,位于`application/模块名/validate/`目录下。