Merge pull request 'yangjie' (#39) from yangjie into master
Reviewed-on: #39
This commit is contained in:
commit
954b6d38e5
2
main.js
2
main.js
|
|
@ -44,7 +44,7 @@ class AppWindow extends BrowserWindow {
|
||||||
};
|
};
|
||||||
const finalConfig = { ...basicConfig, ...config };
|
const finalConfig = { ...basicConfig, ...config };
|
||||||
super(finalConfig);
|
super(finalConfig);
|
||||||
if (envStr === 'development') {
|
if (env === 'development') {
|
||||||
// 开发
|
// 开发
|
||||||
this.loadURL('http://localhost:3000');
|
this.loadURL('http://localhost:3000');
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,11 @@ export const GetAgoraConf = () =>
|
||||||
url: `/home/agora-conf`,
|
url: `/home/agora-conf`,
|
||||||
method: 'get',
|
method: 'get',
|
||||||
})
|
})
|
||||||
|
export const GetQrcode = (roomNum: string, env: string) =>
|
||||||
|
request({
|
||||||
|
url: `/home/r-qrcode?roomNum=${roomNum}&env=${env}`,
|
||||||
|
method: 'get',
|
||||||
|
})
|
||||||
|
|
||||||
export const GetRecord = (beginTimestamp: number, endTimestamp: number, roomNum: string) =>
|
export const GetRecord = (beginTimestamp: number, endTimestamp: number, roomNum: string) =>
|
||||||
request({
|
request({
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 7.2 KiB |
|
|
@ -108,15 +108,29 @@
|
||||||
>div:nth-child(1) {
|
>div:nth-child(1) {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
|
>div:nth-child(1) {
|
||||||
|
margin-right: 6px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
>span {
|
>span {
|
||||||
color: #767676;
|
color: #767676;
|
||||||
margin-right: 4px;
|
margin-right: 6px;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
>div:nth-child(2) {
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
>img {
|
||||||
|
width: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
>div:nth-child(2) {
|
>div:nth-child(2) {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import styles from '@/page/Home/Index/index.module.scss'
|
||||||
import { useEffect, useState, useRef } from "react";
|
import { useEffect, useState, useRef } from "react";
|
||||||
import Operation from '@/components/Operation';
|
import Operation from '@/components/Operation';
|
||||||
import { Button, Input, Modal, Pagination, Empty, message, Popover, Popconfirm, DatePicker, Select } from "antd";
|
import { Button, Input, Modal, Pagination, Empty, message, Popover, Popconfirm, DatePicker, Select } from "antd";
|
||||||
import { GetRoom, PostRoom, GetCheckoutRoomNum, GetRoomRtcToken, DeleteRoom, GetRecord, PostRoomInfo } from '@/api/Home/Index';
|
import { GetRoom, PostRoom, GetCheckoutRoomNum, GetRoomRtcToken, DeleteRoom, GetRecord, PostRoomInfo, GetQrcode } from '@/api/Home/Index';
|
||||||
import ImageUrl from '@/utils/package/imageUrl'
|
import ImageUrl from '@/utils/package/imageUrl'
|
||||||
import { ExclamationCircleFilled, ReloadOutlined } from '@ant-design/icons';
|
import { ExclamationCircleFilled, ReloadOutlined } from '@ant-design/icons';
|
||||||
import JoinSetting from '@/components/JoinSetting';
|
import JoinSetting from '@/components/JoinSetting';
|
||||||
|
|
@ -41,6 +41,7 @@ const Index: React.FC = () => {
|
||||||
const [subjectList, setSubjectList] = useState<any>([]);
|
const [subjectList, setSubjectList] = useState<any>([]);
|
||||||
const [timeData, setTimeData] = useState<any>([]);
|
const [timeData, setTimeData] = useState<any>([]);
|
||||||
const [isCreateRoom, setIsCreateRoom] = useState<boolean>(false);
|
const [isCreateRoom, setIsCreateRoom] = useState<boolean>(false);
|
||||||
|
const [baseImage, setBaseImage] = useState('');
|
||||||
const userInfo = JSON.parse(storage.getItem('user') as string)
|
const userInfo = JSON.parse(storage.getItem('user') as string)
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setUser(userInfo)
|
setUser(userInfo)
|
||||||
|
|
@ -230,11 +231,42 @@ const Index: React.FC = () => {
|
||||||
<span>{item.onlineUserCount}人</span>
|
<span>{item.onlineUserCount}人</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div>
|
||||||
<div>
|
<div>
|
||||||
<div onClick={() => copyRoomNum(item.roomNum)} title='复制房间号'>
|
<div onClick={() => copyRoomNum(item.roomNum)} title='复制房间号'>
|
||||||
<span>{item.roomNum}</span>
|
<span>{item.roomNum}</span>
|
||||||
<img src={ImageUrl.icon10} alt="" />
|
<img src={ImageUrl.icon10} alt="" />
|
||||||
</div>
|
</div>
|
||||||
|
<Popover
|
||||||
|
placement="bottom"
|
||||||
|
onOpenChange={(e: boolean) => {
|
||||||
|
setBaseImage('')
|
||||||
|
if (e) {
|
||||||
|
GetQrcode(item.roomNum, import.meta.env.VITE_ENV === 'development' ? 'trial' : 'release').then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
setBaseImage(res.data)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}}
|
||||||
|
content={
|
||||||
|
baseImage ? <div>
|
||||||
|
<img style={{ width: '200px', margin: '0 auto' }} src={`data:image/png;base64,${baseImage}`} alt="" />
|
||||||
|
<div style={{ color: 'white', textAlign: 'center', fontSize: '16px', marginTop: '10px' }}>
|
||||||
|
<span>微信中长按图片识别小程序码</span><br />
|
||||||
|
<span>加入会议</span>
|
||||||
|
</div>
|
||||||
|
</div> : <div>
|
||||||
|
<Empty description={'暂无二维码'} />
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
>
|
||||||
|
<div title='小程序'>
|
||||||
|
<img src={ImageUrl.icon55} alt="" />
|
||||||
|
</div>
|
||||||
|
</Popover>
|
||||||
|
|
||||||
|
</div>
|
||||||
<div>
|
<div>
|
||||||
{role.ID.includes(userInfo.roleId) ? <Popover
|
{role.ID.includes(userInfo.roleId) ? <Popover
|
||||||
content={
|
content={
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,8 @@ import virtualBackground6 from '@/assets/virtualBackground/6.png'
|
||||||
import icon52 from '@/assets/icon52.png'
|
import icon52 from '@/assets/icon52.png'
|
||||||
import icon52Select from '@/assets/icon52-select.png'
|
import icon52Select from '@/assets/icon52-select.png'
|
||||||
import icon53 from '@/assets/icon53.png'
|
import icon53 from '@/assets/icon53.png'
|
||||||
|
import icon54 from '@/assets/icon54.png'
|
||||||
|
import icon55 from '@/assets/icon55.png'
|
||||||
export default {
|
export default {
|
||||||
loading,
|
loading,
|
||||||
icon,
|
icon,
|
||||||
|
|
@ -166,5 +168,7 @@ export default {
|
||||||
virtualBackground6,
|
virtualBackground6,
|
||||||
icon52,
|
icon52,
|
||||||
icon52Select,
|
icon52Select,
|
||||||
icon53
|
icon53,
|
||||||
|
icon54,
|
||||||
|
icon55
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue