浏览代码

代码提交

zhangqi 2 年之前
父节点
当前提交
0c29d8c52f

+ 1 - 1
src/components/newLayout/index.vue

@@ -2,7 +2,7 @@
   <div class="panel">
     <div class="flex-align-stretch">
       <asideTemp @getModules="getModules"></asideTemp>
-      <div style="flex:1;" class="body__panel">
+      <div style="flex:100" class="body__panel">
         <headeTemp></headeTemp>
         <div>
           <menuTemp class="sticky" ref="menu"></menuTemp>

+ 36 - 19
src/components/newLayout/modules/aside.vue

@@ -1,8 +1,11 @@
 <template>
-  <div class="aside__panel">
-    <div v-if="!collapse" class="logo">
-      <img v-show="img.usetype === 'actionlogo'" v-for="img in siteinfo.attinfos" :key="img.index" style="height:40px" :src="img.url" alt="">
+  <div class="aside__panel" :class="!collapse?'width-160':'bg'">
+    <div  class="logo flex-align-center flex-around">
+      <img v-show="img.usetype === 'actionlogo' && !collapse" v-for="img in siteinfo.attinfos" :key="img.index" style="height:40px" :src="img.url" alt="">
+      <p v-show="collapse">班</p>
+      <i class="el-icon-s-fold" @click="collapse = !collapse"></i>
     </div>
+    <p style="padding:0 20px;font-size:12px;color:#eeeeee">系统</p>
     <el-menu
      :collapse="collapse"
       style="background:none"
@@ -10,16 +13,16 @@
       active-text-color="#000"
       class="el-menu-vertical-demo">
       <el-menu-item :index="String(item.systemid)" v-for="item in systemList" :key="item.index" @click="handelMenuClick(item,'system')">
-        <!-- <i class="el-icon-menu"></i> -->
+        <p style="text-align:center" v-if="collapse">{{item.systemname.substr(0, 1)}}</p>
         <span slot="title">{{item.systemname}}</span>
       </el-menu-item>
-      <el-divider></el-divider>
+      <!-- <el-divider></el-divider> -->
+      <p style="padding:0 20px;font-size:12px;color:#eeeeee">应用</p>
+      <!-- <el-divider content-position="left">应用</el-divider> -->
       <el-menu-item :index="String(index + 10)" v-for="(item,index) in menuApp" :key="index" @click="handelMenuAppClick(item,'app')">
-        <div class="flex-align-center flex-between menuItem">
-          <!-- <i class="el-icon-menu"></i> -->
-          <span slot="title">{{item.systemappname}}</span>
-          <i class="el-icon-error menuIconClose" @click.stop="deleteMenuApp(item)"></i>
-        </div>
+        <p style="text-align:center" v-if="collapse">{{item.systemappname.substr(0, 1)}}</p>
+        <span slot="title">{{item.systemappname}}</span>
+        <i v-if="!collapse" style="float:right;line-height: 40px;" class="el-icon-error menuIconClose" @click.stop="deleteMenuApp(item)"></i>
       </el-menu-item>
     </el-menu>
   </div>
