From 97dd2e40d01e6a0a6976931d27df46d6e929a11f Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期日, 14 四月 2024 17:19:39 +0800
Subject: [PATCH] 过度使用,调整登录路径,获取菜单路径
---
UI-Project/config.js | 4
UI-Project/src/layout/MainErpView.vue | 113 +++++++++++++++++++------------------
UI-Project/src/views/LoginView.vue | 39 ++++++------
UI-Project/vite.config.js | 8 +-
4 files changed, 84 insertions(+), 80 deletions(-)
diff --git a/UI-Project/config.js b/UI-Project/config.js
index ac9f2b1..fea947e 100644
--- a/UI-Project/config.js
+++ b/UI-Project/config.js
@@ -1,5 +1,5 @@
export default {
- serverUrl:"localhost:8080/mesModuleTools",
- serverUrl2:"localhost:8081/mesModuleTools"
+ serverUrl: "localhost:8081",
+ serverUrl2: "localhost:8081/mesModuleTools"
//serverUrl:"res.abeim.cn"
}
\ No newline at end of file
diff --git a/UI-Project/src/layout/MainErpView.vue b/UI-Project/src/layout/MainErpView.vue
index 6c2e09c..bc44154 100644
--- a/UI-Project/src/layout/MainErpView.vue
+++ b/UI-Project/src/layout/MainErpView.vue
@@ -1,57 +1,60 @@
<script setup>
-import { RouterLink,useRouter} from 'vue-router'
-import useUserInfoStore from '@/stores/userInfo'
+import {useRouter} from 'vue-router'
+import useUserInfoStore from '@/stores/userInfo'
+import userInfo from '@/stores/userInfo'
import request from "@/utils/request";
import {ElMessage} from "element-plus";
-import {onMounted, reactive, ref, watch} from "vue"
+import {ref, watch} from "vue"
import deepClone from "@/utils/deepClone"
-import userInfo from '@/stores/userInfo'
-import {Close, Grid, Histogram, MessageBox, SwitchButton} from "@element-plus/icons-vue";
-const store=userInfo()
+
+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")
}
//鎻愬彇妯″潡鍒楄〃
-let menuList=$ref([])
-request.get("/menu").then((res) => {
- if(res.code==200){
- menuList= deepClone(res.data)
- }else{
+let menuList = $ref([])
+request.get('/menu/sysMenu/list').then((res) => {
+ if (res.code == 200) {
+ menuList = deepClone(res.data)
+ } else {
ElMessage.warning(res.msg)
- router.push("/login")
+ 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")
- }
-})
+// let menuItemList = $ref([])
+// request.get('/menuItem').then((res) => {
+// if (res.code == 200) {
+// menuItemList = deepClone(res.data)
+// } else {
+// ElMessage.warning(res.msg)
+// 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)
- }
+
+watch(indexKey, (newVal, oldVal) => {
+ if (oldVal !== newVal && oldVal !== null) {
+ menu.value.close(oldVal)
+ }
},
{deep:true}
)
@@ -81,39 +84,39 @@
<div style="height: 100%;width: 100%;display: flex;background-color: #fff;">
<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>
diff --git a/UI-Project/src/views/LoginView.vue b/UI-Project/src/views/LoginView.vue
index c1515b9..7ee9b8d 100644
--- a/UI-Project/src/views/LoginView.vue
+++ b/UI-Project/src/views/LoginView.vue
@@ -1,9 +1,8 @@
<script lang="ts" setup>
import {onMounted, onUnmounted, reactive, ref} from "vue"
-import {useRouter,useRoute } from 'vue-router'
+import {useRoute, useRouter} from 'vue-router'
import type {FormInstance, FormRules} from 'element-plus'
-import { ElMessage } from "element-plus";
-import { Lock,Avatar } from '@element-plus/icons-vue'
+import {ElMessage} from "element-plus";
import request from '@/utils/request'
import userInfo from '@/stores/userInfo'
@@ -48,20 +47,22 @@
if (!formEl) return
formEl.validate((valid) => {
if (valid) {
- loginLoadings.value=true
- request.post('/user/login',
- userForm).then((res) => {
- if(res['code']==200){
- store.$patch({user:res.data})
+ loginLoadings.value = true
+ request
+ .post('/userinfo/login', userForm)
+ .then((res) => {
+ if (res['code'] == 200) {
+ store.$patch({user: res.data})
+ console.log(res.data)
- router.push('/main')
- ElMessage.success(`鐧诲綍鎴愬姛`)
- } else {
- ElMessage.error(res['msg'])
- loginLoadings.value=false
- return false
- }
- }).catch(error => {
+ router.push('/main')
+ ElMessage.success(`鐧诲綍鎴愬姛`)
+ } else {
+ ElMessage.error(res['msg'])
+ loginLoadings.value = false
+ return false
+ }
+ }).catch(error => {
ElMessage.error("鏈嶅姟鍣ㄨ繛鎺ュけ璐�")
loginLoadings.value=false
return false
@@ -103,9 +104,9 @@
src="../../src/assets/background.jpg"
/> -->
<div>
- <div style="position: absolute; left: 8vw; top: 6vw; ">
- <img src="../../src/assets/3.png">
- </div>
+ <div style="position: absolute; left: 8vw; top: 6vw; ">
+ <img src="../../src/assets/3.png">
+ </div>
<div style="position: absolute; left: 15vw; top: 22vw; font-size: 55px;color: rgba(29, 33, 41, 1);">
鍖楃幓MES绯荤粺
</div>
diff --git a/UI-Project/vite.config.js b/UI-Project/vite.config.js
index d4d6ee2..fb950f2 100644
--- a/UI-Project/vite.config.js
+++ b/UI-Project/vite.config.js
@@ -1,6 +1,6 @@
-import { fileURLToPath, URL } from 'node:url'
+import {fileURLToPath, URL} from 'node:url'
-import { defineConfig } from 'vite'
+import {defineConfig} from 'vite'
import vue from '@vitejs/plugin-vue'
import ReactivityTransform from '@vue-macros/reactivity-transform/vite'
@@ -22,9 +22,9 @@
https: false,
proxy: {
'/api': {
- target: 'http://localhost:8080/mesModuleTools',
+ target: 'http://localhost:8081/',
changeOrigin: true,
- rewrite: (path) => path.replace(/^\/api/, '/mesModuleTools'),
+ rewrite: (path) => path.replace(/^\/api/, '/'),
},
'/api2': {
target: 'http://localhost:8081/mesModuleTools',
--
Gitblit v1.8.0