小说推广数据系统

NovelService.php 1010B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace App\Services;
  3. use App\Models\Order;
  4. class NovelService
  5. {
  6. /**
  7. * 小说人气数据
  8. * */
  9. public static function popularityNovelData($keyword, $sort, $startDate, $endDate, $page, $pageSize)
  10. {
  11. list($sortField, $sortType) = self::getSortInfo($sort);
  12. list($list, $count) = Order::popularityNovelData($keyword, $sortField, $sortType, $startDate, $endDate, $page, $pageSize);
  13. return [$list, $count];
  14. }
  15. /**
  16. * 获取排序字段和类型
  17. * */
  18. public static function getSortInfo($sort)
  19. {
  20. switch($sort) {
  21. case 1:
  22. case 2:
  23. $sortField = 'watching_user';
  24. break;
  25. case 3:
  26. case 4:
  27. $sortField = 'charge_total';
  28. break;
  29. default:
  30. $sortField = 'watching_user';
  31. break;
  32. }
  33. $sortType = $sort % 2 ? 'desc' : 'asc';
  34. return [$sortField, $sortType];
  35. }
  36. }