Переглянути джерело

重新创建房间,更改信息

lizhen_gitee 1 рік тому
батько
коміт
b1f30a57be
1 змінених файлів з 43 додано та 12 видалено
  1. 43 12
      application/api/controller/Party.php

+ 43 - 12
application/api/controller/Party.php

@@ -114,8 +114,8 @@ class Party extends Api
 
             $party_ids = $partyModel->column("party_id");
             // 创建派对ID (临时ID四位,派对数不超过8999)
-            $party_id = $this->auth->getUinqueId(4,$party_ids);
-            if($party_id > 9999) {
+            $party_id = $this->auth->getUinqueId(5,$party_ids);
+            if($party_id > 99999) {
                 $this->error("房间超限,请联系客服");
             }
             if ($room_type == 1) {//公会房间获取家族信息
@@ -217,12 +217,28 @@ class Party extends Api
 
             $partyInfo = $sqlPartyInfo;
             $partyInfo["is_new"] = 0;
-            $partyInfo["status"] = 1;
 
-            //修改状态
+            //初始化房间
             $update = [
-                'status' => 1,
+                'status'     => 1,
+                'party_logo' => $party_logo,
+                'party_name' => $party_name,
+                'seatnum'    => $seatnum,
+                'is_public'  => $is_public,
+                'party_notice'  => '请编辑房间公告',
+                'party_notice_detail'  => '请编辑房间公告内容',
+                'is_recommend'  => '0',
+
             ];
+            if($room_type == 1){
+                $update["platRate"]    = config('site.party_party_platrate');
+                $update["guilderRate"] = config('site.party_party_guilderrate');
+            }else{
+                $update["platRate"]    = config('site.party_live_platrate');
+                $update["guilderRate"] = config('site.party_live_guilderrate');
+            }
+
+            $partyInfo = array_merge($partyInfo,$update);
 
             //没有房间号的给创建一个
             if(empty($partyInfo['easemob_room_id'])){
@@ -237,14 +253,25 @@ class Party extends Api
 
             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);
+            // 加入缓存,rediskey:派对详情
+            $this->redis->set($this->roomTypeArr[$room_type]."_".$partyInfo['id'],json_encode($partyInfo));
 
-                $redispartyInfo = array_replace($redispartyInfo,$update);
-                $this->redis->set($this->roomTypeArr[$room_type]."_".$partyInfo['id'],json_encode($redispartyInfo));
-            }
+            //[环信]初始化房间,初始化自定义属性
+            $matedata = [
+                'seatnum'=> $seatnum,//麦位数量
+                'waitsing_list'  => json_encode([]),//已点歌曲列表
+                'party_name' => $party_name,//房名字
+                'party_logo' => $party_logo,//logo
+                'is_public'  => $is_public,//是否公开
+                'room_type'  => $room_type,//房间类型
+                'online_user_num' => 0,//当前房间在线的人
+                'wealth_top3_userlist' => json_encode([]),//财富榜前3个人列表
+                'background' => '', //房间背景
+                //'party_notice'  => '请编辑房间公告',
+                //'party_notice_detail'  => '请编辑房间公告内容',
+            ];
+            $easemob = new Easemob();
+            $rs = $easemob->room_setRoomCustomAttributeForced($easemob_room_id,$this->auth->id,$matedata);
 
         }
 
@@ -277,6 +304,8 @@ class Party extends Api
             'online_user_num' => 0,//当前房间在线的人
             'wealth_top3_userlist' => json_encode([]),//财富榜前3个人列表
             'background' => '', //房间背景
+            //'party_notice'  => '请编辑房间公告',
+            //'party_notice_detail'  => '请编辑房间公告内容',
         ];
         $rs = $easemob->room_setRoomCustomAttributeForced($easemob_room_id,$this->auth->id,$matedata);
 
@@ -2715,6 +2744,8 @@ class Party extends Api
             'online_user_num',
             'wealth_top3_userlist',
             'background',
+            'party_notice',
+            'party_notice_detail',
         ];
         for($i=0;$i<$party_info['seatnum'];$i++){
             $field[] = 'seat'.$i;