Alipay.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\wap\controller;
  12. use basic\WapBasic;
  13. use service\AlipayTradeWapService;
  14. use service\UtilService;
  15. /**
  16. * 支付宝支付
  17. * Class Alipay
  18. * @package app\wap\controller
  19. */
  20. class Alipay extends WapBasic
  21. {
  22. protected function _initialize()
  23. {
  24. parent::_initialize(); // TODO: Change the autogenerated stub
  25. $this->assign('overallShareWechat', json_encode([]));
  26. $this->assign('userInfo', ['uid' => 0]);
  27. }
  28. /**
  29. * 支付页微信端提示切换浏览器,其他浏览器直接支付
  30. * @param string $info 加密后的支付参数
  31. * @return mixed|void
  32. */
  33. public function index($info = '',$params = false)
  34. {
  35. if (!$info) return $this->failed('缺少支付参数');
  36. $info = json_decode(base64_decode($info), true);
  37. if (!$info) return $this->failed('缺少支付参数');
  38. $isWechat = UtilService::isWechatBrowser();
  39. if ($isWechat) {
  40. return $this->fetch();
  41. } else {
  42. AlipayTradeWapService::init()->AliPayWap($info['orderId'], $info['pay_price'], $info['orderName'], $params);
  43. }
  44. }
  45. /**
  46. * 支付宝同步回调
  47. * @return mixed
  48. */
  49. public function alipay_success_synchro()
  50. {
  51. $res = AlipayTradeWapService::init()->AliPayReturn();
  52. $result = $res['result'];
  53. if ($result) $is_pay = true;
  54. else $is_pay = false;
  55. $this->assign('is_pay', $is_pay);
  56. return $this->fetch();
  57. }
  58. /**
  59. * 支付宝异步回调
  60. */
  61. public function alipay_success_notify()
  62. {
  63. AlipayTradeWapService::handleNotify();
  64. }
  65. }