删除分类
This commit is contained in:
parent
0ce474df27
commit
a818c0c9f7
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
namespace Beike\Admin\Http\Controllers;
|
namespace Beike\Admin\Http\Controllers;
|
||||||
|
|
||||||
|
|
||||||
use Beike\Models\Category;
|
use Beike\Models\Category;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Beike\Repositories\CategoryRepo;
|
use Beike\Repositories\CategoryRepo;
|
||||||
|
|
@ -10,7 +9,6 @@ use Beike\Admin\Services\CategoryService;
|
||||||
use Beike\Admin\Http\Requests\CategoryRequest;
|
use Beike\Admin\Http\Requests\CategoryRequest;
|
||||||
use Beike\Admin\Http\Resources\CategoryResource;
|
use Beike\Admin\Http\Resources\CategoryResource;
|
||||||
|
|
||||||
|
|
||||||
class CategoryController extends Controller
|
class CategoryController extends Controller
|
||||||
{
|
{
|
||||||
protected string $defaultRoute = 'categories.index';
|
protected string $defaultRoute = 'categories.index';
|
||||||
|
|
@ -48,6 +46,21 @@ class CategoryController extends Controller
|
||||||
return $this->save($request, $category);
|
return $this->save($request, $category);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除分类
|
||||||
|
* @param Request $request
|
||||||
|
* @param Category $category
|
||||||
|
* @return array
|
||||||
|
* @throws \Exception
|
||||||
|
*/
|
||||||
|
public function destroy(Request $request, Category $category): array
|
||||||
|
{
|
||||||
|
CategoryRepo::delete($category);
|
||||||
|
return json_success('删除成功');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public function name(int $id)
|
public function name(int $id)
|
||||||
{
|
{
|
||||||
$name = CategoryRepo::getName($id);
|
$name = CategoryRepo::getName($id);
|
||||||
|
|
|
||||||
|
|
@ -39,4 +39,9 @@ class Category extends Base
|
||||||
{
|
{
|
||||||
return $this->hasMany(CategoryPath::class);
|
return $this->hasMany(CategoryPath::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function productCategories(): HasMany
|
||||||
|
{
|
||||||
|
return $this->hasMany(ProductCategory::class);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -98,6 +98,24 @@ class CategoryRepo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除产品分类
|
||||||
|
* @throws \Exception
|
||||||
|
*/
|
||||||
|
public static function delete($category)
|
||||||
|
{
|
||||||
|
if (is_int($category)) {
|
||||||
|
$category = Category::query()->findOrFail($category);
|
||||||
|
} elseif (!($category instanceof Category)) {
|
||||||
|
throw new \Exception('invalid category');
|
||||||
|
}
|
||||||
|
$category->descriptions()->delete();
|
||||||
|
$category->paths()->delete();
|
||||||
|
$category->productCategories()->delete();
|
||||||
|
$category->delete();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public static function getName($id)
|
public static function getName($id)
|
||||||
{
|
{
|
||||||
$category = Category::query()->find($id);
|
$category = Category::query()->find($id);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue