akaunting 3.0 (the last dance)

This commit is contained in:
Burak Civan
2022-06-01 10:15:55 +03:00
parent cead09f6d4
commit d9c0764572
3812 changed files with 126831 additions and 102949 deletions

View File

@ -1,81 +0,0 @@
<?php
namespace App\Http\Controllers\Api\Auth;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Auth\Permission as Request;
use App\Models\Auth\Permission;
use App\Jobs\Auth\CreatePermission;
use App\Jobs\Auth\DeletePermission;
use App\Jobs\Auth\UpdatePermission;
use App\Transformers\Auth\Permission as Transformer;
class Permissions extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
*/
public function index()
{
$permissions = Permission::collect();
return $this->response->paginator($permissions, new Transformer());
}
/**
* Display the specified resource.
*
* @param Permission $permission
* @return \Dingo\Api\Http\Response
*/
public function show(Permission $permission)
{
return $this->item($permission, new Transformer());
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
*/
public function store(Request $request)
{
$permission = $this->dispatch(new CreatePermission($request));
return $this->response->created(route('api.permissions.show', $permission->id), $this->item($permission, new Transformer()));
}
/**
* Update the specified resource in storage.
*
* @param $permission
* @param $request
* @return \Dingo\Api\Http\Response
*/
public function update(Permission $permission, Request $request)
{
$permission = $this->dispatch(new UpdatePermission($permission, $request));
return $this->item($permission->fresh(), new Transformer());
}
/**
* Remove the specified resource from storage.
*
* @param Permission $permission
* @return \Dingo\Api\Http\Response
*/
public function destroy(Permission $permission)
{
try {
$this->dispatch(new DeletePermission($permission));
return $this->response->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -1,81 +0,0 @@
<?php
namespace App\Http\Controllers\Api\Auth;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Auth\Role as Request;
use App\Models\Auth\Role;
use App\Jobs\Auth\CreateRole;
use App\Jobs\Auth\DeleteRole;
use App\Jobs\Auth\UpdateRole;
use App\Transformers\Auth\Role as Transformer;
class Roles extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
*/
public function index()
{
$roles = Role::with('permissions')->collect();
return $this->response->paginator($roles, new Transformer());
}
/**
* Display the specified resource.
*
* @param Role $role
* @return \Dingo\Api\Http\Response
*/
public function show(Role $role)
{
return $this->item($role, new Transformer());
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
*/
public function store(Request $request)
{
$role = $this->dispatch(new CreateRole($request));
return $this->response->created(route('api.roles.show', $role->id), $this->item($role, new Transformer()));
}
/**
* Update the specified resource in storage.
*
* @param $role
* @param $request
* @return \Dingo\Api\Http\Response
*/
public function update(Role $role, Request $request)
{
$role = $this->dispatch(new UpdateRole($role, $request));
return $this->item($role->fresh(), new Transformer());
}
/**
* Remove the specified resource from storage.
*
* @param Role $role
* @return \Dingo\Api\Http\Response
*/
public function destroy(Role $role)
{
try {
$this->dispatch(new DeleteRole($role));
return $this->response->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,31 +4,32 @@ namespace App\Http\Controllers\Api\Auth;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Auth\User as Request;
use App\Http\Resources\Auth\User as Resource;
use App\Jobs\Auth\CreateUser;
use App\Jobs\Auth\DeleteUser;
use App\Jobs\Auth\UpdateUser;
use App\Models\Auth\User;
use App\Transformers\Auth\User as Transformer;
class Users extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$users = User::with('companies', 'permissions', 'roles')->collect();
return $this->response->paginator($users, new Transformer());
return Resource::collection($users);
}
/**
* Display the specified resource.
*
* @param int|string $id
* @return \Dingo\Api\Http\Response
*
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -39,20 +40,21 @@ class Users extends ApiController
$user = User::with('companies', 'permissions', 'roles')->where('email', $id)->first();
}
return $this->item($user, new Transformer());
return new Resource($user);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
*
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$user = $this->dispatch(new CreateUser($request));
return $this->response->created(route('api.users.show', $user->id), $this->item($user, new Transformer()));
return $this->created(route('api.users.show', $user->id), new Resource($user));
}
/**
@ -60,55 +62,60 @@ class Users extends ApiController
*
* @param $user
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(User $user, Request $request)
{
$user = $this->dispatch(new UpdateUser($user, $request));
return $this->item($user->fresh(), new Transformer());
return new Resource($user->fresh());
}
/**
* Enable the specified resource in storage.
*
* @param User $user
* @return \Dingo\Api\Http\Response
*
* @return \Illuminate\Http\JsonResponse
*/
public function enable(User $user)
{
$user = $this->dispatch(new UpdateUser($user, request()->merge(['enabled' => 1])));
return $this->item($user->fresh(), new Transformer());
return new Resource($user->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param User $user
* @return \Dingo\Api\Http\Response
*
* @return \Illuminate\Http\JsonResponse
*/
public function disable(User $user)
{
$user = $this->dispatch(new UpdateUser($user, request()->merge(['enabled' => 0])));
return $this->item($user->fresh(), new Transformer());
return new Resource($user->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param User $user
* @return \Dingo\Api\Http\Response
*
* @throws \Symfony\Component\HttpKernel\Exception\HttpException
*
* @return \Illuminate\Http\Response
*/
public function destroy(User $user)
{
try {
$this->dispatch(new DeleteUser($user));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,31 +4,31 @@ namespace App\Http\Controllers\Api\Banking;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Banking\Account as Request;
use App\Http\Resources\Banking\Account as Resource;
use App\Jobs\Banking\CreateAccount;
use App\Jobs\Banking\DeleteAccount;
use App\Jobs\Banking\UpdateAccount;
use App\Models\Banking\Account;
use App\Transformers\Banking\Account as Transformer;
class Accounts extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$accounts = Account::collect();
return $this->response->paginator($accounts, new Transformer());
return Resource::collection($accounts);
}
/**
* Display the specified resource.
*
* @param $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -39,20 +39,20 @@ class Accounts extends ApiController
$account = Account::where('number', $id)->first();
}
return $this->item($account, new Transformer());
return new Resource($account);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$account = $this->dispatch(new CreateAccount($request));
return $this->response->created(route('api.accounts.show', $account->id), $this->item($account, new Transformer()));
return $this->created(route('api.accounts.show', $account->id), new Resource($account));
}
/**
@ -60,16 +60,16 @@ class Accounts extends ApiController
*
* @param $account
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Account $account, Request $request)
{
try {
$account = $this->dispatch(new UpdateAccount($account, $request));
return $this->item($account->fresh(), new Transformer());
return new Resource($account->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -77,29 +77,29 @@ class Accounts extends ApiController
* Enable the specified resource in storage.
*
* @param Account $account
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Account $account)
{
$account = $this->dispatch(new UpdateAccount($account, request()->merge(['enabled' => 1])));
return $this->item($account->fresh(), new Transformer());
return new Resource($account->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param Account $account
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Account $account)
{
try {
$account = $this->dispatch(new UpdateAccount($account, request()->merge(['enabled' => 0])));
return $this->item($account->fresh(), new Transformer());
return new Resource($account->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -107,16 +107,16 @@ class Accounts extends ApiController
* Remove the specified resource from storage.
*
* @param Account $account
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Account $account)
{
try {
$this->dispatch(new DeleteAccount($account));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,48 +4,48 @@ namespace App\Http\Controllers\Api\Banking;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Banking\Reconciliation as Request;
use App\Http\Resources\Banking\Reconciliation as Resource;
use App\Jobs\Banking\CreateReconciliation;
use App\Jobs\Banking\DeleteReconciliation;
use App\Jobs\Banking\UpdateReconciliation;
use App\Models\Banking\Reconciliation;
use App\Transformers\Banking\Reconciliation as Transformer;
class Reconciliations extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$items = Reconciliation::with('account')->collect();
$reconciliations = Reconciliation::with('account')->collect();
return $this->response->paginator($items, new Transformer());
return Resource::collection($reconciliations);
}
/**
* Display the specified resource.
*
* @param $reconciliation
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Reconciliation $reconciliation)
{
return $this->item($reconciliation, new Transformer());
return new Resource($reconciliation);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$reconciliation = $this->dispatch(new CreateReconciliation($request));
return $this->response->created(route('api.reconciliations.show', $reconciliation->id), $this->item($reconciliation, new Transformer()));
return $this->created(route('api.reconciliations.show', $reconciliation->id), new Resource($reconciliation));
}
/**
@ -53,29 +53,29 @@ class Reconciliations extends ApiController
*
* @param $reconciliation
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Reconciliation $reconciliation, Request $request)
{
$reconciliation = $this->dispatch(new UpdateReconciliation($reconciliation, $request));
return $this->item($reconciliation->fresh(), new Transformer());
return new Resource($reconciliation->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param Reconciliation $reconciliation
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Reconciliation $reconciliation)
{
try {
$this->dispatch(new DeleteReconciliation($reconciliation));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,48 +4,48 @@ namespace App\Http\Controllers\Api\Banking;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Banking\Transaction as Request;
use App\Http\Resources\Banking\Transaction as Resource;
use App\Jobs\Banking\CreateTransaction;
use App\Jobs\Banking\DeleteTransaction;
use App\Jobs\Banking\UpdateTransaction;
use App\Models\Banking\Transaction;
use App\Transformers\Banking\Transaction as Transformer;
class Transactions extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$transactions = Transaction::with('account', 'category', 'contact')->collect(['paid_at'=> 'desc']);
return $this->response->paginator($transactions, new Transformer());
return Resource::collection($transactions);
}
/**
* Display the specified resource.
*
* @param Transaction $transaction
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Transaction $transaction)
{
return $this->item($transaction, new Transformer());
return new Resource($transaction);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$transaction = $this->dispatch(new CreateTransaction($request));
return $this->response->created(route('api.transactions.show', $transaction->id), $this->item($transaction, new Transformer()));
return $this->created(route('api.transactions.show', $transaction->id), new Resource($transaction));
}
/**
@ -53,29 +53,29 @@ class Transactions extends ApiController
*
* @param $transaction
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Transaction $transaction, Request $request)
{
$transaction = $this->dispatch(new UpdateTransaction($transaction, $request));
return $this->item($transaction->fresh(), new Transformer());
return new Resource($transaction->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param Transaction $transaction
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Transaction $transaction)
{
try {
$this->dispatch(new DeleteTransaction($transaction));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,18 +4,18 @@ namespace App\Http\Controllers\Api\Banking;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Banking\Transfer as Request;
use App\Http\Resources\Banking\Transfer as Resource;
use App\Jobs\Banking\CreateTransfer;
use App\Jobs\Banking\UpdateTransfer;
use App\Jobs\Banking\DeleteTransfer;
use App\Models\Banking\Transfer;
use App\Transformers\Banking\Transfer as Transformer;
class Transfers extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
@ -51,31 +51,31 @@ class Transfers extends ApiController
$transfers->setCollection(collect($items));
}
return $this->response->paginator($transfers, new Transformer());
return Resource::collection($transfers);
}
/**
* Display the specified resource.
*
* @param Transfer $transfer
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Transfer $transfer)
{
return $this->item($transfer, new Transformer());
return new Resource($transfer);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$transfer = $this->dispatch(new CreateTransfer($request));
return $this->response->created(route('api.transfers.show', $transfer->id), $this->item($transfer, new Transformer()));
return $this->created(route('api.transfers.show', $transfer->id), new Resource($transfer));
}
/**
@ -83,29 +83,29 @@ class Transfers extends ApiController
*
* @param $transfer
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Transfer $transfer, Request $request)
{
$transfer = $this->dispatch(new UpdateTransfer($transfer, $request));
return $this->item($transfer->fresh(), new Transformer());
return new Resource($transfer->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param Transfer $transfer
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Transfer $transfer)
{
try {
$this->dispatch(new DeleteTransfer($transfer));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,13 +4,13 @@ namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Common\Company as Request;
use App\Http\Resources\Common\Company as Resource;
use App\Jobs\Common\CreateCompany;
use App\Jobs\Common\DeleteCompany;
use App\Jobs\Common\UpdateCompany;
use App\Models\Common\Company;
use App\Transformers\Common\Company as Transformer;
use App\Traits\Users;
use Dingo\Api\Http\Response;
use Illuminate\Http\Response;
class Companies extends ApiController
{
@ -19,20 +19,20 @@ class Companies extends ApiController
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$companies = user()->companies()->collect();
return $this->response->paginator($companies, new Transformer());
return Resource::collection($companies);
}
/**
* Display the specified resource.
*
* @param Company $company
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Company $company)
{
@ -40,9 +40,9 @@ class Companies extends ApiController
// Check if user can access company
$this->canAccess($company);
return $this->item($company, new Transformer());
return new Resource($company);
} catch (\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -50,13 +50,13 @@ class Companies extends ApiController
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$company = $this->dispatch(new CreateCompany($request));
return $this->response->created(route('api.companies.show', $company->id), $this->item($company, new Transformer()));
return $this->created(route('api.companies.show', $company->id), new Resource($company));
}
/**
@ -64,16 +64,16 @@ class Companies extends ApiController
*
* @param $company
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Company $company, Request $request)
{
try {
$company = $this->dispatch(new UpdateCompany($company, $request));
return $this->item($company->fresh(), new Transformer());
return new Resource($company->fresh());
} catch (\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -81,16 +81,16 @@ class Companies extends ApiController
* Enable the specified resource in storage.
*
* @param Company $company
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Company $company)
{
try {
$company = $this->dispatch(new UpdateCompany($company, request()->merge(['enabled' => 1])));
return $this->item($company->fresh(), new Transformer());
return new Resource($company->fresh());
} catch (\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -98,16 +98,16 @@ class Companies extends ApiController
* Disable the specified resource in storage.
*
* @param Company $company
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Company $company)
{
try {
$company = $this->dispatch(new UpdateCompany($company, request()->merge(['enabled' => 0])));
return $this->item($company->fresh(), new Transformer());
return new Resource($company->fresh());
} catch (\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -115,16 +115,16 @@ class Companies extends ApiController
* Remove the specified resource from storage.
*
* @param Company $company
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Company $company)
{
try {
$this->dispatch(new DeleteCompany($company));
return $this->response->noContent();
return $this->noContent();
} catch (\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -133,16 +133,16 @@ class Companies extends ApiController
*
* @param Company $company
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function canAccess(Company $company)
{
if (!empty($company) && $this->isUserCompany($company->id)) {
if (! empty($company) && $this->isUserCompany($company->id)) {
return new Response('');
}
$message = trans('companies.error.not_user_company');
$this->response->errorUnauthorized($message);
$this->errorUnauthorized($message);
}
}

View File

@ -4,12 +4,12 @@ namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Common\Contact as Request;
use App\Http\Resources\Common\Contact as Resource;
use App\Jobs\Common\CreateContact;
use App\Jobs\Common\DeleteContact;
use App\Jobs\Common\UpdateContact;
use App\Models\Common\Contact;
use App\Traits\Uploads;
use App\Transformers\Common\Contact as Transformer;
class Contacts extends ApiController
{
@ -18,20 +18,20 @@ class Contacts extends ApiController
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$contacts = Contact::collect();
return $this->response->paginator($contacts, new Transformer());
return Resource::collection($contacts);
}
/**
* Display the specified resource.
*
* @param int|string $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -42,20 +42,20 @@ class Contacts extends ApiController
$contact = Contact::where('email', $id)->first();
}
return $this->item($contact, new Transformer());
return new Resource($contact);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$contact = $this->dispatch(new CreateContact($request));
return $this->response->created(route('api.contacts.show', $contact->id), $this->item($contact, new Transformer()));
return $this->created(route('api.contacts.show', $contact->id), new Resource($contact));
}
/**
@ -63,42 +63,42 @@ class Contacts extends ApiController
*
* @param $contact
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Contact $contact, Request $request)
{
$contact = $this->dispatch(new UpdateContact($contact, $request));
return $this->item($contact->fresh(), new Transformer());
return new Resource($contact->fresh());
}
/**
* Enable the specified resource in storage.
*
* @param Contact $contact
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Contact $contact)
{
$contact = $this->dispatch(new UpdateContact($contact, request()->merge(['enabled' => 1])));
return $this->item($contact->fresh(), new Transformer());
return new Resource($contact->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param Contact $contact
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Contact $contact)
{
try {
$contact = $this->dispatch(new UpdateContact($contact, request()->merge(['enabled' => 0])));
return $this->item($contact->fresh(), new Transformer());
return new Resource($contact->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -106,16 +106,16 @@ class Contacts extends ApiController
* Remove the specified resource from storage.
*
* @param Contact $contact
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Contact $contact)
{
try {
$this->dispatch(new DeleteContact($contact));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,13 +4,13 @@ namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Common\Dashboard as Request;
use App\Http\Resources\Common\Dashboard as Resource;
use App\Jobs\Common\CreateDashboard;
use App\Jobs\Common\DeleteDashboard;
use App\Jobs\Common\UpdateDashboard;
use App\Models\Common\Dashboard;
use App\Transformers\Common\Dashboard as Transformer;
use App\Traits\Users;
use Dingo\Api\Http\Response;
use Illuminate\Http\Response;
class Dashboards extends ApiController
{
@ -19,20 +19,20 @@ class Dashboards extends ApiController
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$dashboards = user()->dashboards()->with('widgets')->collect();
return $this->response->paginator($dashboards, new Transformer());
return Resource::collection($dashboards);
}
/**
* Display the specified resource.
*
* @param int|string $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -42,9 +42,9 @@ class Dashboards extends ApiController
// Check if user can access dashboard
$this->canAccess($dashboard);
return $this->item($dashboard, new Transformer());
return new Resource($dashboard);
} catch (\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -52,13 +52,13 @@ class Dashboards extends ApiController
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$dashboard = $this->dispatch(new CreateDashboard($request));
return $this->response->created(route('api.dashboards.show', $dashboard->id), $this->item($dashboard, new Transformer()));
return $this->created(route('api.dashboards.show', $dashboard->id), new Resource($dashboard));
}
/**
@ -66,16 +66,16 @@ class Dashboards extends ApiController
*
* @param $dashboard
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Dashboard $dashboard, Request $request)
{
try {
$dashboard = $this->dispatch(new UpdateDashboard($dashboard, $request));
return $this->item($dashboard->fresh(), new Transformer());
return new Resource($dashboard->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -83,16 +83,16 @@ class Dashboards extends ApiController
* Enable the specified resource in storage.
*
* @param Dashboard $dashboard
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Dashboard $dashboard)
{
try {
$dashboard = $this->dispatch(new UpdateDashboard($dashboard, request()->merge(['enabled' => 1])));
return $this->item($dashboard->fresh(), new Transformer());
return new Resource($dashboard->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -100,16 +100,16 @@ class Dashboards extends ApiController
* Disable the specified resource in storage.
*
* @param Dashboard $dashboard
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Dashboard $dashboard)
{
try {
$dashboard = $this->dispatch(new UpdateDashboard($dashboard, request()->merge(['enabled' => 0])));
return $this->item($dashboard->fresh(), new Transformer());
return new Resource($dashboard->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -117,16 +117,16 @@ class Dashboards extends ApiController
* Remove the specified resource from storage.
*
* @param Dashboard $dashboard
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Dashboard $dashboard)
{
try {
$this->dispatch(new DeleteDashboard($dashboard));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -135,7 +135,7 @@ class Dashboards extends ApiController
*
* @param Dashboard $dashboard
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function canAccess($dashboard)
{
@ -145,6 +145,6 @@ class Dashboards extends ApiController
$message = trans('dashboards.error.not_user_dashboard');
$this->response->errorUnauthorized($message);
$this->errorUnauthorized($message);
}
}

View File

@ -4,50 +4,50 @@ namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Common\Item as Request;
use App\Http\Resources\Common\Item as Resource;
use App\Jobs\Common\CreateItem;
use App\Jobs\Common\DeleteItem;
use App\Jobs\Common\UpdateItem;
use App\Models\Common\Item;
use App\Transformers\Common\Item as Transformer;
class Items extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$items = Item::with('category', 'taxes')->collect();
return $this->response->paginator($items, new Transformer());
return Resource::collection($items);
}
/**
* Display the specified resource.
*
* @param int|string $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
$item = Item::with('category', 'taxes')->find($id);
return $this->item($item, new Transformer());
return new Resource($item);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$item = $this->dispatch(new CreateItem($request));
return $this->response->created(route('api.items.show', $item->id), $this->item($item, new Transformer()));
return $this->created(route('api.items.show', $item->id), new Resource($item));
}
/**
@ -55,55 +55,55 @@ class Items extends ApiController
*
* @param $item
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Item $item, Request $request)
{
$item = $this->dispatch(new UpdateItem($item, $request));
return $this->item($item->fresh(), new Transformer());
return new Resource($item->fresh());
}
/**
* Enable the specified resource in storage.
*
* @param Item $item
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Item $item)
{
$item = $this->dispatch(new UpdateItem($item, request()->merge(['enabled' => 1])));
return $this->item($item->fresh(), new Transformer());
return new Resource($item->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param Item $item
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Item $item)
{
$item = $this->dispatch(new UpdateItem($item, request()->merge(['enabled' => 0])));
return $this->item($item->fresh(), new Transformer());
return new Resource($item->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param Item $item
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Item $item)
{
try {
$this->dispatch(new DeleteItem($item));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -3,13 +3,10 @@
namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use Date;
use Dingo\Api\Routing\Helpers;
use App\Utilities\Date;
class Ping extends ApiController
{
use Helpers;
/**
* Instantiate a new controller instance.
*/
@ -23,9 +20,9 @@ class Ping extends ApiController
*
* @return \Illuminate\Http\JsonResponse
*/
public function index()
public function pong()
{
return $this->response->array([
return response()->json([
'status' => 'ok',
'timestamp' => Date::now(),
]);

View File

@ -4,48 +4,48 @@ namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Common\Report as Request;
use App\Http\Resources\Common\Report as Resource;
use App\Jobs\Common\CreateReport;
use App\Jobs\Common\DeleteReport;
use App\Jobs\Common\UpdateReport;
use App\Models\Common\Report;
use App\Transformers\Common\Report as Transformer;
class Reports extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$reports = Report::collect();
return $this->response->paginator($reports, new Transformer());
return Resource::collection($reports);
}
/**
* Display the specified resource.
*
* @param Report $report
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Report $report)
{
return $this->item($report, new Transformer());
return new Resource($report);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$report = $this->dispatch(new CreateReport($request));
return $this->response->created(route('api.reports.show', $report->id), $this->item($report, new Transformer()));
return $this->created(route('api.reports.show', $report->id), new Resource($report));
}
/**
@ -53,29 +53,29 @@ class Reports extends ApiController
*
* @param $report
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Report $report, Request $request)
{
$report = $this->dispatch(new UpdateReport($report, $request));
return $this->item($report->fresh(), new Transformer());
return new Resource($report->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param Report $report
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Report $report)
{
try {
$this->dispatch(new DeleteReport($report));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,7 +4,6 @@ namespace App\Http\Controllers\Api\Common;
use App\Abstracts\Http\ApiController;
use App\Models\Module\Module;
use Dingo\Api\Http\Response;
use Illuminate\Filesystem\Filesystem;
use Illuminate\Support\Facades\App;
use Illuminate\Support\Str;
@ -16,7 +15,7 @@ class Translations extends ApiController
*
* @param string $locale
* @param string $file
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function file($locale, $file)
{
@ -34,7 +33,7 @@ class Translations extends ApiController
* Display the specified resource.
*
* @param string $locale
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function all($locale)
{

View File

@ -4,11 +4,11 @@ namespace App\Http\Controllers\Api\Document;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Banking\Transaction as Request;
use App\Http\Resources\Banking\Transaction as Resource;
use App\Jobs\Banking\CreateBankingDocumentTransaction;
use App\Jobs\Banking\DeleteTransaction;
use App\Models\Banking\Transaction;
use App\Models\Document\Document;
use App\Transformers\Banking\Transaction as Transformer;
class DocumentTransactions extends ApiController
{
@ -28,13 +28,13 @@ class DocumentTransactions extends ApiController
* Display a listing of the resource.
*
* @param $document_id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index($document_id)
{
$transactions = Transaction::documentId($document_id)->get();
return $this->response->collection($transactions, new Transformer());
return Resource::collection($transactions);
}
/**
@ -42,13 +42,13 @@ class DocumentTransactions extends ApiController
*
* @param $document_id
* @param $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($document_id, $id)
{
$transaction = Transaction::documentId($document_id)->find($id);
return $this->item($transaction, new Transformer());
return new Resource($transaction);
}
/**
@ -56,7 +56,7 @@ class DocumentTransactions extends ApiController
*
* @param $document_id
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store($document_id, Request $request)
{
@ -64,7 +64,7 @@ class DocumentTransactions extends ApiController
$transaction = $this->dispatch(new CreateBankingDocumentTransaction($document, $request));
return $this->response->created(route('api.documents.transactions.show', [$document_id, $transaction->id]), $this->item($transaction, new Transformer()));
return $this->created(route('api.documents.transactions.show', [$document_id, $transaction->id]), new Resource($transaction));
}
/**
@ -72,7 +72,7 @@ class DocumentTransactions extends ApiController
*
* @param $document_id
* @param $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy($document_id, $id)
{
@ -80,6 +80,6 @@ class DocumentTransactions extends ApiController
$this->dispatch(new DeleteTransaction($transaction));
return $this->response->noContent();
return $this->noContent();
}
}

View File

@ -4,31 +4,31 @@ namespace App\Http\Controllers\Api\Document;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Document\Document as Request;
use App\Http\Resources\Document\Document as Resource;
use App\Jobs\Document\CreateDocument;
use App\Jobs\Document\DeleteDocument;
use App\Jobs\Document\UpdateDocument;
use App\Models\Document\Document;
use App\Transformers\Document\Document as Transformer;
class Documents extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$documents = Document::with('contact', 'histories', 'items', 'transactions')->collect(['issued_at'=> 'desc']);
return $this->response->paginator($documents, new Transformer());
return Resource::collection($documents);
}
/**
* Display the specified resource.
*
* @param $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -39,7 +39,7 @@ class Documents extends ApiController
$document = Document::where('document_number', $id)->first();
}
return $this->item($document, new Transformer());
return new Resource($document);
}
/**
@ -47,13 +47,13 @@ class Documents extends ApiController
*
* @param $request
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$document = $this->dispatch(new CreateDocument($request));
return $this->response->created(route('api.documents.show', $document->id), $this->item($document, new Transformer()));
return $this->created(route('api.documents.show', $document->id), new Resource($document));
}
/**
@ -62,13 +62,13 @@ class Documents extends ApiController
* @param $document
* @param $request
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Document $document, Request $request)
{
$document = $this->dispatch(new UpdateDocument($document, $request));
return $this->item($document->fresh(), new Transformer());
return new Resource($document->fresh());
}
/**
@ -76,16 +76,16 @@ class Documents extends ApiController
*
* @param Document $document
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Document $document)
{
try {
$this->dispatch(new DeleteDocument($document));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,48 +4,48 @@ namespace App\Http\Controllers\Api\Settings;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Setting\Category as Request;
use App\Http\Resources\Setting\Category as Resource;
use App\Jobs\Setting\CreateCategory;
use App\Jobs\Setting\DeleteCategory;
use App\Jobs\Setting\UpdateCategory;
use App\Models\Setting\Category;
use App\Transformers\Setting\Category as Transformer;
class Categories extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$categories = Category::collect();
$categories = Category::withSubCategory()->collect();
return $this->response->paginator($categories, new Transformer());
return Resource::collection($categories);
}
/**
* Display the specified resource.
*
* @param Category $category
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Category $category)
{
return $this->item($category, new Transformer());
return new Resource($category);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$category = $this->dispatch(new CreateCategory($request));
return $this->response->created(route('api.categories.show', $category->id), $this->item($category, new Transformer()));
return $this->created(route('api.categories.show', $category->id), new Resource($category));
}
/**
@ -53,16 +53,16 @@ class Categories extends ApiController
*
* @param $category
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Category $category, Request $request)
{
try {
$category = $this->dispatch(new UpdateCategory($category, $request));
return $this->item($category->fresh(), new Transformer());
return new Resource($category->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -70,29 +70,29 @@ class Categories extends ApiController
* Enable the specified resource in storage.
*
* @param Category $category
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Category $category)
{
$category = $this->dispatch(new UpdateCategory($category, request()->merge(['enabled' => 1])));
return $this->item($category->fresh(), new Transformer());
return new Resource($category->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param Category $category
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Category $category)
{
try {
$category = $this->dispatch(new UpdateCategory($category, request()->merge(['enabled' => 0])));
return $this->item($category->fresh(), new Transformer());
return new Resource($category->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -100,16 +100,16 @@ class Categories extends ApiController
* Remove the specified resource from storage.
*
* @param Category $category
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Category $category)
{
try {
$this->dispatch(new DeleteCategory($category));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,31 +4,31 @@ namespace App\Http\Controllers\Api\Settings;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Setting\Currency as Request;
use App\Http\Resources\Setting\Currency as Resource;
use App\Jobs\Setting\CreateCurrency;
use App\Jobs\Setting\DeleteCurrency;
use App\Jobs\Setting\UpdateCurrency;
use App\Models\Setting\Currency;
use App\Transformers\Setting\Currency as Transformer;
class Currencies extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$currencies = Currency::collect();
return $this->response->paginator($currencies, new Transformer());
return Resource::collection($currencies);
}
/**
* Display the specified resource.
*
* @param int|string $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -39,20 +39,20 @@ class Currencies extends ApiController
$currency = Currency::where('code', $id)->first();
}
return $this->item($currency, new Transformer());
return new Resource($currency);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$currency = $this->dispatch(new CreateCurrency($request));
return $this->response->created(route('api.currencies.show', $currency->id), $this->item($currency, new Transformer()));
return $this->created(route('api.currencies.show', $currency->id), new Resource($currency));
}
/**
@ -60,16 +60,16 @@ class Currencies extends ApiController
*
* @param $currency
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Currency $currency, Request $request)
{
try {
$currency = $this->dispatch(new UpdateCurrency($currency, $request));
return $this->item($currency->fresh(), new Transformer());
return new Resource($currency->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -77,29 +77,29 @@ class Currencies extends ApiController
* Enable the specified resource in storage.
*
* @param Currency $currency
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Currency $currency)
{
$currency = $this->dispatch(new UpdateCurrency($currency, request()->merge(['enabled' => 1])));
return $this->item($currency->fresh(), new Transformer());
return new Resource($currency->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param Currency $currency
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Currency $currency)
{
try {
$currency = $this->dispatch(new UpdateCurrency($currency, request()->merge(['enabled' => 0])));
return $this->item($currency->fresh(), new Transformer());
return new Resource($currency->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -107,16 +107,16 @@ class Currencies extends ApiController
* Remove the specified resource from storage.
*
* @param Currency $currency
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Currency $currency)
{
try {
$this->dispatch(new DeleteCurrency($currency));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}

View File

@ -4,14 +4,11 @@ namespace App\Http\Controllers\Api\Settings;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Setting\Setting as Request;
use App\Http\Resources\Setting\Setting as Resource;
use App\Models\Setting\Setting;
use App\Transformers\Setting\Setting as Transformer;
use Dingo\Api\Routing\Helpers;
class Settings extends ApiController
{
use Helpers;
/**
* Instantiate a new controller instance.
*/
@ -26,20 +23,20 @@ class Settings extends ApiController
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$settings = Setting::all();
return $this->response->collection($settings, new Transformer());
return Resource::collection($settings);
}
/**
* Display the specified resource.
*
* @param int|string $id
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show($id)
{
@ -50,20 +47,20 @@ class Settings extends ApiController
$setting = Setting::where('key', $id)->first();
}
return $this->item($setting, new Transformer());
return new Resource($setting);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$setting = Setting::create($request->all());
return $this->response->created(route('api.settings.show', $setting->id), $this->item($setting, new Transformer()));
return $this->created(route('api.settings.show', $setting->id), new Resource($setting));
}
/**
@ -71,25 +68,25 @@ class Settings extends ApiController
*
* @param $setting
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Setting $setting, Request $request)
{
$setting->update($request->all());
return $this->item($setting->fresh(), new Transformer());
return new Resource($setting->fresh());
}
/**
* Remove the specified resource from storage.
*
* @param Setting $setting
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Setting $setting)
{
$setting->delete();
return $this->response->noContent();
return $this->noContent();
}
}

View File

@ -4,48 +4,48 @@ namespace App\Http\Controllers\Api\Settings;
use App\Abstracts\Http\ApiController;
use App\Http\Requests\Setting\Tax as Request;
use App\Http\Resources\Setting\Tax as Resource;
use App\Jobs\Setting\CreateTax;
use App\Jobs\Setting\DeleteTax;
use App\Jobs\Setting\UpdateTax;
use App\Models\Setting\Tax;
use App\Transformers\Setting\Tax as Transformer;
class Taxes extends ApiController
{
/**
* Display a listing of the resource.
*
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function index()
{
$taxes = Tax::collect();
return $this->response->paginator($taxes, new Transformer());
return Resource::collection($taxes);
}
/**
* Display the specified resource.
*
* @param Tax $tax
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function show(Tax $tax)
{
return $this->item($tax, new Transformer());
return new Resource($tax);
}
/**
* Store a newly created resource in storage.
*
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function store(Request $request)
{
$tax = $this->dispatch(new CreateTax($request));
return $this->response->created(route('api.taxes.show', $tax->id), $this->item($tax, new Transformer()));
return $this->created(route('api.taxes.show', $tax->id), new Resource($tax));
}
/**
@ -53,16 +53,16 @@ class Taxes extends ApiController
*
* @param $tax
* @param $request
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function update(Tax $tax, Request $request)
{
try {
$tax = $this->dispatch(new UpdateTax($tax, $request));
return $this->item($tax->fresh(), new Transformer());
return new Resource($tax->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -70,29 +70,29 @@ class Taxes extends ApiController
* Enable the specified resource in storage.
*
* @param Tax $tax
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function enable(Tax $tax)
{
$tax = $this->dispatch(new UpdateTax($tax, request()->merge(['enabled' => 1])));
return $this->item($tax->fresh(), new Transformer());
return new Resource($tax->fresh());
}
/**
* Disable the specified resource in storage.
*
* @param Tax $tax
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\JsonResponse
*/
public function disable(Tax $tax)
{
try {
$tax = $this->dispatch(new UpdateTax($tax, request()->merge(['enabled' => 0])));
return $this->item($tax->fresh(), new Transformer());
return new Resource($tax->fresh());
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
@ -100,16 +100,16 @@ class Taxes extends ApiController
* Remove the specified resource from storage.
*
* @param Tax $tax
* @return \Dingo\Api\Http\Response
* @return \Illuminate\Http\Response
*/
public function destroy(Tax $tax)
{
try {
$this->dispatch(new DeleteTax($tax));
return $this->response->noContent();
return $this->noContent();
} catch(\Exception $e) {
$this->response->errorUnauthorized($e->getMessage());
$this->errorUnauthorized($e->getMessage());
}
}
}