mo 5 gadi atpakaļ
vecāks
revīzija
9c5e1be45b

+ 2 - 2
src/api/user.js

@@ -12,7 +12,7 @@ export function login (data) {
 
 export function getInfo () {
   return request({
-    url: '/api-auth/api/queryUserInfo',
+    url: '/api-web/employee/queryUserInfo',
     method: 'get'
   })
 }
@@ -35,7 +35,7 @@ export function getIndex (data) {
 }
 
 // 刷新token
-export function getRefreshToken(data) {
+export function getRefreshToken (data) {
   return request({
     url: '/api-auth/refreshToken',
     method: 'post',

+ 19 - 6
src/layout/components/AppMain.vue

@@ -1,24 +1,37 @@
 <template>
   <section class="app-main">
-    <!-- mode="out-in"  -->
-    <transition name="fade-transform">
-      <!--  -->
-      <keep-alive :include="cachedViews">
+    <!--   -->
+    <transition name="fade-transform"
+                v-if="keep == '0'"
+                mode="out-in">
+      <keep-alive>
         <router-view :key="key" />
       </keep-alive>
     </transition>
+    <transition v-else
+                name="fade-transform"
+                mode="out-in">
+      <router-view :key="key"
+                   :include="cachedViews" />
+    </transition>
   </section>
 </template>
 
 <script>
 export default {
   name: 'AppMain',
+  activated () {
+    console.log(this.$route)
+  },
   computed: {
     key () {
       return this.$route.path
     },
     cachedViews () {
       return this.$store.state.tagsView.cachedViews
+    },
+    keep () {
+      return this.$route.meta.noCache
     }
   }
 }
@@ -29,14 +42,14 @@ export default {
   /*50 = navbar  */
   /* height: calc(100vh - 80px); */
   /* height: 100vh; */
-  padding-top: 60px;
+  padding-top: 80px;
   /* min-width: 1440px; */
   position: relative;
   /* overflow: auto; */
   box-sizing: border-box;
 }
 .fixed-header + .app-main {
-  padding-top: 60px;
+  padding-top: 80px;
 }
 </style>
 

+ 11 - 9
src/layout/components/TagsView.vue

@@ -5,12 +5,13 @@
       <router-link ref='tag'
                    class="tags-view-item"
                    :class="isActive(tag)?'active':''"
-                   v-for="tag in Array.from(visitedViews)"
-                   :to="tag.path"
-                   :key="tag.path"
+                   v-for="(tag,index) in Array.from(visitedViews)"
+                   :to="{path:tag.path,query:tag.query}"
+                   :key="index"
                    @contextmenu.prevent.native="openMenu(tag,$event)">
         {{generateTitle(tag.title)}}
         <span class='el-icon-close'
+              v-if="index == Array.from(visitedViews).length -1"
               @click.prevent.stop='closeSelectedTag(tag)'></span>
       </router-link>
     </scroll-pane>
@@ -59,26 +60,27 @@ export default {
   },
   mounted () {
     this.addViewTags()
-
   },
   methods: {
     // generateTitle by vue-i18n  
     generateTitle,
     generateRoute () {
-      console.log(this.$route)
-      if (this.$route.path) {
+
+      if (this.$route.path && this.$route.path != '/') {
         return this.$route
       }
       return false
     },
+    // || route.name === this.$route.name
     isActive (route) {
-      return route.path === this.$route.path || route.name === this.$route.name
+      return route.path === this.$route.path
     },
     addViewTags () {
       const route = this.generateRoute()
       if (!route) {
         return false
       }
+      // console.log(this.$route)
       this.$store.dispatch('addVisitedViews', route)
     },
     moveToCurrentTag () {
@@ -153,9 +155,9 @@ export default {
         margin-left: 15px;
       }
       &.active {
-        background-color: #42b983;
+        background-color: #66b1ff;
         color: #fff;
-        border-color: #42b983;
+        border-color: #66b1ff;
         &::before {
           content: "";
           background: #fff;

+ 1 - 0
src/permission.js

@@ -11,6 +11,7 @@ NProgress.configure({ showSpinner: false }) // NProgress Configuration
 const whiteList = ['/login'] // no redirect whitelist
 
 router.beforeEach(async (to, from, next) => {
+  // from.query = to.query
   // start progress bar
   NProgress.start()
 

+ 16 - 13
src/router/index.js

@@ -31,19 +31,19 @@ import Layout from '@/layout'
  * all roles can be accessed
  */
 export const constantRoutes = [
-  {
-    path: '/main',
-    component: Layout,
-    hidden: false,
-    children: [
-      {
-        name: '首页',
-        path: 'main',
-        component: () => import('@/views/main/index'),
-        hidden: false,
-      }
-    ]
-  },
+  // {
+  //   path: '/main',
+  //   component: Layout,
+  //   hidden: false,
+  //   children: [
+  //     {
+  //       name: '首页',
+  //       path: 'main',
+  //       component: () => import('@/views/main/index'),
+  //       hidden: false,
+  //     }
+  //   ]
+  // },
   {
     path: '/timedtask', // 定时任务列表
     component: Layout,
@@ -68,6 +68,9 @@ export const constantRoutes = [
         path: 'setSilder',
         component: () => import('@/views/setSilder/addSilder'),
         hidden: false,
+        meta: {
+          noCache: '1'
+        }
       }
     ]
   },

+ 1 - 1
src/store/modules/permission.js

@@ -62,7 +62,7 @@ function recursionRouter (arr) {
       // }
       arr[i].hid == 0 ? obj.hidden = false : obj.hidden = true
       obj.path = arr[i].path;
-      obj.meta = { 'title': arr[i].name, 'icon': arr[i].icon }
+      obj.meta = { 'title': arr[i].name, 'icon': arr[i].icon, 'noCache': arr[i].keepAlive }
       if (arr[i].sysMenus && arr[i].sysMenus.length > 0) {
         obj.children = recursionRouter(arr[i].sysMenus);
       }

+ 19 - 6
src/store/modules/tagsView.js

@@ -5,12 +5,25 @@ const tagsView = {
   },
   mutations: {
     ADD_VISITED_VIEWS: (state, view) => {
-      if (state.visitedViews.some(v => v.path === view.path)) return
-      state.visitedViews.push({
-        name: view.name,
-        path: view.path,
-        title: view.meta.title || 'no-name'
-      })
+      // console.log(view)
+      if (state.visitedViews.some(v => v.path === view.path)) {
+        state.visitedViews.forEach(v => {
+          if (v.path === view.path) {
+            v.fullPath = view.fullPath
+            if (view.query) {
+              v.query = view.query
+            }
+          }
+        })
+      } else {
+        state.visitedViews.push({
+          name: view.name,
+          path: view.path,
+          fullPath: view.fullPath,
+          query: view.query,
+          title: view.meta.title || 'no-name'
+        })
+      }
       // if (!view.meta.noCache) {
       //   state.cachedViews.push(view.name)
       // }

+ 21 - 4
src/views/categroyManager/vipActiveList.vue

@@ -426,7 +426,11 @@ export default {
       if (obj && obj.onlineSalarySettlement && obj.onlineSalarySettlement.salarySettlementType) {
         switch (obj.onlineSalarySettlement.salarySettlementType) {
           case 'RATIO_DISCOUNT': {
-            return `线上:${obj.onlineSalarySettlement.settlementValue}%`
+            if (obj.onlineSalarySettlement.settlementValue) {
+              return `线上:${obj.onlineSalarySettlement.settlementValue}%`
+            } else {
+              return '-'
+            }
             break
           }
           case 'TEACHER_DEFAULT': {
@@ -434,7 +438,12 @@ export default {
             break
           }
           case 'FIXED_SALARY': {
-            return `线上:${obj.onlineSalarySettlement.settlementValue}/次`
+            if (obj.onlineSalarySettlement.settlementValue) {
+              return `线上:${obj.onlineSalarySettlement.settlementValue}/次`
+            } else {
+              return '-'
+            }
+
             break
           }
         }
@@ -445,7 +454,11 @@ export default {
       if (obj && obj.offlineSalarySettlement && obj.offlineSalarySettlement.salarySettlementType) {
         switch (obj.offlineSalarySettlement.salarySettlementType) {
           case 'RATIO_DISCOUNT': {
-            return '线下:' + obj.offlineSalarySettlement.settlementValue + '%'
+            if (obj.offlineSalarySettlement.settlementValue) {
+              return `线上:${obj.offlineSalarySettlement.settlementValue}%`
+            } else {
+              return '-'
+            }
             break
           }
           case 'TEACHER_DEFAULT': {
@@ -453,7 +466,11 @@ export default {
             break
           }
           case 'FIXED_SALARY': {
-            return '线下:' + obj.offlineSalarySettlement.settlementValue + '/次'
+            if (obj.offlineSalarySettlement.settlementValue) {
+              return `线上:${obj.offlineSalarySettlement.settlementValue}/次`
+            } else {
+              return '-'
+            }
             break
           }
         }

+ 27 - 4
src/views/setSilder/addSilder.vue

@@ -42,6 +42,14 @@
           {{ scope.row.hid == 1 ? '隐藏' : '不隐藏' }}
         </template>
       </el-table-column>
+      <el-table-column width="100px"
+                       label="是否缓存">
+        <template slot-scope="scope">
+          <div>
+            {{ parseInt(scope.row.keepAlive)  == 0 ? '缓存' : '不缓存' }}
+          </div>
+        </template>
+      </el-table-column>
       <el-table-column label="操作">
         <template slot-scope="scope">
           <el-button @click="onOperation('update', scope.row)"
@@ -98,6 +106,15 @@
                        :value="1"></el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="是否缓存"
+                      :label-width="formLabelWidth">
+          <el-select v-model="form.keepAlive">
+            <el-option label="是"
+                       value="0"></el-option>
+            <el-option label="否"
+                       value="1"></el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="菜单类型"
                       :label-width="formLabelWidth">
           <el-select v-model.number="form.type">
@@ -141,7 +158,8 @@ export default {
         component: null,
         hid: 1,
         type: 1,
-        parentPermission: null
+        parentPermission: null,
+        keepAlive: '0'
       }
     }
   },
@@ -163,6 +181,7 @@ export default {
       }
      */
     onOperation (type, row) {
+      console.log(row)
       this.branchStatus = true
       this.operationType = type
       if (type == 'update') {
@@ -176,7 +195,8 @@ export default {
           id: row.id,
           hid: row.hid,
           type: Number(row.type),
-          parentPermission: row.parentPermission
+          parentPermission: row.parentPermission,
+          keepAlive: row.keepAlive
         }
       }
     },
@@ -192,7 +212,8 @@ export default {
           parentId: form.parentId,
           hid: form.hid,
           type: form.type,
-          parentPermission: form.parentPermission
+          parentPermission: form.parentPermission,
+          keepAlive: form.keepAlive
         }).then(res => {
           if (res.code == 200) {
             this.$message.success('添加成功')
@@ -233,6 +254,7 @@ export default {
           sort: res.sort,
           hid: res.hid,
           type: res.type,
+          keepAlive: res.keepAlive,
           parentPermission: res.parentPermission
         }
         if (res.sysMenus && res.sysMenus.length > 0) {
@@ -261,7 +283,8 @@ export default {
         component: null,
         hid: 1,
         type: 1,
-        parentPermission: null
+        parentPermission: null,
+        keepAlive: null
       }
       this.$refs[formName].resetFields()
     }