CommodityDeleteController.php 833 B

123456789101112131415161718192021222324
  1. <?php
  2. namespace Controllers;
  3. use Libs\ResponseLib;
  4. use Models\CommodityModel;
  5. use Psr\Http\Message\ServerRequestInterface;
  6. class CommodityDeleteController
  7. {
  8. public function __invoke(ServerRequestInterface $request)
  9. {
  10. $body = json_decode((string)$request->getBody(), true) ?? [];
  11. $id = isset($body['commodities_id']) ? (int)$body['commodities_id'] : 0;
  12. if ($id <= 0) {
  13. return ResponseLib::sendFail('Validation failed: invalid commodities_id', [], 'E_VALIDATE')->withStatus(400);
  14. }
  15. $model = new CommodityModel();
  16. $deleted = $model->delete($id);
  17. return $deleted
  18. ? ResponseLib::sendOk(['deleted' => true], 'S_DELETED')
  19. : ResponseLib::sendFail('Commodity Not Found', [], 'E_DATABASE')->withStatus(204);
  20. }
  21. }