From ad28331c1e3ed456b72765874b41b83b49dc279f Mon Sep 17 00:00:00 2001 From: 严智鑫 <test> Date: 星期四, 18 四月 2024 14:44:11 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes --- UI-Project/src/layout/MainErpView.vue | 228 ++++++++++++++++++++++++++++----------------------------- 1 files changed, 112 insertions(+), 116 deletions(-) diff --git a/UI-Project/src/layout/MainErpView.vue b/UI-Project/src/layout/MainErpView.vue index 6c2e09c..d2e3ed7 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(){ +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/menu/sysMenu/list').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