Răsfoiți Sursa

优化:删除登录页等获取设置接口将信息存取至缓存的代码,优化为直接从store中存取,更改菜单logo和头部医院名称从缓存获取的方式

liyanyan 1 săptămână în urmă
părinte
comite
7d791a2112

+ 8 - 9
src/layout/components/Navbar.vue

@@ -2,7 +2,7 @@
   <div class="navbar">
     <hamburger :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />
     <!-- <div class="hospital">滨州医学院烟台附属医院</div> -->
-    <div class="hospital">{{ web_name }}</div>
+    <div class="hospital">{{ systemSetting.web_name }}</div>
     <div class="right-menu">
       <el-dropdown class="avatar-container" trigger="click">
         <div class="avatar-wrapper">
@@ -25,7 +25,8 @@
 
 <script>
 import { getToken, setToken, removeToken } from '@/utils/auth';
-import { mapGetters } from 'vuex';
+import { mapGetters, mapState } from 'vuex';
+
 import Breadcrumb from '@/components/Breadcrumb';
 import Hamburger from '@/components/Hamburger';
 
@@ -35,20 +36,18 @@ export default {
     Hamburger,
   },
   data() {
-    return {
-      web_name: ''
-    }
+    return {}
   },
   computed: {
+    ...mapState({
+      systemSetting: (state) => state.app.systemSetting
+    }),
     ...mapGetters(['sidebar', 'avatar']),
     name() {
       return localStorage.getItem('realname')
     }
   },
-  created() {
-    const setting = JSON.parse(localStorage.getItem('settingMsg'))
-    this.web_name = setting.web_name
-  },
+  created() {},
   methods: {
     toggleSideBar() {
       this.$store.dispatch('app/toggleSideBar');

+ 10 - 9
src/layout/components/Sidebar/Logo.vue

@@ -2,11 +2,11 @@
   <div class="sidebar-logo-container" :class="{ collapse: collapse }">
     <transition name="sidebarLogoFade">
       <router-link v-if="collapse" key="collapse" class="sidebar-logo-link" to="/">
-        <img v-if="logoCollapse" :src="logoCollapse" class="sidebar-logo" />
+        <img v-if="systemSetting.menu_logo" :src="systemSetting.menu_logo" class="sidebar-logo" />
         <h1 v-else class="sidebar-title">{{ title }}</h1>
       </router-link>
       <router-link v-else key="expand" class="sidebar-logo-link" to="/">
-        <img v-if="logoExpand" :src="logoExpand" class="sidebar-logo5" />
+        <img v-if="systemSetting.menu_logo" :src="systemSetting.menu_logo" class="sidebar-logo5" />
         <h1 class="sidebar-title">{{ title }}</h1>
       </router-link>
     </transition>
@@ -14,6 +14,8 @@
 </template>
 
 <script>
+import { mapState } from 'vuex';
+
 export default {
   name: 'SidebarLogo',
   props: {
@@ -22,18 +24,17 @@ export default {
       required: true,
     },
   },
+  computed: {
+    ...mapState({
+      systemSetting: (state) => state.app.systemSetting
+    }),
+  },
   data() {
     return {
       title: '',
-      logoCollapse: require('../../../assets/images/logo5.png'),
-      logoExpand: require('../../../assets/images/logo5.png')
     };
   },
-  created() {
-    const setting = JSON.parse(localStorage.getItem('settingMsg'))
-    this.logoCollapse = setting.menu_logo
-    this.logoExpand = setting.menu_logo
-  },
+  created() {},
 };
 </script>
 

+ 0 - 16
src/views/caseAnalysis/login.vue

@@ -124,24 +124,8 @@
         // this.preUrl = !!this.$route.query.preUrl ? this.$route.query.preUrl : sessionStorage.getItem('preUrl')
         this.preUrl = !!this.$route.query.preUrl ? this.$route.query.preUrl : undefined
       })
-      this.getSetting();
     },
     methods: {
-      getSetting() {
-        //暂时没接口
-        // this.$axios.get('/get_setting').then(res => {
-        //   const { web_name, background_img, logo, menu_logo } = res.data
-        //   const settingMsg = {
-        //     login_bg: background_img.content,
-        //     login_logo: logo.content,
-        //     menu_logo: menu_logo.content,
-        //     web_name: web_name.content
-        //   }
-        //   localStorage.setItem('settingMsg', JSON.stringify(settingMsg))
-        //   this.login_logo = settingMsg.login_logo
-        //   this.login_bg = settingMsg.login_bg
-        // });
-      },
       showPwd() {
         if (this.passwordType === 'password') {
           this.passwordType = '';

+ 0 - 15
src/views/login/index.vue

@@ -118,23 +118,8 @@ export default {
       // this.preUrl = !!this.$route.query.preUrl ? this.$route.query.preUrl : sessionStorage.getItem('preUrl')
       this.preUrl = !!this.$route.query.preUrl ? this.$route.query.preUrl : undefined
     })
-    this.getSetting()
   },
   methods: {
-    getSetting() {
-      this.$axios.get('/get_setting').then(res => {
-        const { web_name, background_img, logo, menu_logo } = res.data
-        const settingMsg = {
-          login_bg: background_img.content,
-          login_logo: logo.content,
-          menu_logo: menu_logo.content,
-          web_name: web_name.content
-        }
-        localStorage.setItem('settingMsg', JSON.stringify(settingMsg))
-        this.login_logo = settingMsg.login_logo
-        this.login_bg = settingMsg.login_bg
-      });
-    },
     showPwd() {
       if (this.passwordType === 'password') {
         this.passwordType = '';