| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- <?php
- namespace addons\UnionPay\common\global_func;
- use addons\UnionPay\common\enums\UnionPayEnum;
- use common\enums\PayTypeEnum;
- use common\models\user\User;
- use Yii;
- use yii\helpers\Json;
- /**
- * 获取支付方式公共调用
- */
- class PaymentList
- {
- /**
- * 获取支付方式
- *
- * @param array $params
- * @return array
- */
- public static function getPaymentList($params)
- {
- // 当前商城ID
- $mall_id = $params['mall_id'];
- // 当前平台
- $app_platform = $params['app_platform']; // 平台类型
- $configs = \Yii::$app->services->setting->addons->get($mall_id, UnionPayEnum::ADDONS_NAME, 'basic');
- if (empty($configs['is_enable'])) return [];
- $wechat_trade_name = '通联微信';
- $alipay_trade_name = '通联支付宝';
- $fastpay_trade_name = '银联支付';
- if (!empty($configs['wechat_trade_name'])) $wechat_trade_name = $configs['wechat_trade_name'];
- if (!empty($configs['wechat_trade_name'])) $alipay_trade_name = $configs['alipay_trade_name'];
- if (!empty($configs['fastpay_trade_name'])) $fastpay_trade_name = $configs['fastpay_trade_name'];
- $way = [];
- $api_url = \Yii::$app->services->setting->platform->get('system.api_url');
- switch ($app_platform) {
- case User::TYPE_H5:
- if (!empty($configs['wechat_h5_open'])) {
- $way[] = [
- 'action' => 'W02',
- 'img' => $api_url . '/resources/img/payment/wechat.png',
- 'name' => $wechat_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'W02',
- ];
- }
- if (!empty($configs['mp_wx_cashier_open'])) {
- $way[] = [
- 'action' => 'W06-CASHIER',
- 'img' => $api_url . '/resources/img/payment/wechat.png',
- 'name' => $wechat_trade_name.'-收银台',
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'W06-CASHIER',
- ];
- }
- if (!empty($configs['alipay_h5_open'])) {
- $way[] = [
- 'action' => 'A01',
- 'img' => $api_url . '/resources/img/payment/alipay.png',
- 'name' => $alipay_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'A01',
- ];
- }
- break;
- case User::TYPE_APP:
- if (!empty($configs['wechat_app_open'])) {
- $way[] = [
- 'action' => 'W06',
- 'img' => $api_url . '/resources/img/payment/wechat.png',
- 'name' => $wechat_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'W06',
- ];
- }
- if (!empty($configs['alipay_app_open'])) {
- $way[] = [
- 'action' => 'A01',
- 'img' => $api_url . '/resources/img/payment/alipay.png',
- 'name' => $alipay_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'A01',
- ];
- }
- break;
- case User::TYPE_WECHAT:
- if (!empty($configs['wechat_open'])) {
- $way[] = [
- 'action' => 'W02',
- 'img' => $api_url . '/resources/img/payment/wechat.png',
- 'name' => $wechat_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'W02',
- ];
- }
- break;
- case User::TYPE_MP_WX:
- if (!empty($configs['mp_wx_open'])) {
- $way[] = [
- 'action' => 'W06',
- 'img' => $api_url . '/resources/img/payment/wechat.png',
- 'name' => $wechat_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'W06',
- ];
- }
- if (!empty($configs['mp_wx_cashier_open'])) {
- $way[] = [
- 'action' => 'W06-CASHIER',
- 'img' => $api_url . '/resources/img/payment/wechat.png',
- 'name' => $wechat_trade_name.'-收银台',
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'W06-CASHIER',
- ];
- }
- break;
- }
- if (!empty($configs['fastpay_js_open'])) {
- $way[] = [
- 'action' => 'fast_pay',
- 'img' => $api_url . '/resources/img/payment/joinpay_fast.png',
- 'name' => $fastpay_trade_name,
- 'pay_type' => PayTypeEnum::UNIONPAY,
- 'trade_type' => 'fast_pay',
- ];
- }
- return $way;
- }
- /**
- * 获取支付方式
- *
- * @param array $params
- * @return array
- */
- public static function getPaymentType($params)
- {
- // 当前商城ID
- $mall_id = $params['mall_id'];
- $configs = \Yii::$app->services->setting->addons->get($mall_id, UnionPayEnum::ADDONS_NAME, 'basic');
- if (empty($configs['is_enable'])) return [];
- $enable_pay_type[] = [
- "name" => "通联支付",
- "pay_type" => PayTypeEnum::UNIONPAY
- ];
- return $enable_pay_type;
- }
- }
|