UserController.php 2.2 KB

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