741 lines
36 KiB
JavaScript
741 lines
36 KiB
JavaScript
import { V as ElCol, T as ElCard, U as ElRow, l as ElTooltip, aY as ElProgress, a3 as ElDescriptions, a4 as ElDescriptionsItem, i as ElIcon, al as ElTable, am as ElTableColumn, u as ElEmpty } from "./element-plus.CkEW9frc.js";
|
|
import { l as httpRequest } from "./index.CMd5bD1r.js";
|
|
import { J as defineComponent, t as onMounted, aO as resolveComponent, S as openBlock, _ as createElementBlock, $ as createVNode, a0 as withCtx, o as unref, a1 as createBaseVNode, a9 as createTextVNode, aa as toDisplayString, r as ref } from "./.pnpm.BW3P1y8f.js";
|
|
import "./codemirror.CvJAcn2d.js";
|
|
const API_PATH = "/monitor/server";
|
|
const ServerAPI = {
|
|
// 获取服务信息
|
|
getServer() {
|
|
return httpRequest({
|
|
url: `${API_PATH}/info`,
|
|
method: "get"
|
|
});
|
|
}
|
|
};
|
|
const _hoisted_1 = { class: "app-container" };
|
|
const _hoisted_2 = { class: "flex items-center gap-2" };
|
|
const _hoisted_3 = { class: "text-center mb-4" };
|
|
const _hoisted_4 = { class: "text-center mb-4" };
|
|
const _hoisted_5 = { class: "flex items-center gap-2" };
|
|
const _hoisted_6 = { class: "text-center mb-4" };
|
|
const _hoisted_7 = { class: "text-center mb-4" };
|
|
const _hoisted_8 = { class: "flex items-center gap-2" };
|
|
const _hoisted_9 = { class: "flex items-center gap-2" };
|
|
const _hoisted_10 = { class: "flex items-center gap-2" };
|
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
__name: "index",
|
|
setup(__props) {
|
|
const loading = ref(false);
|
|
const server = ref({
|
|
cpu: {
|
|
cpu_num: 0,
|
|
used: 0,
|
|
sys: 0,
|
|
free: 0
|
|
},
|
|
mem: {
|
|
total: "",
|
|
used: "",
|
|
free: "",
|
|
usage: 0
|
|
},
|
|
sys: {
|
|
computer_name: "",
|
|
os_name: "",
|
|
computer_ip: "",
|
|
os_arch: "",
|
|
user_dir: ""
|
|
},
|
|
py: {
|
|
name: "",
|
|
version: "",
|
|
start_time: "",
|
|
run_time: "",
|
|
home: "",
|
|
memory_total: "",
|
|
memory_used: "",
|
|
memory_free: "",
|
|
memory_usage: 0
|
|
},
|
|
disks: []
|
|
});
|
|
async function getList() {
|
|
loading.value = true;
|
|
try {
|
|
const response = await ServerAPI.getServer();
|
|
server.value = response.data.data;
|
|
} catch (error) {
|
|
console.error("获取服务器信息失败:", error);
|
|
} finally {
|
|
loading.value = false;
|
|
}
|
|
}
|
|
onMounted(() => {
|
|
getList();
|
|
});
|
|
return (_ctx, _cache) => {
|
|
const _component_Cpu = resolveComponent("Cpu");
|
|
const _component_el_icon = ElIcon;
|
|
const _component_QuestionFilled = resolveComponent("QuestionFilled");
|
|
const _component_el_tooltip = ElTooltip;
|
|
const _component_el_progress = ElProgress;
|
|
const _component_el_descriptions_item = ElDescriptionsItem;
|
|
const _component_el_descriptions = ElDescriptions;
|
|
const _component_el_card = ElCard;
|
|
const _component_el_col = ElCol;
|
|
const _component_el_row = ElRow;
|
|
const _component_Memo = resolveComponent("Memo");
|
|
const _component_Monitor = resolveComponent("Monitor");
|
|
const _component_Dish = resolveComponent("Dish");
|
|
const _component_Files = resolveComponent("Files");
|
|
const _component_el_empty = ElEmpty;
|
|
const _component_el_table_column = ElTableColumn;
|
|
const _component_el_table = ElTable;
|
|
return openBlock(), createElementBlock("div", _hoisted_1, [
|
|
createVNode(_component_el_row, { gutter: 16 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_col, {
|
|
span: 12,
|
|
class: "mb-4"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, {
|
|
loading: unref(loading),
|
|
shadow: "hover"
|
|
}, {
|
|
header: withCtx(() => [
|
|
createBaseVNode("div", _hoisted_2, [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_Cpu)
|
|
]),
|
|
_: 1
|
|
}),
|
|
_cache[0] || (_cache[0] = createBaseVNode("span", { class: "flex items-center gap-2" }, "CPU使用情况", -1)),
|
|
createVNode(_component_el_tooltip, { content: "展示CPU核心数及使用率" }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_QuestionFilled)
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
])
|
|
]),
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_row, { gutter: 16 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_col, { span: 12 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, { shadow: "hover" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
_cache[1] || (_cache[1] = createBaseVNode("span", null, "核心数", -1)),
|
|
createVNode(_component_el_tooltip, {
|
|
content: (((_a = unref(server).cpu) == null ? void 0 : _a.cpu_num) || 0).toFixed(1)
|
|
}, {
|
|
default: withCtx(() => [
|
|
createBaseVNode("div", _hoisted_3, [
|
|
createVNode(_component_el_progress, {
|
|
type: "circle",
|
|
percentage: 100,
|
|
format: () => {
|
|
var _a2;
|
|
return `${((_a2 = unref(server).cpu) == null ? void 0 : _a2.cpu_num) || 0}`;
|
|
}
|
|
}, null, 8, ["format"])
|
|
])
|
|
]),
|
|
_: 1
|
|
}, 8, ["content"]),
|
|
createVNode(_component_el_descriptions, {
|
|
column: 1,
|
|
border: ""
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions_item, { label: "总核心数" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a2 = unref(server).cpu) == null ? void 0 : _a2.cpu_num) || 0), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "已用核心" }, {
|
|
default: withCtx(() => {
|
|
var _a2, _b;
|
|
return [
|
|
createTextVNode(toDisplayString(Math.floor((((_a2 = unref(server).cpu) == null ? void 0 : _a2.used) || 0) * ((_b = unref(server).cpu) == null ? void 0 : _b.cpu_num) / 100)), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "空闲核心" }, {
|
|
default: withCtx(() => {
|
|
var _a2, _b;
|
|
return [
|
|
createTextVNode(toDisplayString(Math.floor((((_a2 = unref(server).cpu) == null ? void 0 : _a2.free) || 0) * ((_b = unref(server).cpu) == null ? void 0 : _b.cpu_num) / 100)), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_col, { span: 12 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, {
|
|
shadow: "hover",
|
|
class: "h-full"
|
|
}, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
_cache[2] || (_cache[2] = createBaseVNode("span", null, "使用率", -1)),
|
|
createVNode(_component_el_tooltip, {
|
|
content: (((_a = unref(server).cpu) == null ? void 0 : _a.used) || 0).toFixed(1) + "%"
|
|
}, {
|
|
default: withCtx(() => {
|
|
var _a2, _b, _c;
|
|
return [
|
|
createBaseVNode("div", _hoisted_4, [
|
|
createVNode(_component_el_progress, {
|
|
type: "circle",
|
|
percentage: ((_a2 = unref(server).cpu) == null ? void 0 : _a2.used) || 0,
|
|
status: ((_b = unref(server).cpu) == null ? void 0 : _b.used) > 80 ? "exception" : ((_c = unref(server).cpu) == null ? void 0 : _c.used) > 60 ? "warning" : "success"
|
|
}, null, 8, ["percentage", "status"])
|
|
])
|
|
];
|
|
}),
|
|
_: 1
|
|
}, 8, ["content"]),
|
|
createVNode(_component_el_descriptions, {
|
|
column: 1,
|
|
border: ""
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions_item, { label: "用户使用率" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((((_a2 = unref(server).cpu) == null ? void 0 : _a2.used) || 0).toFixed(1) + "%"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "系统使用率" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((((_a2 = unref(server).cpu) == null ? void 0 : _a2.sys) || 0).toFixed(1) + "%"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "当前空闲率" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((((_a2 = unref(server).cpu) == null ? void 0 : _a2.free) || 0).toFixed(1) + "%"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
}, 8, ["loading"])
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_col, {
|
|
span: 12,
|
|
class: "mb-4"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, {
|
|
loading: unref(loading),
|
|
shadow: "hover"
|
|
}, {
|
|
header: withCtx(() => [
|
|
createBaseVNode("div", _hoisted_5, [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_Memo)
|
|
]),
|
|
_: 1
|
|
}),
|
|
_cache[3] || (_cache[3] = createBaseVNode("span", null, "内存使用情况", -1)),
|
|
createVNode(_component_el_tooltip, { content: "展示系统内存和Python程序内存使用情况" }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_QuestionFilled)
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
])
|
|
]),
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_row, { gutter: 16 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_col, { span: 12 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, {
|
|
shadow: "hover",
|
|
class: "h-full"
|
|
}, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
_cache[4] || (_cache[4] = createBaseVNode("span", null, "系统内存", -1)),
|
|
createVNode(_component_el_tooltip, {
|
|
content: (((_a = unref(server).mem) == null ? void 0 : _a.usage) || 0).toFixed(1) + "%"
|
|
}, {
|
|
default: withCtx(() => {
|
|
var _a2, _b, _c;
|
|
return [
|
|
createBaseVNode("div", _hoisted_6, [
|
|
createVNode(_component_el_progress, {
|
|
type: "circle",
|
|
percentage: ((_a2 = unref(server).mem) == null ? void 0 : _a2.usage) || 0,
|
|
status: ((_b = unref(server).mem) == null ? void 0 : _b.usage) > 80 ? "exception" : ((_c = unref(server).mem) == null ? void 0 : _c.usage) > 60 ? "warning" : "success"
|
|
}, null, 8, ["percentage", "status"])
|
|
])
|
|
];
|
|
}),
|
|
_: 1
|
|
}, 8, ["content"]),
|
|
createVNode(_component_el_descriptions, {
|
|
column: 1,
|
|
border: ""
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions_item, { label: "总内存" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((_a2 = unref(server).mem) == null ? void 0 : _a2.total), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "已用内存" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((_a2 = unref(server).mem) == null ? void 0 : _a2.used), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "空闲内存" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((_a2 = unref(server).mem) == null ? void 0 : _a2.free), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_col, { span: 12 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, {
|
|
shadow: "hover",
|
|
class: "h-full"
|
|
}, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
_cache[5] || (_cache[5] = createBaseVNode("span", null, "Python内存", -1)),
|
|
createVNode(_component_el_tooltip, {
|
|
content: (((_a = unref(server).py) == null ? void 0 : _a.memory_usage) || 0).toFixed(1) + "%"
|
|
}, {
|
|
default: withCtx(() => {
|
|
var _a2, _b, _c;
|
|
return [
|
|
createBaseVNode("div", _hoisted_7, [
|
|
createVNode(_component_el_progress, {
|
|
type: "circle",
|
|
percentage: ((_a2 = unref(server).py) == null ? void 0 : _a2.memory_usage) || 0,
|
|
status: ((_b = unref(server).py) == null ? void 0 : _b.memory_usage) > 80 ? "exception" : ((_c = unref(server).py) == null ? void 0 : _c.memory_usage) > 60 ? "warning" : "success"
|
|
}, null, 8, ["percentage", "status"])
|
|
])
|
|
];
|
|
}),
|
|
_: 1
|
|
}, 8, ["content"]),
|
|
createVNode(_component_el_descriptions, {
|
|
column: 1,
|
|
border: ""
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions_item, { label: "总内存" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((_a2 = unref(server).py) == null ? void 0 : _a2.memory_total), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "已用内存" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((_a2 = unref(server).py) == null ? void 0 : _a2.memory_used), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "空闲内存" }, {
|
|
default: withCtx(() => {
|
|
var _a2;
|
|
return [
|
|
createTextVNode(toDisplayString((_a2 = unref(server).py) == null ? void 0 : _a2.memory_free), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
}, 8, ["loading"])
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_col, {
|
|
span: 24,
|
|
class: "mb-4"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, { loading: unref(loading) }, {
|
|
header: withCtx(() => [
|
|
createBaseVNode("div", _hoisted_8, [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_Monitor)
|
|
]),
|
|
_: 1
|
|
}),
|
|
_cache[6] || (_cache[6] = createBaseVNode("span", { class: "font-medium" }, "服务器基本信息", -1)),
|
|
createVNode(_component_el_tooltip, { content: "展示服务器基本配置信息" }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_QuestionFilled)
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
])
|
|
]),
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions, {
|
|
column: 2,
|
|
border: ""
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions_item, { label: "服务器名称" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).sys) == null ? void 0 : _a.computer_name) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "操作系统" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).sys) == null ? void 0 : _a.os_name) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "服务器IP" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).sys) == null ? void 0 : _a.computer_ip) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "系统架构" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).sys) == null ? void 0 : _a.os_arch) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
}, 8, ["loading"])
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_col, {
|
|
span: 24,
|
|
class: "mb-4"
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, {
|
|
loading: unref(loading),
|
|
class: "shadow-sm"
|
|
}, {
|
|
header: withCtx(() => [
|
|
createBaseVNode("div", _hoisted_9, [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_Dish)
|
|
]),
|
|
_: 1
|
|
}),
|
|
_cache[7] || (_cache[7] = createBaseVNode("span", { class: "font-medium" }, "Python运行环境", -1)),
|
|
createVNode(_component_el_tooltip, { content: "展示Python环境配置及运行状态" }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_QuestionFilled)
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
])
|
|
]),
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions, {
|
|
column: 3,
|
|
border: ""
|
|
}, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_descriptions_item, { label: "Python名称" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).py) == null ? void 0 : _a.name) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "Python版本" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).py) == null ? void 0 : _a.version) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "启动时间" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).py) == null ? void 0 : _a.start_time) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "运行时长" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).py) == null ? void 0 : _a.run_time) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "安装路径" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).py) == null ? void 0 : _a.home) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_descriptions_item, { label: "项目路径" }, {
|
|
default: withCtx(() => {
|
|
var _a;
|
|
return [
|
|
createTextVNode(toDisplayString(((_a = unref(server).sys) == null ? void 0 : _a.user_dir) || "-"), 1)
|
|
];
|
|
}),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
}, 8, ["loading"])
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_col, { span: 24 }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_card, { loading: unref(loading) }, {
|
|
header: withCtx(() => [
|
|
createBaseVNode("div", _hoisted_10, [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_Files)
|
|
]),
|
|
_: 1
|
|
}),
|
|
_cache[8] || (_cache[8] = createBaseVNode("span", { class: "font-medium" }, "磁盘使用情况", -1)),
|
|
createVNode(_component_el_tooltip, { content: "展示磁盘空间使用详情" }, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_icon, null, {
|
|
default: withCtx(() => [
|
|
createVNode(_component_QuestionFilled)
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
])
|
|
]),
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_table, {
|
|
data: unref(server).disks,
|
|
border: ""
|
|
}, {
|
|
empty: withCtx(() => [
|
|
createVNode(_component_el_empty, {
|
|
"image-size": 80,
|
|
description: "暂无数据"
|
|
})
|
|
]),
|
|
default: withCtx(() => [
|
|
createVNode(_component_el_table_column, {
|
|
label: "盘符路径",
|
|
prop: "dir_name",
|
|
"show-overflow-tooltip": true
|
|
}),
|
|
createVNode(_component_el_table_column, {
|
|
label: "文件系统",
|
|
prop: "sys_type_name",
|
|
align: "center",
|
|
width: "100"
|
|
}),
|
|
createVNode(_component_el_table_column, {
|
|
label: "盘符名称",
|
|
prop: "type_name"
|
|
}),
|
|
createVNode(_component_el_table_column, {
|
|
prop: "usage",
|
|
label: "使用率",
|
|
align: "center"
|
|
}, {
|
|
default: withCtx(({ row }) => [
|
|
createBaseVNode("div", null, [
|
|
createVNode(_component_el_progress, {
|
|
percentage: Number(row.usage),
|
|
status: row.usage > 80 ? "exception" : row.usage > 60 ? "warning" : "success",
|
|
"text-inside": true,
|
|
"stroke-width": 16
|
|
}, null, 8, ["percentage", "status"])
|
|
])
|
|
]),
|
|
_: 1
|
|
}),
|
|
createVNode(_component_el_table_column, {
|
|
label: "总大小",
|
|
prop: "total",
|
|
align: "center",
|
|
width: "100"
|
|
}),
|
|
createVNode(_component_el_table_column, {
|
|
label: "可用大小",
|
|
prop: "free",
|
|
align: "center",
|
|
width: "100"
|
|
}),
|
|
createVNode(_component_el_table_column, {
|
|
label: "已用大小",
|
|
prop: "used",
|
|
align: "center",
|
|
width: "100"
|
|
})
|
|
]),
|
|
_: 1
|
|
}, 8, ["data"])
|
|
]),
|
|
_: 1
|
|
}, 8, ["loading"])
|
|
]),
|
|
_: 1
|
|
})
|
|
]),
|
|
_: 1
|
|
})
|
|
]);
|
|
};
|
|
}
|
|
});
|
|
export {
|
|
_sfc_main as default
|
|
};
|