From 5ea910a9712f1409ecee60ee9fff3c95a97dd8dc Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 30 九月 2024 15:53:54 +0800
Subject: [PATCH] 监测工具
---
src/api/platform/online-util.js | 10 +++
src/views/tool/online/index.vue | 118 +++++++++++++++++++++++++++++++++++++++
2 files changed, 128 insertions(+), 0 deletions(-)
diff --git a/src/api/platform/online-util.js b/src/api/platform/online-util.js
new file mode 100644
index 0000000..8425020
--- /dev/null
+++ b/src/api/platform/online-util.js
@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+//
+export function check(query) {
+ return request({
+ url: '/system/util/online',
+ method: 'get',
+ params: query
+ })
+}
diff --git a/src/views/tool/online/index.vue b/src/views/tool/online/index.vue
new file mode 100644
index 0000000..0111d58
--- /dev/null
+++ b/src/views/tool/online/index.vue
@@ -0,0 +1,118 @@
+<template>
+ <div class="app-container">
+ <el-tabs v-model="active" @tab-click="changeActive">
+ <el-tab-pane label="鍦ㄧ嚎妫�娴�" name="1">
+ <el-form :model="form" :inline="true">
+ <el-form-item label="鍥芥爣鐮侊細">
+ <el-input v-model="form.serialNumber"/>
+ </el-form-item>
+ <el-form-item>
+ <el-button @click="check" type="primary">妫�娴�</el-button>
+ </el-form-item>
+ </el-form>
+ <div v-loading="loading" v-if="result.status">
+ <div class="row">
+ <div>妫�娴嬬粨鏋滐細</div>
+ <div>{{ result.status }}</div>
+ </div>
+ <div style="margin-top: 100px">
+ <div v-if="result.img">
+ <div>鍥剧墖锛�</div>
+ <div>
+ <el-image
+ style="width: 100px; height: 100px"
+ :src="result.img"
+ fit="fill">
+ </el-image>
+ </div>
+ </div>
+ <div v-else>
+ <div>鍙栧浘澶辫触</div>
+ </div>
+ </div>
+
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="ping" name="2">
+ <el-form :model="form" :inline="true">
+ <el-form-item label="ip锛�">
+ <el-input v-model="form.ip"/>
+ </el-form-item>
+ <el-form-item>
+ <el-button @click="check" type="primary">妫�娴�</el-button>
+ </el-form-item>
+ </el-form>
+ <div v-if="result.status" v-loading="loading" class="row">
+ <div>妫�娴嬬粨鏋滐細</div>
+ <div>{{ result.status }}</div>
+ </div>
+ </el-tab-pane>
+ </el-tabs>
+ </div>
+</template>
+
+<script>
+import {check} from "@/api/platform/online-util";
+
+export default {
+ name: "index",
+ data() {
+ return {
+ loading: false,
+ active: '1',
+ form: {
+ serialNumber: '',
+ ip: '',
+ type: '1',
+ },
+ result: {
+ status: '',
+ img: '',
+ },
+ }
+ },
+ methods: {
+ changeActive(tab) {
+ this.result = {
+ status: '',
+ img: '',
+ },
+ this.form.type = tab.name
+ if (this.form.type === '1') {
+ this.form.ip = ''
+ }
+ if (this.form.type === '2') {
+ this.form.serialNumber = ''
+ }
+ },
+ check() {
+ if (this.form.type === '1' && !this.form.serialNumber) {
+ this.$message.error("璇峰~鍐欐纭殑鍥芥爣鐮�")
+ return
+ }
+ if (this.form.type === '2' && !this.form.ip) {
+ this.$message.error("璇峰~鍐欐纭殑ip")
+ return
+ }
+ this.form.serialNumber = this.form.serialNumber.replace(/^\s+|\s+$/g, '')
+ this.form.ip = this.form.ip.replace(/^\s+|\s+$/g, '')
+ this.loading = true
+ check(this.form).then(res => {
+ this.result = res.data
+ this.loading = false
+ })
+ }
+ }
+}
+</script>
+
+<style scoped>
+.row {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+}
+.app-container {
+ color: #5b5b5b;
+}
+</style>
--
Gitblit v1.8.0