ChapterIndexController.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\ProgressChapter;
  4. use App\Models\Channel;
  5. use Illuminate\Http\Request;
  6. class ChapterIndexController extends Controller
  7. {
  8. /**
  9. * Display a listing of the resource.
  10. *
  11. * @return \Illuminate\Http\Response
  12. */
  13. public function index(Request $request)
  14. {
  15. //
  16. switch ($request->get('view')) {
  17. case 'public':
  18. $channels = Channel::where('status',30)->select('uid');
  19. $table = ProgressChapter::whereIn('channel_id',$channels);
  20. break;
  21. }
  22. if($request->has("updated_at")){
  23. $table = $table->where('updated_at','>', $request->get("updated_at"));
  24. }
  25. if($request->has("created_at")){
  26. $table = $table->where('created_at','>', $request->get("created_at"));
  27. }
  28. //获取记录总条数
  29. $count = $table->count();
  30. //处理排序
  31. $table = $table->orderBy($request->get("order",'created_at'),
  32. $request->get("dir",'desc'));
  33. //处理分页
  34. $table = $table->skip($request->get("offset",0))
  35. ->take($request->get("limit",200));
  36. //获取数据
  37. $result = $table->get();
  38. return $this->ok(["rows"=>$result,"count"=>$count]);
  39. }
  40. /**
  41. * Store a newly created resource in storage.
  42. *
  43. * @param \Illuminate\Http\Request $request
  44. * @return \Illuminate\Http\Response
  45. */
  46. public function store(Request $request)
  47. {
  48. //
  49. }
  50. /**
  51. * Display the specified resource.
  52. *
  53. * @param \App\Models\ProgressChapter $progressChapter
  54. * @return \Illuminate\Http\Response
  55. */
  56. public function show(ProgressChapter $progressChapter)
  57. {
  58. //
  59. }
  60. /**
  61. * Update the specified resource in storage.
  62. *
  63. * @param \Illuminate\Http\Request $request
  64. * @param \App\Models\ProgressChapter $progressChapter
  65. * @return \Illuminate\Http\Response
  66. */
  67. public function update(Request $request, ProgressChapter $progressChapter)
  68. {
  69. //
  70. }
  71. /**
  72. * Remove the specified resource from storage.
  73. *
  74. * @param \App\Models\ProgressChapter $progressChapter
  75. * @return \Illuminate\Http\Response
  76. */
  77. public function destroy(ProgressChapter $progressChapter)
  78. {
  79. //
  80. }
  81. }