Resource refactoring

This commit is contained in:
Peter Papp
2021-04-29 12:53:17 +02:00
parent 1486ce63fa
commit 31dd782bae
17 changed files with 1601 additions and 549 deletions

View File

@@ -3,9 +3,10 @@
namespace App\Http\Controllers\Oasis;
use App\Http\Requests\Oasis\StoreClientRequest;
use App\Http\Resources\Oasis\OasisClientCollection;
use App\Http\Resources\Oasis\OasisViewClientCollection;
use App\Http\Controllers\Controller;
use App\Http\Resources\Oasis\OasisClientResource;
use App\Http\Resources\Oasis\OasisViewClientResource;
use App\Http\Resources\Oasis\OasisViewInvoiceCollection;
use App\Models\Oasis\Client;
use Auth;
use Illuminate\Contracts\Foundation\Application;
@@ -21,7 +22,7 @@ class ClientController extends Controller
public function index()
{
return response(
new OasisClientCollection(Auth::user()->clients), 200
new OasisViewClientCollection(Auth::user()->clients), 200
);
}
@@ -48,7 +49,7 @@ class ClientController extends Controller
]);
return response(
new OasisClientResource($client), 201
new OasisViewClientResource($client), 201
);
}
@@ -58,7 +59,7 @@ class ClientController extends Controller
*/
public function show(Client $client)
{
return response(new OasisClientResource($client), 200);
return response(new OasisViewClientResource($client), 200);
}
/**
@@ -97,6 +98,15 @@ class ClientController extends Controller
return response('Done', 204);
}
/**
* @param Client $client
* @return Application|ResponseFactory|Response
*/
public function show_invoices(Client $client)
{
return response(new OasisViewInvoiceCollection($client->invoices), 200);
}
/**
* @return mixed
*/
@@ -109,7 +119,7 @@ class ClientController extends Controller
->get();
return response(
new OasisClientCollection($results), 200
new OasisViewClientCollection($results), 200
);
}
}

View File

@@ -4,8 +4,8 @@ namespace App\Http\Controllers\Oasis;
use App\Http\Controllers\Controller;
use App\Http\Requests\Oasis\StoreInvoiceRequest;
use App\Http\Resources\Oasis\OasisInvoiceCollection;
use App\Http\Resources\Oasis\OasisInvoiceResource;
use App\Http\Resources\Oasis\OasisViewInvoiceCollection;
use App\Http\Resources\Oasis\OasisViewInvoiceResource;
use App\Models\Oasis\Client;
use App\Models\Oasis\Invoice;
use App\Notifications\Oasis\InvoiceDeliveryNotification;
@@ -26,7 +26,7 @@ class InvoiceController extends Controller
public function get_all_regular_invoices()
{
return response(
new OasisInvoiceCollection(Auth::user()->regularInvoices), 200
new OasisViewInvoiceCollection(Auth::user()->regularInvoices), 200
);
}
@@ -36,7 +36,7 @@ class InvoiceController extends Controller
public function get_all_advance_invoices()
{
return response(
new OasisInvoiceCollection(Auth::user()->advanceInvoices), 200
new OasisViewInvoiceCollection(Auth::user()->advanceInvoices), 200
);
}
@@ -66,7 +66,7 @@ class InvoiceController extends Controller
->get();
return response(
new OasisInvoiceCollection($results), 200
new OasisViewInvoiceCollection($results), 200
);
}
@@ -123,7 +123,7 @@ class InvoiceController extends Controller
}
return response(
new OasisInvoiceResource($invoice), 201
new OasisViewInvoiceResource($invoice), 201
);
}

View File

@@ -4,9 +4,9 @@ namespace App\Http\Resources\Oasis;
use Illuminate\Http\Resources\Json\ResourceCollection;
class OasisClientCollection extends ResourceCollection
class OasisViewClientCollection extends ResourceCollection
{
public $collects = OasisClientResource::class;
public $collects = OasisViewClientResource::class;
/**
* Transform the resource collection into an array.

View File

@@ -4,7 +4,7 @@ namespace App\Http\Resources\Oasis;
use Illuminate\Http\Resources\Json\JsonResource;
class OasisClientResource extends JsonResource
class OasisViewClientResource extends JsonResource
{
/**
* Transform the resource into an array.

View File

@@ -4,9 +4,9 @@ namespace App\Http\Resources\Oasis;
use Illuminate\Http\Resources\Json\ResourceCollection;
class OasisInvoiceCollection extends ResourceCollection
class OasisViewInvoiceCollection extends ResourceCollection
{
public $collects = OasisInvoiceResource::class;
public $collects = OasisViewInvoiceResource::class;
/**
* Transform the resource collection into an array.

View File

@@ -6,7 +6,7 @@ use Illuminate\Http\Resources\Json\JsonResource;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str;
class OasisInvoiceResource extends JsonResource
class OasisViewInvoiceResource extends JsonResource
{
/**
* Transform the resource into an array.
@@ -18,6 +18,7 @@ class OasisInvoiceResource extends JsonResource
{
return [
'id' => $this->id,
'client_id' => $this->client_id,
'name' => $this->client['name'] . ' ' . format_to_currency($this->total_net, $this->currency),
'invoiceNumber' => $this->invoice_number,
'total' => format_to_currency($this->total_net, $this->currency),