Browse Source

未读数量优化

lizhen_gitee 2 weeks ago
parent
commit
bff3bf4799

+ 6 - 1
app/Http/Controllers/Api/AskController.php

@@ -560,7 +560,7 @@ class AskController extends BaseController
             ]);
         }
 
-        $list = $list->orderBy('ask_order.id','desc')->get();
+        $list = $list->orderBy('ask_order.status','asc')->orderBy('ask_order.id','desc')->get();
         $list = json_decode(json_encode($list),true);
 
         if(!empty($list)){
@@ -588,6 +588,11 @@ class AskController extends BaseController
                 //未读数量
                 $val['unread_number'] = isset($count_data[$val['id']]) ? $count_data[$val['id']] : 0;
 
+                //答主看到的,如果未读为0,且没回复过,给算作1
+                if($val['unread_number'] == 0 && $val['status'] == 10 && $val['blogger_user_id'] == $request->uid){
+                    $val['unread_number'] = 1;
+                }
+
                 unset($val['images']);
                 unset($val['user_id']);
             }

+ 7 - 0
app/Http/Controllers/Api/MessagesController.php

@@ -341,6 +341,13 @@ class MessagesController extends BaseController
         if ($uid) {
             $count = WxChat::where([['object_id','=', $uid],['is_read','=', 0],['chat_state', '=', 0]])->where('expand_type',9)->count();
         }
+
+        //作为答主,没回复的订单数量
+        $count_order = DB::table('ask_order')->where('blogger_user_id',$uid)->where('status',10)->count();
+
+        //最终数量
+        $count += $count_order;
+
         return $this->success($count);
     }