trexology / promocodes
Laravel 5.1 版本促销码生成器
1.1
2016-08-18 03:26 UTC
Requires
- php: >=5.4.0
- laravel/framework: ~5.0
README
Laravel 5.* 版本促销码生成器
目录
安装
Composer
在您的终端运行 composer 命令。
composer require trexology/promocodes
Laravel
请首先阅读配置和迁移部分。创建 promocodes 表是必需的。
打开 config/app.php
并找到 providers
键。将 PromocodesServiceProvider
添加到数组中。
Trexology\Promocodes\PromocodesServiceProvider::class
找到 aliases
键并添加 Facade
到数组。
'Promocodes' => Trexology\Promocodes\Facades\Promocodes::class
用法
推荐
运行 php artisan make:model Promocode
并更新 app/Promocode.php
如下
/** * @var bool */ public $timestamps = false; /** * @var array */ protected $fillable = [ 'code', 'reward', 'quantity', 'is_used', ];
方法
您可以使用 generate
方法生成促销码。
唯一的参数是要生成的码的数量。
Promocodes::generate(5); // $amount = 1
- $amount int - 要生成的促销码的数量
此方法将返回一个包含 5 个元素的码数组
您可以使用以下方式立即生成并保存代码到您的数据库中
Promocodes::generateAndSave(5, 10.50); // $amount = 1, $reward = null
- $amount int - 要生成的促销码的数量
- $reward double - 每个促销码的奖励金额
这将生成 5 个码并将其插入到您的数据库中。
您可以使用以下方式生成并保存具有确切名称的代码到您的数据库中
Example: Promocodes::generateCodeName("OFF20%", 0.2); // $reward = null (percentage discount) Promocodes::generateCodeName("5SGDOFF", 5); // $reward = null (dollar discount)
- $code string - 要生成的确切促销码名称
- $reward double - 每个促销码的奖励金额
如果代码名称已存在,此方法将返回 false
使用 check
方法检查代码。
方法返回布尔值。
$valid = Promocodes::check('TEST-CODE'); // $promocode
- $promocode string - 将检查是否设置并应用给当前用户的促销码
最后,使用 apply
方法使用代码。
方法返回布尔值。
$applied = Promocodes::apply('TEST-CODE', true); // $promocode, $hard_check = false
- $promocode string - 将检查是否设置并应用于当前用户的促销码
- $hard_check boolean - 如果为 false 或 null,您将仅获得已检查促销码的布尔值。如果为 true,您将获得奖励金额作为 double 或 false。
如果方法返回 false,则代码已被使用或它不是有效的
配置和迁移
使用命令发布 Promocodes 配置和迁移文件
php artisan vendor:publish
已创建文件 config\promocodes.php
。您可以在其中更改配置。已创建迁移文件,现在您可以简单地运行 php artisan migrate
,这样就完成了,您将拥有促销码表。
许可协议
Promocodes 是一个开源的 Laravel 包,许可协议为 MIT 协议
待办事项
- 为供应商发布创建迁移