IndexController.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\BaseController;
  4. use App\Services\AdService;
  5. use App\Services\CityService;
  6. use App\Services\ConfigService;
  7. use App\Services\GongdengOrderService;
  8. use App\Services\RechargeService;
  9. use App\Services\RedisService;
  10. use App\Services\WechatService;
  11. /**
  12. * 主控制器类
  13. * @author wesmiler
  14. * @since 2020/11/10
  15. * Class IndexController
  16. * @package App\Http\Controllers
  17. */
  18. class IndexController extends BaseController
  19. {
  20. /**
  21. * 构造函数
  22. * @author wesmiler
  23. * @since 2020/11/11
  24. * IndexController constructor.
  25. */
  26. public function __construct()
  27. {
  28. parent::__construct();
  29. $this->gdService = new GongdengOrderService();
  30. $this->rechargeService = new RechargeService();
  31. $this->cityService = new CityService();
  32. $this->adServices = new AdService();
  33. }
  34. /**
  35. * 获取首页广告轮播数据
  36. * @return array
  37. */
  38. public function banners(){
  39. $banners = $this->adServices->geListBySort(1);
  40. $advert1 = $this->adServices->geListBySort(2);
  41. $advert2 = $this->adServices->geDataBySort(3);
  42. $data = [
  43. 'banners'=> $banners? $banners : [],
  44. 'advert1'=> $advert1? $advert1 : [],
  45. 'advert2'=> $advert2? $advert2 : [],
  46. ];
  47. return message(1005, true, $data);
  48. }
  49. /**
  50. * 获取jssdk参数
  51. * @return array
  52. */
  53. public function jssdk(){
  54. $url = request()->get('url', '');
  55. $jssdkParams = WechatService::getJssdkParams($url);
  56. RedisService::set('caches:shares:'.date('YmdHis'), ['url'=> $url,'params'=> $jssdkParams], 600);
  57. return message(1005,true, $jssdkParams);
  58. }
  59. /**
  60. * 城市列表
  61. * @return array
  62. */
  63. public function city(){
  64. return $this->cityService->getPickerList();
  65. }
  66. /**
  67. * 邀请奖励参数
  68. * @return array
  69. */
  70. public function inviteParams(){
  71. $config = ConfigService::make()->getConfigByGroup(14);
  72. return message(1005,true, $config);
  73. }
  74. /**
  75. * 邀请奖励参数
  76. * @return array
  77. */
  78. public function vipParams(){
  79. $config = ConfigService::make()->getConfigByGroup(15);
  80. return message(1005,true, $config);
  81. }
  82. /**
  83. * 平台参数
  84. * @return array
  85. */
  86. public function params(){
  87. $config = ConfigService::make()->getConfigByGroup(16);
  88. return message(1005,true, $config);
  89. }
  90. /**
  91. * 获取验证订单信息
  92. * @return array
  93. */
  94. public function orderInfo(){
  95. $orderSn = request()->get('order_sn');
  96. if(empty($orderSn)){
  97. return message('订单号参数错误', false);
  98. }
  99. $info = [];
  100. $prefix = substr($orderSn, 0,1);
  101. switch ($prefix){
  102. case 'G': // 供灯
  103. $info = $this->gdService->orderInfo($orderSn);
  104. break;
  105. case 'R': // 充值
  106. $info = $this->rechargeService->orderInfo($orderSn);
  107. break;
  108. }
  109. if($info){
  110. return message('获取订单信息', true, $info);
  111. }else{
  112. return message('获取订单信息失败', false);
  113. }
  114. }
  115. public function banner(){
  116. }
  117. }