Add account to login response

This commit is contained in:
David Bomba 2019-09-12 22:02:25 +10:00
parent da0c0080a5
commit 2f164d6a76
3 changed files with 19 additions and 10 deletions

View File

@ -16,10 +16,8 @@ use App\Http\Controllers\Controller;
use App\Jobs\Account\CreateAccount; use App\Jobs\Account\CreateAccount;
use App\Libraries\MultiDB; use App\Libraries\MultiDB;
use App\Libraries\OAuth\OAuth; use App\Libraries\OAuth\OAuth;
use App\Models\Account;
use App\Models\CompanyUser; use App\Models\CompanyUser;
use App\Models\User; use App\Models\User;
use App\Transformers\AccountTransformer;
use App\Transformers\CompanyUserTransformer; use App\Transformers\CompanyUserTransformer;
use App\Transformers\UserTransformer; use App\Transformers\UserTransformer;
use App\Utils\Traits\UserSessionAttributes; use App\Utils\Traits\UserSessionAttributes;
@ -45,9 +43,9 @@ class LoginController extends BaseController
use AuthenticatesUsers; use AuthenticatesUsers;
use UserSessionAttributes; use UserSessionAttributes;
protected $entity_type = Account::class; protected $entity_type = CompanyUser::class;
protected $entity_transformer = AccountTransformer::class; protected $entity_transformer = CompanyUserTransformer::class;
/** /**
* Where to redirect users after login. * Where to redirect users after login.
@ -109,10 +107,9 @@ class LoginController extends BaseController
$user->setCompany($user->user_companies->first()->account->default_company); $user->setCompany($user->user_companies->first()->account->default_company);
//$ct = CompanyUser::whereUserId($user->id); $ct = CompanyUser::whereUserId($user->id);
return $this->listResponse($ct);
return $this->itemResponse($user->user_companies->first()->account);
//return $this->itemResponse($this->guard()->user());
} }
else { else {

View File

@ -33,8 +33,8 @@ class AccountTransformer extends EntityTransformer
*/ */
protected $defaultIncludes = [ protected $defaultIncludes = [
//'default_company', //'default_company',
'user', //'user',
'company_users' //'company_users'
]; ];
/** /**

View File

@ -11,10 +11,12 @@
namespace App\Transformers; namespace App\Transformers;
use App\Models\Account;
use App\Models\Company; use App\Models\Company;
use App\Models\CompanyToken; use App\Models\CompanyToken;
use App\Models\CompanyUser; use App\Models\CompanyUser;
use App\Models\User; use App\Models\User;
use App\Transformers\AccountTransformer;
use App\Transformers\CompanyTokenTransformer; use App\Transformers\CompanyTokenTransformer;
class CompanyUserTransformer extends EntityTransformer class CompanyUserTransformer extends EntityTransformer
@ -24,6 +26,7 @@ class CompanyUserTransformer extends EntityTransformer
* @var array * @var array
*/ */
protected $defaultIncludes = [ protected $defaultIncludes = [
'account',
'company', 'company',
'user', 'user',
'token' 'token'
@ -35,7 +38,8 @@ class CompanyUserTransformer extends EntityTransformer
protected $availableIncludes = [ protected $availableIncludes = [
'user', 'user',
'company', 'company',
'token' 'token',
'account',
]; ];
@ -52,6 +56,14 @@ class CompanyUserTransformer extends EntityTransformer
]; ];
} }
public function includeAccount(CompanyUser $company_user)
{
$transformer = new AccountTransformer($this->serializer);
return $this->includeItem($company_user->account, $transformer, Account::class);
}
public function includeCompany(CompanyUser $company_user) public function includeCompany(CompanyUser $company_user)
{ {