async function nextStep()

in frontend/src/routes/space/access-cluster/access-cluster.tsx [78:143]


    async function nextStep() {
        const value = form.getFieldsValue();
        let isParamsValid = true;
        const newStep = step + 1;
        const params: ClusterAccessParams = {
            ...requestInfo.reqInfo,
            cluster_id: requestInfo.clusterId,
            request_id: requestInfo.requestId,
            event_type: (step + 1).toString(),
        };
        if (value && step === AccessClusterStepsEnum['space-register']) {
            params.spaceInfo = {
                describe: value.describe,
                name: value.name,
                spaceAdminUsers: value.spaceAdminUsers,
            };
            isParamsValid =
                checkParam(params.spaceInfo.name, '请填写空间名称') &&
                checkParam(params.spaceInfo.spaceAdminUsers, '请填写管理员姓名');
        }
        if (value && step === AccessClusterStepsEnum['connect-cluster']) {
            params.clusterAccessInfo = {
                address: value.address,
                httpPort: value.httpPort,
                passwd: value.passwd || '',
                queryPort: value.queryPort,
                type: value.type,
                user: value.user,
            };
            isParamsValid =
                checkParam(params.clusterAccessInfo.address, '请填写集群地址') &&
                checkParam(params.clusterAccessInfo.httpPort, '请填写HTTP端口') &&
                checkParam(params.clusterAccessInfo.queryPort, '请填写JDBC端口') &&
                checkParam(params.clusterAccessInfo.user, '请填写集群用户名');
        }

        if (value && step === AccessClusterStepsEnum['managed-options']) {
            params.authInfo = {
                sshKey: value.sshKey,
                sshPort: value.sshPort,
                sshUser: value.sshUser,
            };
            params.installInfo = value.installInfo;
            params.agentPort = value.agentPort ? parseInt(value.agentPort) : value.agentPort;
            isParamsValid =
                checkParam(params.authInfo.sshUser, '请填写SSH用户') &&
                checkParam(params.authInfo.sshPort, '请填写SSH端口') &&
                checkParam(params.authInfo.sshKey, '请填写SSH私钥') &&
                checkParam(params.installInfo, '请填写安装路径') &&
                checkParam(params.agentPort, '请填写Agent启动端口');
        }
        if (!isParamsValid) return;
        setLoading(true);
        const res = await SpaceAPI.accessCluster(params);
        setLoading(false);
        if (isSuccess(res)) {
            setRequestInfo(res.data);
            setStep(newStep);
            setStepDisabled({ ...stepDisabled, next: false });
            setTimeout(() => {
                navigate(`/space/access/${res.data.requestId}/${AccessClusterStepsEnum[newStep]}`);
            }, 0);
        } else {
            message.error(res.msg);
        }
    }