cirelramos/response

The Response is a package to response api-rest .

1.0.2 2022-05-07 02:56 UTC

This package is auto-updated.

Last update: 2024-04-07 06:46:34 UTC


README

Software License

About

The Response is a package to response api-rest .

Tutorial how create composer package

Installation

Require the cirelramos/response package in your composer.json and update your dependencies:

composer require cirelramos/response

Configuration

set provider

'providers' => [
    // ...
    Cirelramos\Response\Providers\ServiceProvider::class,
],

The defaults are set in config/response.php. Publish the config to copy the file to your own config:

php artisan vendor:publish --provider="Cirelramos\Response\Providers\ServiceProvider"

Note: this is necessary to you can change default config

Usage

use Cirelramos\Response\Traits\ResponseTrait;

class Controller extends BaseController
{
    use ResponseTrait;
    //.
    //.
    //.
}
Class ProductController extends Controller
{
    //.
    //.
    //.
    
    public function store(ProductRequest $request){
             
        $successMessage = _('OPERATION_SUCCESSFUL_MESSAGE');
        $errorMessage   = _('AN_ERROR_HAS_OCCURRED_MESSAGE');

        try {
            DB::beginTransaction();

            $product = new Product();
            $product->fill($request->validated());
            $product->save();
            DB::commit();

            $data[ 'product' ] = new ProductResource($product);

            return $this->successResponseWithMessage($data, $successMessage, Response::HTTP_CREATED);

        }
        catch(Exception $exception) {
            DB::rollBack();

            return $this->errorCatchResponse($exception, $errorMessage, Response::HTTP_SERVICE_UNAVAILABLE);
        }
    }

    //.
    //.
    //.
}

License

Released under the MIT License, see LICENSE.