import { getAccessToken } from '@/access'; import { addModel, getAssetIcon, getModelList } from '@/services/dataset/index.js'; import { PlusCircleOutlined, UploadOutlined } from '@ant-design/icons'; import { Button, Form, Input, Modal, Pagination, Radio, Select, Upload } from 'antd'; import moment from 'moment'; import { useEffect, useState } from 'react'; import { useNavigate } from 'react-router-dom'; import Styles from './index.less'; const { Search } = Input; const leftdataList = [1, 2, 3]; const PublicData = () => { const props = { action: '/api/mmp/dataset/upload', // headers: { // 'X-Requested-With': null // }, headers: { Authorization: getAccessToken(), 'X-Requested-With': null, }, onChange({ file, fileList }) { if (file.status !== 'uploading') { console.log(file, fileList); form.setFieldsValue({ dataset_version_vos: fileList.map((item) => item.response.data[0]) }); } }, defaultFileList: [], }; const [queryFlow, setQueryFlow] = useState({ page: 0, size: 10, name: null, available_range: 0, }); const navgite = useNavigate(); const [iconParams, setIconParams] = useState({ name: null, page: 0, size: 10000, }); const [activeType, setActiveType] = useState(null); const [activeTag, setActiveTag] = useState(null); const [datasetTypeList, setDatasetTypeList] = useState([]); const [datasetDirectionList, setDatasetDirectionList] = useState([]); const [isModalOpen, setIsModalOpen] = useState(false); const [datasetList, setDatasetList] = useState([]); const [total, setTotal] = useState(0); const [form] = Form.useForm(); const [dialogTitle, setDialogTitle] = useState('新建模型'); const getModelLists = (queryFlow) => { getModelList(queryFlow).then((ret) => { console.log(ret); if (ret.code == 200) { setDatasetList(ret.data.content); setTotal(ret.data.totalElements); } }); }; const showModal = () => { form.resetFields(); setDialogTitle('新建模型'); setIsModalOpen(true); }; const getAssetIconList = (params) => { getAssetIcon(params).then((ret) => { console.log(ret); if (ret.code == 200 && ret.data.content && ret.data.content.length > 0) { setDatasetTypeList(ret.data.content.filter((item) => item.category_id == 3)); setDatasetDirectionList(ret.data.content.filter((item) => item.category_id == 4)); } else { setDatasetTypeList([]); setDatasetDirectionList([]); } }); }; const onSearch = (values) => { console.log(values); getAssetIconList({ ...iconParams, name: values }); }; const nameSearch = (values) => { console.log(values); getModelLists({ ...queryFlow, name: values }); }; const handleOk = () => { console.log(1111); setIsModalOpen(false); }; const handleCancel = () => { setIsModalOpen(false); }; const onFinish = (values) => { addModel(values).then((ret) => { console.log(ret); getModelLists(queryFlow); setIsModalOpen(false); }); }; const chooseModelType = (val, item) => { console.log(val, item); if (item.path == queryFlow.model_type) { setActiveType(''); setQueryFlow({ ...queryFlow, model_type: null }); getModelLists({ ...queryFlow, model_type: null }); } else { setActiveType(item.path); setQueryFlow({ ...queryFlow, model_type: item.path }); getModelLists({ ...queryFlow, model_type: item.path }); } // setQueryFlow({...queryFlow,data_type:item.path},()=>{ // getDatasetlist() // }) }; const chooseModelTag = (val, item) => { if (item.path == queryFlow.model_tag) { setActiveTag(''); setQueryFlow({ ...queryFlow, model_tag: null }); getModelLists({ ...queryFlow, model_tag: null }); } else { setActiveTag(item.path); setQueryFlow({ ...queryFlow, model_tag: item.path }); getModelLists({ ...queryFlow, model_tag: item.path }); } // setQueryFlow({...queryFlow,data_type:item.path},()=>{ // getDatasetlist() // }) }; const routeToIntro = (e, record) => { e.stopPropagation(); console.log(record); navgite({ pathname: `/dataset/modelIntro/${record.id}` }); }; const onFinishFailed = (errorInfo) => { console.log('Failed:', errorInfo); }; useEffect(() => { getAssetIconList(iconParams); getModelLists(queryFlow); return () => {}; }, []); return ( <>
模型框架
{datasetTypeList && datasetTypeList.length > 0 ? datasetTypeList.map((item) => { return (
{ chooseModelType(e, item); }} > { chooseModelTag(e, item); }} > {item.name}
); }) : ''}
模型能力
{datasetDirectionList && datasetDirectionList.length > 0 ? datasetDirectionList.map((item) => { return (
{ chooseModelTag(e, item); }} > {item.name}
); }) : ''}
数据总数:{total}个
{datasetList && datasetList.length > 0 ? datasetList.map((item) => { return (
routeToIntro(e, item)}>
{item.name}
最近更新: {moment(item.update_time).format('YYYY-MM-DD')}
1582
); }) : ''} {/* Demo */}
{dialogTitle} } open={isModalOpen} className={Styles.modal} okButtonProps={{ htmlType: 'submit', form: 'form', }} onCancel={handleCancel} >
仅自己可见 工作空间可见
); }; export default PublicData;