From e425e07c897399b4507e6ca8e74eca4b9231dadd Mon Sep 17 00:00:00 2001 From: Nafies Luthfi Date: Sun, 28 Mar 2021 17:57:31 +0800 Subject: [PATCH] Add family member connection status_id column --- app/FamilyMemberConnection.php | 5 ++++- app/Http/Controllers/FamilyActionsController.php | 8 ++++++++ ...021_03_28_091809_create_family_member_connections_table.php | 1 + tests/Feature/ManageUserFamiliesTest.php | 10 ++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) diff --git a/app/FamilyMemberConnection.php b/app/FamilyMemberConnection.php index fea8846..10876b5 100644 --- a/app/FamilyMemberConnection.php +++ b/app/FamilyMemberConnection.php @@ -6,8 +6,11 @@ use Illuminate\Database\Eloquent\Model; class FamilyMemberConnection extends Model { + const STATUS_WAITING = 0; + const STATUS_APPROVED = 1; + protected $fillable = [ - 'id', 'requester_id', 'requested_id', + 'id', 'requester_id', 'requested_id', 'status_id', ]; public $incrementing = false; diff --git a/app/Http/Controllers/FamilyActionsController.php b/app/Http/Controllers/FamilyActionsController.php index f8ef39f..822b0a9 100644 --- a/app/Http/Controllers/FamilyActionsController.php +++ b/app/Http/Controllers/FamilyActionsController.php @@ -33,6 +33,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $request->get('set_father_id'), + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } else { $father = new User; @@ -48,6 +49,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $father->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -76,6 +78,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $request->get('set_mother_id'), + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } else { $mother = new User; @@ -91,6 +94,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $mother->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -138,6 +142,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $child->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } else { $child->setMother($user); @@ -146,6 +151,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $child->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -188,6 +194,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $wife->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); return back(); @@ -225,6 +232,7 @@ class FamilyActionsController extends Controller 'id' => Uuid::uuid4()->toString(), 'requester_id' => $user->id, 'requested_id' => $husband->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); return back(); diff --git a/database/migrations/2021_03_28_091809_create_family_member_connections_table.php b/database/migrations/2021_03_28_091809_create_family_member_connections_table.php index fc01627..275cbff 100644 --- a/database/migrations/2021_03_28_091809_create_family_member_connections_table.php +++ b/database/migrations/2021_03_28_091809_create_family_member_connections_table.php @@ -17,6 +17,7 @@ class CreateFamilyMemberConnectionsTable extends Migration $table->uuid('id')->primary(); $table->uuid('requester_id'); $table->uuid('requested_id'); + $table->unsignedTinyInteger('status_id')->default(0); $table->timestamps(); $table->unique(['requester_id', 'requested_id']); diff --git a/tests/Feature/ManageUserFamiliesTest.php b/tests/Feature/ManageUserFamiliesTest.php index 9aa16cc..8e3940b 100644 --- a/tests/Feature/ManageUserFamiliesTest.php +++ b/tests/Feature/ManageUserFamiliesTest.php @@ -2,6 +2,7 @@ namespace Tests\Feature; +use App\FamilyMemberConnection; use App\User; use Illuminate\Foundation\Testing\RefreshDatabase; use Tests\TestCase; @@ -34,6 +35,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $user->fresh()->father->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -62,6 +64,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $user->fresh()->mother->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -95,6 +98,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $child->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -190,6 +194,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $wife->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -228,6 +233,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $husband->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -255,6 +261,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $father->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -282,6 +289,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $mother->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -313,6 +321,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $wife->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); } @@ -344,6 +353,7 @@ class ManageUserFamiliesTest extends TestCase $this->seeInDatabase('family_member_connections', [ 'requester_id' => $user->id, 'requested_id' => $husband->id, + 'status_id' => FamilyMemberConnection::STATUS_APPROVED, ]); }