# SMM Matrix - 社交媒体营销工具
## 项目概述
- **项目类型**:SMM(Social Media Marketing)SaaS平台 - 社交媒体营销自动化工具
- **主要功能**:
- 社交媒体服务订单管理(Instagram、Facebook、Twitter、YouTube等平台的点赞、粉丝、评论等服务)
- 自动化订单处理和API集成
- 多层级代理/分销商系统(Child Panel)
- 支付网关集成(Stripe、PayPal、Razorpay等20+种支付方式)
- 用户钱包和充值系统
- 批量订单处理(Mass Order)
- 滴灌式订单投放(Drip Feed)
- 工单支持系统
- 推荐返利系统
- KYC实名认证
- 多语言支持
- 博客和CMS功能
- **技术栈**:
- **后端**:PHP 8.1+, Laravel 10.x
- **前端**:Blade模板, Bootstrap, jQuery
- **数据库**:MySQL/MariaDB
- **缓存**:Redis (Predis)
- **队列**:Laravel Queue
- **实时通信**:Pusher, Laravel Broadcasting
- **支付**:Stripe, PayPal, Razorpay, Flutterwave, Mollie等20+网关
- **存储**:AWS S3, FTP, SFTP支持
- **模块系统**:nwidart/laravel-modules(模块化架构)
## 模块结构
```
project/
├── app/
│ ├── Console/ # 命令行工具
│ ├── Exceptions/ # 异常处理
│ ├── Http/
│ │ ├── Controllers/ # 控制器
│ │ │ ├── Admin/ # 后台管理控制器
│ │ │ ├── User/ # 用户端控制器
│ │ │ └── Auth/ # 认证控制器
│ │ ├── Middleware/ # 中间件
│ │ └── Requests/ # 表单请求验证
│ ├── Models/ # Eloquent模型
│ ├── Providers/ # 服务提供者
│ └── Services/ # 业务服务层
├── Modules/ # 模块化扩展
│ └── ChildPanel/ # 子代理面板模块
├── config/ # 配置文件
├── database/
│ ├── migrations/ # 数据库迁移
│ └── seeders/ # 数据填充
├── resources/
│ ├── views/ # Blade视图模板
│ ├── css/ # 样式文件
│ └── js/ # JavaScript文件
├── routes/ # 路由定义
│ ├── web.php # Web路由
│ ├── api.php # API路由
│ └── channels.php # 广播频道
└── public/ # 公共资源
```
### 核心模块说明
1. **订单管理模块 (Order Management)**
- 服务分类和提供商管理
- 订单创建、编辑、状态跟踪
- 批量订单导入处理
- 滴灌式投放控制
2. **支付与财务模块 (Payment & Finance)**
- 多支付网关集成
- 用户钱包系统
- 交易记录和充值管理
- 自动对账和退款处理
3. **代理分销模块 (Child Panel)**
- 子面板创建和管理
- 价格 markup 设置
- 独立域名支持
- 分润统计
4. **用户管理模块 (User Management)**
- 用户注册、登录、KYC
- 角色权限系统
- 推荐返利追踪
- API密钥管理
5. **内容管理模块 (CMS)**
- 博客系统
- 页面管理
- 多语言支持
- SEO优化工具
## 核心业务逻辑
### 1. 订单处理流程
```
用户下单 → 余额检查 → 价格计算 → 支付处理 → 订单提交 → API转发 → 状态同步
↓
余额不足 → 充值请求 → 支付网关 → 余额更新 → 订单提交
```
**关键业务逻辑**:
- 服务提供商API集成:通过API将订单转发到上游供应商
- 自动价格计算:基于服务商成本 + 平台利润 markup
- 订单状态自动同步:定时任务轮询订单状态更新
- 余额预扣机制:下单时预扣余额,失败时自动退款
### 2. 代理分销模式
```
主平台 → 子代理面板 → 终端用户
↓ ↓
价格设置 自定义价格
分润结算 独立品牌
```
**核心逻辑**:
- 子面板拥有独立域名和品牌形象
- 代理可以设置自己的服务价格(基于成本价 markup)
- 订单实际由主平台处理,代理赚取差价
- 支持多级分销(通过Module扩展)
### 3. 支付与钱包系统
**支付流程**:
1. 用户选择充值金额和支付方式
2. 生成交易记录(Transaction)
3. 跳转到第三方支付网关
4. 支付成功后回调更新余额
5. 支持自动汇率转换
**支持的支付网关**:
- 国际:Stripe、PayPal、Razorpay、Flutterwave、Mollie、Paytm、MercadoPago等
- 加密货币:CoinGate
- 银行转账:Authorize.net、Iyzico、Midtrans等
### 4. 推荐返利系统
- 每个用户拥有唯一推荐码
- 被推荐用户消费时,推荐人获得佣金
- 支持多级返利(可配置)
- 佣金可提现或转为余额
## 核心代码分析
### 1. 订单控制器核心逻辑
```php
// app/Http/Controllers/User/OrderController.php
class OrderController extends Controller
{
// 订单创建核心逻辑
public function store(OrderRequest $request)
{
// 1. 验证服务可用性和用户权限
// 2. 计算订单价格(含markup)
// 3. 检查用户余额
// 4. 预扣余额
// 5. 创建订单记录
// 6. 调用服务商API
// 7. 更新订单状态
// 8. 记录交易日志
}
// 批量订单处理
public function massOrderStore(Request $request)
{
// 解析CSV/Excel批量订单
// 批量验证和创建
// 异步处理队列
}
}
```
### 2. 支付处理核心
```php
// app/Http/Controllers/User/PaymentController.php
class PaymentController extends Controller
{
// 支付确认处理
public function depositConfirm($trx_id)
{
// 验证交易记录
// 根据支付方式路由到对应处理器
// 处理支付回调
// 更新用户余额
// 触发订单处理(如有待处理订单)
}
// IPN回调处理
public function gatewayIpn($code, $trx = null, $type = null)
{
// 验证回调签名
// 更新支付状态
... (content truncated)