RankList.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <?php
  2. declare (strict_types = 1);
  3. namespace app\controller;
  4. use app\BaseController;
  5. use app\model\GameStatisModel;
  6. use app\model\GameBetGameModel;
  7. use app\common\CommonUtils;
  8. use app\model\GameModel;
  9. use think\facade\Request;
  10. class RankList extends BaseController
  11. {
  12. /**
  13. * 赢钱榜
  14. */
  15. public function WinAmount()
  16. {
  17. $userInfo = $this->request->userInfo;
  18. // 获取查询参数
  19. $page = Request::get('page', 1, 'intval');
  20. $limit = Request::get('limit', 10, 'intval');
  21. $filters['date'] = Request::get('date', '', 'trim');
  22. try {
  23. // 获取赢钱榜数据
  24. $result = GameBetGameModel::getWinRanking(
  25. $userInfo['merchant_id'],
  26. $page,
  27. $limit,
  28. $filters
  29. );
  30. // 格式化金额数据
  31. foreach ($result['list'] as &$item) {
  32. $item['total_win'] = CommonUtils::convertBalance($item['total_win'], false);
  33. $item['total_bet'] = CommonUtils::convertBalance($item['total_bet'], false);
  34. $item['balance'] = CommonUtils::convertBalance($item['balance'], false);
  35. }
  36. return json_success($result, '获取成功');
  37. } catch (\Exception $e) {
  38. return json_error([], '获取赢钱榜失败:' . $e->getMessage());
  39. }
  40. }
  41. /**
  42. * 输钱榜
  43. */
  44. public function LoseAmount() {
  45. $userInfo = $this->request->userInfo;
  46. // 获取查询参数
  47. $page = Request::get('page', 1, 'intval');
  48. $limit = Request::get('limit', 10, 'intval');
  49. $filters['date'] = Request::get('date', '', 'trim');
  50. try {
  51. // 获取输钱榜数据
  52. $result = GameBetGameModel::getLoseRanking(
  53. $userInfo['merchant_id'],
  54. $page,
  55. $limit,
  56. $filters
  57. );
  58. // 格式化金额数据
  59. foreach ($result['list'] as &$item) {
  60. $item['total_lose'] = CommonUtils::convertBalance($item['total_lose'], false);
  61. $item['total_bet'] = CommonUtils::convertBalance($item['total_bet'], false);
  62. $item['balance'] = CommonUtils::convertBalance($item['balance'], false);
  63. }
  64. return json_success($result, '获取成功');
  65. } catch (\Exception $e) {
  66. return json_error([], '获取输钱榜失败:' . $e->getMessage());
  67. }
  68. }
  69. /**
  70. * 注单榜
  71. */
  72. public function BetAmount() {
  73. $userInfo = $this->request->userInfo;
  74. // 获取查询参数
  75. $page = Request::get('page', 1, 'intval');
  76. $limit = Request::get('limit', 10, 'intval');
  77. // 筛选条件
  78. $filters = [
  79. 'start_time' => Request::get('start_time', date('Y-m-d', strtotime('-7 days')), 'trim'),
  80. 'end_time' => Request::get('end_time', date('Y-m-d'), 'trim'),
  81. 'game_id' => Request::get('game_id', '', 'trim'),
  82. ];
  83. try {
  84. // 获取注单金额榜数据
  85. $result = GameBetGameModel::getBetAmountRanking(
  86. $userInfo['merchant_id'],
  87. $page,
  88. $limit,
  89. $filters
  90. );
  91. // 格式化金额数据
  92. foreach ($result['list'] as &$item) {
  93. $item['total_bet_amount'] = CommonUtils::convertBalance($item['total_bet_amount'], false);
  94. $item['total_profit'] = CommonUtils::convertBalance($item['total_profit'], false);
  95. $item['max_bet'] = CommonUtils::convertBalance($item['max_bet'], false);
  96. $item['avg_bet'] = CommonUtils::convertBalance($item['avg_bet'], false);
  97. }
  98. return json_success($result, '获取成功');
  99. } catch (\Exception $e) {
  100. return json_error([], '获取注单金额榜失败:' . $e->getMessage());
  101. }
  102. }
  103. }