jc91715/promote

此包的最新版本(1.0.0)没有可用的许可证信息。

promote

1.0.0 2019-11-02 12:26 UTC

This package is not auto-updated.

Last update: 2024-09-30 10:45:37 UTC


README

促销活动.

安装

$ composer require jc91715/promote -vvv

用法

<?php

require_once('./vendor/autoload.php');


use Jc91715\Promote\PromoteManage;
use Jc91715\Promote\Promote\AbstractPromote;
use Jc91715\Promote\Rule\abstractRule;
use Jc91715\Promote\Action\ActionInterface;


class Promote extends AbstractPromote
{

}

class Rule extends abstractRule
{

    public function across()
    {
        echo "通过规则,购A\n";
        return true;
    }

}

class Rule1 extends abstractRule
{
    public function across()
    {
        echo "通过规则,打八折\n";
        return true;
    }

    public function execute()
    {
        echo "执行行为,订单打八折\n";
    }
}
class Action implements ActionInterface
{
    public function execute()
    {
        echo "执行行为,赠B\n";
    }

}

//特殊规则Rule和Action分离
$promote = new Promote();
$rule = new Rule();
$action = new Action();
$promote->addRule($rule);
$promote->addAction($action);



//一般规则只有Rule
$promote1 = new Promote();
$rule1= new Rule1();

$promote1->addRule($rule1);

$promoteManage=new PromoteManage();

$promoteManage->addPromote($promote);
$promoteManage->addPromote($promote1);

$promoteManage->apply();

输出

通过规则,购A
执行行为,赠B
通过规则,打八折
执行行为,订单打八折

贡献

您可以通过以下三种方式之一进行贡献:

  1. 使用问题跟踪器提交错误报告。
  2. 问题跟踪器上回答问题或修复错误。
  3. 贡献新功能或更新wiki。

代码贡献过程并不非常正式。您只需确保遵循PSR-0、PSR-1和PSR-2编码指南。任何新的代码贡献都必须伴随相应的单元测试(如果适用)。

许可证

MIT