Selaa lähdekoodia

获取所有栏目-树状结构

15313670163 1 kuukausi sitten
vanhempi
sitoutus
685244c3b8
1 muutettua tiedostoa jossa 16 lisäystä ja 2 poistoa
  1. 16 2
      app/JsonRpc/WebsiteService.php

+ 16 - 2
app/JsonRpc/WebsiteService.php

@@ -469,10 +469,24 @@ class WebsiteService implements WebsiteServiceInterface
         $where = [
             'website_id'=>$data['website_id']
         ];
-        $result = WebsiteCategory::where($where)->orderBy('sort','asc')->get();
-        if(empty($result)){
+        // 使用递归查询构建树状结构
+        $category = WebsiteCategory::where($where)
+            ->with([
+                'children' => function ($query) {
+                    $query->orderBy('sort', 'asc');
+                }
+            ])
+            ->orderBy('sort', 'asc')
+            ->where('pid', 0) // 仅查询顶级节点
+            ->get()->all();
+        if(empty($category)){
             return Result::error("查询站点栏目失败",0);
         }else{
+            $count = WebsiteCategory::where($where)->count();
+            $result = [
+                'rep' => $category,
+                'count' => $count
+            ];
             return Result::success($result);
         }
     }