SdkOrderRankLogic.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | saiadmin [ saiadmin快速开发框架 ]
  4. // +----------------------------------------------------------------------
  5. // | Author: your name
  6. // +----------------------------------------------------------------------
  7. namespace app\v1\logic\gameLog;
  8. use plugin\saiadmin\basic\BaseLogic;
  9. use plugin\saiadmin\exception\ApiException;
  10. use plugin\saiadmin\utils\Helper;
  11. use app\v1\model\gameLog\SdkOrderRank;
  12. /**
  13. * 充值排行逻辑层
  14. */
  15. class SdkOrderRankLogic extends BaseLogic
  16. {
  17. /**
  18. * 构造函数
  19. */
  20. public function __construct()
  21. {
  22. $this->model = new SdkOrderRank();
  23. }
  24. public function getList($query): mixed
  25. {
  26. $saiType = request()->input('saiType', 'list');
  27. $page = request()->input('page', 1);
  28. $limit = request()->input('limit', 10);
  29. $orderBy = request()->input('orderBy', '');
  30. $orderType = request()->input('orderType', $this->orderType);
  31. if(empty($orderBy)) {
  32. $orderBy = $this->orderField !== '' ? $this->orderField : $this->model->getPk();
  33. }
  34. $query->order($orderBy, $orderType);
  35. // 历史累计充值,就是,所有的充值金额。
  36. $query->group('user_name,game_id,media_id,agent_id,site_id,uid');
  37. $query->field('user_name,sum(money) as searchTotalMoney,game_id,media_id,agent_id,site_id,uid');
  38. if ($saiType === 'all') {
  39. return $query->select()->toArray();
  40. }
  41. return $query->paginate($limit, false, ['page' => $page])->toArray();
  42. }
  43. }