感觉像是 官方 Laravel 包的帮助台
Eloquent 模型、Artisan 命令、Blade/Inertia 视图和原生迁移。Escalated 与 Laravel 深度集成,你的团队不会相信它只是一个包。
$ composer require escalated-dev/escalated-laravel为什么选择 Escalated
为什么 Laravel 选择 Escalated
构建得像是与框架一起发布的。
原生 Eloquent 模型
工单、回复、标签和活动都是 Eloquent 模型。像应用中的任何其他模型一样使用作用域、关系和查询构建器。
Artisan 命令
发布配置、运行迁移、填充演示数据,从命令行管理工单。与你现有的部署流程兼容。
为 Inertia.js 而建
通过 Inertia 渲染的共享 Vue UI。没有 iframe,没有单独的前端构建。感觉像是应用的原生部分。
开始使用
工作原理
从零到可用帮助台只需三步。
安装包
composer require escalated-dev/escalated-laravel
发布 & 迁移
php artisan escalated:install && php artisan migrate
挂载路由
将 Escalated 路由添加到 routes/web.php 即可上线。工单、对话和完整的客服仪表板——几分钟内就绪。
功能
Laravel 原生功能
你对官方包期望的所有集成点。
Eloquent 关系
工单属于用户,拥有多个回复,通过多态关系连接。像 Laravel 模型一样查询。
队列集成
邮件通知、Webhook 分发和 SLA 检查在 Laravel 的原生队列系统上运行。Redis、SQS 或数据库——由你选择。
基于策略的授权
开箱即用的 Gate 和 Policy 支持。使用标准 Laravel 授权控制谁可以查看、回复、分配和关闭工单。
事件系统
每个工单操作都触发一个 Laravel 事件。挂载到 TicketCreated、ReplyAdded、StatusChanged 等来构建自定义工作流。
中间件支持
将你现有的中间件应用到 Escalated 路由。认证、速率限制和租户范围限定按预期工作。
测试工厂
自带工单、回复和用户的模型工厂。使用你已经熟悉的模式编写功能测试。
代码
像回家一样
标准 Laravel 模式。没有需要学习的新东西。
// routes/web.php use Escalated\Escalated; Escalated::routes(); // app/Models/User.php use Escalated\Traits\HasTickets; class User extends Authenticatable { use HasTickets; } // Anywhere in your application $ticket = $user->tickets()->create([ 'subject' => 'Need help with billing', 'priority' => 'high', ]); $ticket->replies()->create([ 'body' => 'We\'ve updated your invoice.', 'user_id' => $agent->id, ]);