From 5aa76f36587d58de8997e6a8fc17dde73f8083ca Mon Sep 17 00:00:00 2001
From: qinzhenpen <11463128+qinzhenpen@user.noreply.gitee.com>
Date: Sat, 2 Sep 2023 16:25:26 +0800
Subject: [PATCH] =?UTF-8?q?navber=E9=A1=B9=E7=9B=AE=E5=90=8D=E7=A7=B0?=
 =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E5=AE=8C=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/assets/images/toplgoo.png    | Bin 0 -> 4145 bytes
 src/layout/components/Navbar.vue |  73 +++++++++++++++++++------------
 2 files changed, 44 insertions(+), 29 deletions(-)
 create mode 100644 src/assets/images/toplgoo.png

diff --git a/src/assets/images/toplgoo.png b/src/assets/images/toplgoo.png
new file mode 100644
index 0000000000000000000000000000000000000000..aafb41196a759fd1c75aba00ba893f61b57296e8
GIT binary patch
literal 4145
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

literal 0
HcmV?d00001

diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index 1e62d7d..2674989 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -4,6 +4,10 @@
     <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!settingsStore.topNav" />
     <top-nav id="topmenu-container" class="topmenu-container" v-if="settingsStore.topNav" />
 
+    <div class="navbar-name">
+      <img src="../../assets/images/toplgoo.png" alt="" />
+    </div>
+
     <div class="right-menu">
       <template v-if="appStore.device !== 'mobile'">
         <header-search id="header-search" class="right-menu-item" />
@@ -23,7 +27,11 @@
         </el-tooltip>
       </template>
       <div class="avatar-container">
-        <el-dropdown @command="handleCommand" class="right-menu-item hover-effect" trigger="click">
+        <el-dropdown
+          @command="handleCommand"
+          class="right-menu-item hover-effect"
+          trigger="click"
+        >
           <div class="avatar-wrapper">
             <img :src="userStore.avatar" class="user-avatar" />
             <el-icon><caret-bottom /></el-icon>
@@ -48,25 +56,25 @@
 </template>
 
 <script setup>
-import { ElMessageBox } from 'element-plus'
-import Breadcrumb from '@/components/Breadcrumb'
-import TopNav from '@/components/TopNav'
-import Hamburger from '@/components/Hamburger'
-import Screenfull from '@/components/Screenfull'
-import SizeSelect from '@/components/SizeSelect'
-import HeaderSearch from '@/components/HeaderSearch'
-import RuoYiGit from '@/components/RuoYi/Git'
-import RuoYiDoc from '@/components/RuoYi/Doc'
-import useAppStore from '@/store/modules/app'
-import useUserStore from '@/store/modules/user'
-import useSettingsStore from '@/store/modules/settings'
-
-const appStore = useAppStore()
-const userStore = useUserStore()
-const settingsStore = useSettingsStore()
+import { ElMessageBox } from "element-plus";
+import Breadcrumb from "@/components/Breadcrumb";
+import TopNav from "@/components/TopNav";
+import Hamburger from "@/components/Hamburger";
+import Screenfull from "@/components/Screenfull";
+import SizeSelect from "@/components/SizeSelect";
+import HeaderSearch from "@/components/HeaderSearch";
+import RuoYiGit from "@/components/RuoYi/Git";
+import RuoYiDoc from "@/components/RuoYi/Doc";
+import useAppStore from "@/store/modules/app";
+import useUserStore from "@/store/modules/user";
+import useSettingsStore from "@/store/modules/settings";
+
+const appStore = useAppStore();
+const userStore = useUserStore();
+const settingsStore = useSettingsStore();
 
 function toggleSideBar() {
-  appStore.toggleSideBar()
+  appStore.toggleSideBar();
 }
 
 function handleCommand(command) {
@@ -83,24 +91,26 @@ function handleCommand(command) {
 }
 
 function logout() {
-  ElMessageBox.confirm('确定注销并退出系统吗?', '提示', {
-    confirmButtonText: '确定',
-    cancelButtonText: '取消',
-    type: 'warning'
-  }).then(() => {
-    userStore.logOut().then(() => {
-      location.href = '/index';
+  ElMessageBox.confirm("确定注销并退出系统吗?", "提示", {
+    confirmButtonText: "确定",
+    cancelButtonText: "取消",
+    type: "warning",
+  })
+    .then(() => {
+      userStore.logOut().then(() => {
+        location.href = "/index";
+      });
     })
-  }).catch(() => { });
+    .catch(() => {});
 }
 
-const emits = defineEmits(['setLayout'])
+const emits = defineEmits(["setLayout"]);
 function setLayout() {
-  emits('setLayout');
+  emits("setLayout");
 }
 </script>
 
-<style lang='scss' scoped>
+<style lang="scss" scoped>
 .navbar {
   height: 50px;
   overflow: hidden;
@@ -112,6 +122,11 @@ function setLayout() {
   width: 100%;
   height: 50px;
   z-index: 1000;
+  .navbar-name {
+    display: inline-block;
+    line-height: 60px;
+    padding-left: 42px;
+  }
   .hamburger-container {
     line-height: 46px;
     height: 100%;