Pay.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. /**
  3. * Pay.php
  4. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  5. * =========================================================
  6. * Copy right 2015-2025 山西牛酷信息科技有限公司, 保留所有权利。
  7. * ----------------------------------------------
  8. * 官方网址: http://www.niushop.com.cn
  9. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用。
  10. * 任何企业和个人不允许对程序代码以任何形式任何目的再发布。
  11. * =========================================================
  12. * @author : niuteam
  13. * @date : 2015.1.17
  14. * @version : v1.0.0.0
  15. */
  16. namespace app\api\controller;
  17. use app\model\system\Pay as PayModel;
  18. /**
  19. * 支付控制器
  20. */
  21. class Pay extends BaseApi
  22. {
  23. /**
  24. * 支付信息
  25. */
  26. public function info()
  27. {
  28. $out_trade_no = $this->params['out_trade_no'];
  29. $pay = new PayModel();
  30. $info = $pay->getPayInfo($out_trade_no);
  31. return $this->response($info);
  32. }
  33. /**
  34. * 支付调用
  35. */
  36. public function pay()
  37. {
  38. $token = $this->checkToken();
  39. if ($token['code'] < 0) return $this->response($token);
  40. $pay_type = $this->params['pay_type'];
  41. $out_trade_no = $this->params['out_trade_no'];
  42. $pay = new PayModel();
  43. $info = $pay->getPayInfo($out_trade_no);
  44. $app_type = 'pc';
  45. $pay = new PayModel();
  46. $info = $pay->pay($pay_type, $out_trade_no, $app_type, $this->member_id,$info['data']['event']);
  47. return $this->response($info);
  48. }
  49. /**
  50. * 支付方式
  51. */
  52. public function type()
  53. {
  54. $pay = new PayModel();
  55. $info = $pay->getPayType($this->params);
  56. $temp = empty($info) ? [] : $info;
  57. $type = [];
  58. foreach ($temp['data'] as $k => $v) {
  59. array_push($type, $v["pay_type"]);
  60. }
  61. $type = implode(",", $type);
  62. return $this->response(success(0, '', [ 'pay_type' => $type ]));
  63. }
  64. /**
  65. * 获取订单支付状态
  66. */
  67. public function status(){
  68. $pay = new PayModel();
  69. $out_trade_no = $this->params['out_trade_no'];
  70. $res = $pay->getPayStatus($out_trade_no);
  71. return $this->response($res);
  72. }
  73. }