From 11c6c953c034cac7a61635e9f62b417593c12b60 Mon Sep 17 00:00:00 2001
From: W <W>
Date: Thu, 21 Feb 2019 19:21:08 +0700
Subject: [PATCH] edit response

---
 .../Controllers/TasksMemberController.php     | 38 ++++++++++++++++---
 app/Http/Controllers/UserController.php       |  2 +-
 app/TasksMember.php                           |  2 +-
 ...02_19_141233_create_tasks_member_table.php |  4 +-
 routes/api.php                                |  4 ++
 5 files changed, 41 insertions(+), 9 deletions(-)

diff --git a/app/Http/Controllers/TasksMemberController.php b/app/Http/Controllers/TasksMemberController.php
index 53244c7..e8346e2 100644
--- a/app/Http/Controllers/TasksMemberController.php
+++ b/app/Http/Controllers/TasksMemberController.php
@@ -6,7 +6,7 @@ use Illuminate\Http\Request;
 use App\TasksMember;
 class TasksMemberController extends Controller
 {
-    public function add(Request $req) {
+    public function addMember(Request $request) {
         $user = $request->user();
         $result = $request->has([
             'task_id',
@@ -14,17 +14,45 @@ class TasksMemberController extends Controller
         ]);
         if ($result) {
             $memberTask = TasksMember::create([
-                'task_id' => $req->task_id,
-                'user_id' => $req->user_id
+                'task_id' => $request->task_id,
+                'user_id' => $request->user_id
             ]);
             return response(json_encode([
                 'data' => $memberTask->toArray(),
-                'msg' => ['success']
+                'statusMessage'=> 'success',
             ]), 200);
         } else {
             return response(json_encode([
-                'err' => ['Bad Request']
+                'data' => NULL,
+                'statusMessage'=> 'error',
             ]), 400);
         }
     }
+
+
+    public function removeMember(Request $request) {
+        $user = $request->user();
+        $result = $request->has([
+            'task_id',
+            'user_id'
+        ]);
+        if ($result) {
+            $memberTask = TasksMember::where([
+                'task_id' => $request->task_id,
+                'user_id' => $request->user_id
+            ])->first();
+            $memberTask->delete();
+            return response(json_encode([
+                'data' => NULL,
+                'statusMessage'=> 'success',
+            ]), 200);
+        } else {
+            return response(json_encode([
+                'data' => NULL,
+                'statusMessage'=> 'error',
+            ]), 400);
+        }
+    }
+
+
 }
diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php
index 453b151..98cc4cf 100644
--- a/app/Http/Controllers/UserController.php
+++ b/app/Http/Controllers/UserController.php
@@ -25,7 +25,7 @@ class UserController extends Controller
                     $token = $user->createToken('accessToken')->accessToken;
                     $user['token'] = $token;
                     return json_encode([
-                        'user' => $user->toArray(),
+                        'data' => $user->toArray(),
                         'statusMessage'=> "success",
                     ]);
                 } else {
diff --git a/app/TasksMember.php b/app/TasksMember.php
index 10d268c..4b98558 100644
--- a/app/TasksMember.php
+++ b/app/TasksMember.php
@@ -3,7 +3,7 @@
 namespace App;
 
 use Illuminate\Database\Eloquent\Model;
-
+use Illuminate\Database\Eloquent\Builder;
 class TasksMember extends Model
 {
     //
diff --git a/database/migrations/2019_02_19_141233_create_tasks_member_table.php b/database/migrations/2019_02_19_141233_create_tasks_member_table.php
index 3e9ecf4..aa7eae6 100644
--- a/database/migrations/2019_02_19_141233_create_tasks_member_table.php
+++ b/database/migrations/2019_02_19_141233_create_tasks_member_table.php
@@ -15,9 +15,9 @@ class CreateTasksMemberTable extends Migration
     {
         Schema::create('tasks_member', function (Blueprint $table) {
             $table->unsignedInteger('task_id');
-            $table->foreign('task_id')->references('id')->on('tasks');
+            $table->foreign('task_id')->references('id')->on('tasks')->onDelete('cascade');;
             $table->unsignedInteger('user_id');
-            $table->foreign('user_id')->references('id')->on('users');
+            $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');;
             $table->timestamps();
         });
     }
diff --git a/routes/api.php b/routes/api.php
index 5cc149c..e2b73fb 100644
--- a/routes/api.php
+++ b/routes/api.php
@@ -30,6 +30,10 @@ Route::get('/tasks/{taskId}', 'TaskController@show')->middleware('auth:api');
 Route::put('/tasks/{taskId}', 'TaskController@update')->middleware('auth:api');
 Route::delete('/tasks/{taskId}', 'TaskController@delete')->middleware('auth:api');
 
+//Task Member
+Route::delete('/task_member', 'TasksMemberController@removeMember')->middleware('auth:api');
+Route::post('/task_member', 'TasksMemberController@addMember')->middleware('auth:api');
+
 // Route::group(['middleware' => 'auth:api'], function()
 // {
 //     Route::resource('tasks','TaskController', ['except' => ['index', 'edit', 'create']]);
-- 
GitLab