You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
aquaculture/app/Http/Controllers/User/LikesController.php

66 lines
1.4 KiB

<?php
namespace App\Http\Controllers\User;
use App\Models\Product;
use App\Models\User;
use Auth;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class LikesController extends Controller
{
protected $response = [
'code' => 1,
'msg' => '服务器异常,请稍后再试',
];
public function index()
{
/**
* @var $user User
*/
$user = auth()->user();
$likesProducts = $user->products()
->where('user_id', auth()->id())
->withCount('users')
->latest()
->paginate(10);
return view('user.products.likes', compact('likesProducts'));
}
public function toggle($uuid)
{
/**
* @var $product Product
*/
$product = Product::query()
->where('uuid', $uuid)
->firstOrFail();
$user = auth()->id();
if ($product->users()->where('user_id', $user)->exists()) {
$product->users()->detach($user);
return response()->json([
'code' => 200,
'msg' => '欢迎下次收藏'
]);
}
$product->users()->attach($user);
return response()->json([
'code' => 201,
'msg' => '收藏成功'
]);
}
}