import * as React from 'react'; import { Table, Modal, Tooltip, Icon, message, notification, Alert } from 'component/antd'; import { getApplyOnlineColumns } from 'container/topic/config'; import { observer } from 'mobx-react'; import { modal } from 'store/modal'; import { users } from 'store/users'; import { urlPrefix } from 'constants/left-menu'; import { region } from 'store'; import { topic } from 'store/topic'; @observer export class ConnectTopicList extends React.Component { public componentDidMount() { topic.getConnectionInfo(modal.params.clusterId, modal.params.topicName, modal.params.appId); } public handleCancel = () => { topic.setConnectionInfo([]); modal.close(); } public handleSubmit = () => { const connectionList = topic.connectionInfo; if (connectionList && connectionList.length) { return message.warning('存在连接信息,无法申请下线!'); } const online = { clusterId: modal.params.clusterId, topicName: modal.params.topicName, }; const offlineParams = { type: 10, applicant: users.currentUser.username, description: '', extensions: JSON.stringify(online), }; topic.applyTopicOnline(offlineParams).then((data: any) => { notification.success({ message: '申请下线成功' }); window.location.href = `${urlPrefix}/user/order-detail/?orderId=${data.id}®ion=${region.currentRegion}`; }); modal.close(); } public render() { return ( <> 申请下线 } maskClosable={false} onCancel={this.handleCancel} onOk={this.handleSubmit} okText="确认" cancelText="取消" okButtonProps={{ disabled: topic.connectLoading || !!topic.connectionInfo.length }} width={700} > '连接信息'} loading={topic.connectLoading} scroll={{ x: 450, y: 260 }} dataSource={topic.connectionInfo} columns={getApplyOnlineColumns()} pagination={false} bordered={true} /> ); } }