joegabdelsater / promo-codes
此包是一个即插即用的包,可以将促销代码折扣功能添加到您的项目中
2.0.0
2023-06-01 10:12 UTC
README
这是一个简单的包,可以将促销代码折扣功能添加到任何网站。它独立于其他功能。
注意:您应该有用户模型/表存在。
安装
composer require joegabdelsater/promo-codes
用法
要使用库,您需要在文件顶部添加此行以使用外观
use Joegabdelsater\PromoCodes\Facades\PromoCodes;
函数
生成促销代码
要生成促销代码,调用 generate() 方法。该方法接受以下参数
$length (可选)
:促销代码的长度。默认为 8。$prefix (可选)
:添加到促销代码的前缀。默认为空字符串。$discount (可选)
:折扣金额。默认为 0。$maxUses (可选)
:促销代码可以使用的最大次数。默认为 null。$validFrom (可选)
:促销代码有效的日期和时间。默认为 null。$validTo (可选)
:促销代码有效的截止日期和时间。默认为 null。
示例
PromoCodes::generate(10, 'DISCOUNT', 10, 100, '2022-01-01 00:00:00', '2022-12-31 23:59:59');
验证促销代码
要验证促销代码,调用 validate() 方法。该方法接受促销代码作为参数,如果有效则返回促销代码对象,如果无效则返回包含错误信息的数组。
示例用法
PromoCodes::validate('DISCOUNT-5D8S0A5K5L')
// 返回 ['status' => false, 'message' => '代码无效的原因']
或
// 返回 ['status' => true, 'code' => '代码详情']
应用代码
要应用促销代码,使用 apply() 方法。该方法接受促销代码作为参数,如果有效则返回促销代码对象,如果无效则返回包含错误信息的数组。
示例用法:PromoCodes::apply('DISCOUNT-5D8S0A5K5L')
计算折扣金额
在应用促销代码后计算折扣金额,调用 calculate() 方法。该方法接受以下参数
$amount
:折扣前的原始金额。$discount_type
:折扣类型,可以是 'percentage' 或 'fixed'。$discount_amount
:折扣金额。
PromoCodes::calculate(100, 'percentage', 10)