From 7e4a51b1da7641c0eb551d9252de49b15fd75c7c Mon Sep 17 00:00:00 2001 From: W <W> Date: Sat, 23 Feb 2019 00:04:31 +0700 Subject: [PATCH] task and user --- app/Http/Controllers/TaskController.php | 4 ++-- app/Http/Controllers/UserController.php | 7 +++++++ app/User.php | 9 +++++++++ routes/api.php | 6 +++++- 4 files changed, 23 insertions(+), 3 deletions(-) diff --git a/app/Http/Controllers/TaskController.php b/app/Http/Controllers/TaskController.php index e47ea69..6f7c923 100644 --- a/app/Http/Controllers/TaskController.php +++ b/app/Http/Controllers/TaskController.php @@ -133,10 +133,10 @@ class TaskController extends Controller public function getTasksFromGroupId(Request $req, $groupId) { - $tasks = Group::find($groupId)->tasks; + $tasks = Task::where('group_id', $groupId)->get(); return response(json_encode([ 'data' => $tasks->toArray(), 'statusMessage' => 'success' - ]), 400); + ]), 200); } } diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 98cc4cf..a9fce09 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -69,4 +69,11 @@ class UserController extends Controller 'statusMessage'=> "success", ]), 200); } + + public function getGroups($userId){ + return response(json_encode([ + 'data' => User::getGroups($userId)->toArray(), + 'statusMessage'=> "success", + ]), 200); + } } diff --git a/app/User.php b/app/User.php index d9f93fa..70c22cb 100644 --- a/app/User.php +++ b/app/User.php @@ -6,6 +6,10 @@ use Illuminate\Notifications\Notifiable; use Laravel\Passport\HasApiTokens; use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Foundation\Auth\User as Authenticatable; +use Nexmo\Network\Number\Request; +use App\GroupMember; +use Illuminate\Support\Facades\App; +use Illuminate\Support\Facades\DB; class User extends Authenticatable { @@ -37,4 +41,9 @@ class User extends Authenticatable protected $casts = [ 'email_verified_at' => 'datetime', ]; + + public static function getGroups($userId) { + $groups = DB::table('group_member')->select('user_id','high_score','groups.created_at','groups.updated_at','id', 'group_name','description')->join('groups','group_member.group_id','=','groups.id')->where('user_id',$userId)->get(); + return $groups; + } } diff --git a/routes/api.php b/routes/api.php index 7c19d5a..2cd2d08 100644 --- a/routes/api.php +++ b/routes/api.php @@ -22,6 +22,10 @@ Route::post('/login', 'UserController@generateToken'); Route::post('/logout', 'UserController@logOut'); +//User +Route::get('/user/{userId}/groups', 'UserController@getGroups'); + + //Task Route::post('/tasks', 'TaskController@store'); Route::get('/tasks/{taskId}', 'TaskController@show'); @@ -33,7 +37,7 @@ Route::delete('/task_member', 'TasksMemberController@removeMember'); Route::post('/task_member', 'TasksMemberController@addMember'); //Get Group Task -Route::get('/group/{groupId}/tasks', 'TaskController@getTasksFromGroup'); +Route::get('/group/{groupId}/tasks', 'TaskController@getTasksFromGroupId'); //Group Route::post('/group', 'GroupController@store'); -- GitLab