Fix: jump flow

This commit is contained in:
unitwk 2022-11-05 22:36:41 +08:00
parent a003d395f6
commit fc2b57f4de
5 changed files with 96 additions and 43 deletions

View File

@ -508,6 +508,8 @@
:instanceUuid="instanceUuid"
>
</TermSetting>
<NetworkTip v-model:visible="visibleNetworkTip" :daemonUuid="serviceUuid"></NetworkTip>
</div>
</template>
@ -540,10 +542,10 @@ import { statusCodeToText, typeTextToReadableText } from "../../service/instance
import { initTerminalWindow, textToTermText } from "../../service/term";
import { getPlayersOption } from "../../service/chart_option";
import TermSetting from "./TermSetting";
import NetworkTip from "@/components/NetworkTip";
export default {
// eslint-disable-next-line vue/no-unused-components
components: { Panel, LineInfo, LineButton, Dialog, Logo, TermSetting },
components: { Panel, LineInfo, LineButton, Dialog, Logo, TermSetting, NetworkTip },
data: function () {
return {
input1: "",
@ -553,6 +555,7 @@ export default {
term: null,
terminalWidth: 0,
terminalHeight: 0,
visibleNetworkTip: false,
command: "",
available: false,
socket: null,
@ -1067,6 +1070,8 @@ export default {
},
async mounted() {
try {
this.visibleNetworkTip = this.$route.query.network_tip ? true : false;
// Initialize web local storage
this.initStorage();

View File

@ -206,7 +206,10 @@ export default {
toInstance() {
this.$router.push({
path: `/terminal/${this.remoteUuid}/${this.taskInfo.detail.instanceUuid}/`
path: `/terminal/${this.remoteUuid}/${this.taskInfo.detail.instanceUuid}/`,
query: {
network_tip: 1
}
});
}
},

View File

@ -295,7 +295,10 @@ export default {
//
toInstance(remoteUuid, instanceUuid) {
this.$router.push({
path: `/terminal/${remoteUuid}/${instanceUuid}/`
path: `/terminal/${remoteUuid}/${instanceUuid}/`,
query: {
network_tip: 1
}
});
}
}

View File

@ -1,34 +1,48 @@
<!--
Copyright (C) 2022 MCSManager <mcsmanager-dev@outlook.com>
-->
<template>
<Dialog v-model="v" :cancel="close">
<template #title>{{ $t("CommonText.012") }} </template>
<template #title> {{ $t("CommonText.012") }} </template>
<template #default>
<div class="wrapper">
<div v-if="isFromTerminal && viewType === 0">
<p class="sub-title">
{{ $t("components.NetworkTip.016") }}
</p>
</div>
<el-row :gutter="20" v-if="viewType === 0">
<el-col :span="12" :offset="0">
<SelectBlock style="height: 140px" @click="select(1)">
<template #title>
<p class="sub-title-title">{{ $t("components.NetworkTip.001") }}</p>
<p class="sub-title-title">
{{ $t("components.NetworkTip.001") }}
</p>
</template>
<template #info>
<p class="sub-title-info">{{ $t("components.NetworkTip.002") }}</p>
<p class="sub-title-info">
{{ $t("components.NetworkTip.002") }}
</p>
</template>
</SelectBlock>
</el-col>
<el-col :span="12" :offset="0">
<SelectBlock style="height: 140px" @click="select(2)">
<template #title>
<p class="sub-title-title">{{ $t("components.NetworkTip.003") }}</p>
<p class="sub-title-title">
{{ $t("components.NetworkTip.003") }}
</p>
</template>
<template #info>
<p class="sub-title-info">{{ $t("components.NetworkTip.004") }}</p>
<p class="sub-title-info">
{{ $t("components.NetworkTip.004") }}
</p>
</template>
</SelectBlock>
</el-col>
</el-row>
<div v-if="viewType === 0">
<el-link type="primary" @click="close"> {{ $t("components.NetworkTip.017") }}</el-link>
</div>
<div v-if="viewType === 1">
<div class="flex flex-space-between flex-space-center">
<div style="margin: 24px 0px 24px 0px; text-align: center">
@ -45,26 +59,38 @@
{{ $t("components.NetworkTip.006", [ipv4 ? ipv4 : "8.8.8.8"]) }}
</p>
<p class="sub-title">{{ $t("components.NetworkTip.007") }}</p>
<p class="sub-title">
{{ $t("components.NetworkTip.007") }}
</p>
</div>
<div v-if="viewType === 2">
<p class="sub-title-title row-mb">{{ $t("components.NetworkTip.008") }}</p>
<p class="sub-title-title">{{ $t("components.NetworkTip.009") }}</p>
<p class="sub-title-title row-mb">
{{ $t("components.NetworkTip.008") }}
</p>
<p class="sub-title-title">
{{ $t("components.NetworkTip.009") }}
</p>
<p>
{{ $t("CommonText.013") }}
<span class="color-gray" v-if="taskInfo.status == 0">{{ $t("CommonText.014") }} </span>
<span class="color-green" v-if="taskInfo.status == 1">{{ $t("CommonText.015") }} </span>
<span class="color-red" v-if="taskInfo.status == -1">{{ $t("CommonText.016") }} </span>
<span class="color-gray" v-if="taskInfo.status == 0"> {{ $t("CommonText.014") }} </span>
<span class="color-green" v-if="taskInfo.status == 1">
{{ $t("CommonText.015") }}
</span>
<span class="color-red" v-if="taskInfo.status == -1"> {{ $t("CommonText.016") }} </span>
</p>
<p v-if="taskInfo.detail && taskInfo.detail.ip">
{{ $t("components.NetworkTip.010") }}
<span class="color-green">{{ taskInfo.detail.ip }} </span>
<span class="color-green"> {{ taskInfo.detail.ip }} </span>
</p>
<div class="row-mb">
<div class="sub-title">
<div class="sub-title-title require-field">{{ $t("components.NetworkTip.011") }}</div>
<div class="sub-title-info">{{ $t("components.NetworkTip.012") }}</div>
<div class="sub-title-title require-field">
{{ $t("components.NetworkTip.011") }}
</div>
<div class="sub-title-info">
{{ $t("components.NetworkTip.012") }}
</div>
</div>
<el-input
v-model="indexCode"
@ -95,14 +121,16 @@
</el-link>
</ItemGroup>
</div>
<el-link
type="primary"
:underline="false"
href="https://docs.mcsmanager.com/#/"
target="_blank"
>
{{ $t("CommonText.019") }}
</el-link>
<ItemGroup>
<el-link
type="primary"
:underline="false"
href="https://docs.mcsmanager.com/#/"
target="_blank"
>
{{ $t("CommonText.019") }}
</el-link>
</ItemGroup>
</div>
</div>
</div>
@ -154,6 +182,12 @@ export default {
computed: {
isOpen() {
return this.taskInfo.status == 1;
},
isFromTerminal() {
const r = this.$route.query.network_tip ? true : false;
return r;
}
},
watch: {
@ -163,18 +197,20 @@ export default {
}
},
unmounted() {},
methods: {
async getPublicIP() {
const data = await request({
method: "GET",
url: API_FORWARD_REQUEST,
params: {
target: QUERY_PUBLIC_IP
}
});
this.ipv4 = data.ipv4;
try {
const data = await request({
method: "GET",
url: API_FORWARD_REQUEST,
params: {
target: QUERY_PUBLIC_IP
}
});
this.ipv4 = data.ipv4;
} catch (error) {
this.ipv4 = "";
}
},
clearIntervalTask() {
@ -283,6 +319,10 @@ export default {
};
</script>
<!--
Copyright (C) 2022 MCSManager <mcsmanager-dev@outlook.com>
-->
<style scoped>
.wrapper {
margin: 16px;

View File

@ -1068,9 +1068,9 @@
},
"components": {
"NetworkTip": {
"001": "服务器公网联机方案",
"001": "服务器公网IP联机",
"002": "您必须拥有一台公网IP的服务器才可以使用此方式联网。",
"003": "家庭网络联机方案",
"003": "家庭网络联机",
"004": "使用由第三方提供的分布式虚拟局域网服务进行联机,实现家庭网络接入。",
"005": "服务器 IP 地址:{0}",
"006": "当您选择使用公网IP时MCSManager 无需进行任何操作,您只需使用公网 IP\r 地址和您的软件默认端口号即可让其他人连接您的服务器,列如\r {0}:25565。",
@ -1082,7 +1082,9 @@
"012": "索引码是接入 HiPer 网络的必备钥匙,您可以点击底部的“获取索引码”来获得。",
"013": "请输入索引码",
"014": "获取索引码",
"015": "请填写索引码"
"015": "请填写索引码",
"016": "Hi~,第一次部署服务器吗?请选择一个网络连接方式吧!",
"017": "我清楚如何联机,不需要任何教程"
}
}
}
}