From 408c463c5b66bba2aa1c81d8dca23e04c1608e24 Mon Sep 17 00:00:00 2001
From: quanwei <419654421@qq.com>
Date: Fri, 19 Dec 2025 16:52:30 +0800
Subject: [PATCH] 商户后台添加供需链接 商户添加底部导航

---
 admin/app/api/model/plus/release/Project.php |   31 ++++++++++++++++++++++++++++---
 1 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/admin/app/api/model/plus/release/Project.php b/admin/app/api/model/plus/release/Project.php
index 020ba26..ba04a29 100644
--- a/admin/app/api/model/plus/release/Project.php
+++ b/admin/app/api/model/plus/release/Project.php
@@ -3,7 +3,9 @@
 namespace app\api\model\plus\release;
 
 use app\common\model\plus\release\Project as ProjectModel;
-
+use app\common\model\plus\release\DemandUser as DemandUserModel;
+use app\common\model\plus\release\SupplyUser as SupplyUserModel;
+use app\common\model\plus\release\ReleaseProjectImage as ReleaseProjectImageModel;
 
 /**
  * 模型
@@ -20,15 +22,38 @@
             $model = $model->where('name', 'like', '%'.$postdata["keyword"].'%');
         }
         if(!empty($postdata["category_id"])){
-            $model = $model->where('category_id', '=', $postdata["category_id"]);
+            if($postdata["category_id"] == '-1'){
+                //根据分类匹配
+                $category_ids = (new ProjectModel())->where('user_id','=',$user_id)
+                ->where('project_type','=',$postdata["product_type"])
+                ->column('category_id');
+                if(!empty($category_ids)){
+                    $model = $model->where('category_id', 'in', $category_ids); 
+                }
+            }else{
+               $model = $model->where('category_id', '=', $postdata["category_id"]); 
+            }
+            
         }
-        return $model->with(['category','user'])->where('is_delete', '=', 0)
+        $list = $model->with(['category','user'])->where('is_delete', '=', 0)
             ->where('project_type', '=', $postdata["product_type"])
             ->where('status', '=', 1)
             ->where('is_show', '=', 1)
             ->where('user_id', '<>', $user_id)
             ->order(['create_time' => 'desc'])
             ->paginate($postdata);
+
+         foreach($list as &$val){
+            if($postdata["product_type"] == 0){
+                $release_user = DemandUserModel::detail($val['user_id'],['grade']);
+            }else{
+                $release_user = SupplyUserModel::detail($val['user_id'],['grade']);
+            }
+            $val['grade'] = empty($release_user['grade']) ? '' : $release_user['grade'];
+            $image_list = ReleaseProjectImageModel::getImage($val["project_id"]);
+            $val['image'] = empty($image_list[0]) ? '/static/default.png' : $image_list[0]['file_path']; 
+         }   
+         return $list;
     }  
 
 }
\ No newline at end of file

--
Gitblit v1.9.2