mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-11 11:56:46 +08:00
-- bug 登出
This commit is contained in:
29
src/App.vue
29
src/App.vue
@@ -1,27 +1,27 @@
|
|||||||
<template>
|
<template>
|
||||||
<div id="container" v-if="!isLogin">
|
<div id="container" v-if="!isLogin">
|
||||||
<nav-top />
|
<nav-top/>
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<nav-left />
|
<nav-left/>
|
||||||
<div style="flex: 1; display: flex; flex-direction: column; width: 0">
|
<div style="flex: 1; display: flex; flex-direction: column; width: 0">
|
||||||
<open-pages />
|
<open-pages/>
|
||||||
<bread-crumb />
|
<bread-crumb/>
|
||||||
<main>
|
<main>
|
||||||
<a-config-provider :locale="zhCN">
|
<a-config-provider :locale="zhCN">
|
||||||
<router-view />
|
<router-view/>
|
||||||
</a-config-provider>
|
</a-config-provider>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="container" v-if="isLogin">
|
<div id="container" v-if="isLogin">
|
||||||
<router-view />
|
<router-view/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { computed, defineComponent, ref, watch } from "vue";
|
import {computed, defineComponent, ref, watch} from "vue";
|
||||||
import { useRouter, useRoute } from "vue-router";
|
import {useRouter, useRoute} from "vue-router";
|
||||||
import { useStore } from "vuex";
|
import {useStore} from "vuex";
|
||||||
import NavLeft from "@/components/NavLeft";
|
import NavLeft from "@/components/NavLeft";
|
||||||
import NavTop from "@/components/NavTop";
|
import NavTop from "@/components/NavTop";
|
||||||
import OpenPages from "@/components/OpenPages";
|
import OpenPages from "@/components/OpenPages";
|
||||||
@@ -29,6 +29,7 @@ import BreadCrumb from "@/components/BreadCrumb";
|
|||||||
import zhCN from "ant-design-vue/es/locale/zh_CN";
|
import zhCN from "ant-design-vue/es/locale/zh_CN";
|
||||||
import * as api from "./api/index1";
|
import * as api from "./api/index1";
|
||||||
import * as api1 from "@/api/index1";
|
import * as api1 from "@/api/index1";
|
||||||
|
import * as api2 from "@/api/index";
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
components: {
|
components: {
|
||||||
@@ -59,6 +60,7 @@ export default defineComponent({
|
|||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
console.log(store);
|
console.log(store);
|
||||||
|
getUserInfo();
|
||||||
initDict("faceclassPic");
|
initDict("faceclassPic");
|
||||||
initDict("faceclassClass");
|
initDict("faceclassClass");
|
||||||
initDict("faceclassScene");
|
initDict("faceclassScene");
|
||||||
@@ -70,15 +72,20 @@ export default defineComponent({
|
|||||||
getOrgTree();
|
getOrgTree();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function getUserInfo() {
|
||||||
|
const userInfo = await api2.userInfo()
|
||||||
|
store.commit("SET_USER", userInfo);
|
||||||
|
}
|
||||||
|
|
||||||
async function initDict(key) {
|
async function initDict(key) {
|
||||||
let list = localStorage.getItem(key);
|
let list = localStorage.getItem(key);
|
||||||
if (list) {
|
if (list) {
|
||||||
store.commit("SET_DICT", { key, data: JSON.parse(list) });
|
store.commit("SET_DICT", {key, data: JSON.parse(list)});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
list = await getDictList(key);
|
list = await getDictList(key);
|
||||||
localStorage.setItem(key, JSON.stringify(list));
|
localStorage.setItem(key, JSON.stringify(list));
|
||||||
store.commit("SET_DICT", { key, data: list });
|
store.commit("SET_DICT", {key, data: list});
|
||||||
}
|
}
|
||||||
|
|
||||||
const getDictList = (param) =>
|
const getDictList = (param) =>
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ export const createProject = (obj) => http.post('/admin/project/edit', obj)
|
|||||||
export const getProjectList = (obj) => http.post('/admin/project/list', obj)
|
export const getProjectList = (obj) => http.post('/admin/project/list', obj)
|
||||||
|
|
||||||
// 获取项目详情信息(包含阶段及任务列表)
|
// 获取项目详情信息(包含阶段及任务列表)
|
||||||
export const getProjectDetail = (obj) => http.get('/admin/project/detail', { params: obj })
|
export const getProjectDetail = (obj) => http.get('/admin/project/detail', {params: obj})
|
||||||
//发布项目
|
//发布项目
|
||||||
export const releaseProject = (obj) => http.post('/admin/project/publish', obj)
|
export const releaseProject = (obj) => http.post('/admin/project/publish', obj)
|
||||||
//获取项目学员
|
//获取项目学员
|
||||||
@@ -70,10 +70,11 @@ export const getDiscussDetail = (obj) => http.post('/discuss/getDiscussDetail',
|
|||||||
//获取模版列表
|
//获取模版列表
|
||||||
export const getTemplate = (obj) => http.post('/admin/project/template/list', obj)
|
export const getTemplate = (obj) => http.post('/admin/project/template/list', obj)
|
||||||
//获取模版详细信息
|
//获取模版详细信息
|
||||||
export const getTemplateDetail = (obj) => http.get('/admin/project/template/detail', { params: obj })
|
export const getTemplateDetail = (obj) => http.get('/admin/project/template/detail', {params: obj})
|
||||||
|
|
||||||
//获取项目统计
|
//获取项目统计
|
||||||
export const getProjectCount = (projectId) => http.get('/admin/project/projectCount', { params: { projectId: projectId } })
|
export const getProjectCount = (projectId) => http.get('/admin/project/projectCount', {params: {projectId: projectId}})
|
||||||
|
|
||||||
export const login = (obj) => http.post('/admin/CheckUser/userLogin', obj)
|
export const login = (obj) => http.post('/admin/CheckUser/userLogin', obj)
|
||||||
|
export const userInfo = () => http.get('/admin/CheckUser/userInfo')
|
||||||
|
|
||||||
|
|||||||
@@ -55,12 +55,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<down-load v-model:downloadVisible="visible" />
|
<down-load v-model:downloadVisible="visible"/>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs } from "vue";
|
import {reactive, toRefs} from "vue";
|
||||||
import DownLoad from "../components/drawers/DownLoad";
|
import DownLoad from "../components/drawers/DownLoad";
|
||||||
import * as api from "../api/index1";
|
import * as api from "../api/index1";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "NavTop",
|
name: "NavTop",
|
||||||
components: {
|
components: {
|
||||||
@@ -118,6 +119,14 @@ export default {
|
|||||||
getUser();
|
getUser();
|
||||||
|
|
||||||
const logOut = () => {
|
const logOut = () => {
|
||||||
|
localStorage.removeItem('faceclassPic');
|
||||||
|
localStorage.removeItem('faceclassClass');
|
||||||
|
localStorage.removeItem('faceclassScene');
|
||||||
|
localStorage.removeItem('projectLevel');
|
||||||
|
localStorage.removeItem('projectSys');
|
||||||
|
localStorage.removeItem('pathmapPic');
|
||||||
|
localStorage.removeItem('projectClass');
|
||||||
|
localStorage.removeItem('projectPic');
|
||||||
window.open("https://u-pre.boe.com/web/", "_self");
|
window.open("https://u-pre.boe.com/web/", "_self");
|
||||||
};
|
};
|
||||||
return {
|
return {
|
||||||
@@ -142,9 +151,11 @@ export default {
|
|||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
background-color: rgba(255, 255, 255, 1);
|
background-color: rgba(255, 255, 255, 1);
|
||||||
|
|
||||||
.navTopRight {
|
.navTopRight {
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.role {
|
.role {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@@ -154,6 +165,7 @@ export default {
|
|||||||
line-height: 36px;
|
line-height: 36px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
||||||
.roleArrow {
|
.roleArrow {
|
||||||
width: 13px;
|
width: 13px;
|
||||||
height: 7px;
|
height: 7px;
|
||||||
@@ -161,6 +173,7 @@ export default {
|
|||||||
background-image: url(../assets/images/navtop/down.png);
|
background-image: url(../assets/images/navtop/down.png);
|
||||||
background-size: 100%;
|
background-size: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.roleItems {
|
.roleItems {
|
||||||
width: 109px;
|
width: 109px;
|
||||||
height: 90px;
|
height: 90px;
|
||||||
@@ -174,22 +187,27 @@ export default {
|
|||||||
display: none;
|
display: none;
|
||||||
z-index: 100;
|
z-index: 100;
|
||||||
}
|
}
|
||||||
|
|
||||||
.roleItem {
|
.roleItem {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: rgba(79, 81, 86, 1);
|
color: rgba(79, 81, 86, 1);
|
||||||
line-height: 36px;
|
line-height: 36px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.roleItem:hover {
|
.roleItem:hover {
|
||||||
color: #4ea6ff;
|
color: #4ea6ff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.role:hover .roleItems {
|
.role:hover .roleItems {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
.role:hover .roleArrow {
|
.role:hover .roleArrow {
|
||||||
background-image: url(../assets/images/navtop/up.png);
|
background-image: url(../assets/images/navtop/up.png);
|
||||||
}
|
}
|
||||||
|
|
||||||
.user {
|
.user {
|
||||||
margin-left: 37px;
|
margin-left: 37px;
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -199,12 +217,14 @@ export default {
|
|||||||
color: #b3bdc4;
|
color: #b3bdc4;
|
||||||
line-height: 36px;
|
line-height: 36px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.signOutMain {
|
.signOutMain {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
margin-right: 29px;
|
margin-right: 29px;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.signOut {
|
.signOut {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
* @FilePath: /fe-manage/src/store/index.js
|
* @FilePath: /fe-manage/src/store/index.js
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
import { createStore } from "vuex";
|
import {createStore} from "vuex";
|
||||||
// import * as api from '../api/index1'
|
// import * as api from '../api/index1'
|
||||||
export default createStore({
|
export default createStore({
|
||||||
state: {
|
state: {
|
||||||
@@ -23,6 +23,7 @@ export default createStore({
|
|||||||
assessmentName: "",
|
assessmentName: "",
|
||||||
routerId: null,
|
routerId: null,
|
||||||
projectTemplateId: null,
|
projectTemplateId: null,
|
||||||
|
userInfo: {},
|
||||||
orgtreeList: [],
|
orgtreeList: [],
|
||||||
faceclassPic: null,
|
faceclassPic: null,
|
||||||
faceclassClass: [],
|
faceclassClass: [],
|
||||||
@@ -51,9 +52,12 @@ export default createStore({
|
|||||||
getOrgtreeList(state, data) {
|
getOrgtreeList(state, data) {
|
||||||
state.orgtreeList = data
|
state.orgtreeList = data
|
||||||
},
|
},
|
||||||
SET_DICT(state, { key, data }) {
|
SET_DICT(state, {key, data}) {
|
||||||
state[key] = data
|
state[key] = data
|
||||||
},
|
},
|
||||||
|
SET_USER(state, userInfo) {
|
||||||
|
state.userInfo = userInfo
|
||||||
|
},
|
||||||
SET_projectTemplateId(state, projectTemplateId) {
|
SET_projectTemplateId(state, projectTemplateId) {
|
||||||
state.projectTemplateId = projectTemplateId;
|
state.projectTemplateId = projectTemplateId;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user