PHPackages                             cncoders/thinkphp-order - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. cncoders/thinkphp-order

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

cncoders/thinkphp-order
=======================

a simple order library with thinkphp6

1.0.1(6y ago)4132MITPHPPHP &gt;=5.6

Since Nov 2Pushed 6y ago2 watchersCompare

[ Source](https://github.com/cncoders/thinkphp-order)[ Packagist](https://packagist.org/packages/cncoders/thinkphp-order)[ Docs](https://github.com/cncoders/thinkphp-order.git)[ RSS](/packages/cncoders-thinkphp-order/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

thinkphp-order
==============

[](#thinkphp-order)

提供了一个观察者以及一个基础订单生成 基础的优惠券处理 以及运费处理的观察器，对于不同业务自己可以扩展不同的观察器，以下为示例

```

$cart = array(
	array('goods_id' => 1, 'goods_name' => '课程一', 'price' => 9.9, 'num' => 2),
	array('goods_id' => 2, 'goods_name' => '课程2', 'price' => 19.9, 'num' => 1),
	array('goods_id' => 3, 'goods_name' => '课程3', 'price' => 29.9, 'num' => 3),
);

$decorator = new OrderDecorator($cart);

//先处理成基础订单
$decorator->addDecorator(new BaseDecorator());

//对订单的优惠券处理
$coupon_id      = 1;
$coupon_price   = 20;
$coupon_where   = 100;
$decorator->addDecorator(new CouponDecorator($coupon_id, $coupon_price, $coupon_where, true));

$decorator->addDecorator(new DeliveryDecorator(8, 288));

$order = $decorator->boot();

```

如果需要扩展或者改变为自己的处理只需要在自己的应用目录建立Decorator文件继承DecoratorInterface实现其中的方法，DecoratorInterface 需要实现以下方法

```
