diff --git a/app/Group.php b/app/Groups.php similarity index 52% rename from app/Group.php rename to app/Groups.php index 90a9807dbba902c46aaeca2c749d5ca9290a5cbe..8faa29c49c931a2b45de4c0dcdc35e210685671a 100644 --- a/app/Group.php +++ b/app/Groups.php @@ -11,10 +11,20 @@ use Illuminate\Database\Eloquent\Model; * @property string $created_at * @property string $updated_at */ -class Group extends Model +class Groups extends Model { protected $table = 'groups'; protected $primaryKey = 'id'; - protected $fillable = ['group_name', 'description', 'created_at', 'updated_at']; + protected $fillable = ['group_name', 'description']; public $timestamps = true; + + public function members() + { + return $this->hasMany('App\GroupsMember', 'group_id'); + } + + public function tasks() + { + return $this->hasMany('App\Tasks', 'group_id'); + } } \ No newline at end of file diff --git a/app/GroupMember.php b/app/GroupsMember.php similarity index 80% rename from app/GroupMember.php rename to app/GroupsMember.php index 74baec8490fa7bd7b84f76b303a1441e497c1439..c565c23c53b9024b1a3cbe3a6d11e1c9d3aa5911 100644 --- a/app/GroupMember.php +++ b/app/GroupsMember.php @@ -14,9 +14,9 @@ use Illuminate\Database\Eloquent\Builder; * @property Group $group * @property User $user */ -class GroupMember extends Model +class GroupsMember extends Model { - protected $table = 'group_member'; + protected $table = 'groups_member'; public $incrementing = false; protected $primaryKey = ['group_id', 'user_id']; /** @@ -58,11 +58,15 @@ class GroupMember extends Model return $this->getAttribute($keyName); } - public function group() { - return $this->belongsTo('App\Group', 'group_id', 'group_id'); + public function groups() { + return $this->belongsTo('App\Groups', 'group_id'); } - public function user() { - return $this->belongsTo('App\User', 'user_id', 'id'); + public function users() { + return $this->belongsTo('App\User', 'user_id'); + } + + public function tasks() { + return $this->hasMany('App\Tasks', 'id', 'task_id'); } } diff --git a/app/Http/Controllers/GroupController.php b/app/Http/Controllers/GroupsController.php similarity index 89% rename from app/Http/Controllers/GroupController.php rename to app/Http/Controllers/GroupsController.php index 58505f4365919673268c461d3d4aaf370abf457d..152624eecf7ef29eb3a699d1859e83a5cf98e1a8 100644 --- a/app/Http/Controllers/GroupController.php +++ b/app/Http/Controllers/GroupsController.php @@ -3,9 +3,9 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; -use App\Group; +use App\Groups; -class GroupController extends Controller +class GroupsController extends Controller { public function store(Request $request) { $validator = $this->validate($request); @@ -16,10 +16,10 @@ class GroupController extends Controller ]), 400); } else { $input = $request->all(); - $isGroupExist = Group::find($input['group_id']); + $isGroupExist = Groups::find($input['group_id']); if (is_null($isGroupExist)) { - $group = Group::create([ + $group = Groups::create([ 'group_id' => $input['group_id'], 'group_name' => $input['group_name'], 'description' => $input['description'] @@ -39,7 +39,7 @@ class GroupController extends Controller } public function show(Request $request, $groupId) { - $isGroupExist = Group::find($groupId); + $isGroupExist = Groups::find($groupId); if (is_null($isGroupExist)) { return response(json_encode([ @@ -64,14 +64,14 @@ class GroupController extends Controller ]), 400); } else { $input = $request->all(); - $isGroupExist = Group::find($input['group_id']); + $isGroupExist = Groups::find($input['group_id']); if (is_null($isGroupExist)) { return response(json_encode([ 'statusMessage' => 'Bad Request' ]), 400); } else { - $group = Group::create([ + $group = Groups::create([ 'group_name' => $input['group_name'], 'description' => $input['description'] ]); @@ -86,7 +86,7 @@ class GroupController extends Controller } public function destroy(Request $request, $groupId) { - $group = Group::find($groupId); + $group = Groups::find($groupId); if (is_null($group)) { return response(json_encode([ diff --git a/app/Http/Controllers/GroupMemberController.php b/app/Http/Controllers/GroupsMemberController.php similarity index 86% rename from app/Http/Controllers/GroupMemberController.php rename to app/Http/Controllers/GroupsMemberController.php index 48c8cfd56bc0b03331bccfaef7c42f804651c81b..3128035535ef4cbf306994b43b721eada26d46d3 100644 --- a/app/Http/Controllers/GroupMemberController.php +++ b/app/Http/Controllers/GroupsMemberController.php @@ -3,11 +3,11 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; -use App\Group; -use App\GroupMember; +use App\Groups; +use App\GroupsMember; use Validator; -class GroupMemberController extends Controller +class GroupsMemberController extends Controller { public function store(Request $request) { $validator = $this->validate($request); @@ -18,8 +18,8 @@ class GroupMemberController extends Controller ]), 400); } else { $input = $request->all(); - $isGroupMemberExist = GroupMember::find($input['group_id'])::find($input['user_id']); - $groupMember = GroupMember::create([ + $isGroupMemberExist = GroupsMember::find($input['group_id'])::find($input['user_id']); + $groupMember = GroupsMember::create([ 'group_id' => $input['group_id'], 'user_id' => $input['user_id'], 'role' => $input['role'], @@ -44,7 +44,7 @@ class GroupMemberController extends Controller } public function show(Request $request, $groupId) { - $isGroupMemberExist = GroupMember::find($groupId); + $isGroupMemberExist = GroupsMember::find($groupId); if (is_null($groupMember)) { return response(json_decode([ @@ -69,12 +69,12 @@ class GroupMemberController extends Controller ]), 400); } else { $input = $request->all(); - $groupMember = GroupMember::create([ + $groupMember = GroupsMember::create([ 'role' => $input['role'], 'high_score' => $input['high_score'] ]); - $member = GroupMember::find($groupId)->find($userId); + $member = GroupsMember::find($groupId)->find($userId); if ($member) { $member->fill($groupMember); $member->save(); @@ -92,7 +92,7 @@ class GroupMemberController extends Controller } public function destroy(Request $request, $groupId, $userId) { - $groupMember = GroupMember::find($groupId); + $groupMember = GroupsMember::find($groupId); if (is_null($groupDetails)) { return response(json_encode([ diff --git a/app/Http/Controllers/TaskController.php b/app/Http/Controllers/TasksController.php similarity index 93% rename from app/Http/Controllers/TaskController.php rename to app/Http/Controllers/TasksController.php index e47ea695a16ca6ab647253eae527f4effdcc08d6..b0ea7ad5460789d304535f499d94551e95a57b33 100644 --- a/app/Http/Controllers/TaskController.php +++ b/app/Http/Controllers/TasksController.php @@ -3,8 +3,8 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; -use App\Task; -use App\Group; +use App\Tasks; +use App\Groups; use App\TasksMember; class TaskController extends Controller { @@ -31,7 +31,7 @@ class TaskController extends Controller 'description' => $request->description, 'status_kanban' => Config::get('constants.STATUS_KANBAN.PRODUCT_BACKLOG') ]; - $task = Task::create($form); + $task = Tasks::create($form); return response(json_encode([ 'data' => $task->toArray(), 'msg' => ['Success'] @@ -54,7 +54,7 @@ class TaskController extends Controller // $user = $request->user(); - $task = Task::find($taskId)->first(); + $task = Tasks::find($taskId)->first(); if ($task) { $taskArr = $task->toArray(); @@ -94,7 +94,7 @@ class TaskController extends Controller 'status_kanban' => $request->status_kanban, 'complexity' => $request->complexity ]; - $task = Task::find($taskId)->first(); + $task = Tasks::find($taskId)->first(); if ($task) { $task->fill($form); $task->save(); @@ -124,7 +124,7 @@ class TaskController extends Controller */ public function destroy($taskId) { - Task::destroy($taskId); + Tasks::destroy($taskId); return response(json_encode([ 'data' => NULL, 'statusMessage'=> 'success', @@ -133,7 +133,7 @@ class TaskController extends Controller public function getTasksFromGroupId(Request $req, $groupId) { - $tasks = Group::find($groupId)->tasks; + $tasks = Groups::find($groupId)->tasks; return response(json_encode([ 'data' => $tasks->toArray(), 'statusMessage' => 'success' diff --git a/app/Task.php b/app/Task.php deleted file mode 100644 index e6f7d321f0ff31549885523992a203da7bdb017f..0000000000000000000000000000000000000000 --- a/app/Task.php +++ /dev/null @@ -1,13 +0,0 @@ -<?php - -namespace App; - -use Illuminate\Database\Eloquent\Model; - -class Task extends Model -{ - // - public function members() { - return $this->hasMany('App\TasksMember', 'task_id'); - } -} diff --git a/app/Tasks.php b/app/Tasks.php new file mode 100644 index 0000000000000000000000000000000000000000..11e661dcbe49f578a35ab1b77ffb1cfd50e9d94d --- /dev/null +++ b/app/Tasks.php @@ -0,0 +1,18 @@ +<?php + +namespace App; + +use Illuminate\Database\Eloquent\Model; + +class Tasks extends Model +{ + + public function groups() + { + return $this->belongsTo('App\Groups', 'group_id'); + } + + public function pic() { + return $this->hasOne('App\TasksMember', 'task_id'); + } +} diff --git a/app/TasksMember.php b/app/TasksMember.php index 4b985580ceb07fe9a22a6c736243a3f0477c7700..3dd994de31799cd5ae94da35f937feae7e062b22 100644 --- a/app/TasksMember.php +++ b/app/TasksMember.php @@ -6,7 +6,6 @@ use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Builder; class TasksMember extends Model { - // protected $table = 'tasks_member'; public $incrementing = false; protected $primaryKey = ['task_id', 'user_id']; @@ -48,4 +47,8 @@ class TasksMember extends Model return $this->getAttribute($keyName); } + + public function task() { + return $this->belongsTo('App\Tasks', 'task_id'); + } } diff --git a/config/constants.php b/config/constants.php index cf839e891802271f906704ff4f89726b98db48a4..6ecac55dfc5ee93b79d7975d1c9f1187ca94b31b 100644 --- a/config/constants.php +++ b/config/constants.php @@ -1,10 +1,16 @@ <?php return [ - 'STATUS_KANBAN' => [ + 'KANBAN_STATUS' => [ 'PRODUCT_BACKLOG' => 'PRODUCT_BACKLOG', 'OPEN' => 'OPEN', 'WIP' => 'WIP', 'DONE' => 'DONE', ], + + 'ROLE' => [ + 'PRODUCT OWNER' => 'Product Owner', + 'SCRUM_MASTER' => 'Scrum Master', + 'SCRUM TEAM' => 'Scrum Team' + ], ]; \ No newline at end of file diff --git a/database/factories/GroupsFactory.php b/database/factories/GroupsFactory.php new file mode 100644 index 0000000000000000000000000000000000000000..2977d35f6754efc60570ebf919f58de006309362 --- /dev/null +++ b/database/factories/GroupsFactory.php @@ -0,0 +1,21 @@ +<?php + +use Faker\Generator as Faker; + +/* +|-------------------------------------------------------------------------- +| Model Factories +|-------------------------------------------------------------------------- +| +| This directory should contain each of the model factory definitions for +| your application. Factories provide a convenient way to generate new +| model instances for testing / seeding your application's database. +| +*/ + +$factory->define(App\Groups::class, function (Faker $faker) { + return [ + 'group_name' => $faker->company, + 'description' => array_random([$faker->paragraph($nbSentences = 2), ""]) + ]; +}); diff --git a/database/factories/GroupsMemberFactory.php b/database/factories/GroupsMemberFactory.php new file mode 100644 index 0000000000000000000000000000000000000000..0e64ec422b6c2f1053a5275df44b18de73e3b4fd --- /dev/null +++ b/database/factories/GroupsMemberFactory.php @@ -0,0 +1,23 @@ +<?php + +use Illuminate\Support\Str; +use Faker\Generator as Faker; + +/* +|-------------------------------------------------------------------------- +| Model Factories +|-------------------------------------------------------------------------- +| +| This directory should contain each of the model factory definitions for +| your application. Factories provide a convenient way to generate new +| model instances for testing / seeding your application's database. +| +*/ + +$factory->define(App\GroupsMember::class, function (Faker $faker) { + return [ + 'user_id' => factory('App\User')->create()->id, + 'role' => $faker->randomElement(Config::get('constants.ROLE')), + 'high_score' => $faker->randomNumber + ]; +}); \ No newline at end of file diff --git a/database/factories/TasksFactory.php b/database/factories/TasksFactory.php new file mode 100644 index 0000000000000000000000000000000000000000..274ba3b8788e28d15d5e04b97666daba557c388d --- /dev/null +++ b/database/factories/TasksFactory.php @@ -0,0 +1,24 @@ +<?php + +use Faker\Generator as Faker; + +/* +|-------------------------------------------------------------------------- +| Model Factories +|-------------------------------------------------------------------------- +| +| This directory should contain each of the model factory definitions for +| your application. Factories provide a convenient way to generate new +| model instances for testing / seeding your application's database. +| +*/ + +$factory->define(App\Tasks::class, function (Faker $faker) { + return [ + 'group_id' => App\Groups::pluck('id')->random(), + 'task_name' => $faker->sentence($nbWords = 3), + 'description' => array_random([$faker->text($maxNbChars = 50), ""]), + 'kanban_status' => $faker->randomElement(Config::get('constants.KANBAN_STATUS')), + 'complexity' => $faker->numberBetween($min = 1, $max = 100), + ]; +}); \ No newline at end of file diff --git a/database/factories/TasksMemberFactory.php b/database/factories/TasksMemberFactory.php new file mode 100644 index 0000000000000000000000000000000000000000..cf2090e3070e18ef1d8afa4d5995248d2e93dfd6 --- /dev/null +++ b/database/factories/TasksMemberFactory.php @@ -0,0 +1,21 @@ +<?php + +use Faker\Generator as Faker; + +/* +|-------------------------------------------------------------------------- +| Model Factories +|-------------------------------------------------------------------------- +| +| This directory should contain each of the model factory definitions for +| your application. Factories provide a convenient way to generate new +| model instances for testing / seeding your application's database. +| +*/ + +$factory->define(App\TasksMember::class, function (Faker $faker) { + return [ + 'task_id' => App\Tasks::pluck('id')->random(), + 'user_id' => App\User::pluck('id')->random() + ]; +}); \ No newline at end of file diff --git a/database/factories/UserFactory.php b/database/factories/UsersFactory.php similarity index 92% rename from database/factories/UserFactory.php rename to database/factories/UsersFactory.php index 98eaa57d49e9d9f0e9a5f0dd82bf7b7e1e30eacd..a73ae69d434acfb6df82ab94c2674a7b94a55028 100644 --- a/database/factories/UserFactory.php +++ b/database/factories/UsersFactory.php @@ -19,7 +19,7 @@ $factory->define(App\User::class, function (Faker $faker) { 'name' => $faker->name, 'email' => $faker->unique()->safeEmail, 'email_verified_at' => now(), - 'google_id' => $faker->randomAscii, + 'google_id' => $faker->unique()->randomNumber($nbDigits = 8), 'password' => '$2y$10$TKh8H1.PfQx37YgCzwiKb.KjNyWgaHb9cbcoQgdIVFlYg7B77UdFm', // secret 'remember_token' => Str::random(10), ]; diff --git a/database/migrations/2019_02_19_140125_create_groups_member_table.php b/database/migrations/2019_02_19_140125_create_groups_member_table.php index 6fc1c3c24c48104d59b2b61b1ba737c1ece410ac..2faf69b6318c1fa1da7ea9ce23159a1e3855dfe5 100644 --- a/database/migrations/2019_02_19_140125_create_groups_member_table.php +++ b/database/migrations/2019_02_19_140125_create_groups_member_table.php @@ -13,15 +13,20 @@ class CreateGroupsMemberTable extends Migration */ public function up() { - Schema::create('group_member', function (Blueprint $table) { + Schema::create('groups_member', function (Blueprint $table) { $table->unsignedInteger('group_id'); - $table->foreign('group_id')->references('id')->on('groups'); $table->unsignedInteger('user_id'); - $table->foreign('user_id')->references('id')->on('users'); - $table->primary(['group_id', 'user_id']); - // $table->string('role'); + $table->string('role'); $table->unsignedInteger('high_score')->default(0); $table->timestamps(); + + $table->primary(['group_id', 'user_id']); + $table->foreign('group_id') + ->references('id')->on('groups') + ->onDelete('cascade'); + $table->foreign('user_id') + ->references('id')->on('users') + ->onDelete('cascade'); }); } @@ -32,6 +37,6 @@ class CreateGroupsMemberTable extends Migration */ public function down() { - Schema::dropIfExists('group_member'); + Schema::dropIfExists('groups_member'); } } diff --git a/database/migrations/2019_02_19_140448_create_tasks_table.php b/database/migrations/2019_02_19_140448_create_tasks_table.php index 27a63e232573ed2c10dd1c0cb959b3872ab91718..dd31b9fab214a56c0b5510d55eaa274b6d1d717d 100644 --- a/database/migrations/2019_02_19_140448_create_tasks_table.php +++ b/database/migrations/2019_02_19_140448_create_tasks_table.php @@ -16,12 +16,15 @@ class CreateTasksTable extends Migration Schema::create('tasks', function (Blueprint $table) { $table->increments('id'); $table->unsignedInteger('group_id'); - $table->foreign('group_id')->references('id')->on('groups'); - $table->string('taskname'); - $table->string('description'); - $table->string('status_kanban'); - $table->integer('work_hour')->default(1); + $table->string('task_name'); + $table->string('description')->default(""); + $table->string('kanban_status')->index(); + $table->integer('complexity'); $table->timestamps(); + + $table->foreign('group_id') + ->references('id')->on('groups') + ->onDelete('cascade'); }); } 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 46f6a13b8044837cea25852b96a836e1a1217eb8..df7a8fd7c4555b5236df54399976c826282f4582 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,10 +15,16 @@ class CreateTasksMemberTable extends Migration { Schema::create('tasks_member', function (Blueprint $table) { $table->unsignedInteger('task_id'); - $table->foreign('task_id')->references('id')->on('tasks')->onDelete('cascade'); $table->unsignedInteger('user_id'); - $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade'); $table->timestamps(); + + $table->primary(['task_id', 'user_id']); + $table->foreign('task_id') + ->references('id')->on('tasks') + ->onDelete('cascade'); + $table->foreign('user_id') + ->references('id')->on('users') + ->onDelete('cascade'); }); } diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index 46d1bed9a45322b8921bba39b6ad8a836196abaf..f44f19b76cfa8edbfc1ce9bbcdf71301942c4e7d 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -12,9 +12,7 @@ class DatabaseSeeder extends Seeder { $this->call(UsersTableSeeder::class); $this->call(GroupsTableSeeder::class); - $this->call(GroupsMemberTableSeeder::class); $this->call(TasksTableSeeder::class); - $this->call(TasksMemberTableSeeder::class); // $users = factory(App\User::class, 6)->create(); } } diff --git a/database/seeds/GroupsMemberTableSeeder.php b/database/seeds/GroupsMemberTableSeeder.php deleted file mode 100644 index 96ca21cb6f20ac449460748c0dfbc2ae5eb27a9f..0000000000000000000000000000000000000000 --- a/database/seeds/GroupsMemberTableSeeder.php +++ /dev/null @@ -1,33 +0,0 @@ -<?php - -use Illuminate\Database\Seeder; - -class GroupsMemberTableSeeder extends Seeder -{ - /** - * Run the database seeds. - * - * @return void - */ - public function run() - { - $groupsMember = [ - [ - 'group_id' => 1, - 'user_id' => 1, - ], - [ - 'group_id' => 1, - 'user_id' => 2, - ], - [ - 'group_id' => 2, - 'user_id' => 1, - ], - ]; - - foreach ($groupsMember as $element) { - App\GroupMember::create($element); - } - } -} diff --git a/database/seeds/GroupsTableSeeder.php b/database/seeds/GroupsTableSeeder.php index b778d9979ab729e451a10b4557507600b62901c2..af1fbda9242d2ae0f54718e52cf607acf87831ed 100644 --- a/database/seeds/GroupsTableSeeder.php +++ b/database/seeds/GroupsTableSeeder.php @@ -11,23 +11,10 @@ class GroupsTableSeeder extends Seeder */ public function run() { - $groupsArr = [ - [ - 'group_name' => 'group1', - 'description' => 'group1yeah', - ], - [ - 'group_name' => 'group2', - 'description' => 'group2yeah', - ], - [ - 'group_name' => 'group3', - 'description' => 'group3yeah', - ] - ]; - - foreach ($groupsArr as $element) { - App\Group::create($element); - } + factory(App\Groups::class, 15)->create()->each(function ($groups) { + $members = Rand(5, 9); + $groupsMember = factory(App\GroupsMember::class, $members)->make(); + $groups->members()->saveMany($groupsMember); + }); } } diff --git a/database/seeds/TasksMemberTableSeeder.php b/database/seeds/TasksMemberTableSeeder.php deleted file mode 100644 index bb676c618e61b753eefad0575952b7388974ea7f..0000000000000000000000000000000000000000 --- a/database/seeds/TasksMemberTableSeeder.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php - -use Illuminate\Database\Seeder; - -class TasksMemberTableSeeder extends Seeder -{ - /** - * Run the database seeds. - * - * @return void - */ - public function run() - { - $taskMembers = [ - [ - 'task_id' => 1, - 'user_id' => 1, - ], - [ - 'task_id' => 2, - 'user_id' => 2, - ], - [ - 'task_id' => 3, - 'user_id' => 1, - ], - ]; - foreach ($taskMembers as $element) { - App\TasksMember::create($element); - } - } -} diff --git a/database/seeds/TasksTableSeeder.php b/database/seeds/TasksTableSeeder.php index 1748dae7059aca00a64f402c16b6328d8ccea595..3706f424c05ef3e63e01a5f2ae25ed58ab8e872d 100644 --- a/database/seeds/TasksTableSeeder.php +++ b/database/seeds/TasksTableSeeder.php @@ -11,35 +11,9 @@ class TasksTableSeeder extends Seeder */ public function run() { - // - $tasks = [ - [ - 'group_id' => 1, - 'taskname' => 'Bikin BlockChain', - 'description' => 'Yeah Mancuyyy', - 'status_kanban' => Config::get('constants.STATUS_KANBAN.PRODUCT_BACKLOG') - ], - [ - 'group_id' => 1, - 'taskname' => 'Bikin BlockChain', - 'description' => 'Yeah Mancuyyy', - 'status_kanban' => Config::get('constants.STATUS_KANBAN.OPEN') - ], - [ - 'group_id' => 2, - 'taskname' => 'Bikin BlockChain', - 'description' => 'Yeah Mancuyyy', - 'status_kanban' => Config::get('constants.STATUS_KANBAN.PRODUCT_BACKLOG') - ], - [ - 'group_id' => 2, - 'taskname' => 'Bikin BlockChain', - 'description' => 'Yeah Mancuyyy', - 'status_kanban' => Config::get('constants.STATUS_KANBAN.OPEN') - ], - ]; - foreach ($tasks as $element) { - App\Task::create($element); - } + factory(App\Tasks::class, 200)->create()->each(function ($task) { + $pic = factory(App\TasksMember::class)->make(); + $task->pic()->save($pic); + }); } } diff --git a/database/seeds/UsersTableSeeder.php b/database/seeds/UsersTableSeeder.php index ea49f6067761aabec19a52ac245995f8972d9610..f44f7ceb66ef5593fe179115b311c9ed01c8af33 100644 --- a/database/seeds/UsersTableSeeder.php +++ b/database/seeds/UsersTableSeeder.php @@ -11,32 +11,6 @@ class UsersTableSeeder extends Seeder */ public function run() { - // - $usersArr = [ - [ - 'name' => 'Wildan', - 'email' => 'alnataraw@gmail.com', - 'google_id' => '11111111', - ], - [ - 'name' => 'dion', - 'email' => 'dion@gmail.com', - 'google_id' => '11111112', - ], - [ - 'name' => 'farhan', - 'email' => 'farhan@gmail.com', - 'google_id' => '11111113', - ], - [ - 'name' => 'asadasda', - 'email' => 'asdas@gmail.com', - 'google_id' => '11111114', - ] - ]; - - foreach ($usersArr as $element) { - $user = App\User::create($element); - } + factory(App\User::class, 10)->create(); } } diff --git a/routes/api.php b/routes/api.php index 7c19d5a13df19810a4e54ea88686602fcf3425f8..4ecce869f30f3978371b521cc4b03b67718c1073 100644 --- a/routes/api.php +++ b/routes/api.php @@ -23,29 +23,30 @@ Route::post('/logout', 'UserController@logOut'); //Task -Route::post('/tasks', 'TaskController@store'); -Route::get('/tasks/{taskId}', 'TaskController@show'); -Route::put('/tasks/{taskId}', 'TaskController@update'); -Route::delete('/tasks/{taskId}', 'TaskController@delete'); +Route::post('/tasks', 'TasksController@store'); +Route::get('/tasks/{taskId}', 'TasksController@show'); +Route::put('/tasks/{taskId}', 'TasksController@update'); +Route::delete('/tasks/{taskId}', 'TasksController@delete'); //Task Member 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', 'TasksController@getTasksFromGroup'); //Group -Route::post('/group', 'GroupController@store'); -Route::get('/group/{groupId}', 'GroupController@show'); -Route::put('/group', 'GroupController@update'); -Route::delete('/group', 'GroupController@delete'); +Route::post('/group', 'GroupsController@store'); +Route::get('/group/{groupId}', 'GroupsController@show'); +Route::put('/group/{groupId}', 'GroupsController@update'); +Route::delete('/group/{groupId}', 'GroupsController@delete'); //GroupMember -Route::post('/group_member', 'GroupMemberController@store'); -Route::get('/group_member/{groupId}', 'GroupMemberController@show'); -Route::put('/group_member/{groupId}/{userId}', 'GroupMemberController@update'); -Route::delete('/group_member/{groupId}/{userId}', 'GroupMemberController@delete'); +Route::post('/group/member', 'GroupsMemberController@store'); +Route::get('/group/{groupId}/member', 'GroupsMemberController@show'); +Route::get('/group/{groupId}/members', 'GroupsMemberController@showAll'); +Route::put('/group/{groupId}/member/{userId}', 'GroupsMemberController@update'); +Route::delete('/group/{groupId}/member/{userId}', 'GroupsMemberController@delete'); // Route::group(['middleware' => 'auth:api'], function()