From dccf9bba17be36f9f00b5f0d0e7cbb7c2a112c06 Mon Sep 17 00:00:00 2001 From: W <W> Date: Sun, 24 Feb 2019 02:49:57 +0700 Subject: [PATCH] fixing api tas --- app/Http/Controllers/TasksController.php | 43 ++++++++++++++++++++---- app/Tasks.php | 2 +- routes/api.php | 2 ++ 3 files changed, 40 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/TasksController.php b/app/Http/Controllers/TasksController.php index ef9c282..590382f 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 e0a2a33..2ecce70 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 1a09b56..03b7208 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 -- GitLab