mirror of
https://github.com/solidtime-io/solidtime.git
synced 2026-08-10 17:22:15 +01:00
Enhanced admin panel
This commit is contained in:
committed by
Constantin Graf
parent
42ad5e004a
commit
0bf8a25d64
@@ -4,6 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace Database\Factories;
|
||||
|
||||
use App\Enums\Role;
|
||||
use App\Enums\Weekday;
|
||||
use App\Models\Organization;
|
||||
use App\Models\User;
|
||||
@@ -100,7 +101,9 @@ class UserFactory extends Factory
|
||||
->when(is_callable($callback), $callback)
|
||||
->create();
|
||||
|
||||
$organization->users()->attach($user, ['role' => 'owner']);
|
||||
$organization->users()->attach($user, ['role' => Role::Owner->value]);
|
||||
$user->currentTeam()->associate($organization);
|
||||
$user->save();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,12 +25,14 @@ class DatabaseSeeder extends Seeder
|
||||
public function run(): void
|
||||
{
|
||||
$this->deleteAll();
|
||||
$userAcmeOwner = User::factory()->create([
|
||||
$userAcmeOwner = User::factory()->withPersonalOrganization()->create([
|
||||
'name' => 'Acme Owner',
|
||||
'email' => 'owner@acme.test',
|
||||
]);
|
||||
$organizationAcme = Organization::factory()->withOwner($userAcmeOwner)->create([
|
||||
'name' => 'ACME Corp',
|
||||
'personal_team' => false,
|
||||
'currency' => 'EUR',
|
||||
]);
|
||||
$userAcmeManager = User::factory()->withPersonalOrganization()->create([
|
||||
'name' => 'Acme Manager',
|
||||
@@ -80,29 +82,35 @@ class DatabaseSeeder extends Seeder
|
||||
->forUser($userAcmeEmployee)
|
||||
->forOrganization($organizationAcme)
|
||||
->create();
|
||||
$client = Client::factory()->create([
|
||||
$client = Client::factory()->forOrganization($organizationAcme)->create([
|
||||
'name' => 'Big Company',
|
||||
]);
|
||||
$bigCompanyProject = Project::factory()->forClient($client)->create([
|
||||
$bigCompanyProject = Project::factory()->forOrganization($organizationAcme)->forClient($client)->create([
|
||||
'name' => 'Big Company Project',
|
||||
]);
|
||||
Task::factory()->forProject($bigCompanyProject)->create();
|
||||
Task::factory()->forOrganization($organizationAcme)->forProject($bigCompanyProject)->create();
|
||||
|
||||
$internalProject = Project::factory()->create([
|
||||
$internalProject = Project::factory()->forOrganization($organizationAcme)->create([
|
||||
'name' => 'Internal Project',
|
||||
]);
|
||||
|
||||
$organization2 = Organization::factory()->create([
|
||||
$organization2Owner = User::factory()->create([
|
||||
'name' => 'Other Owner',
|
||||
'email' => 'owner@rival-company.test',
|
||||
]);
|
||||
$organization2 = Organization::factory()->withOwner($organization2Owner)->create([
|
||||
'name' => 'Rival Corp',
|
||||
'personal_team' => true,
|
||||
'currency' => 'USD',
|
||||
]);
|
||||
$userAcmeManager = User::factory()->withPersonalOrganization()->create([
|
||||
'name' => 'Other User',
|
||||
'email' => 'test@rival-company.test',
|
||||
]);
|
||||
$userAcmeManager->organizations()->attach($organization2, [
|
||||
'role' => 'admin',
|
||||
'role' => Role::Admin->value,
|
||||
]);
|
||||
$otherCompanyProject = Project::factory()->forClient($client)->create([
|
||||
$otherCompanyProject = Project::factory()->forOrganization($organization2)->forClient($client)->create([
|
||||
'name' => 'Scale Company',
|
||||
]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user