From 53763ad8ebab72b67ff238e3f7adbcc1bdc7be42 Mon Sep 17 00:00:00 2001 From: Edward Yang Date: Mon, 1 Aug 2022 21:17:03 +0800 Subject: [PATCH] roles --- .../Http/Controllers/AdminRoleController.php | 12 ++++-- beike/Admin/Repositories/AdminRoleRepo.php | 41 +++++++++++++++++++ 2 files changed, 49 insertions(+), 4 deletions(-) create mode 100644 beike/Admin/Repositories/AdminRoleRepo.php diff --git a/beike/Admin/Http/Controllers/AdminRoleController.php b/beike/Admin/Http/Controllers/AdminRoleController.php index b833d724..eeb8f18f 100644 --- a/beike/Admin/Http/Controllers/AdminRoleController.php +++ b/beike/Admin/Http/Controllers/AdminRoleController.php @@ -15,6 +15,7 @@ use Beike\Models\AdminUser; use Illuminate\Http\Request; use Spatie\Permission\Models\Role; use Illuminate\Support\Facades\Auth; +use Beike\Admin\Repositories\AdminRoleRepo; use Beike\Admin\Repositories\PermissionRepo; class AdminRoleController extends Controller @@ -48,16 +49,19 @@ class AdminRoleController extends Controller public function store(Request $request) { - return json_success('保存成功'); + $adminUser = AdminRoleRepo::createAdminRole($request->toArray()); + return json_success('保存成功', $adminUser); } - public function update(Request $request, int $adminRoleId) + public function update(Request $request, int $adminUserId) { - return json_success('更新成功'); + $adminUser = AdminRoleRepo::updateAdminRole($request->toArray()); + return json_success('更新成功', $adminUser); } - public function destroy(Request $request, int $adminRoleId) + public function destroy(Request $request, int $adminUserId) { + AdminRoleRepo::deleteAdminRole($adminUserId); return json_success('删除成功'); } } diff --git a/beike/Admin/Repositories/AdminRoleRepo.php b/beike/Admin/Repositories/AdminRoleRepo.php new file mode 100644 index 00000000..9b7b11ee --- /dev/null +++ b/beike/Admin/Repositories/AdminRoleRepo.php @@ -0,0 +1,41 @@ + + * @created 2022-08-01 21:12:11 + * @modified 2022-08-01 21:12:11 + */ + +namespace Beike\Admin\Repositories; + +use Spatie\Permission\Models\Role; + +class AdminRoleRepo +{ + public static function createAdminRole($data): Role + { + $adminRole = new Role([ + 'name' => $data['name'], + 'guard_name' => 'web_admin', + ]); + $adminRole->save(); + $adminRole->givePermissionTo($data['permissions']); + return $adminRole; + } + + + public static function updateAdminRole($data) + { + + } + + + public static function deleteAdminRole($adminRoleId) + { + $adminRole = Role::query()->find($adminRoleId); + $adminRole->delete(); + } +}