|
...
|
...
|
@@ -56,10 +56,10 @@ class NavController extends BaseController |
|
|
|
* @method :post
|
|
|
|
* @time :2023/12/18 14:54
|
|
|
|
*/
|
|
|
|
public function findDetailsList($data, $detailsList) {
|
|
|
|
public function findDetailsList($detailsList,$data) {
|
|
|
|
$result = [];
|
|
|
|
foreach ($data as $item) {
|
|
|
|
$items = (array)$item;
|
|
|
|
$items = $item = (array)$item;
|
|
|
|
$id = $item['id'];
|
|
|
|
// 在给定的详情列表中查找匹配的id
|
|
|
|
$matchingDetail = array_filter($detailsList, function ($detail) use ($id) {
|
|
...
|
...
|
@@ -72,10 +72,31 @@ class NavController extends BaseController |
|
|
|
$items['sub'] = $this->findDetailsList((array)$item['sub'], $detailsList);
|
|
|
|
}
|
|
|
|
$result[] = $items;
|
|
|
|
$additionalItems = $this->getAdditionalItems($detailsList, $id);
|
|
|
|
$result = array_merge($result, $additionalItems);
|
|
|
|
}
|
|
|
|
return $result;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :对应层级数据
|
|
|
|
* @name :getAdditionalItems
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/12/20 16:56
|
|
|
|
*/
|
|
|
|
private function getAdditionalItems($detailsList, $parentId) {
|
|
|
|
$additionalItems = [];
|
|
|
|
foreach ($detailsList as $v) {
|
|
|
|
if ($v['pid'] == $parentId) {
|
|
|
|
$additionalItems[] = $v;
|
|
|
|
$additionalItems = array_merge($additionalItems, $this->getAdditionalItems($detailsList, $v['id']));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return $additionalItems;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :获取当前id下的所有子集
|
|
|
|
* @name :getSubList
|
...
|
...
|
|