From f0c14f31e1b2edfa30e2ddbb63717bae4d3e09c6 Mon Sep 17 00:00:00 2001 From: yj <1336058017@qq.com> Date: Fri, 23 Aug 2024 13:46:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=80=E5=A4=A7=E5=8F=91=E8=A8=80=E4=BA=BA?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/page/Meeting/index.tsx | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/src/page/Meeting/index.tsx b/src/page/Meeting/index.tsx index 08666bf..a8905e7 100644 --- a/src/page/Meeting/index.tsx +++ b/src/page/Meeting/index.tsx @@ -420,7 +420,7 @@ const Meeting: React.FC = () => { type="primary" className='m-ant-btn' onClick={async (e: any) => { - await PostRoomManager({ + await postRoomManager({ roomId: state.roomId, roomNum: state.channelId, userId: item.uid @@ -518,16 +518,11 @@ const Meeting: React.FC = () => { return () => clearTimeout(timer); }, [isClicked]); + + // 状态更新 const changeAgoraDevice = () => { setRoomUserList((res: any) => { res.forEach(async (item: any) => { - if (item.roleId === '1') { - item.role = 'admin' - } else if (item.isRoomManager) { - item.role = 'speaker' - } else { - item.role = 'user' - } if (item.uid === userInfo.uid) { const footerListTemplate = [...footerList] await agora.getVideoDeviceManager().then(async (res) => { @@ -775,7 +770,7 @@ const Meeting: React.FC = () => { const secondsRemaining = duration.seconds(); // 剩余的秒数 return `${hours > 9 ? hours : '0' + hours}:${minutes > 9 ? minutes : '0' + minutes}:${secondsRemaining > 9 ? secondsRemaining : '0' + secondsRemaining}` } - + // 底部按钮点击效果 const changeFooterListSelect = (row: any, itemIndex: number, rowIndex: number, bool: boolean): void => { let arr = ['静音', '解除静音', '关闭视频', '开启视频'] if (arr.indexOf(row.title) === -1) { @@ -975,12 +970,22 @@ const Meeting: React.FC = () => { } }) }; - // 设置全员看谁 const allUserLook = async (uid: string, name: string): Promise => { await PostShowUser(state.channelId, uid, name) } - + // 设置发言人 + const postRoomManager = async (data: any): Promise => { + if (isAdmin >= 20) { + message.error('设置失败,已达最大发言人20个!') + } else { + await PostRoomManager({ + roomId: data.roomId, + roomNum: data.channelId, + userId: data.userId + }) + } + } // 停止共享 const stopScreenCapture = async (): Promise => { const footerListTemplate = [...footerList] @@ -1007,6 +1012,7 @@ const Meeting: React.FC = () => { } }) } + // 监听缓存变化 const handleCustomStorageChange = async (e: any): Promise => { switch (e.key) { case 'meetingMode': @@ -1097,7 +1103,6 @@ const Meeting: React.FC = () => { message.success('操作成功') } } - // 开关视频 const postOpenCamera = async (enableCamera: boolean, uid: string): Promise => { await getUserRoomInfo().then(async (res) => { @@ -1376,7 +1381,7 @@ const Meeting: React.FC = () => { userId: item.uid }) } else { - PostRoomManager({ + postRoomManager({ roomId: state.roomId, roomNum: state.channelId, userId: item.uid @@ -1558,7 +1563,7 @@ const Meeting: React.FC = () => { userId: item.uid }) } else { - PostRoomManager({ + postRoomManager({ roomId: state.roomId, roomNum: state.channelId, userId: item.uid @@ -1655,7 +1660,7 @@ const Meeting: React.FC = () => { userId: roomUserItem.uid }) } else { - await PostRoomManager({ + await postRoomManager({ roomId: state.roomId, roomNum: state.channelId, userId: roomUserItem.uid