PaymentGlobal.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. namespace common\globals;
  3. use common\globals\BaseGlobal;
  4. use common\globals\GlobalInvoke;
  5. use common\models\common\AddonsInvoker;
  6. class PaymentGlobal extends BaseGlobal
  7. {
  8. ##########################################################################################################
  9. # 支付返回数据格式
  10. ##########################################################################################################
  11. /**
  12. * 支付
  13. * @param [type] $invokes
  14. * @param array $params
  15. * @return array
  16. */
  17. public function pay($invokes, $params = [])
  18. {
  19. $return = [];
  20. foreach ($invokes as $invoke) {
  21. try {
  22. $return = $this->invoke($invoke['class'], $invoke['method'], $params);
  23. $is_success = $this->validateInvokeReturn($params['invoke_id'], $return);
  24. if ($is_success) {
  25. if(!empty($return)){
  26. break;
  27. }
  28. } else {
  29. throw new \Exception('结果数据格式校验未通过');
  30. }
  31. } catch (\Exception $e) {
  32. throw $e;
  33. }
  34. }
  35. return $return;
  36. }
  37. /**
  38. * 验证调用结果
  39. * @param [type] $return
  40. * @return boolean
  41. */
  42. protected function validatePay($return = null): bool
  43. {
  44. return true;
  45. }
  46. }