|
@@ -10,13 +10,33 @@
|
|
|
<div class="item bg_statistics">统计/分析区</div>
|
|
|
<div class="item bg_set">设置/编辑区</div>
|
|
|
</div>
|
|
|
- <div class="clearboth"></div>
|
|
|
+ <!-- <div class="clearboth"></div> -->
|
|
|
+ </div>
|
|
|
+ <div class="conent">
|
|
|
+ <div class="area border_sending">
|
|
|
+ <div class="area_item bg_tool" v-for="item in sendingList" :key="item.menuId">
|
|
|
+ <a href="javascript:void(0);" title="" @click="pageTo(item)">{{ item.menuName }}</a>
|
|
|
+ <a href="javascript:void(0);"><i class="el-icon-s-promotion" @click="addShortcutMenu(item)"></i></a>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="area border_analysis">
|
|
|
+ <div class="area_item bg_statistics" v-for="item in analysisList" :key="item.menuId">
|
|
|
+ <a href="javascript:void(0);" title="" @click="pageTo(item)">{{ item.menuName }}</a>
|
|
|
+ <a href="javascript:void(0);"><i class="el-icon-s-promotion" @click="addShortcutMenu(item)"></i></a>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="area">
|
|
|
+ <div class="area_item bg_set" v-for="item in editList" :key="item.menuId">
|
|
|
+ <a href="javascript:void(0);" title="" @click="pageTo(item)">{{ item.menuName }}</a>
|
|
|
+ <a href="javascript:void(0);"><i class="el-icon-s-promotion" @click="addShortcutMenu(item)"></i></a>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import { mapGetters, mapState } from 'vuex'
|
|
|
+import EventBus from "@/utils/eventBus";
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
@@ -29,13 +49,13 @@ export default {
|
|
|
// 菜单位置
|
|
|
type: undefined,
|
|
|
//当前菜单路由id
|
|
|
- routeId: undefined
|
|
|
+ routeId: undefined,
|
|
|
+ sendingList: [], // 工具/发送区列表
|
|
|
+ analysisList: [], // 统计/分析区列表
|
|
|
+ editList: [] // 设置/编辑区列表
|
|
|
}
|
|
|
},
|
|
|
- computed: {
|
|
|
- ...mapState(['settings']),
|
|
|
- ...mapGetters(['sidebarRouters', 'sidebar'])
|
|
|
- },
|
|
|
+ computed: {},
|
|
|
watch: {
|
|
|
// 监听路由跳转
|
|
|
$route: {
|
|
@@ -56,10 +76,23 @@ export default {
|
|
|
const routes = this.$store.state.permission.routes
|
|
|
this.$nextTick(() => {
|
|
|
this.docList = routes.filter((item, index, c) => item.parentId == routeId)
|
|
|
- console.log(this.docList)
|
|
|
+ // 工具/发送区列表
|
|
|
+ this.sendingList = this.docList.filter((item, index, c) => item.menuCategory == 0)
|
|
|
+ // 统计/分析区列表
|
|
|
+ this.analysisList = this.docList.filter((item, index, c) => item.menuCategory == 1)
|
|
|
+ // 设置/编辑区列表
|
|
|
+ this.editList = this.docList.filter((item, index, c) => item.menuCategory == 2)
|
|
|
})
|
|
|
}
|
|
|
- }
|
|
|
+ },
|
|
|
+ // 页面跳转
|
|
|
+ pageTo(item) {
|
|
|
+ this.$router.push({ path: item.path })
|
|
|
+ },
|
|
|
+ // 添加快捷菜单
|
|
|
+ addShortcutMenu(item) {
|
|
|
+ EventBus.$emit("addShortcutMenu", item)
|
|
|
+ },
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
@@ -69,8 +102,6 @@ export default {
|
|
|
min-height: calc(100vh);
|
|
|
padding: 10px 10px 0 10px;
|
|
|
box-shadow: #dac488 0px 0px 14px inset;
|
|
|
- /* margin-top: -10px; */
|
|
|
- /* margin-left: -10px; */
|
|
|
background-color: #000;
|
|
|
}
|
|
|
.main-top2 {
|
|
@@ -112,6 +143,25 @@ export default {
|
|
|
font-size: 16px;
|
|
|
font-weight: 600;
|
|
|
}
|
|
|
+.area {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ padding: 26px 5px;
|
|
|
+}
|
|
|
+.area_item {
|
|
|
+ position: relative;
|
|
|
+ width: 160px;
|
|
|
+ height: 50px;
|
|
|
+ border-radius: 5px;
|
|
|
+ line-height: 50px;
|
|
|
+ text-align: center;
|
|
|
+ margin: 5px 5px;
|
|
|
+ a {
|
|
|
+ color: #000;
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 400;
|
|
|
+ }
|
|
|
+}
|
|
|
.bg_tool {
|
|
|
background: #c2e6f2;
|
|
|
}
|
|
@@ -121,4 +171,17 @@ export default {
|
|
|
.bg_set {
|
|
|
background: #fcf2d5;
|
|
|
}
|
|
|
+.border_sending {
|
|
|
+ border-bottom: #c2e6f2 1px solid;
|
|
|
+}
|
|
|
+.border_analysis {
|
|
|
+ border-bottom: #c6efcd 1px solid;
|
|
|
+}
|
|
|
+.el-icon-s-promotion{
|
|
|
+ position: absolute;
|
|
|
+ right: 5%;
|
|
|
+ top: 55%;
|
|
|
+ font-size: 19px;
|
|
|
+ color: #000;
|
|
|
+}
|
|
|
</style>
|