diff --git a/app/Http/Controllers/AccountController.php b/app/Http/Controllers/AccountController.php index 300212bb2fb6..48a86b6fe078 100644 --- a/app/Http/Controllers/AccountController.php +++ b/app/Http/Controllers/AccountController.php @@ -14,9 +14,7 @@ namespace App\Http\Controllers; use App\Http\Requests\Account\CreateAccountRequest; use App\Jobs\Account\CreateAccount; use App\Models\Account; -use App\Models\CompanyUser; use App\Transformers\AccountTransformer; -use App\Transformers\CompanyUserTransformer; use Illuminate\Foundation\Bus\DispatchesJobs; use Illuminate\Http\Request; use Illuminate\Support\Facades\Log; @@ -68,10 +66,9 @@ class AccountController extends BaseController $account = CreateAccount::dispatchNow($request->all()); - $this->entity_type = CompanyUser::class; - $this->entity_transformer = CompanyUserTransformer::class; - - return $this->listResponse($account->default_company->users); + $account->load('company_users'); + + return $this->itemResponse($account); } diff --git a/app/Http/Controllers/BaseController.php b/app/Http/Controllers/BaseController.php index 2a2d5c272003..4199680fc409 100644 --- a/app/Http/Controllers/BaseController.php +++ b/app/Http/Controllers/BaseController.php @@ -36,6 +36,14 @@ class BaseController extends Controller */ public $forced_includes; + + /** + * Passed from the parent when we need to force + * the key of the response object + * @var string + */ + public $forced_index; + /** * Fractal manager * @var object @@ -50,6 +58,8 @@ class BaseController extends Controller $this->forced_includes = []; + $this->forced_index = 'data'; + } private function buildManager() @@ -152,7 +162,7 @@ class BaseController extends Controller protected function response($response) { - $index = request()->input('index') ?: 'data'; + $index = request()->input('index') ?: $this->forced_index; if ($index == 'none') { unset($response['meta']); diff --git a/app/Http/Controllers/CompanyController.php b/app/Http/Controllers/CompanyController.php index 0a2dc379ff5a..e52756adba3d 100644 --- a/app/Http/Controllers/CompanyController.php +++ b/app/Http/Controllers/CompanyController.php @@ -20,6 +20,7 @@ use App\Http\Requests\Company\StoreCompanyRequest; use App\Http\Requests\Company\UpdateCompanyRequest; use App\Http\Requests\SignupRequest; use App\Jobs\Company\CreateCompany; +use App\Jobs\Company\CreateCompanyToken; use App\Jobs\RegisterNewAccount; use App\Models\Company; use App\Repositories\CompanyRepository; diff --git a/tests/Feature/CompanyTest.php b/tests/Feature/CompanyTest.php index 7f5425da9b74..9b82d5a52f2c 100644 --- a/tests/Feature/CompanyTest.php +++ b/tests/Feature/CompanyTest.php @@ -4,6 +4,7 @@ namespace Tests\Feature; use App\Models\Account; use App\Models\Company; +use App\Models\CompanyToken; use App\Models\Product; use App\Models\User; use App\Utils\Traits\MakesHash; @@ -83,12 +84,11 @@ class CompanyTest extends TestCase 'name' => 'A New Company' ] ) - ->assertStatus(200)->decodeResponseJson(); + ->assertStatus(200)->decodeResponseJson(); $company = Company::find($this->decodePrimaryKey($response['data']['id'])); -Log::error('coco'); -Log::error($company); + $token = CompanyToken::whereCompanyId($company->id)->first()->token; $company_update = [ 'name' => 'CHANGE NAME'