FailData.php 790 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. namespace App\Models\DTO\Toss;
  3. use Illuminate\Contracts\Support\Responsable;
  4. use Illuminate\Http\JsonResponse;
  5. class FailData implements Responsable
  6. {
  7. public string $resultType;
  8. public ?array $error;
  9. public ?array $success;
  10. public function __construct(string $errorCode, string $reason)
  11. {
  12. $this->resultType = 'FAIL';
  13. $this->error = [
  14. 'errorCode' => $errorCode,
  15. 'reason' => $reason
  16. ];
  17. $this->success = null;
  18. }
  19. public function __set($name, $value)
  20. {
  21. $this->{$name} = $value;
  22. }
  23. public function __get($name): mixed
  24. {
  25. return ($this->{$name} ?? null);
  26. }
  27. public function toResponse($request): JsonResponse
  28. {
  29. return response()->json($this);
  30. }
  31. }