@@ -99,23 +102,36 @@ export default {
 
 </script>
 <style>
+.el-menu{
+  background: none;
+}
+.width-160{
+  width: 140px !important;
+}
+.bg{
+  /* background-color: rgba(255 ,255,255,.1) !important; */
+  /* box-shadow: 0 15px 30px rgb(0 0 0 / 10%); */
+}
 .aside__panel {
-  margin: 0 10px 0 0;
   font-weight: bold;
   transition: linear .3s;
-  min-width:160px;
   height:100vh;
+  flex: 1 0 auto ;
+  margin-right: 10px;
+  width: 54px;
+  transition: .2s linear;
+  /* background-color: rgba(255 ,255,255,.1) !important; */
 }
 .aside__panel .el-menu-item{
   height: 40px;
   line-height: 40px;
-  border-radius: 0 40px 40px 0;
+  border-radius: 0 10px 10px 0;
   margin: 5px 0;
   padding-left:30px !important;
 }
 .aside__panel .el-menu-item:hover{
-  background-color: rgba(255 ,255,255,.5) !important;
-  border-radius: 0 40px 40px 0;
+  background-color: rgba(255 ,255,255,.2) !important;
+  /* border-radius: 0 40px 40px 0; */
   color:#333 !important;
 }
 .el-menu-item:focus, .el-menu-item:hover{
@@ -128,19 +144,20 @@ export default {
 </style>
 <style scoped>
 .is-active{
-  background-color: rgba(255 ,255,255,.5) !important;
-  border-radius: 0 40px 40px 0;
+  background-color: rgba(255 ,255,255,1) !important;
+  /* border-radius: 0 40px 40px 0; */
   color:#333 !important;
   box-shadow: 0 15px 30px rgb(0 0 0 / 10%);
+  transition: .5 linear;
 }
 .logo{
   display:flex;
   align-items:center;
-  justify-content:flex-start;
+  /* justify-content:flex-start; */
   height: 62px;
   line-height: 62px;
   color:#fff;
-  padding-left:30px;
+  /* padding-left:20px; */
   /* border-right: 1px solid #f1f2f3; */
 }
 .menuIconClose{

+ 10 - 4
src/components/normal-basic-layout/index.vue

@@ -4,7 +4,7 @@
       <div class="layout-header-panel container normal-panel">
         <div class="flex-align-center flex-between">
           <div class="normal-margin flex-align-center">
-            <p style="font-size:26px;font-weight:300">{{acitveApp.meta.title}}&nbsp;<i @click="addToAsideBar" style="color:#999" class="el-icon-star-off"></i></p>
+            <p style="font-size:26px;font-weight:300">{{acitveApp.meta.title}}&nbsp;<i @click="addToAsideBar" style="color:#999" :class="acitveApp.name === $route.name?'el-icon-star-on collection':'el-icon-star-off'"></i></p>
             <div style="margin:0 8px"><el-divider direction="vertical"></el-divider></div>
             <div class="flex-align-center">
               <cpAdd v-if="tool.checkAuth($route.name,'insert')" :formPath="formPath" :oldFormPath="oldFormPath" @onAddSuccess="listData(param.content.pageNumber = 1)"></cpAdd>
@@ -28,8 +28,11 @@
             <el-radio-button label="card"><i class="el-icon-menu"></i></el-radio-button>
           </el-radio-group> -->
           <slot name="custom"></slot>
-          <el-input placeholder="请输入搜索内容" suffix-icon="el-icon-search" v-model="param.content.where.condition" @keyup.native.enter="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" style="width:200px" size="small" class="input-with-select inline-16" clearable>
-          </el-input>
+          <div>
+            <label for="">搜索:&nbsp;</label>
+            <el-input placeholder="请输入搜索内容" suffix-icon="el-icon-search" v-model="param.content.where.condition" @keyup.native.enter="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" style="width:200px" size="small" class="input-with-select inline-16" clearable>
+            </el-input>
+          </div>
         </div>
       </div>
       <div class="normal-panel flex-align-center" style="padding:0 16px">
@@ -202,7 +205,7 @@ export default {
         }
       })
       this.$store.dispatch('setAppMenu')
-    },
+    }
   },
   mounted () {
     this.autoQuery === false?'':this.listData()
@@ -233,4 +236,7 @@ export default {
 .card__list{
   display: flex;
 }
+.collection{
+  color: orange !important;
+}
 </style>

+ 3 - 6
src/utils/tool.js

@@ -12,13 +12,10 @@ export default {
       let active_apps = apps.filter(item => {
         return item.name === appname
       })
-      console.log(modules)
-      console.log(appname)
-      console.log(active_apps)
       // 获取当前应用权限
-      // let auth_list = active_apps[0].meta.auth
-      // // 判断是否拥有权限
-      // let _haveAuth = auth_list.some(item=>item.option === auth)
+      let auth_list = active_apps[0].meta.auth
+      // 判断是否拥有权限
+      let _haveAuth = auth_list.some(item=>item.option === auth)
 
       return _haveAuth