IndexController.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\BaseController;
  4. use App\Services\RedisService;
  5. use App\Services\WechatService;
  6. /**
  7. * 主控制器类
  8. * @author wesmiler
  9. * @since 2020/11/10
  10. * Class IndexController
  11. * @package App\Http\Controllers
  12. */
  13. class IndexController extends BaseController
  14. {
  15. /**
  16. * 构造函数
  17. * @author wesmiler
  18. * @since 2020/11/11
  19. * IndexController constructor.
  20. */
  21. public function __construct()
  22. {
  23. parent::__construct();
  24. }
  25. /**
  26. * 获取jssdk参数
  27. * @return array
  28. */
  29. public function jssdk(){
  30. $url = request()->get('url', '');
  31. $jssdkParams = WechatService::getJssdkParams($url);
  32. RedisService::set('caches:shares:'.date('YmdHis'), ['url'=> $url,'params'=> $jssdkParams], 600);
  33. return message(1005,true, $jssdkParams);
  34. }
  35. /**
  36. * 获取验证订单信息
  37. * @return array
  38. */
  39. public function orderInfo(){
  40. $orderSn = request()->get('out_trade_no');
  41. if(empty($orderSn)){
  42. return message('订单号参数错误', false);
  43. }
  44. $info = [];
  45. $prefix = substr($orderSn, 0,1);
  46. switch ($prefix){
  47. case 'G': // 供灯
  48. $info = $this->service->orderInfo($orderSn);
  49. break;
  50. case 'R': // 充值
  51. $info = $this->service->orderInfo($orderSn);
  52. break;
  53. }
  54. if($info){
  55. return message('获取订单信息失败', false);
  56. }else{
  57. return message('获取订单信息', true, $info);
  58. }
  59. }
  60. }