update frontend

This commit is contained in:
felinae98
2022-10-05 19:49:19 +08:00
parent 9ec4973fc3
commit 469dc8877b
7 changed files with 269 additions and 33 deletions
@@ -0,0 +1,36 @@
import React from 'react';
import {
Card, Typography, Grid, Button,
} from '@arco-design/web-react';
import { Link } from 'react-router-dom';
import { useGetSubsQuery } from './subscribeConfigSlice';
export default function GroupManager() {
const { data: subs } = useGetSubsQuery();
return (
<>
<Typography.Title heading={4} style={{ margin: '15px' }}></Typography.Title>
<div>
{ subs && (
<Grid.Row gutter={20}>
{ Object.keys(subs).map(
(groupNumber: string) => (
<Grid.Col span={6} key={groupNumber}>
<Card
title={subs[groupNumber].name}
actions={[
<Link to={`/home/groups/${groupNumber}`}><Button></Button></Link>,
<Button type="primary"></Button>,
]}
>
<div>{groupNumber}</div>
</Card>
</Grid.Col>
),
)}
</Grid.Row>
)}
</div>
</>
);
}
@@ -1,13 +1,87 @@
import React from 'react';
import {
Button, Empty, Space, Table, Tag,
} from '@arco-design/web-react';
import { useParams } from 'react-router-dom';
import { useGetSubsQuery } from './subscribeConfigSlice';
import { useAppSelector } from '../../app/hooks';
import { selectPlatformConf } from '../globalConf/globalConfSlice';
import { SubscribeConfig } from '../../utils/type';
export default function SubscribeManager() {
const { data: subs } = useGetSubsQuery();
const { groupNumber } = useParams();
const platformConf = useAppSelector(selectPlatformConf);
return (
<>
<div>{ subs && JSON.stringify(subs) }</div>
<div>1</div>
</>
);
const columns = [
{
title: '平台名称',
dataIndex: 'platformName',
render: (col: any, record: SubscribeConfig) => (
<span>{platformConf[record.platformName].name}</span>
),
},
{ title: '帐号名称', dataIndex: 'targetName' },
{ title: '订阅帐号', dataIndex: 'target' },
{
title: '订阅分类',
dataIndex: 'cats',
render: (col: any, record: SubscribeConfig) => (
<span>
<Space>
{
record.cats.map((catNumber: number) => (
<Tag>{platformConf[record.platformName].categories[catNumber]}</Tag>
))
}
</Space>
</span>
),
},
{
title: '订阅标签',
dataIndex: 'tags',
render: (col: any, record: SubscribeConfig) => (
<span>
<Space>
{
record.tags.length === 0 ? <Tag color="green"></Tag>
: record.tags.map((tag: string) => (
<Tag color="blue">{tag}</Tag>
))
}
</Space>
</span>
),
},
{
title: '操作',
dataIndex: 'op',
render: (_: any, record: SubscribeConfig) => (
<Space>
<Button type="text"></Button>
<Button type="text" status="success"></Button>
<Button type="text" status="danger" onClick={() => { console.log(record); }}></Button>
</Space>
),
},
];
if (subs && groupNumber) {
return (
<>
<span>
{subs[groupNumber].name}
{groupNumber}
</span>
<Button style={{ width: '90px', margin: '20px' }} type="primary"></Button>
<Table
columns={columns}
data={subs[groupNumber].subscribes}
rowKey={(record: SubscribeConfig) => `${record.platformName}-${record.target}`}
/>
</>
);
}
return <Empty />;
}