bantenprov / workflow
用于管理和转换状态的 Workflow 包
1.0.1
2017-12-16 07:48 UTC
Requires
- php: >=5.6.4
- illuminate/support: 5.4.*
- laravelcollective/html: ^5.4.0
- that0n3guy/transliteration: 2.0.x
This package is not auto-updated.
Last update: 2024-09-19 05:08:27 UTC
README
工作流管理
用于在复杂业务流程中轻松管理状态和转换的工作流管理
此包的最终版本将包含一些非常酷的功能
- 工作流
- 工作流状态
- 工作流转换
- 工作流通知
- 工作流守卫
- 转换附件
- 附件
- 通知到
- 通知 cc
- 历史记录
工作流管理
此包的最终版本将包含一些非常酷的功能
工作流
- 定义工作流的名称和描述,每种内容类型可以包含多个工作流来管理其业务流程
状态
- 定义与工作流相关的状态名称集合,并描述业务流程中内容的最最新状态
转换
- 定义内容中任何状态之间的转换,此功能将处理移动转换
守卫
- 守卫给角色管理中与转换相关的角色一个或多个授权的权限
通知
- 当内容的状态发生变化或执行转换时,系统将向相关人员发送通知。通知将在用户桌面相关部分显示,并作为邮件通知。
待办事项
在使用之前,请查看 待办事项。
演示
此包的演示站点可在此处获取: 工作流。
安装 Laravel
$ composer create-project --prefer-dist laravel/laravel project-name "5.4.*"
安装包
$ composer require bantenprov/workflow "1.0.0"
编辑 config/config.php
编辑 config/app.php
提供者
'providers' => [ ... App\Providers\AppServiceProvider::class, App\Providers\AuthServiceProvider::class, App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, ... Collective\Html\HtmlServiceProvider::class, 'That0n3guy\Transliteration\TransliterationServiceProvider', Bantenprov\Workflow\WorkflowServiceProvider::class,
别名
'aliases' => [ ... 'Storage' => Illuminate\Support\Facades\Storage::class, 'URL' => Illuminate\Support\Facades\URL::class, 'Validator' => Illuminate\Support\Facades\Validator::class, 'View' => Illuminate\Support\Facades\View::class, ... 'Form' => Collective\Html\FormFacade::class, 'Html' => Collective\Html\HtmlFacade::class, 'Workflow' => Bantenprov\Workflow\Facades\Workflow::class,
Artisan 命令
$ php artisan vendor:publish --tag=workflow_migrations $ php artisan vendor:publish --tag=workflow_views $ php artisan vendor:publish --tag=workflow_css $ php artisan vendor:publish --tag=workflow_js $ php artisan migrate
使用示例
特质
1. WorkflowStateTrait
use Bantenprov\Workflow\Traits\WorkflowStateTrait; class WorkflowStateController extends Controller { use WorkflowStateTrait; public function index() { return WorkflowStateTrait::stateIndex(); } }
2. WorkflowTransitionTrait
use Bantenprov\Workflow\Traits\WorkflowTransitionTrait; class WorkflowTransitionController extends Controller { use WorkflowTransitionTrait; public function index() { return WorkflowStateTrait::transitionIndex(); } }
WorkflowStateTrait 示例
WorkflowTransitionTrait 示例
示例 2
在应用中使用
//Controller use Bantenprov\Workflow\Workflow ... public function SOMETHING() { $id = 1; return \Workflow::getStateName($id); }
//Controller use Bantenprov\Workflow\Workflow ... public function SOMETHING() { $id = 1; return \Workflow::getTransitionName($id); }
CSS
文件夹 style.css:public/css/style.css
<!-- layout.blade.php --> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Laravel</title> <!-- Fonts --> --> <link href="{{ asset('css/workflow_style.css') }}" rel="stylesheet" type="text/css">
JS
文件夹 custom.js:public/js/custom.js
<!-- layout.blade.php --> </div> </div> --> <script src="{{ asset('js/workflow_javascript.js') }}"></script> </body> </html>