重新打开应用是否自动登录判断优化 #18
|
|
@ -160,6 +160,7 @@ const Meeting: React.FC = () => {
|
||||||
const [noViewChatList, setNoViewChatList] = useState(0)
|
const [noViewChatList, setNoViewChatList] = useState(0)
|
||||||
const [currentLookUserAccount, setCurrentLookUserAccount] = useState<any>('')
|
const [currentLookUserAccount, setCurrentLookUserAccount] = useState<any>('')
|
||||||
const [recorder, setRecorder] = useState<any>('')
|
const [recorder, setRecorder] = useState<any>('')
|
||||||
|
const [_currentRequestSpeakType, setCurrentRequestSpeakType] = useState<'video' | 'audio' | ''>('')
|
||||||
const [_mediaStream, setMediaStream] = useState<any>('')
|
const [_mediaStream, setMediaStream] = useState<any>('')
|
||||||
const [isShare, setIsShare] = useState<any>(null)
|
const [isShare, setIsShare] = useState<any>(null)
|
||||||
const [isSharePopConfirm, setIsSharePopConfirm] = useState<any>(false)
|
const [isSharePopConfirm, setIsSharePopConfirm] = useState<any>(false)
|
||||||
|
|
@ -413,13 +414,23 @@ const Meeting: React.FC = () => {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (item.user.uid === userInfo.uid) {
|
if (item.user.uid === userInfo.uid) {
|
||||||
if (!item.user.isRoomManage) {
|
if (!item.user.isRoomManager) {
|
||||||
await agora.allLeaveChannelEx()
|
await agora.allLeaveChannelEx()
|
||||||
}
|
}
|
||||||
message.success(`管理员${item.user.isRoomManager ? '设置' : '取消'}您为发言人`)
|
message.success(`管理员${item.user.isRoomManager ? '设置' : '取消'}您为发言人`)
|
||||||
await agora.updateChannelMediaOptions(item.user.isRoomManager)
|
await agora.updateChannelMediaOptions(item.user.isRoomManager)
|
||||||
await postOpenMicrApi(item.user.isRoomManager, userInfo.uid, false)
|
setCurrentRequestSpeakType(res => {
|
||||||
await postOpenCameraApi(item.user.isRoomManager, userInfo.uid)
|
if (res === 'video') {
|
||||||
|
postOpenCameraApi(item.user.isRoomManager, userInfo.uid)
|
||||||
|
} else if (res === 'audio') {
|
||||||
|
postOpenMicrApi(item.user.isRoomManager, userInfo.uid, false)
|
||||||
|
} else {
|
||||||
|
postOpenMicrApi(item.user.isRoomManager, userInfo.uid, false)
|
||||||
|
postOpenCameraApi(item.user.isRoomManager, userInfo.uid)
|
||||||
|
}
|
||||||
|
return ''
|
||||||
|
})
|
||||||
|
|
||||||
await stopScreenCapture()
|
await stopScreenCapture()
|
||||||
} else {
|
} else {
|
||||||
message.success(`管理员${item.user.isRoomManager ? '设置' : '取消'}${item.user.userName}为发言人`)
|
message.success(`管理员${item.user.isRoomManager ? '设置' : '取消'}${item.user.userName}为发言人`)
|
||||||
|
|
@ -602,6 +613,7 @@ const Meeting: React.FC = () => {
|
||||||
if (isClicked) {
|
if (isClicked) {
|
||||||
timer = setTimeout(() => {
|
timer = setTimeout(() => {
|
||||||
setIsClicked(false);
|
setIsClicked(false);
|
||||||
|
setCurrentRequestSpeakType('')
|
||||||
}, 10000);
|
}, 10000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -999,6 +1011,25 @@ const Meeting: React.FC = () => {
|
||||||
}
|
}
|
||||||
// 操作按钮
|
// 操作按钮
|
||||||
const changeStatusList = async (row: any, itemIndex: number, rowIndex: number): Promise<void> => {
|
const changeStatusList = async (row: any, itemIndex: number, rowIndex: number): Promise<void> => {
|
||||||
|
function requestSpeak() {
|
||||||
|
confirm({
|
||||||
|
title: '提示',
|
||||||
|
icon: <ExclamationCircleFilled />,
|
||||||
|
content: `该操作需向管理员申请权限`,
|
||||||
|
centered: true,
|
||||||
|
okText: '申请',
|
||||||
|
cancelText: '取消',
|
||||||
|
async onOk() {
|
||||||
|
GetApplySpeak(state.channelId).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
message.success('申请发言成功')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onCancel() {
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
const footerListTemplate = [...footerList]
|
const footerListTemplate = [...footerList]
|
||||||
setFooterListIndex({
|
setFooterListIndex({
|
||||||
itemIndex,
|
itemIndex,
|
||||||
|
|
@ -1046,13 +1077,37 @@ const Meeting: React.FC = () => {
|
||||||
await postOpenMicr(false, user.uid)
|
await postOpenMicr(false, user.uid)
|
||||||
break;
|
break;
|
||||||
case '解除静音':
|
case '解除静音':
|
||||||
await postOpenMicr(true, user.uid)
|
await getUserRoomInfo().then(async (res) => {
|
||||||
|
if (res) {
|
||||||
|
await postOpenMicr(true, user.uid)
|
||||||
|
} else {
|
||||||
|
if (!isClicked) {
|
||||||
|
setCurrentRequestSpeakType('audio')
|
||||||
|
setIsClicked(true);
|
||||||
|
requestSpeak()
|
||||||
|
} else {
|
||||||
|
message.error('申请太频繁了,请稍后重试!');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
break;
|
break;
|
||||||
case '关闭视频':
|
case '关闭视频':
|
||||||
await postOpenCamera(false, user.uid)
|
await postOpenCamera(false, user.uid)
|
||||||
break;
|
break;
|
||||||
case '开启视频':
|
case '开启视频':
|
||||||
await postOpenCamera(true, user.uid)
|
await getUserRoomInfo().then(async (res) => {
|
||||||
|
if (res) {
|
||||||
|
await postOpenCamera(true, user.uid)
|
||||||
|
} else {
|
||||||
|
if (!isClicked) {
|
||||||
|
setCurrentRequestSpeakType('video')
|
||||||
|
setIsClicked(true);
|
||||||
|
requestSpeak()
|
||||||
|
} else {
|
||||||
|
message.error('申请太频繁了,请稍后重试!');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
break;
|
break;
|
||||||
case '设置':
|
case '设置':
|
||||||
stupWizardRef.current.changeModal()
|
stupWizardRef.current.changeModal()
|
||||||
|
|
@ -1141,11 +1196,7 @@ const Meeting: React.FC = () => {
|
||||||
case '申请发言':
|
case '申请发言':
|
||||||
if (!isClicked) {
|
if (!isClicked) {
|
||||||
setIsClicked(true);
|
setIsClicked(true);
|
||||||
GetApplySpeak(state.channelId).then(res => {
|
requestSpeak()
|
||||||
if (res.code === 200) {
|
|
||||||
message.success('申请发言成功')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
} else {
|
||||||
message.error('申请太频繁了,请稍后重试!');
|
message.error('申请太频繁了,请稍后重试!');
|
||||||
}
|
}
|
||||||
|
|
@ -2200,12 +2251,12 @@ const Meeting: React.FC = () => {
|
||||||
</div>
|
</div>
|
||||||
</Popover>
|
</Popover>
|
||||||
case '申请发言':
|
case '申请发言':
|
||||||
if (!role.ID.includes(user.roleId)) {
|
// if (!role.ID.includes(user.roleId)) {
|
||||||
return <div className='drag' onClick={() => changeStatusList(row, itemIndex, rowIndex)} key={rowIndex}>
|
// return <div className='drag' onClick={() => changeStatusList(row, itemIndex, rowIndex)} key={rowIndex}>
|
||||||
<img src={row.active ? row.iconActive : row.icon} alt="" />
|
// <img src={row.active ? row.iconActive : row.icon} alt="" />
|
||||||
<span>{row.title}</span>
|
// <span>{row.title}</span>
|
||||||
</div>
|
// </div>
|
||||||
}
|
// }
|
||||||
return null
|
return null
|
||||||
case '结束发言':
|
case '结束发言':
|
||||||
if (!role.ID.includes(user.roleId)) {
|
if (!role.ID.includes(user.roleId)) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue