in frontend/src/routes/space/access-cluster/steps/connect-cluster/connect-cluster.tsx [34:121]
export function ConnectCluster(props: any) {
const { form, reqInfo } = useContext(NewSpaceInfoContext);
const [testFlag, setTestFlag] = useState<any>('none');
const [stepDisabled, setStepDisabled] = useRecoilState(stepDisabledState);
const { pathname } = useLocation();
useEffect(() => {
if (pathname.includes(AccessClusterStepsEnum[1])) {
form.setFieldsValue({ ...reqInfo.clusterAccessInfo });
setStepDisabled({ ...stepDisabled, next: true });
}
}, [reqInfo.cluster_id, pathname]);
const handleLinkTest = () => {
const values = form.getFieldsValue();
SpaceAPI.spaceValidate({
address: values.address.trim(),
httpPort: values.httpPort,
passwd: values.passwd || '',
queryPort: values.queryPort,
user: values.user.trim(),
}).then(res => {
const { msg, data, code } = res;
if (code === 0) {
Modal.success({
title: '集群连接成功',
content: msg,
});
setStepDisabled({ ...stepDisabled, next: false });
setTestFlag('success');
} else {
Modal.error({
title: '集群连接失败',
content: msg,
});
setStepDisabled({ ...stepDisabled, next: true });
setTestFlag('failed');
}
});
};
return (
<PageContainer
header={{
title: '连接集群',
}}
>
<Form
form={form}
name="basic"
layout="horizontal"
labelCol={{ span: 2 }}
wrapperCol={{ span: 8 }}
autoComplete="off"
// initialValues={{
// address: '10.138.64.225',
// httpPort: 8030,
// queryPort: 9030,
// user: 'root',
// passwd: 'palo_123'
// }}
initialValues={{
address: reqInfo.clusterAccessInfo?.address,
httpPort: reqInfo.clusterAccessInfo?.httpPort,
queryPort: reqInfo.clusterAccessInfo?.queryPort,
user: reqInfo.clusterAccessInfo?.user,
passwd: reqInfo.clusterAccessInfo?.passwd,
}}
>
<Form.Item name="address" label="集群地址" required>
<Input placeholder="please input cluster address" />
</Form.Item>
<Form.Item name="httpPort" label="HTTP端口" required>
<Input placeholder="please input cluster http port" />
</Form.Item>
<Form.Item name="queryPort" label="JDBC端口" required>
<Input placeholder="please input cluster jdbc port" />
</Form.Item>
<Form.Item name="user" label="集群用户名" required>
<Input placeholder="please input cluster user" />
</Form.Item>
<Form.Item name="passwd" label="集群密码">
<Form.Item name="passwd" noStyle>
<Input.Password placeholder="please input cluster user password" />
</Form.Item>
</Form.Item>
</Form>
<Space style={{ marginTop: 20, marginLeft: 82 }}>
<Button onClick={() => handleLinkTest()}>链接测试</Button>