import { Modal, Space, Tag } from 'antd'; import React, { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { useDispatch, useSelector } from 'umi'; import styles from './index.less'; const { CheckableTag } = Tag; interface kFProps { getKfList: () => void; parser_id: string; doc_id: string; } const SegmentSetModal: React.FC = ({ getKfList, parser_id, doc_id, }) => { const dispatch = useDispatch(); const kFModel = useSelector((state: any) => state.kFModel); const settingModel = useSelector((state: any) => state.settingModel); const [selectedTag, setSelectedTag] = useState(''); const parser_ids = settingModel?.tenantIfo?.parser_ids ?? ''; const { isShowSegmentSetModal } = kFModel; const { t } = useTranslation(); useEffect(() => { dispatch({ type: 'settingModel/getTenantInfo', payload: {}, }); setSelectedTag(parser_id); }, [parser_id]); const handleCancel = () => { dispatch({ type: 'kFModel/updateState', payload: { isShowSegmentSetModal: false, }, }); }; const handleOk = async () => { const retcode = await dispatch({ type: 'kFModel/document_change_parser', payload: { parser_id: selectedTag, doc_id, }, }); retcode === 0 && getKfList && getKfList(); }; const handleChange = (tag: string, checked: boolean) => { const nextSelectedTag = checked ? tag : selectedTag; console.log('You are interested in: ', nextSelectedTag); setSelectedTag(nextSelectedTag); }; return (
{parser_ids.split(',').map((tag: string) => { return ( handleChange(tag, checked)} > {tag} ); })}
); }; export default SegmentSetModal;