Forráskód Böngészése

[智价云] 角色详情信息补充

tangyuanwang 16 órája
szülő
commit
bce71bc9db
1 módosított fájl, 5 hozzáadás és 1 törlés
  1. 5 1
      app/Http/Controllers/Manager/Personnel/Roles.php

+ 5 - 1
app/Http/Controllers/Manager/Personnel/Roles.php

@@ -7,6 +7,7 @@ use App\Http\Requests\Manager\Personnel\Roles as Request;
 use App\Models\Manager\Personnel\Roles as RolesModel;
 use App\Models\Manager\Personnel\Employee as EmployeeModel;
 use App\Models\Manager\Personnel\RolesAuthRule as RolesAuthRuleModel;
+use App\Models\Manager\Menu as MenuModel;
 
 /**
  * 人员信息管理-角色管理
@@ -109,7 +110,7 @@ class Roles extends Controller
      * @version   1.0
      * @date      2025-12-05
      */
-    public function detail(Request $request, RolesModel $RolesModel, RolesAuthRuleModel $RolesAuthRuleModel)
+    public function detail(Request $request, RolesModel $RolesModel, RolesAuthRuleModel $RolesAuthRuleModel, MenuModel $MenuModel)
     {
         $request->scene('detail')->validate();
         $admin_company_id = request('admin_company_id', '0');
@@ -128,6 +129,9 @@ class Roles extends Controller
         if (!$data)     return json_send(['code' => 'error', 'msg' => '记录不存在']);
         $menu_ids = $RolesAuthRuleModel->where('role_id', $id)->get(['menu_id'])->toArray();
         $data->menu_ids = !empty($menu_ids) ? array_column($menu_ids, 'menu_id') : [];
+        $menu_data = !empty($data->menu_ids) ? $MenuModel->query()->whereIn([['id', 'in', $data->menu_ids]])->select(['id', 'title', 'module', 'url', 'icon', 'type', 'pid'])->get()->toArray() : [];
+        $menu_info        = !empty($menu_data) ? array_sort(list_to_tree($menu_data), 'module', SORT_ASC) : [];
+        $data->menu_info = $menu_info;
         // 加载模板
         return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $data]);
     }