From 2e1b594ca9bbd2af5b4e713746221705591ada52 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期一, 29 四月 2024 09:42:01 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes
---
UI-Project/src/layout/MainErpView.vue | 230 ++++++++++++++++++++++++++++-----------------------------
1 files changed, 113 insertions(+), 117 deletions(-)
diff --git a/UI-Project/src/layout/MainErpView.vue b/UI-Project/src/layout/MainErpView.vue
index d5c18f5..dc3f4f9 100644
--- a/UI-Project/src/layout/MainErpView.vue
+++ b/UI-Project/src/layout/MainErpView.vue
@@ -1,119 +1,115 @@
<script setup>
-import { RouterLink,useRouter} from 'vue-router'
-import useUserInfoStore from '@/stores/userInfo'
-import request from "@/utils/request";
-import {ElMessage} from "element-plus";
-import {onMounted, reactive, ref, watch} from "vue"
-import deepClone from "@/utils/deepClone"
+import {useRouter} from 'vue-router'
+import useUserInfoStore from '@/stores/userInfo'
import userInfo from '@/stores/userInfo'
-import {Close, Grid, Histogram, MessageBox, SwitchButton} from "@element-plus/icons-vue";
-const store=userInfo()
+import request from '@/utils/request'
+import {ElMessage} from 'element-plus'
+import {ref, watch} from 'vue'
+import deepClone from '@/utils/deepClone'
+
+const store = userInfo()
const router = useRouter()
const userStore = useUserInfoStore()
const user = userStore.user.userName
-store.createWebSocket();
-function quit(){
+
+// store.createWebSocket();
+function quit() {
userStore.$patch({
- user:null
+ user: null,
})
- router.push("/login")
+ router.push('/login')
}
-
-//鎻愬彇妯″潡鍒楄〃
-let menuList=$ref([])
-request.get("/menu").then((res) => {
- if(res.code==200){
- menuList= deepClone(res.data)
- }else{
+//鎻愬彇鑿滃崟妯″潡鍒楄〃
+let menuList = $ref([])
+request.get('/loadGlass/sys/menu/getMenuTree').then((res) => {
+ if (res.code == 200) {
+ menuList = deepClone(res.data)
+ } else {
ElMessage.warning(res.msg)
- router.push("/login")
- }
-})
-
-//鑾峰彇鑿滃崟鍒楄〃
-let menuItemList=$ref([])
-request.get("/menuItem").then((res) => {
- if(res.code==200){
- menuItemList= deepClone(res.data)
- }else{
- ElMessage.warning(res.msg)
- router.push("/login")
+ router.push('/login')
}
})
const menu = ref(null)
let indexKey = ref(null)
+
function handleOpen(key) {
- indexKey.value=key
+ indexKey.value = key
}
-watch(indexKey,(newVal,oldVal) => {
- if(oldVal !== newVal && oldVal !== null){
- menu.value.close(oldVal)
- }
-},
- {deep:true}
+
+watch(
+ indexKey,
+ (newVal, oldVal) => {
+ if (oldVal !== newVal && oldVal !== null) {
+ menu.value.close(oldVal)
+ }
+ },
+ {deep: true}
)
router.beforeEach((to, from) => {
//return false
})
-
let openFlag = $ref(null)
//鍘熷鑿滃崟鎵撳紑
const openMenu = (menuID) => {
- if(menuID===openFlag){
- openFlag = null
- }else {
- openFlag = menuID
- }
+ if (menuID === openFlag) {
+ openFlag = null
+ } else {
+ openFlag = menuID
+ }
}
-
-
</script>
-
+
<template>
<div id="all">
<el-container>
- <el-header >
+ <el-header>
<div style="height: 100%;width: 100%;display: flex;background-color: #fff;">
- <img src="../assets/northGlass.ico" alt="" style="max-width: 100%;max-height: 100%">
+ <img src="../assets/northGlass.ico"
+ alt=""
+ style="max-width: 100%;max-height: 100%">
<h3 style="margin: 1rem ;font-weight: bold;width: 20vw;"> 娆㈣繋{{ user }}浣跨敤鍖楃幓MES绯荤粺锛�</h3>
- <span style="height: 70%;width: 78vw;margin-top: 1rem;" >
- <el-button class="sys-quit" @click="quit" round>
- <el-icon size="large"><SwitchButton size=""/></el-icon>
+ <span style="height: 70%;width: 78vw;margin-top: 1rem;">
+ <el-button class="sys-quit"
+ @click="quit"
+ round>
+ <el-icon size="large">
+ <SwitchButton size=""/>閫�鍑�
+ </el-icon>
</el-button>
</span>
</div>
</el-header>
<div id="line"></div>
- <el-container >
- <el-aside width="160px" style="height: 99%; background-color: #fff;" >
- <div class="menu" >
- <div v-for="items in menuList">
- <div class='menu_title' @click="openMenu(items.id)" >
- <!-- <span class='indicator' >鈱�</span> -->
- <!-- <span class='indicator' >鈮�</span> -->
- <!-- <img src="../assets/9.png" alt="" style="max-width: 50%;max-height: 50%;"> -->
- <span>鈽�</span>
- {{items.menuName}}
- </div>
- <ul class='enter-x-left' v-show="openFlag==items.id">
-
- <li v-for="menuItem in menuItemList"
- v-show="items.id==menuItem.menuID"
- style="margin-bottom: 2px"
- >
- <router-link
- :to="{path:menuItem.url}">
- {{ menuItem.itemName}}
- </router-link>
-
- </li>
- </ul>
+ <el-container>
+ <el-aside width="160px"
+ style="height: 99%; background-color: #fff;">
+ <div class="menu">
+ <div v-for="items in menuList">
+ <div class='menu_title'
+ @click="openMenu(items.id)">
+ <!-- <span class='indicator' >鈱�</span> -->
+ <!-- <span class='indicator' >鈮�</span> -->
+ <!-- <img src="../assets/9.png" alt="" style="max-width: 50%;max-height: 50%;"> -->
+ <span>鈽�</span>
+ {{ items.menuName }}
</div>
+ <ul class='enter-x-left'
+ v-show="openFlag==items.id">
+
+ <li v-for="menuItem in items.children"
+ style="margin-bottom:2px">
+ <router-link :to="{path:menuItem.url}">
+ {{ menuItem.menuName }}
+ </router-link>
+
+ </li>
+ </ul>
+ </div>
</div>
</el-aside>
@@ -127,46 +123,51 @@
</el-container>
</div>
</template>
-
+
<style scoped>
-#all{
+#all {
background-color: #eee;
height: 100%;
}
-.el-container{
+
+.el-container {
height: 100vh;
- width: 99vw
+ width: 99vw;
}
-*{
+* {
padding: 0;
margin: 0;
}
-:deep(.sys-quit){
+
+:deep(.sys-quit) {
float: right;
margin-right: 1rem;
width: 5rem;
}
-/* 妯嚎 */
-#line{
-float:right;
-width: 100%;
-height: 1px;
-/* margin-top: 0.5em; */
-margin-bottom: 0.5em;
-background:#d4c4c4;
-position: relative;
-text-align: center;
-}
-:deep(span){
- margin-right: 0;
+/* 妯嚎 */
+#line {
+ float: right;
+ width: 100%;
+ height: 1px;
+ /* margin-top: 0.5em; */
+ margin-bottom: 0.5em;
+ background: #d4c4c4;
+ position: relative;
+ text-align: center;
}
-.el-collapse{
+
+:deep(span) {
+ margin-right: 0;
+}
+
+.el-collapse {
font-size: 16px;
font-weight: bold;
}
-#main{
+
+#main {
width: 99%;
float: right;
height: 99%;
@@ -175,7 +176,7 @@
/*------------*/
/* .menu div div{
-
+
width: 138px;
height: 35px;
line-height: 35px;
@@ -192,10 +193,10 @@
margin-bottom:4px;
text-align: left;
cursor: pointer; */
- /* border-radius:8px; */
- /* outline: none; */
- /* background-color:#5CADFE; */
- /* box-shadow: 0 8px 16px 0 rgba(0,0,0,0), 0 6px 5px 0 rgba(0,0,0,0.19); */
+/* border-radius:8px; */
+/* outline: none; */
+/* background-color:#5CADFE; */
+/* box-shadow: 0 8px 16px 0 rgba(0,0,0,0), 0 6px 5px 0 rgba(0,0,0,0.19); */
/* } */
.menu {
@@ -207,9 +208,6 @@
font-size: 16px;
padding-left: 15px;
padding-right: 2px;
-
-
-
}
ul {
@@ -219,7 +217,6 @@
}
ul li {
-
height: 28px;
line-height: 30px;
/* background: rgb(128, 128, 128); */
@@ -246,7 +243,6 @@
font-size: 14px;
}
ul li a:hover {
-
color: #1087ff;
}
@@ -255,9 +251,10 @@
height: 0px;
/* background-color: white;
opacity: 0.8; */
- margin-bottom:2px;
+ margin-bottom: 2px;
}
-.item a{
+
+.item a {
width: 138px;
height: 35px;
display: block;
@@ -281,7 +278,6 @@
position: relative;
font-weight: bold;
overflow: hidden;
-
}
.menu_title:hover {
@@ -301,8 +297,6 @@
text-align: center;
}
-
-
/* 鍔ㄧ敾鏁堟灉 */
.enter-x-left {
z-index: 9;
@@ -312,16 +306,20 @@
transform: translateX(-50px);
transition: all 0.3s ease;
}
-.enter-x-left:nth-child(1){
+
+.enter-x-left:nth-child(1) {
animation-delay: 0.1s;
}
-.enter-x-left:nth-child(2){
+
+.enter-x-left:nth-child(2) {
animation-delay: 0.2s;
}
+
.enter-x-left:nth-child(3) {
animation-delay: 0.3s;
}
-.enter-x-left:nth-child(4){
+
+.enter-x-left:nth-child(4) {
animation-delay: 0.4s;
}
@keyframes enter-x-left {
@@ -330,6 +328,4 @@
transform: translateX(0);
}
}
-
-
</style>
\ No newline at end of file
--
Gitblit v1.8.0