borysenko / yii2-liqpay
liqpay.com 支付小部件
dev-master
2018-10-19 13:30 UTC
Requires
- php: >=5.4.0
- voskobovich/yii2-liqpay: *
- yiisoft/yii2: *
This package is auto-updated.
Last update: 2024-09-20 03:08:00 UTC
README
模块中包含用于通过 liqpay.com 进行订单支付的控件。
控件接收一个实现 interfaces/Order 接口订单模型。
成功支付后,liqpay 将调用回调,在当前订单中保存状态 payment,其值为 yes。
安装
在 Yii2 的 composer.json 文件中,将 "minimum-stability" 属性的值从 "stable" 更改为 "dev"。即应该这样
"minimum-stability": "dev"
- 这是因为此扩展会拉取其他扩展,其中 "minimum-stability": "dev"
执行以下命令
composer require borysenko/yii2-liqpay "*"
或者将以下内容添加到 composer.json 中
"borysenko/yii2-liqpay": "*",
然后执行
php composer update
连接和配置
在应用程序配置文件中添加 liqpay 模块
'modules' => [ 'liqpay' => [ 'class' => 'borysenko\liqpay\Module', 'public_key' => 'iNNNNNNNNNNN', 'private_key' => 'NzpRclCywaSOrm0LTpqDpPPlRDhoOQyIX1ISHjk', 'currency' => 'UAH', 'pay_way' => null, 'version' => 3, 'sandbox' => false, 'language' => 'ru', 'result_url' => '/page/thanks', 'paymentName' => 'Оплата заказа', 'orderModel' => 'frontend\models\Order', //Модель заказа. Эта модель должна имплементировать интерфейс borysenko\liqpay\interfaces\Order. В момент списания денег будет вызываться $model->setPaymentStatus('yes'). ], //... ],
订单模型
<?php namespace frontend\models; use Yii; use yii\db\ActiveRecord; Class Order extends ActiveRecord implements \borysenko\liqpay\interfaces\Order { public static function tableName() { return 'orders'; } public function getId() { return $this->id; } public function getCost() { return $this->cost; } function setPaymentStatus($status) { $this->payment = $status; return $this; } }
控件
负责输出支付表单的控件是 borysenko\liqpay\widgets\PaymentForm。
<?=\borysenko\liqpay\widgets\PaymentForm::widget([ 'autoSend' => true, 'orderModel' => $model, //Order::findOne($id); 'description' => 'Оплата заказа' ]);?>
- autoSend - 是否需要自动发送订单表单
- orderModel - 实现了 interfaces/Order 接口的订单模型实例
- description - 支付描述