diff --git a/app/Http/Controllers/TasksController.php b/app/Http/Controllers/TasksController.php
index ef9c28229eace372bde8b701b55c90a9479df210..590382fa827422de04419d6905c01d2ec625ab8e 100644
--- a/app/Http/Controllers/TasksController.php
+++ b/app/Http/Controllers/TasksController.php
@@ -6,6 +6,7 @@ use Illuminate\Http\Request;
 use App\Tasks;
 use App\Groups;
 use App\TasksMember;
+use Illuminate\Support\Facades\Config;
 use Illuminate\Support\Facades\DB;
 use function GuzzleHttp\json_encode;
 class TasksController extends Controller
@@ -20,28 +21,29 @@ class TasksController extends Controller
     public function store(Request $request)
     {
         //
-        $user = $request->user();
         $result = $request->has([
             'group_id',
             'task_name',
             'description',
-            'kanban_status'
+            'kanban_status',
+            'work_hour'
         ]);
         if ($result) {
             $form = [
                 'group_id' => $request->group_id,
                 'task_name' => $request->task_name,
                 'description' => $request->description,
-                'kanban_status' => $request->kanban_status
+                'kanban_status' => $request->kanban_status,
+                'work_hour' => $request->work_hour
             ];
             $task = Tasks::create($form);
             return response(json_encode([
-                'data' => $task->toArray(),
-                'msg' => ['Success']
+                'data' => NULL,
+                'statusMessage' => 'success'
             ]), 200);
         } else {
             return response(json_encode([
-                'err' => ['Bad Request']
+                'statusMessage' => 'error'
             ]), 400);
         }
     }
@@ -171,4 +173,33 @@ class TasksController extends Controller
             ]), 200);
         }
     }
+
+
+
+    public function moveTask($taskId) {
+        $task = Tasks::where([
+            'id' => $taskId
+        ])->first();
+        if (is_null($task)) {
+            return response(json_encode([
+                'data' => NULL,
+                'statusMessage' => 'error'
+            ]), 404); 
+        } else {
+
+            switch($task->kanban_status) {
+                case Config::get('constants.KANBAN_STATUS.OPEN'): 
+                    $task->kanban_status = Config::get('constants.KANBAN_STATUS.WIP');
+                    break;
+                case Config::get('constants.KANBAN_STATUS.WIP'): 
+                    $task->kanban_status = Config::get('constants.KANBAN_STATUS.DONE');
+                    break;
+            }
+            $task->save();
+            return response(json_encode([
+                'data' => NULL,
+                'statusMessage' => 'success'
+            ]), 200); 
+        }
+    }
 }
diff --git a/app/Tasks.php b/app/Tasks.php
index e0a2a332f11607c976cf874f8281c5d015d449af..2ecce701fa57c1a1d7899a5215eb0329a41c8733 100644
--- a/app/Tasks.php
+++ b/app/Tasks.php
@@ -9,7 +9,7 @@ class Tasks extends Model
 
     protected $fillable = [
         'group_id', 'task_name',
-        'description', 'kanban_status'
+        'description', 'kanban_status', 'work_hour'
     ];
 
     public function groups()
diff --git a/routes/api.php b/routes/api.php
index 1a09b5662d5a644561dd3ef7867fa938f6a017dc..03b7208eb6e49a2a43e1252a786fc3df70e271e4 100644
--- a/routes/api.php
+++ b/routes/api.php
@@ -33,6 +33,8 @@ Route::get('/tasks/{taskId}', 'TasksController@show');
 Route::put('/tasks/{taskId}', 'TasksController@update');
 Route::delete('/tasks/{taskId}', 'TasksController@destroy'); //Bisa //Hapus Task
 
+Route::put('/task/move/{taskId}', 'TasksController@moveTask'); 
+
 //Task Member
 Route::delete('/task_member', 'TasksMemberController@removeMember'); //Bisa //delete member di task
 Route::post('/task_member', 'TasksMemberController@addMember'); //Bisa //Tambah member task