Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

AppOrderService.php 1.8 KiB

3 år sedan
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. *
  4. * ============================================================================
  5. * * 版权所有 蜘蛛出行 * *
  6. * 网站地址: http://www.zhizhuchuxing.com
  7. * ----------------------------------------------------------------------------
  8. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和
  9. * 使用;不允许对程序代码以任何形式任何目的的再发布。
  10. * ============================================================================
  11. * Author By: 倪宗锋
  12. * PhpStorm AppOrderService.php
  13. * Create By 2016/12/1 15:18 $
  14. */
  15. namespace Order\Service;
  16. use Base\Tool\WxPayService;
  17. use Util\Util\Util;
  18. class AppOrderService
  19. {
  20. /**
  21. * Function Description:支付回调接口
  22. * Function Name: notify
  23. * @param $getContent
  24. *
  25. * @return array
  26. *
  27. * @author 倪宗锋
  28. */
  29. public function notify($getContent)
  30. {
  31. //参数校验
  32. if (empty($getContent)) {
  33. return Util::returnArrEr('参数不能为空!');
  34. }
  35. $contentArray = Util::xmlToArray($getContent);//xml转换为数组
  36. $sign = WxPayService::getSign($contentArray, 2);//获取签名
  37. if ($contentArray['sign'] != $sign) {
  38. return Util::returnArrEr('签名不一致!');
  39. }
  40. //修改订单信息
  41. $orderString = $contentArray['out_trade_no'];//订单信息 下单时时 订单号拼接时间
  42. $oderArray = explode('-', $orderString);//剪切订单信息 获取订单号和下单时间
  43. $orderService = new OrderService();
  44. $result = $orderService->updateOrderStatus($oderArray[0], $oderArray[1]);//修改订单信息
  45. if ($result['flag'] == false) {//修改失败
  46. return $result;
  47. }
  48. return Util::returnArrSu();
  49. }
  50. }