FavoriteController.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace App\Http\Controllers\V1\User;
  3. use App\Http\Controllers\V1\Controller;
  4. use App\Models\EpisodesList;
  5. use App\Models\UserFavorite;
  6. class FavoriteController extends Controller
  7. {
  8. // 检查当前短剧是否喜欢
  9. public function check($id)
  10. {
  11. $episode = EpisodesList::find($id);
  12. $res = UserFavorite::filterUser()->where('list_id', $id)->count();
  13. $number = UserFavorite::where('list_id', $id)->count();
  14. $number += $episode->episode->favorite_num;
  15. $data = [
  16. 'isFav' => !empty($res),
  17. 'number' => $number,
  18. ];
  19. return $this->success($data);
  20. }
  21. // 添加喜欢
  22. public function add($id)
  23. {
  24. $episode = EpisodesList::find($id);
  25. $res = UserFavorite::filterUser()->where('list_id', $id)->count();
  26. if ($res) {
  27. return $this->success(true);
  28. }
  29. $collect = new UserFavorite();
  30. $collect->user_id = \user()->id;
  31. $collect->episode_id = $episode->episodes_id;
  32. $collect->list_id = $id;
  33. return $this->success($collect->save());
  34. }
  35. // 删除喜欢
  36. public function destroy($id)
  37. {
  38. $res = UserFavorite::filterUser()->where('list_id', $id)->first();
  39. if (!$res) {
  40. return $this->success(false);
  41. }
  42. return $this->success($res->delete());
  43. }
  44. }