ConfigCategoryController.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use App\Filters\ConfigCategoryFilter;
  4. use App\Http\Requests\ConfigCategoryRequest;
  5. use App\Http\Requests\ConfigRequest;
  6. use App\Http\Resources\ConfigCategoryResource;
  7. use App\Http\Resources\ConfigResource;
  8. use App\Models\AdminMerchant;
  9. use App\Models\ConfigCategory;
  10. use Illuminate\Http\Request;
  11. class ConfigCategoryController extends AdminBaseController
  12. {
  13. public function index(Request $request, ConfigCategoryFilter $filter)
  14. {
  15. $categories = ConfigCategory::query()
  16. ->filter($filter)
  17. ->where(AdminMerchant::getMerchantWhere())
  18. ->orderByDesc('id');
  19. $categories = $request->input('all')
  20. ? $categories->get()
  21. : $categories->paginate();
  22. return $this->ok(ConfigCategoryResource::collection($categories));
  23. }
  24. public function store(ConfigCategoryRequest $request)
  25. {
  26. $inputs = $request->validated();
  27. $inputs['merchant_id'] = AdminMerchant::putMerchantId();
  28. $cate = ConfigCategory::create($inputs);
  29. return $this->created(ConfigCategoryResource::make($cate));
  30. }
  31. public function update(ConfigCategoryRequest $request, ConfigCategory $configCategory)
  32. {
  33. $inputs = $request->validated();
  34. $configCategory->update($inputs);
  35. return $this->created(ConfigCategoryResource::make($configCategory));
  36. }
  37. public function destroy(ConfigCategory $configCategory)
  38. {
  39. $configCategory->delete();
  40. return $this->noContent();
  41. }
  42. }