AiAssistantController.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\AiModel;
  4. use Illuminate\Http\Request;
  5. use App\Http\Resources\AiAssistantResource;
  6. class AiAssistantController 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. $table = AiModel::whereNotNull('owner_id');
  17. if ($request->has('keyword')) {
  18. $table = $table->where('name', 'like', '%' . $request->get('keyword') . '%');
  19. }
  20. $count = $table->count();
  21. $table = $table->orderBy(
  22. $request->get('order', 'created_at'),
  23. $request->get('dir', 'asc')
  24. );
  25. $table = $table->skip($request->get("offset", 0))
  26. ->take($request->get('limit', 1000));
  27. $result = $table->get();
  28. return $this->ok(
  29. [
  30. "rows" => AiAssistantResource::collection(resource: $result),
  31. "count" => $count,
  32. ]
  33. );
  34. }
  35. /**
  36. * Store a newly created resource in storage.
  37. *
  38. * @param \Illuminate\Http\Request $request
  39. * @return \Illuminate\Http\Response
  40. */
  41. public function store(Request $request)
  42. {
  43. //
  44. }
  45. /**
  46. * Display the specified resource.
  47. *
  48. * @param \App\Models\AiModel $aiModel
  49. * @return \Illuminate\Http\Response
  50. */
  51. public function show(AiModel $aiModel)
  52. {
  53. //
  54. }
  55. /**
  56. * Update the specified resource in storage.
  57. *
  58. * @param \Illuminate\Http\Request $request
  59. * @param \App\Models\AiModel $aiModel
  60. * @return \Illuminate\Http\Response
  61. */
  62. public function update(Request $request, AiModel $aiModel)
  63. {
  64. //
  65. }
  66. /**
  67. * Remove the specified resource from storage.
  68. *
  69. * @param \App\Models\AiModel $aiModel
  70. * @return \Illuminate\Http\Response
  71. */
  72. public function destroy(AiModel $aiModel)
  73. {
  74. //
  75. }
  76. }