PermissionController.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models;
  4. use foo\bar;
  5. use Illuminate\Http\Request;
  6. use Mockery\Exception;
  7. use Illuminate\Support\Facades\Log;
  8. // todo 返回值为 数字代码还是json还是其他格式待定
  9. class PermissionController extends Controller
  10. {
  11. /**
  12. * 分配用户可以查看的菜单的内容
  13. *
  14. * @param Request $request
  15. * @return string
  16. */
  17. public function AssignActionBars(Request $request)
  18. {
  19. // 这里的uid从中间件那里获得
  20. // $currentUid = $request->input("currentUid");
  21. $ownerId = $request->input("ownerId");
  22. $ownerType = $request->input("ownerType");
  23. $barIds = $request->input("barIds");
  24. $currentUid = 1;
  25. // 判断当前用户是否有权分配权限
  26. $userRole = new Models\UserRole();
  27. $role = $userRole->LoadRoleByUid($currentUid);
  28. if (!$role || $role->status != "normal" || $role->role & 1 == 0) {
  29. return "permission denied";
  30. }
  31. // 有权分配
  32. $userActionBar = new Models\UserActionBar();
  33. $userActionBar->AddUserActionBar($ownerType, $ownerId, $barIds);
  34. return "success";
  35. }
  36. /**
  37. * 分配用户的是否是管理员或者普通用户的权限
  38. *
  39. * @param Request $request
  40. * @return string
  41. */
  42. public function AssignUserRole(Request $request)
  43. {
  44. $uid = $request->input("uid");
  45. $roles = $request->input("roles");
  46. $currentUid = 1;
  47. $userRole = new Models\UserRole();
  48. $role = $userRole->LoadRoleByUid($currentUid);
  49. if (!$role || $role->status != "normal" || $role->role & 1 == 0) {
  50. return "permission denied";
  51. }
  52. // 有权分配
  53. $userRole->AssignRoles($uid, $role);
  54. return"success";
  55. }
  56. }