huangdong 6 yıl önce
ebeveyn
işleme
81ccb8b999
2 değiştirilmiş dosya ile 29 ekleme ve 7 silme
  1. 22 0
      helper/room_helper.php
  2. 7 7
      mobile/control/user_index.php

+ 22 - 0
helper/room_helper.php

@@ -176,6 +176,26 @@ class room_helper
         return $result;
     }
 
+    public static function common_rooms($left,$right){
+        $mod_room = Model('room');
+        $items1 = $mod_room->getRoomParts(['member_id' => $left,'state' => 0],'room_id');
+        $items2 = $mod_room->getRoomParts(['member_id' => $right,'state' => 0],'room_id');
+
+        $roomids = [];
+        foreach ($items1 as $item) {
+            $roomids[] = intval($item['room_id']);
+        }
+        foreach ($items2 as $item) {
+            $roomids[] = intval($item['room_id']);
+        }
+
+        if(empty($roomids)){
+            return [];
+        }else{
+            return array_unique($roomids);
+        }
+    }
+
     public static function page_rooms($cond, $order = 'room_id desc', $limit = 5 , $page = false, &$mobile_page = [])
     {
         $result = [];
@@ -207,4 +227,6 @@ class room_helper
             room\factory_client::instance()->notice_room($roomid,room\proto_type::msg_stype_spend,$content);
         }
     }
+
+
 }

+ 7 - 7
mobile/control/user_index.php

@@ -87,23 +87,23 @@ class user_indexControl extends mobileHomeControl
     {
         try
         {
-            $relation = new relation\mem_relation(session_helper::memberid());
+            $member_id = session_helper::memberid();
+            $output['is_self'] = $idolid == $member_id ? true : false;
+
+            $relation = new relation\mem_relation($member_id);
             $isfriend = $relation->is_friends($idolid);
 
             if($output['scene'] != 'applyer')
             {
-                if(!$isfriend) {
-                    $output['scene'] = 'stranger';
-                } else {
-                    $output['scene'] = 'friends';
-                    $output['is_self'] = $idolid == session_helper::memberid() ? true : false;
-                }
+                $output['scene'] = $isfriend ? 'friends' : 'stranger';
             }
 
             $minfo = new member_info($idolid);
             $output['member_info'] = $minfo->filter();
             $output['is_friend'] = $isfriend;
 
+            $output['member_info']['common_rooms'] = count(room_helper::common_rooms($idolid,$member_id));
+
             return self::outsuccess($output,"member/index",'wap');
         }
         catch (Exception $ex)