import { formatDate } from '@/utils/date'; import { DeleteOutlined, MinusSquareOutlined, PlusOutlined, } from '@ant-design/icons'; import { Card, Col, FloatButton, Popconfirm, Row } from 'antd'; import React, { useEffect } from 'react'; import { Dispatch, connect, useNavigate } from 'umi'; import styles from './index.less'; import type { knowledgeModelState } from './model'; interface KnowledgeProps { dispatch: Dispatch; knowledgeModel: knowledgeModelState; } const Index: React.FC = ({ knowledgeModel, dispatch }) => { const navigate = useNavigate(); // const [datas, setDatas] = useState(data) const { data = [] } = knowledgeModel; console.log(knowledgeModel); // const x = useSelector((state) => state.knowledgeModel); const confirm = (id: string) => { dispatch({ type: 'knowledgeModel/rmKb', payload: { kb_id: id, }, callback: () => { dispatch({ type: 'knowledgeModel/getList', payload: {}, }); }, }); }; const handleAddKnowledge = () => { navigate(`add/setting?activeKey=setting`); }; const handleEditKnowledge = (id: string) => { navigate(`add/setting?activeKey=file&id=${id}`); }; useEffect(() => { dispatch({ type: 'knowledgeModel/getList', payload: {}, }); }, []); return ( <>
} type="primary" style={{ right: 24, top: 100 }} /> {data.map((item: any) => { return ( { handleEditKnowledge(item.id); }} >
{item.name} { e.stopPropagation(); e.nativeEvent.stopImmediatePropagation(); confirm(item.id); }} okText="Yes" cancelText="No" > { e.stopPropagation(); e.nativeEvent.stopImmediatePropagation(); }} />
{item.doc_num}文档 {item.chunk_num}个 {item.token_num}千字符 {formatDate(item.update_date)}
); })}
); }; export default connect(({ knowledgeModel, loading }) => ({ knowledgeModel, loading, }))(Index);