Ver Fonte

重新创建的房间,状态改为正常

lizhen_gitee há 1 ano atrás
pai
commit
7cb35c2e25
1 ficheiros alterados com 21 adições e 6 exclusões
  1. 21 6
      application/api/controller/Party.php

+ 21 - 6
application/api/controller/Party.php

@@ -218,17 +218,33 @@ class Party extends Api
             $partyInfo = $sqlPartyInfo;
             $partyInfo["is_new"] = 0;
             $partyInfo["status"] = 1;
-            //naming avatar type_name
-            Db::name('party')->where('id',$partyInfo['id'])->update(['status'=>1]);
 
+            //修改状态
+            $update = [
+                'status' => 1,
+            ];
+
+            //没有房间号的给创建一个
             if(empty($partyInfo['easemob_room_id'])){
                 $easemob_room_id = $this->easemob_createroom($party_name,$party_logo,$seatnum,$is_public,$room_type);
-                Db::name('party')->where('id',$partyInfo['id'])->update(['easemob_room_id'=>$easemob_room_id]);
+
+                $update['easemob_room_id']  = $easemob_room_id;
+                $partyInfo['easemob_room_id']  = $easemob_room_id;
             }else{
                 $easemob_room_id = $partyInfo['easemob_room_id'];
             }
 
-            //重置easemob_room_id
+
+            Db::name('party')->where('id',$partyInfo['id'])->update($update);
+
+            //修改状态
+            $redispartyInfo = $this->redis->get($this->roomTypeArr[$room_type]."_".$partyInfo['id']);
+            if($redispartyInfo) {
+                $redispartyInfo = json_decode($redispartyInfo,true);
+
+                $redispartyInfo = array_replace($redispartyInfo,$update);
+                $this->redis->set($this->roomTypeArr[$room_type]."_".$partyInfo['id'],json_encode($redispartyInfo));
+            }
 
         }
 
@@ -770,9 +786,8 @@ class Party extends Api
         $user_id = $this->auth->id;
 
         // 判断派对密码
-        $partyInfo = $this->redis->get($this->roomTypeArr[$room_type]."_".$party_id);
+        $partyInfo = Db::name('party')->where('id',$party_id)->find();
         if($partyInfo) {
-            $partyInfo = json_decode($partyInfo,true);
 
             if($partyInfo["status"] != 1) $this->error("该房间已被解散!");
 //            if($partyInfo["is_close"] == 1) $this->error("该房间已被关闭!");