PermissionController.php 1.7 KB

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