作者 lyh

gx

@@ -56,10 +56,10 @@ class NavController extends BaseController @@ -56,10 +56,10 @@ class NavController extends BaseController
56 * @method :post 56 * @method :post
57 * @time :2023/12/18 14:54 57 * @time :2023/12/18 14:54
58 */ 58 */
59 - public function findDetailsList($data, $detailsList) { 59 + public function findDetailsList($detailsList,$data) {
60 $result = []; 60 $result = [];
61 foreach ($data as $item) { 61 foreach ($data as $item) {
62 - $items = (array)$item; 62 + $items = $item = (array)$item;
63 $id = $item['id']; 63 $id = $item['id'];
64 // 在给定的详情列表中查找匹配的id 64 // 在给定的详情列表中查找匹配的id
65 $matchingDetail = array_filter($detailsList, function ($detail) use ($id) { 65 $matchingDetail = array_filter($detailsList, function ($detail) use ($id) {
@@ -72,10 +72,31 @@ class NavController extends BaseController @@ -72,10 +72,31 @@ class NavController extends BaseController
72 $items['sub'] = $this->findDetailsList((array)$item['sub'], $detailsList); 72 $items['sub'] = $this->findDetailsList((array)$item['sub'], $detailsList);
73 } 73 }
74 $result[] = $items; 74 $result[] = $items;
  75 + $additionalItems = $this->getAdditionalItems($detailsList, $id);
  76 + $result = array_merge($result, $additionalItems);
75 } 77 }
76 return $result; 78 return $result;
77 } 79 }
78 80
  81 +
  82 + /**
  83 + * @remark :对应层级数据
  84 + * @name :getAdditionalItems
  85 + * @author :lyh
  86 + * @method :post
  87 + * @time :2023/12/20 16:56
  88 + */
  89 + private function getAdditionalItems($detailsList, $parentId) {
  90 + $additionalItems = [];
  91 + foreach ($detailsList as $v) {
  92 + if ($v['pid'] == $parentId) {
  93 + $additionalItems[] = $v;
  94 + $additionalItems = array_merge($additionalItems, $this->getAdditionalItems($detailsList, $v['id']));
  95 + }
  96 + }
  97 + return $additionalItems;
  98 + }
  99 +
79 /** 100 /**
80 * @remark :获取当前id下的所有子集 101 * @remark :获取当前id下的所有子集
81 * @name :getSubList 102 * @name :getSubList