'use client' import { useCallback, useState } from 'react' import { RiCloseLine } from '@remixicon/react' import s from './index.module.css' import cn from '@/utils/classnames' import Modal from '@/app/components/base/modal' import Button from '@/app/components/base/button' import { addKnowledge, editKnowledge } from '@/service/common' import 'react-multi-email/dist/style.css' import Input from '@/app/components/base/input' import { SimpleSelect } from '@/app/components/base/select' const InviteModal = ({ transfer, onCancel, onSend, }: any) => { const [type, setType] = useState(transfer.row?.type || '') const [name, setName] = useState(transfer.row?.name || '') const [url, setUrl] = useState(transfer.row?.url || '') const [method, setMethod] = useState(transfer.row?.method || '') const options = [ { name: '智能问答', value: 'QUESTION_ANSWER' }, { name: '智能搜索', value: 'SEARCH' }, { name: '智能推荐', value: 'RECOMMEND' }, ] const handleSave = useCallback(async () => { try { let res: any = () => {} if (transfer.mode === 'add') { res = await addKnowledge({ url: '/external_applications', body: { type, name, url, method, status: false }, }) } else { res = await editKnowledge({ url: `/external_applications/${transfer.row.id}`, body: { type, name, url, method }, }) } const { id }: any = res if (id) { onCancel() onSend() } } catch (e) { } }, [type, name, url, method, onCancel, onSend, transfer]) return (
{ }} className={cn(s.modal)}>
{transfer.mode === 'add' ? '新增' : '编辑'}类型
服务类型
{ setType(i.value) }} items={options} allowSearch={false} />
系统名称
setName(e.target.value)} className='h-9' placeholder='请输入系统名称' />
URL
setUrl(e.target.value)} className='h-9' placeholder='请输入URL' />
请求方式
setMethod(e.target.value)} className='h-9' placeholder='请输入请求方式' />
) } export default InviteModal