diff --git a/app/DTO/ApiResponseDto.php b/app/DTO/ApiResponseDto.php new file mode 100644 index 0000000..2e3df80 --- /dev/null +++ b/app/DTO/ApiResponseDto.php @@ -0,0 +1,27 @@ +message, $this->statusCode, $this->data, $this->meta); + } + + // public static function success() + // { + // return new self($message, $data, $statusCode = 200); + // } + + // public static function error() + // { + // return new self($message, $data, $statusCode = 400); + // } + +} diff --git a/app/Providers/ApiResponderProvider.php b/app/Providers/ApiResponderProvider.php new file mode 100644 index 0000000..f25152b --- /dev/null +++ b/app/Providers/ApiResponderProvider.php @@ -0,0 +1,27 @@ +app->bind(ApiResponder::class, function($app){ + return new ApiResponder(); + }); + } + + /** + * Bootstrap services. + */ + public function boot(): void + { + // + } +} diff --git a/app/Services/ApiResponder.php b/app/Services/ApiResponder.php new file mode 100644 index 0000000..857e014 --- /dev/null +++ b/app/Services/ApiResponder.php @@ -0,0 +1,51 @@ +buildResponse(); + } + + public function error() + { + return $this->buildResponse(); + } + + public function setDto(ApiResponseDto $dto) + { + $this->dto = $dto; + } + + // public function fromDTO(ApiResponseDto $dto) + // { + // return $dto; + // } + + #Гаврилов + //СБОР СТАТИСТИКИ ПО ВЫЗЫВАЕМЫМ API ЕНДПОИНТАМ. ВНЕСТИ В TODO ПРОЕКТА + private function setStatistics() + { + } + +#Гаврилов +//ДОБАВЬ ЛОГИРОВАНИЕ ОШИБОК В TRY CATCH В .LOG ФАЙЛ + + private function buildResponse(): JsonResponse + { + //echo '
'; var_dump((array)$this->dto); echo''; + //return (array) $this->dto; + return response()->json((array) $this->dto); + } +}