simialbi / yii2-ticket
yii2的票务系统
2.0.0
2023-04-24 06:17 UTC
Requires
- php: >=5.6
- bower-asset/autosize: ^4.0.2
- bower-asset/resumablejs: ^1.1.0
- kartik-v/yii2-grid: ^3.3.0
- kartik-v/yii2-widget-select2: ^2.1.0
- rmrevin/yii2-fontawesome: ^3.4.0
- sandritsch91/yii2-widget-flatpickr: ^1.0.0
- simialbi/yii2-simialbi-base: >=0.10.1 <1.0 | ^1.0.0
- yiisoft/yii2: ^2.0.20
- yiisoft/yii2-bootstrap4: ^2.0.4
Requires (Dev)
- fortawesome/font-awesome: ^5.10.0
- phpunit/phpunit: <7
- simialbi/yii2-kanban: ^1.0.0
- simialbi/yii2-summernote: ^1.1.0
- yiisoft/yii2-coding-standards: ~2.0
Suggests
- simialbi/yii2-summernote: Install this extension to use rich text fields in comment fields
This package is auto-updated.
Last update: 2024-08-24 09:24:46 UTC
README
资源
安装
安装此扩展的首选方式是通过 composer。
运行以下命令:
$ php composer.phar require --prefer-dist simialbi/yii2-ticket
或者添加以下内容到您的 composer.json
中的 require
部分:
"simialbi/yii2-ticket": "^1.0.0"
使用方法
为了使用此模块,您需要
设置模块
在您的Yii配置文件的模块部分配置模块。
'modules' => [ 'ticket' => [ 'class' => 'simialbi\yii2\ticket\Module', //'richTextFields' => true, //'kanbanModule' => 'kanban', //'smsProvider' => 'smsProvider', //'canAssignTicketsToNonAgents' => false, //'on ticketCreated' => function ($event) {}, //[...] ] ]
参数
事件
设置控制台配置并应用迁移
使用以下命令应用迁移: yii migrate --migration-namespaces='simialbi\yii2\ticket\migrations'
或配置您的控制台如下
[ 'controllerMap' => [ 'migrate' => [ 'class' => 'yii\console\controllers\MigrateController', 'migrationNamespaces' => [ 'simialbi\yii2\ticket\migrations' ] ] ] ]
然后应用 yii migrate
命令。
请确保已配置authManager。迁移过程会创建本模块需要的角色。
创建身份
创建一个实现 simialbi\yii2\models\UserInterface
的身份类,例如。
<?php use yii\db\ActiveRecord; use simialbi\yii2\models\UserInterface; class User extends ActiveRecord implements UserInterface { /** * {@inheritDoc} */ public static function tableName() { return 'user'; } /** * {@inheritDoc} */ public static function findIdentity($id) { return static::findOne($id); } /** * {@inheritDoc} */ public static function findIdentityByAccessToken($token, $type = null) { return static::findOne(['access_token' => $token]); } /** * {@inheritDoc} */ public function getId() { return $this->id; } /** * {@inheritDoc} */ public function getAuthKey() { return $this->auth_key; } /** * {@inheritDoc} */ public function validateAuthKey($authKey) { return $this->getAuthKey() === $authKey; } /** * {@inheritDoc} */ public function getImage() { return $this->image; } /** * {@inheritDoc} */ public function getName() { return trim($this->first_name . ' ' . $this->last_name); } /** * {@inheritDoc} */ public function getEmail() { return $this->email; } /** * {@inheritDoc} */ public function getMobile() { return $this->mobile; } /** * {@inheritDoc} */ public static function findIdentities() { return static::find()->all(); } }
创建此类后,将其定义为您的应用程序配置中的身份类
'components' => [ 'user' => [ 'identityClass' => 'app\models\User' ] ]
分配角色给用户
迁移过程创建了本模块需要的角色和权限。您现在应该创建了以下角色
将角色分配给相应的用户。之后,您可以导航到 /ticket/topic
来管理您的票务主题(例如 IT
)。任何被分配角色的用户都可以导航到 /ticket
来查看自己的票务(ticketAuthor
)、分配主题的票务(ticketAgent
)或所有主题的所有票务(ticketAdministrator
)。
许可证
yii2-ticket 在MIT许可证下发布。有关详细信息,请参阅打包的 LICENSE。