2024-05-31 09:19:30 +08:00
|
|
|
|
import './copyrightG-goods.css'
|
2024-06-04 16:02:06 +08:00
|
|
|
|
import {
|
|
|
|
|
Select, DatePicker, Button, Table,
|
2024-05-31 09:19:30 +08:00
|
|
|
|
// message,
|
2024-08-12 14:43:58 +08:00
|
|
|
|
Space, Empty, Pagination, InputNumber
|
2024-06-04 16:02:06 +08:00
|
|
|
|
} from 'antd';
|
2024-06-12 17:01:55 +08:00
|
|
|
|
import type { InputNumberProps } from 'antd';
|
2024-05-31 09:19:30 +08:00
|
|
|
|
// import type { TableColumnsType } from 'antd';
|
2024-06-11 17:45:40 +08:00
|
|
|
|
import { SearchOutlined, ClearOutlined } from '@ant-design/icons';
|
2024-05-31 09:19:30 +08:00
|
|
|
|
import type { DatePickerProps } from 'antd';
|
|
|
|
|
import locale from 'antd/es/date-picker/locale/zh_CN';
|
2024-06-12 17:01:55 +08:00
|
|
|
|
import { useState } from 'react';
|
2024-05-31 09:19:30 +08:00
|
|
|
|
const { Column } = Table;
|
2024-05-21 11:21:34 +08:00
|
|
|
|
export default function CopyrightGgoods() {
|
2024-06-12 17:01:55 +08:00
|
|
|
|
const height = window.innerHeight - 180;
|
2024-05-31 09:19:30 +08:00
|
|
|
|
// const [messageApi, contextHolder] = message.useMessage();
|
|
|
|
|
const dateFormat = 'YYYY年MM月DD日';
|
2024-08-12 14:43:58 +08:00
|
|
|
|
const [minPrice, setMinPrice] = useState<any>() //最低价格
|
|
|
|
|
const [maxPrice, setMaxPrice] = useState<any>() //最高价格
|
|
|
|
|
const [date, setDate] = useState<any>() //获取时间
|
|
|
|
|
const [sort, setSort] = useState<any>() //排序
|
|
|
|
|
const [language, setLanguage] = useState<any>() //开发语言
|
|
|
|
|
const [type, setType] = useState<any>() //软著类型
|
|
|
|
|
const [page, setPage] = useState(1) //分页
|
2024-06-12 17:01:55 +08:00
|
|
|
|
// 更改最低价格
|
|
|
|
|
const minPriceChange: InputNumberProps['onChange'] = (value) => {
|
|
|
|
|
console.log('changed', value);
|
|
|
|
|
setMinPrice(value)
|
|
|
|
|
};
|
2024-08-12 14:43:58 +08:00
|
|
|
|
// 更改最高价格
|
|
|
|
|
const maxPriceChange: InputNumberProps['onChange'] = (value) => {
|
2024-06-12 17:01:55 +08:00
|
|
|
|
console.log('changed', value);
|
|
|
|
|
setMaxPrice(value)
|
|
|
|
|
};
|
|
|
|
|
// 更改价格排序
|
|
|
|
|
const sortChange = (value: string) => {
|
|
|
|
|
console.log(`selected ${value}`)
|
|
|
|
|
setSort(value)
|
|
|
|
|
}
|
|
|
|
|
// 更改开发语言
|
|
|
|
|
const languageChange = (value: string) => {
|
|
|
|
|
console.log(`selected ${value}`)
|
|
|
|
|
setLanguage(value)
|
|
|
|
|
}
|
|
|
|
|
// 软著类型更改
|
|
|
|
|
const typeChange = (value: string) => {
|
2024-05-31 09:19:30 +08:00
|
|
|
|
console.log(`selected ${value}`);
|
2024-06-12 17:01:55 +08:00
|
|
|
|
setType(value)
|
2024-05-31 09:19:30 +08:00
|
|
|
|
}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
// 获取时间更改
|
|
|
|
|
const dateChange: DatePickerProps['onChange'] = (date, dateString) => {
|
2024-05-31 09:19:30 +08:00
|
|
|
|
console.log(date, dateString);
|
2024-06-12 17:01:55 +08:00
|
|
|
|
setDate(date)
|
2024-05-31 09:19:30 +08:00
|
|
|
|
};
|
2024-06-12 17:01:55 +08:00
|
|
|
|
// 点击搜索
|
|
|
|
|
const onSearch = () => {
|
|
|
|
|
setPage(1)
|
2024-08-12 14:43:58 +08:00
|
|
|
|
console.log(minPrice, maxPrice, date, sort, language, type);
|
|
|
|
|
|
2024-06-12 17:01:55 +08:00
|
|
|
|
}
|
|
|
|
|
// 初始化搜索条件
|
|
|
|
|
const init = () => {
|
|
|
|
|
setMinPrice(undefined)
|
|
|
|
|
setMaxPrice(undefined)
|
|
|
|
|
setDate(undefined)
|
|
|
|
|
setSort(undefined)
|
|
|
|
|
setLanguage(undefined)
|
|
|
|
|
setType(undefined)
|
|
|
|
|
}
|
|
|
|
|
// 点击清除
|
|
|
|
|
const clearKeyWords = () => {
|
|
|
|
|
setPage(1)
|
|
|
|
|
init()
|
|
|
|
|
}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
interface DataType {
|
|
|
|
|
name: string
|
|
|
|
|
short: string
|
|
|
|
|
number: string
|
|
|
|
|
price: string
|
|
|
|
|
version: string
|
|
|
|
|
time: string
|
|
|
|
|
language: string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const data: DataType[] = [
|
|
|
|
|
{
|
|
|
|
|
name: '智能管理系统',
|
|
|
|
|
short: '简称',
|
2024-06-11 17:45:40 +08:00
|
|
|
|
number: '312345678912345617891',
|
2024-05-31 09:19:30 +08:00
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: '商城管理系统',
|
|
|
|
|
short: '简称',
|
2024-06-11 17:45:40 +08:00
|
|
|
|
number: '11234567891234567892',
|
2024-05-31 09:19:30 +08:00
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
2024-06-11 17:45:40 +08:00
|
|
|
|
number: '21234567891234567893',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567894',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567895',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567896',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567897',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567898',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567899',
|
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
name: 'xx系统',
|
|
|
|
|
short: '简称',
|
|
|
|
|
number: '21234567891234567890',
|
2024-05-31 09:19:30 +08:00
|
|
|
|
price: '5.00',
|
|
|
|
|
version: '1-1-1',
|
|
|
|
|
time: '2020-04-19 15:42:21',
|
|
|
|
|
language: 'java'
|
|
|
|
|
},
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-05-21 11:21:34 +08:00
|
|
|
|
return (
|
2024-06-12 17:01:55 +08:00
|
|
|
|
<div className='copyrightG-goods' style={{ height: `${height}px`, overflow: 'auto' }}>
|
2024-05-31 09:19:30 +08:00
|
|
|
|
{/* {contextHolder} */}
|
|
|
|
|
<div className='copyrightG-goods-search'>
|
2024-06-12 17:01:55 +08:00
|
|
|
|
<InputNumber placeholder="最低价格" min={0}
|
|
|
|
|
style={{
|
|
|
|
|
width: 100,
|
|
|
|
|
// height: 36,
|
|
|
|
|
marginRight: 12
|
|
|
|
|
}}
|
|
|
|
|
value={minPrice}
|
|
|
|
|
onChange={minPriceChange}
|
|
|
|
|
/>
|
2024-05-31 09:19:30 +08:00
|
|
|
|
至
|
2024-08-12 14:43:58 +08:00
|
|
|
|
<InputNumber placeholder="最高价格" min={0} style={{
|
2024-06-12 17:01:55 +08:00
|
|
|
|
width: 100,
|
|
|
|
|
// height: 36,
|
|
|
|
|
marginRight: 12,
|
|
|
|
|
marginLeft: 12
|
2024-08-12 14:43:58 +08:00
|
|
|
|
}}
|
|
|
|
|
value={maxPrice}
|
|
|
|
|
onChange={maxPriceChange}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
/>
|
2024-05-31 09:19:30 +08:00
|
|
|
|
|
|
|
|
|
<DatePicker placeholder="软著获取时间"
|
|
|
|
|
style={{ width: 198, height: 36, marginRight: 12 }}
|
|
|
|
|
format={dateFormat}
|
|
|
|
|
locale={locale}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
onChange={dateChange}
|
|
|
|
|
value={date}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
/>
|
|
|
|
|
<Select
|
|
|
|
|
// defaultValue="lucy"
|
|
|
|
|
placeholder='价格排序'
|
2024-06-12 17:01:55 +08:00
|
|
|
|
style={{ width: 100, height: 36, marginRight: 12 }}
|
|
|
|
|
onChange={sortChange}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
options={[
|
2024-06-12 17:01:55 +08:00
|
|
|
|
{ value: 'rise', label: '升序' },
|
|
|
|
|
{ value: 'drop', label: '降序' },
|
2024-05-31 09:19:30 +08:00
|
|
|
|
]}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
value={sort}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
/>
|
|
|
|
|
<Select
|
|
|
|
|
// defaultValue="lucy"
|
|
|
|
|
placeholder='选择开发语言'
|
|
|
|
|
style={{ width: 198, height: 36, marginRight: 12 }}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
onChange={languageChange}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
options={[
|
2024-06-12 17:01:55 +08:00
|
|
|
|
{ value: 'java', label: 'java' },
|
|
|
|
|
{ value: 'php', label: 'php' },
|
2024-05-31 09:19:30 +08:00
|
|
|
|
]}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
value={language}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
/>
|
|
|
|
|
<Select
|
|
|
|
|
// defaultValue="lucy"
|
|
|
|
|
placeholder='选择软著类型'
|
|
|
|
|
style={{ width: 198, height: 36, marginRight: 12 }}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
onChange={typeChange}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
options={[
|
2024-06-12 17:01:55 +08:00
|
|
|
|
{ value: 'person', label: '个人' },
|
|
|
|
|
{ value: 'lucy', label: '公司' },
|
2024-05-31 09:19:30 +08:00
|
|
|
|
]}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
value={type}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
/>
|
|
|
|
|
<Button type="primary"
|
2024-06-04 16:02:06 +08:00
|
|
|
|
style={{
|
|
|
|
|
height: 36,
|
|
|
|
|
// backgroundColor: '#FF9F08'
|
|
|
|
|
}}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
|
2024-06-12 17:01:55 +08:00
|
|
|
|
icon={<SearchOutlined />}
|
|
|
|
|
onClick={onSearch}
|
2024-08-12 14:43:58 +08:00
|
|
|
|
>
|
2024-05-31 09:19:30 +08:00
|
|
|
|
搜索
|
|
|
|
|
</Button>
|
2024-06-04 16:02:06 +08:00
|
|
|
|
<Button
|
|
|
|
|
style={{
|
|
|
|
|
height: 36,
|
|
|
|
|
marginLeft: 10,
|
|
|
|
|
// backgroundColor: '#FF9F08'
|
|
|
|
|
}}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
icon={<ClearOutlined />}
|
|
|
|
|
onClick={clearKeyWords}
|
2024-08-12 14:43:58 +08:00
|
|
|
|
>
|
2024-06-04 16:02:06 +08:00
|
|
|
|
清除
|
|
|
|
|
</Button>
|
2024-05-31 09:19:30 +08:00
|
|
|
|
</div>
|
|
|
|
|
<div className='copyrightG-goods-table'>
|
|
|
|
|
{/* 表格 */}
|
|
|
|
|
{data.length == 0 ? (
|
|
|
|
|
<div className='nodata' style={{ height: `${height - 93}px` }}>
|
|
|
|
|
<Empty
|
|
|
|
|
description={
|
|
|
|
|
'暂无数据'
|
|
|
|
|
} />
|
2024-06-07 09:59:01 +08:00
|
|
|
|
</div>) : (
|
2024-06-11 17:45:40 +08:00
|
|
|
|
<div>
|
2024-06-12 17:01:55 +08:00
|
|
|
|
<div style={{ height: `${height - 130}px` }}>
|
2024-06-11 17:45:40 +08:00
|
|
|
|
<Table
|
|
|
|
|
scroll={{ y: `${height - 190}px` }}
|
|
|
|
|
dataSource={data}
|
|
|
|
|
pagination={false} // 不显示分页
|
|
|
|
|
style={{ textAlign: 'center' }} // 设置表格内容居中显示
|
|
|
|
|
rowKey="number" // 指定数据项的唯一标识符
|
|
|
|
|
>
|
2024-06-12 17:01:55 +08:00
|
|
|
|
<Column
|
|
|
|
|
width={70}
|
|
|
|
|
title="序号" render={(_text, _record, index: number) => (
|
|
|
|
|
index + 1
|
|
|
|
|
)} align="center" />
|
2024-06-11 17:45:40 +08:00
|
|
|
|
<Column
|
|
|
|
|
title="软著名称"
|
|
|
|
|
dataIndex="name"
|
|
|
|
|
align="center"
|
|
|
|
|
render={(text) => (
|
|
|
|
|
<span style={{ color: '#1B8BD2', fontSize: '16px', fontWeight: '700' }}>{text}</span>
|
|
|
|
|
)}
|
|
|
|
|
/>
|
|
|
|
|
<Column
|
|
|
|
|
title="软著简称"
|
|
|
|
|
dataIndex="short"
|
|
|
|
|
align="center"
|
|
|
|
|
/>
|
|
|
|
|
<Column
|
|
|
|
|
title="软著证号"
|
|
|
|
|
dataIndex="number"
|
|
|
|
|
align="center"
|
2024-06-12 17:01:55 +08:00
|
|
|
|
// ellipsis
|
2024-06-11 17:45:40 +08:00
|
|
|
|
/>
|
|
|
|
|
<Column title="售价" dataIndex="price" align="center"
|
|
|
|
|
render={(text) => (
|
|
|
|
|
<span style={{ color: '#FF5D15', fontSize: '24px', fontWeight: '700' }}>{text}</span>
|
|
|
|
|
)} />
|
|
|
|
|
<Column title="软著版本" dataIndex="version" align="center" />
|
|
|
|
|
<Column title="软著取得时间" dataIndex="time" align="center" />
|
|
|
|
|
<Column title="软著开发语言" dataIndex="language" align="center" />
|
|
|
|
|
{/* <Column title="实名认证状态" dataIndex="address" key="key" /> */}
|
|
|
|
|
<Column
|
|
|
|
|
align="center"
|
|
|
|
|
title="软著电子版"
|
|
|
|
|
render={(_text, record: any) => (
|
|
|
|
|
<Space size="middle">
|
|
|
|
|
<span className='copyrightG-goods-table-btn' onClick={() => {
|
|
|
|
|
console.log(record.number);
|
2024-05-31 09:19:30 +08:00
|
|
|
|
|
2024-06-11 17:45:40 +08:00
|
|
|
|
}}>预览</span>
|
|
|
|
|
</Space>
|
|
|
|
|
)}
|
|
|
|
|
/>
|
|
|
|
|
</Table>
|
|
|
|
|
</div>
|
|
|
|
|
{/* defaultCurrent: 默认当前页数 total:数据总数 defaultPageSize:'页面显示几条' */}
|
2024-06-12 17:01:55 +08:00
|
|
|
|
<div className='product-release-pagination' >
|
2024-08-12 14:43:58 +08:00
|
|
|
|
<Pagination
|
|
|
|
|
showSizeChanger={false}
|
|
|
|
|
defaultCurrent={page} total={20} defaultPageSize={10} onChange={(page) => {
|
|
|
|
|
console.log(page)
|
|
|
|
|
setPage(page)
|
|
|
|
|
}} />
|
2024-06-11 17:45:40 +08:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
)}
|
2024-05-31 09:19:30 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
2024-05-21 11:21:34 +08:00
|
|
|
|
</div>
|
|
|
|
|
)
|
|
|
|
|
}
|