浏览代码

咨询列表,咨询详情

lizhen_gitee 1 月之前
父节点
当前提交
a38898942a
共有 2 个文件被更改,包括 74 次插入4 次删除
  1. 70 4
      app/Http/Controllers/Api/AskController.php
  2. 4 0
      app/Routes/api/v1.php

+ 70 - 4
app/Http/Controllers/Api/AskController.php

@@ -404,9 +404,6 @@ class AskController extends BaseController
         return $orderModel;
     }
 
-
-
-
     //首页轮播
     public function banner(Request $request){
         $ids = Settings::get('ask_index_banner', '', true);
@@ -422,7 +419,75 @@ class AskController extends BaseController
 
 
     //我发起的咨询
-    //所有问答列表
+
+    //所有咨询列表
+    public function askList(Request $request){
+        //分页
+        $page = $request->page ?? 1;
+        $limit = $request->limit ?? 10;
+        $offset = ($page - 1) * $limit;
+
+        //
+        $where = [];
+
+        //答主
+        $blogger_user_id = _empty_default_($request->blogger_user_id,0);
+        if($blogger_user_id){
+            $where[] = ['ask_order.blogger_user_id','=',$blogger_user_id];
+        }
+
+        //用户
+        $user_id = _empty_default_($request->user_id,0);
+        if($user_id){
+            $where[] = ['ask_order.user_id','=',$user_id];
+        }
+
+        //是否公开
+        $is_public = _empty_default_($request->is_public,'all');
+        if($is_public != 'all'){
+            $where[] = ['ask_order.is_public','=',$is_public];
+        }
+
+        //
+        $list = DB::table('ask_order')
+            ->leftJoin('wx_user as buser','buser.id','=','ask_order.blogger_user_id')
+            ->leftJoin('blogger','blogger.user_id','=','ask_order.blogger_user_id')
+            ->select('ask_order.*','buser.user_avatar as blogger_avatar','buser.user_name as blogger_name','blogger.info as blogger_info')
+            ->offset($offset)->limit($limit)
+            ->where('ask_order.status',20)
+            ->where($where)
+            ->get();
+        $list = json_decode(json_encode($list),true);
+
+        foreach($list as &$val){
+            unset($val['images']);
+            unset($val['user_id']);
+        }
+
+        return $this->success($list);
+    }
+
+    //咨询详情
+    public function askInfo(Request $request){
+
+        $order_id = _empty_default_($request->order_id,0);
+
+        $info = DB::table('ask_order')
+            ->leftJoin('wx_user as user','user.id','=','ask_order.user_id')
+            ->select('ask_order.*','user.user_avatar','user.user_name')
+            ->where('ask_order.id',$order_id)
+            ->first();
+        $info = json_decode(json_encode($info),true);
+
+
+        if($info['is_hidden'] == 1 && $info['user_id'] != $request->uid){
+            $info['user_avatar'] = 'https://img.yiyoujiayuan.cn/2025/03/20/0/b59ce3b31611a3bd82199c3183208a10.jpg';//匿名头像
+            $info['user_name'] = '匿名用户';
+        }
+
+        return $this->success($info);
+    }
+
 
     //某答主的评价列表
     public function bloggerEvaList(Request $request){
@@ -431,6 +496,7 @@ class AskController extends BaseController
         $limit = $request->limit ?? 10;
         $offset = ($page - 1) * $limit;
 
+        //
         $list = DB::table('ask_order')
             ->leftJoin('wx_user','wx_user.id','=','ask_order.user_id')
             ->select('ask_order.id','ask_order.eva_time','ask_order.eva_score','ask_order.eva_content','ask_order.is_hidden','wx_user.user_avatar','wx_user.user_name')

+ 4 - 0
app/Routes/api/v1.php

@@ -460,6 +460,10 @@ Route::group(
     Route::post('/ask/bloggerevalist',[AskController::class, 'bloggerEvaList']);
     //轮播
     Route::post('/ask/banner',[AskController::class, 'banner']);
+    //咨询列表
+    Route::post('/ask/asklist',[AskController::class, 'askList']);
+    //咨询详情
+    Route::post('/ask/askinfo',[AskController::class, 'askInfo']);
 
     // 测试
     Route::get('/test', [IndexController::class, 'test']);