GameController.php 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. <?php
  2. /**
  3. * GameController.php UTF-8
  4. * 小程序游戏类
  5. *
  6. * @date : 2018/8/15 13:52
  7. *
  8. * @license 这不是一个自由软件,未经授权不许任何使用和传播。
  9. * @author : luowei <lw@huosdk.com>
  10. * @version : HuoMP 1.0
  11. */
  12. namespace box\api\controller;
  13. use box\common\controller\V2ApiBaseController;
  14. use huo\controller\game\Game;
  15. use huo\model\user\UserModel;
  16. use huolib\constant\CategoryConst;
  17. use huolib\constant\GameConst;
  18. use huolib\status\CommonStatus;
  19. use huomp\logic\game\GameMiniCateListLogic;
  20. use huomp\logic\game\GameMiniListLogic;
  21. class GameController extends V2ApiBaseController {
  22. /**
  23. * 游戏列表
  24. * http://doc.1tsdk.com/159?page_id=4393
  25. * 【域名】/game/list
  26. */
  27. public function index() {
  28. //$this->checkLogin();
  29. $_page = get_val($this->rq_data, 'page', 1);
  30. $_offset = get_val($this->rq_data, 'offset', 10);
  31. $_rank_type = get_val($this->rq_data, 'rank_type', GameConst::RANK_TYPE_RECOMMEND);
  32. if (!array_key_exists($_rank_type, GameConst::getRankTypeMsg(0, true))) {
  33. $_code = CommonStatus::INVALID_PARAMS;
  34. $this->error(CommonStatus::getMsg($_code), [], $_code);
  35. }
  36. $_agent_id = 0;
  37. $_mem_id = $this->mem_id;
  38. if (!empty($_mem_id)) {
  39. $_agent_id = (new UserModel())->getIdByMemId($_mem_id);
  40. if (empty($_agent_id)) {
  41. $_code = CommonStatus::INVALID_PARAMS;
  42. $this->error(CommonStatus::getMsg($_code), [], $_code);
  43. }
  44. }
  45. $_param = ['status' => GameConst::GAME_STATUS_ON, 'classify' => GameConst::GAME_MP];
  46. $_page = $_page.','.$_offset;
  47. $_rdata = (new GameMiniListLogic())->getGameMiniList($_agent_id, $_param, $_page, $_rank_type);
  48. $_code = CommonStatus::NO_ERROR;
  49. $this->success(CommonStatus::getMsg($_code), $_rdata, $_code);
  50. }
  51. /**
  52. * 游戏轮播列表
  53. * http://doc.1tsdk.com/159?page_id=4396
  54. * 【域名】/game/slide/list
  55. */
  56. public function slideList() {
  57. $_rdata = (new GameMiniListLogic())->getSlideList();
  58. $_code = CommonStatus::NO_ERROR;
  59. $this->success(CommonStatus::getMsg($_code), $_rdata, $_code);
  60. }
  61. /**
  62. * 游戏详情
  63. * http://doc.1tsdk.com/159?page_id=4496
  64. * 【域名】/game/detail
  65. */
  66. public function read() {
  67. $_device_rq = $this->setDeviceData();
  68. $_app_id = get_val($this->rq_data, 'game_id'); /* 游戏id */
  69. if (empty($_app_id)) {
  70. $this->error(lang('app_id is null'));
  71. }
  72. $_device_rq->setFrom(GameConst::GAME_MP_BOX);
  73. $_rs = (new Game())->getDetail($_app_id, $this->mem_id, $_device_rq->getFrom());
  74. $_data = isset($_rs['data']) ? $_rs['data'] : [];
  75. $this->success(lang('SUCCESS'), $_data);
  76. }
  77. /**
  78. * 单栏目游戏列表912
  79. * http://doc.1tsdk.com/159?page_id=4637
  80. * 【域名】/tag/game/list
  81. */
  82. public function getTagIndex() {
  83. $_cate_id = get_val($this->rq_data, 'type_id'); /* 类型ID */
  84. if (empty($_cate_id)) {
  85. $this->error(lang('type_id is null'));
  86. }
  87. $_page = get_val($this->rq_data, 'page', 1);
  88. $_offset = get_val($this->rq_data, 'offset', 10);
  89. $_page = $_page.','.$_offset;
  90. $_param['cate_id'] = $_cate_id;
  91. $_param['mem_id'] = $this->mem_id;
  92. $_param['status'] = GameConst::GAME_STATUS_ON;
  93. $_rdata = (new GameMiniCateListLogic())->getCateGameList($_param, $_page);
  94. $_code = CommonStatus::NO_ERROR;
  95. $this->success(CommonStatus::getMsg($_code), $_rdata, $_code);
  96. }
  97. /**
  98. * 发现游戏列表912
  99. * http://doc.1tsdk.com/159?page_id=4638
  100. * 【域名】/find/game/list
  101. */
  102. public function getFindList() {
  103. $_cate_id = CategoryConst::CATE_CATE_FIND;
  104. $_page = get_val($this->rq_data, 'page', 1);
  105. $_offset = get_val($this->rq_data, 'offset', 10);
  106. $_page = $_page.','.$_offset;
  107. $_param['cate_id'] = $_cate_id;
  108. $_param['mem_id'] = $this->mem_id;
  109. $_rdata = (new GameMiniCateListLogic())->getFindGameList($_param, $_page);
  110. $_code = CommonStatus::NO_ERROR;
  111. $this->success(CommonStatus::getMsg($_code), $_rdata, $_code);
  112. }
  113. /**
  114. * 试玩领红包游戏列表912
  115. * http://doc.1tsdk.com/159?page_id=4639
  116. * 【域名】/rp/game/list
  117. */
  118. public function getRpList() {
  119. $this->checkLogin();
  120. $_mem_id = $this->mem_id;
  121. $_cate_id = CategoryConst::CATE_CATE_RP;
  122. $_page = get_val($this->rq_data, 'page', 1);
  123. $_offset = get_val($this->rq_data, 'offset', 10);
  124. $_page = $_page.','.$_offset;
  125. $_param['cate_id'] = $_cate_id;
  126. $_rdata = (new GameMiniCateListLogic())->getRpGameList($_mem_id, $_param, $_page);
  127. $_code = CommonStatus::NO_ERROR;
  128. $this->success(CommonStatus::getMsg($_code), $_rdata, $_code);
  129. }
  130. /**
  131. * 一起开黑游戏列表912
  132. * http://doc.huosdk.com/159?page_id=4819
  133. * 【域名】/player/game/list
  134. */
  135. public function getPlayerList() {
  136. $_mem_id = $this->mem_id;
  137. $_cate_id = CategoryConst::CATE_CATE_PLAY;
  138. $_page = get_val($this->rq_data, 'page', 1);
  139. $_offset = get_val($this->rq_data, 'offset', 10);
  140. $_page = $_page.','.$_offset;
  141. $_param['cate_id'] = $_cate_id;
  142. $_rdata = (new GameMiniCateListLogic())->getPlayGameList($_mem_id, $_param, $_page);
  143. $_code = CommonStatus::NO_ERROR;
  144. $this->success(CommonStatus::getMsg($_code), $_rdata, $_code);
  145. }
  146. }