CategoryDeleteController.php 746 B

1234567891011121314151617181920212223242526
  1. <?php
  2. namespace Controllers;
  3. use Libs\ResponseLib;
  4. use Models\CategoryModel;
  5. use Psr\Http\Message\ServerRequestInterface;
  6. class CategoryDeleteController
  7. {
  8. private CategoryModel $model;
  9. public function __construct()
  10. {
  11. $this->model = new CategoryModel();
  12. }
  13. public function __invoke(ServerRequestInterface $request)
  14. {
  15. $body = json_decode((string)$request->getBody(), true) ?? [];
  16. $companyId = $body['company_id'] ?? null;
  17. $deleted = $this->model->deleteByName($body['category_name'], $companyId);
  18. return $deleted ? ResponseLib::sendOk(['deleted' => true]) : ResponseLib::sendFail("Failed to Delete Category", [], "E_VALIDATE")->withStatus(204);
  19. }
  20. }