moonsflyer 8 ماه پیش
والد
کامیت
3c2d8f263c
2فایلهای تغییر یافته به همراه29 افزوده شده و 2 حذف شده
  1. 28 2
      app/adminapi/lists/asset/AssetAreaLists.php
  2. 1 0
      app/common/logic/PaymentLogic.php

+ 28 - 2
app/adminapi/lists/asset/AssetAreaLists.php

@@ -56,14 +56,31 @@ class AssetAreaLists extends BaseAdminDataLists implements ListsSearchInterface
     public function lists(): array
     {
 
-        $lists = (new AssetArea())->field('id,title,create_time')
+        $lists = (new AssetArea())->field('id,title,level,pid,create_time')
             ->where($this->searchWhere)
             ->limit($this->limitOffset, $this->limitLength)
             ->Order('sort desc')
             ->select()
             ->toArray();
 
-        return $lists;
+
+
+        if($this->params['is_tree'] ==1){
+
+
+            $treeList = linear_to_tree($lists, 'children');
+            if (empty($treeList) && !empty($lists)) {
+                foreach ($lists as &$v) {
+                    $v['children'] = [];
+                }
+                return $lists;
+            }
+            return $treeList;
+        }else{
+            return $lists;
+        }
+
+//
     }
 
     /**
@@ -85,8 +102,17 @@ class AssetAreaLists extends BaseAdminDataLists implements ListsSearchInterface
      */
     public static function add(array $params)
     {
+        $pid = $params['pid'];
+        $level = 1;
+
+        $pidInfo = AssetArea::find($pid);
+        if(!empty($pidInfo)){
+            $level = $pidInfo['level'] + 1;
+        }
         AssetArea::create([
             'title' => $params['title'],
+            'level' => $level,
+            'pid' => $pid,
             'sort' => $params['sort']??0
         ]);
     }

+ 1 - 0
app/common/logic/PaymentLogic.php

@@ -213,6 +213,7 @@ class PaymentLogic extends BaseLogic
                 $order['redirect_url'] = $redirectUrl;
                 $result = $payService->pay($from, $order);
                 break;
+
             case PayEnum::ALI_PAY:
                 $payService = (new AliPayService($terminal));
                 $order['redirect_url'] = $redirectUrl;