FloorRepository.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace App\Repositories;
  3. use App\Models\Floor;
  4. use App\Traits\UserTrait;
  5. use Illuminate\Support\Facades\Log;
  6. use Symfony\Component\HttpKernel\Exception\HttpException;
  7. use Dingo\Api\Http\Response;
  8. use Illuminate\Support\Facades\DB;
  9. use Illuminate\Database\QueryException;
  10. /**
  11. * Created by PhpStorm.
  12. * User: durong
  13. * Date: 2019/6/15
  14. * Time: 下午4:36
  15. */
  16. class FloorRepository
  17. {
  18. use UserTrait;
  19. public function __construct(Floor $floor)
  20. {
  21. $this->floor = $floor;
  22. }
  23. public function index($request)
  24. {
  25. $perPage = isset($request['per_page']) ? $request['per_page'] : 20;
  26. $where = [];
  27. $where[] = ['is_open', 1];
  28. return $this->floor->where($where)->orderBy('floor_location', 'asc')->paginate($perPage);
  29. }
  30. public function info()
  31. {
  32. $userInfo = $this->getUserInfo();
  33. if(!$userInfo){
  34. return jsonError('获取用户信息失败');
  35. }
  36. return $floor = $this->floor
  37. ->where('is_open', 1)
  38. ->whereIn('floor_type', [0,1,2,3])
  39. ->whereBetween('floor_location', [1,20])
  40. ->get();
  41. $data = [];
  42. foreach($floor as $item){
  43. if($item->floor_type == 0){
  44. //banner
  45. }elseif($item->floor_type == 1){
  46. //user
  47. }elseif($item->floor_type == 2){
  48. //video
  49. }elseif($item->floor_type == 3){
  50. //topic
  51. }
  52. }
  53. }
  54. }