From 9041d0a62f0d42d00d7baf9a879990d3a1224180 Mon Sep 17 00:00:00 2001 From: JINGYJ <1458671527@qq.com> Date: Mon, 15 Jan 2024 17:08:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=9C=8D=E5=8A=A1=E5=99=A8=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/svg/server/server.svg | 9 ++ src/router/modules/server.ts | 12 ++ src/views/device/components/DeviceCard.vue | 1 + .../serverModule/components/ServerCard.vue | 106 ++++++++++++++++ src/views/serverModule/index.vue | 119 ++++++++++++++++++ 5 files changed, 247 insertions(+) create mode 100644 src/assets/svg/server/server.svg create mode 100644 src/router/modules/server.ts create mode 100644 src/views/serverModule/components/ServerCard.vue create mode 100644 src/views/serverModule/index.vue diff --git a/src/assets/svg/server/server.svg b/src/assets/svg/server/server.svg new file mode 100644 index 0000000..ecb67c7 --- /dev/null +++ b/src/assets/svg/server/server.svg @@ -0,0 +1,9 @@ +<svg width="80" height="80" viewBox="0 0 80 80" fill="none" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<rect width="80" height="80" fill="url(#pattern0)"/> +<defs> +<pattern id="pattern0" patternContentUnits="objectBoundingBox" width="1" height="1"> +<use xlink:href="#image0_7013_105222" transform="scale(0.0025)"/> +</pattern> +<image id="image0_7013_105222" width="400" height="400" xlink:href="data:image/png;base64,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i4gAESACRIAKhDJABIgAESACRghQgRjBxouIABEgAkSACoQyQASIABEgAkYIUIEYwcaLiAARIAJEgAqEMkAEiAARIAJGCFCBGMHGi4gAESACRIAKhDJABIgAESACRghQgRjBxouIABEgAkSACoQyQASIABEgAkYIUIEYwcaLiAARIAJEgAqEMkAEiAARIAJGCFCBGMHGi4gAESACRIAKhDJABIgAESACRghQgRjBxouIABEgAkSACoQyQASIABEgAkYIUIEYwcaLiAARIAJEgAqEMkAEiAARIAJGCFCBGMHGi4gAESACRIAKhDJABIgAESACRghQgRjBxouIABEgAkSACoQyQASIABEgAkYIUIEYwcaLiAARIAJEgAqEMkAEiAARIAJGCFCBGMHGi4gAESACRIAKhDJABIgAESACRghQgRjBxouIABEgAkSACoQyQASIABEgAkYIUIEYwcaLiAARIAJEgAqEMkAEiAARIAJGCFCBGMHGi4gAESACRIAKhDJABIgAESACRghQgRjBxouIABEgAkSACoQyQASIABEgAkYIUIEYwcaLiAARIAJEgAqEMkAEiAARIAJGCPw/hPFwAeoRgWoAAAAASUVORK5CYII="/> +</defs> +</svg> diff --git a/src/router/modules/server.ts b/src/router/modules/server.ts new file mode 100644 index 0000000..7d04804 --- /dev/null +++ b/src/router/modules/server.ts @@ -0,0 +1,12 @@ +export default { + path: "/server", + meta: { + title: "服务器", + icon: "homeFilled", + // showLink: false, + rank: 3, + roles: ["admin", "common"] + }, + component: () => import("@/views/serverModule/index.vue"), + name: "ServerList" +} as RouteConfigsTable; diff --git a/src/views/device/components/DeviceCard.vue b/src/views/device/components/DeviceCard.vue index 74791d0..3fb0d57 100644 --- a/src/views/device/components/DeviceCard.vue +++ b/src/views/device/components/DeviceCard.vue @@ -79,6 +79,7 @@ const isEnabledClass = computed(() => [ // background-color: skyblue; border: 1.5px solid #52c41a; border-radius: 8px; + box-shadow: 0 8px 16px 0 rgb(0 0 0 / 10%); &_fault { border: 1.5px solid #e80d0d; diff --git a/src/views/serverModule/components/ServerCard.vue b/src/views/serverModule/components/ServerCard.vue new file mode 100644 index 0000000..1e82990 --- /dev/null +++ b/src/views/serverModule/components/ServerCard.vue @@ -0,0 +1,106 @@ +<script setup lang="ts"> +import { computed, PropType } from "vue"; +import serverIcon from "@/assets/svg/server/server.svg?component"; +defineOptions({ + name: "DeviceCard" +}); + +interface CardProductType { + isEnabled: boolean; + state: string; + description: string; + deviceSort: string; +} + +const props = defineProps({ + device: { + type: Object as PropType<CardProductType> + } +}); + +const cardClass = computed(() => [ + "server-card", + { "server-card_offline": props.device?.state === "离线" } +]); + +const stateClass = computed(() => [ + "server-state", + { "server-state_offline": props.device?.state === "离线" } +]); +</script> + +<template> + <div :class="cardClass"> + <div class="server-header"> + <div class="server-name">{{ device?.deviceSort }}</div> + <div :class="stateClass">{{ device?.state }}</div> + </div> + <div class="server-content"> + <div class="server-content-left"> + <serverIcon /> + </div> + <div class="server-content-right">进度条</div> + </div> + </div> +</template> + +<style lang="scss" scoped> +.server-card { + box-sizing: border-box; + height: 182px; + // background-color: skyblue; + // border: 1.5px solid #52c41a + border-radius: 12px; + box-shadow: 0 8px 16px 0 rgb(0 0 0 / 10%); + + &_offline { + background-color: #f5f5f5; + // border: 1.5px solid #dcdcdc; + } + + .server-header { + position: relative; + display: flex; + align-items: center; + justify-content: flex-start; + width: 100%; + height: 54px; + padding: 16px; + border-bottom: 1px solid #e0e0e0; + + .server-state { + position: absolute; + top: 0; + right: 0; + width: 48px; + height: 24px; + color: #fff; + text-align: center; + background-color: #52c41a; + border-radius: 0 12px; + + &_offline { + background-color: #dcdcdc; + } + } + } + + .server-content { + box-sizing: border-box; + display: flex; + align-items: center; + justify-content: space-between; + width: 100%; + height: 128px; + padding: 16px; + + .server-content-left { + width: 80px; + } + + .server-content-right { + flex: 1; + } + } +} +</style> diff --git a/src/views/serverModule/index.vue b/src/views/serverModule/index.vue new file mode 100644 index 0000000..9f00e0c --- /dev/null +++ b/src/views/serverModule/index.vue @@ -0,0 +1,119 @@ +<script setup lang="ts"> +import ServerCard from "./components/ServerCard.vue"; +import { getCardList } from "@/api/list"; +import { onMounted, ref } from "vue"; +defineOptions({ + name: "ServerList" +}); + +const svg = ` + <path class="path" d=" + M 30 15 + L 28 17 + M 25.61 25.61 + A 15 15, 0, 0, 1, 15 30 + A 15 15, 0, 1, 1, 27.99 7.5 + L 15 15 + " style="stroke-width: 4px; fill: rgba(0, 0, 0, 0)"/> + `; + +const pagination = ref({ current: 1, pageSize: 12, total: 0 }); + +const deviceList = ref([]); + +const searchValue = ref(""); +const dataLoading = ref(true); +// const onSubmit = () => { +// console.log("submit!"); +// }; +const onPageSizeChange = (size: number) => { + pagination.value.pageSize = size; + pagination.value.current = 1; +}; +const onCurrentChange = (current: number) => { + pagination.value.current = current; +}; +const getCardListData = async () => { + try { + const { data } = await getCardList(); + deviceList.value = data.list; + console.log(data.list); + pagination.value = { + ...pagination.value, + total: data.list.length + }; + } catch (e) { + console.log(e); + } finally { + setTimeout(() => { + dataLoading.value = false; + }, 500); + } +}; +onMounted(() => { + getCardListData(); +}); +</script> + +<template> + <div class="main p-4"> + <div class="mt-4 mb-5"> + <el-button> {{ `全部状态(${90})` }} </el-button> + <el-button> {{ `在线(${80})` }}</el-button> + <el-button>{{ `离线(${10})` }}</el-button> + </div> + <div + v-loading="dataLoading" + :element-loading-svg="svg" + element-loading-svg-view-box="-10, -10, 50, 50" + > + <el-empty + v-show=" + deviceList + .slice( + pagination.pageSize * (pagination.current - 1), + pagination.pageSize * pagination.current + ) + .filter(v => + v.deviceSort.toLowerCase().includes(searchValue.toLowerCase()) + ).length === 0 + " + :description="`${searchValue} 产品不存在`" + /> + <template v-if="pagination.total > 0"> + <el-row :gutter="16"> + <el-col + class="mb-4 w-[100%]" + v-for="(device, index) in deviceList + .slice( + pagination.pageSize * (pagination.current - 1), + pagination.pageSize * pagination.current + ) + .filter(v => + v.deviceSort.toLowerCase().includes(searchValue.toLowerCase()) + )" + :key="index" + :xs="6" + :sm="6" + :md="6" + :lg="6" + :xl="4" + > + <ServerCard :device="device" /> + </el-col> + </el-row> + <el-pagination + v-model:currentPage="pagination.current" + class="float-right" + :page-size="pagination.pageSize" + :total="pagination.total" + :page-sizes="[12, 24, 36]" + :background="false" + layout="total, sizes, prev, pager, next, jumper" + @size-change="onPageSizeChange" + @current-change="onCurrentChange" + /> + </template> + </div> + </div> +</template>