alessiobrendt/laravel-tickets

提供支持的简单而有效的解决方案

1.1 2023-07-01 12:32 UTC

This package is auto-updated.

Last update: 2024-09-30 01:49:09 UTC


README

Latest Version on Packagist Build Status Quality Score Total Downloads

简单而有效的支持解决方案。由于其轻量级构造,它适用于任何项目。此外,它从一开始就提供广泛的配置选项,因此适用于任何领域。

特点

  • 高度可配置
  • 自动关闭
  • 支持文件上传
  • 支持权限
  • 工单类别
  • 优先级
  • 易于定制
  • 支持uuid
  • 声明工单引用
  • 支持多语言

预览

工单列表: ticket list 工单创建: ticket create 工单显示: ticket show

待办事项

  • 改进文档
  • Tailwind 和 Vue 前端
  • 管理员工单脚手架
  • 单元测试
  • uuid
    • 规则
    • 迁移
    • 控制器内容

安装

您可以通过 composer 安装此包

composer require rexlmanu/laravel-tickets

安装后

php artisan vendor:publish --provider=RexlManu\LaravelTickets\LaravelTicketsServiceProvider

文档

目前仅实现了 bootstrap 的视图。发布后,应实现布局。

应将 HasTickets 特性添加到用户模型中

use RexlManu\LaravelTickets\Traits\HasTickets;

class User
{
    use HasTickets; // important for laravel-tickets
}

可以通过宏实现工单路由

use Illuminate\Routing\Controller;
use RexlManu\LaravelTickets\Controllers\TicketControllable;

class TicketController extends Controller {

  use TicketControllable;

}

Route::tickets( TicketController::class );

对于工单引用

use Illuminate\Database\Eloquent\Model;
use RexlManu\LaravelTickets\Interfaces\TicketReference;
use RexlManu\LaravelTickets\Traits\HasTicketReference;

class ExampleModel extends Model implements TicketReference {

  use HasTicketReference;

  // Check if user has access to this model
  function hasReferenceAccess() : bool {
      return request()->user()->user_id == $this->user_id;
  }

}

现在将此模型添加到引用模型列表中,然后您应将其视为引用模型

配置:所有配置点都有文档说明。

测试

composer test

贡献

请参阅 CONTRIBUTING 以获取详细信息。

安全性

如果您发现任何与安全性相关的问题,请通过电子邮件 rexlmanude@gmail.com 而不是使用问题跟踪器。

致谢

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件