新增中台后台的各个服务页面

This commit is contained in:
zxx 2022-10-18 21:05:15 +08:00
parent 3427feb512
commit a397dabe5d
49 changed files with 998 additions and 43 deletions

View File

@ -50,10 +50,10 @@ export default {
},
computed: {
...mapState('setting', ['layout', 'theme', 'weekMode', 'lang']),
...mapState('account', ['project']) ,
},
methods: {
...mapMutations('setting', ['setDevice']),
...mapState('account', ['project']) ,
setWeekModeTheme(weekMode) { //
if (weekMode) { //
document.body.classList.add('week-mode') //
@ -77,7 +77,7 @@ export default {
}
},
setHtmlTitle() { // html
const project = this.project
const project = JSON.parse(localStorage.getItem(process.env.VUE_APP_PROJECT_KEY))
const route = this.$route //
const key = route.path === '/' ? 'home.name' : getI18nKey(route.matched[route.matched.length - 1].path) // i18n keywords home.name i18n keywords
document.title = project.project_name + ' | ' + this.$t(key) // html process.env.VUE_APP_NAME this.$t(key) i18n keywords

BIN
src/assets/img/logo-vue.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

View File

@ -4,9 +4,9 @@
<div :class="['logo', theme]">
<!-- PC端 -->
<router-link to="/dashboard/workplace">
<img width="80" v-if="!company.company_info.logo" :src="project.project_logo">
<img class="logo" v-if="!company.company_info.logo" :src="project.project_logo">
<h1 v-if="!company.company_info.name">{{project.project_name}}</h1>
<img width="80" v-if="company.company_info.logo" :src="company.company_info.logo">
<img class="logo" v-if="company.company_info.logo" :src="company.company_info.logo">
<h1 v-if="company.company_info.name">{{company.company_info.name}}</h1>
</router-link>
</div>

View File

@ -6,14 +6,15 @@
overflow-y: auto;
z-index: 10;
.logo{
height: 64px;
position: relative;
line-height: 64px;
padding-left: 15px;
padding-left: 10px;
-webkit-transition: all .3s;
transition: all .3s;
overflow: hidden;
background-color: @layout-trigger-background;
&.light{
background-color: #fff;
h1{
@ -30,6 +31,8 @@
img{
width: 50px;
vertical-align: middle;
// 调整明度为100
}
}
}

View File

@ -10,12 +10,15 @@
</template>
<script>
import {mapState} from 'vuex'
export default {
name: 'PageFooter',
computed: {
...mapState('account', ['project']) ,
data() {
return {
project: localStorage.getItem(process.env.VUE_APP_PROJECT_KEY)
}
},
}
</script>

View File

@ -5,18 +5,10 @@
<span class="name">{{user.name}}</span>
</div>
<a-menu :class="['avatar-menu']" slot="overlay">
<a-menu-item>
<a-icon type="user" />
<a-menu-item @click="adminUser">
<a-icon type="user"/>
<span>用户管理</span>
</a-menu-item>
<a-menu-item>
<a-icon type="lock" />
<span>权限管理</span>
</a-menu-item>
<a-menu-item>
<a-icon type="setting" />
<span>参数管理</span>
</a-menu-item>
<a-menu-divider />
<a-menu-item @click="logout">
<a-icon style="margin-right: 8px;" type="poweroff" />
@ -36,6 +28,9 @@ export default {
...mapGetters('account', ['user']), //
},
methods: {
adminUser(){
this.$router.push('/AdminUser/AdminUserList');
},
logout() { // 退
logout() // 退
this.$router.push('/login') //

View File

@ -176,9 +176,9 @@ export default {
}
},
closeLeft (pageKey) { // pageKeykey
const index = this.pageList.findIndex(item => item.path === pageKey)
const index = this.pageList.findIndex(item => item.path === pageKey) //
//
const clearPages = this.pageList.filter((item, i) => i < index && !item.unclose)
const clearPages = this.pageList.filter((item, i) => i < index && !item.unclose) // unclosefalse
// unclosefalse
this.clearCaches = clearPages.map(item => item.cachedKey) // cachedKey
this.pageList = this.pageList.filter(item => !clearPages.includes(item)) //

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminAgentAdd
</div>
</template>
<script>
export default {
name: "AdminAgentAdd",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminAgentDetail
</div>
</template>
<script>
export default {
name: "AdminAgentDetail",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminAgentList
</div>
</template>
<script>
export default {
name: "AdminAgentList",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminAgentUpdate
</div>
</template>
<script>
export default {
name: "AdminAgentUpdate",
}
</script>
<style>
</style>

View File

@ -0,0 +1,16 @@
<template>
<div>
AdminCompanyAdd
</div>
</template>
<script>
export default {
name: "AdminCompanyAdd",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminCompanyDetail
</div>
</template>
<script>
export default {
name: "AdminCompanyDetail",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminCompanyList
</div>
</template>
<script>
export default {
name: "AdminCompanyList",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminCompanyUpdate
</div>
</template>
<script>
export default {
name: "AdminCompanyUpdate",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminConfigAdd
</div>
</template>
<script>
export default {
name: "AdminConfigAdd",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminConfigDetail
</div>
</template>
<script>
export default {
name: "AdminConfigDetail",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminConfigList
</div>
</template>
<script>
export default {
name: "AdminConfigList",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminConfigUpdate
</div>
</template>
<script>
export default {
name: "AdminConfigUpdate",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminLogDetail
</div>
</template>
<script>
export default {
name: "AdminLogDetail",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminLogList
</div>
</template>
<script>
export default {
name: "AdminLogList",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminPermissionAdd
</div>
</template>
<script>
export default {
name: "AdminPermissionAdd",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminPermissionDetail
</div>
</template>
<script>
export default {
name: "AdminPermissionDetail",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminPermissionList
</div>
</template>
<script>
export default {
name: "AdminPermissionList",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminPermissionUpdate
</div>
</template>
<script>
export default {
name: "AdminPermissionUpdate",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminServiceAdd
</div>
</template>
<script>
export default {
name: "AdminPermissionAdd",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminServiceDetail
</div>
</template>
<script>
export default {
name: "AdminServiceDetail",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminServiceList
</div>
</template>
<script>
export default {
name: "AdminServiceList",
}
</script>
<style>
</style>

View File

@ -0,0 +1,15 @@
<template>
<div>
AdminServiceUpdate
</div>
</template>
<script>
export default {
name: "AdminServiceUpdate",
}
</script>
<style>
</style>

View File

@ -0,0 +1,29 @@
<template>
<div>
<!-- 添加用户提交按钮 -->
<a-button type="primary" @click="addUser">新增用户</a-button>
</div>
</template>
<script>
export default {
name: 'AdminUserAdd',
data() {
return {
msg: 'Welcome to Your Vue.js App',
}
},
methods: {
addUser() {
this.$router.push('/AdminUser/AdminUserList');
},
}
}
</script>
<style>
</style>

View File

@ -0,0 +1,34 @@
<template>
<div>
<!-- 添加用户按钮 -->
<a-button type="primary" @click="addUser">添加用户</a-button>
<!-- 用户列表 -->
<!-- 编辑用户按钮 -->
<a-button type="primary" @click="updateUser">编辑用户</a-button>
</div>
</template>
<script>
export default {
name: 'AdminUserList',
data() {
return {
msg: 'Welcome to Your Vue.js App',
}
},
methods: {
addUser() {
this.$router.push('/AdminUser/AdminUserAdd');
},
updateUser() {
this.$router.push('/AdminUser/AdminUserUpdate');
},
}
}
</script>
<style>
</style>

View File

@ -0,0 +1,28 @@
<template>
<div>
<!-- 修改用户提交按钮 -->
<a-button type="primary" @click="updateUser">修改用户</a-button>
</div>
</template>
<script>
export default {
name: 'AdminUserUpdate',
data() {
return {
msg: 'Welcome to Your Vue.js App',
}
},
methods: {
updateUser() {
this.$router.push('/AdminUser/AdminUserList');
},
}
}
</script>
<style>
</style>

View File

@ -3,6 +3,7 @@
<div class="top">
<div class="header">
<img alt="logo" class="logo" :src="Project.project_logo" />
<span class="title">{{Project.project_name}}</span>
</div>
<div class="desc">{{Project.project_sub_title}}</div>
@ -71,9 +72,10 @@
<script>
import CommonLayout from '@/layouts/CommonLayout'
import { login, getUserInfo, getRoutesConfig, getPermission, getSettings, getCompany, getProject } from '@/services/base/user'
import { setAuthorization } from '@/utils/request'
import { setAuthorization,setCompany } from '@/utils/request'
import { loadRoutes } from '@/utils/routerUtil'
import { mapMutations } from 'vuex'
import Cookie from 'js-cookie'
@ -93,11 +95,10 @@ export default {
password: '888888'
},
Project: [],
company: Cookie.get('company'),
}
},
computed: {
},
beforeMount() {
@ -109,8 +110,9 @@ export default {
},
created() {
if (this.company!=[]){
// console.log("company:",this.company)
}
this.$nextTick(() => {
setTimeout(() => {
this.form.setFieldsValue({
@ -182,6 +184,7 @@ export default {
if (result.data.data != null) {
const company = result.data.data
this.setCompany(company) // vuex
setCompany(company.company_info) // cookies
}
})
@ -189,7 +192,7 @@ export default {
console.log("登录失败")
this.error = loginRes.message
}
}
},
}
}
</script>

View File

@ -0,0 +1,68 @@
// 中台代理商路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminAgentRouterMap = {
AdminAgent:{
name: '代理商管理',
icon: 'idcard',
component: view.page,
authority: {
Agent:[''],
}
},
AdminAgentList:{
name: '代理商列表',
icon: 'idcard',
path: '/AdminAgent/AdminAgentList',
component: () => import('@/pages/Middle/Admin/AdminAgent/AgentList'),
authority: {
Agent:[''],
}
},
AdminAgentDetail:{
name: '代理商详情',
icon: 'idcard',
path: '/AdminAgent/AdminAgentDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminAgent/AgentDetail'),
authority: {
Agent:[''],
},
},
AdminAgentAdd:{
name: '添加代理商',
icon: 'idcard',
path: '/AdminAgent/AdminAgentAdd',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminAgent/AgentAdd'),
authority: {
Agent:[''],
},
},
AdminAgentUpdate:{
name: '修改代理商',
icon: 'idcard',
path: '/AdminAgent/AdminAgentUpdate',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminAgent/AgentUpdate'),
authority: {
Agent:[''],
},
},
}
export default AdminAgentRouterMap

View File

@ -0,0 +1,71 @@
// 中台企业路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminCompanyRouterMap = {
AdminCompany:{
name: '企业管理',
icon: 'idcard',
component: view.page,
meta: {
invisible:false, // 不在菜单中显示
},
authority: {
permission:[''],
}
},
AdminCompanyList:{
name: '企业列表',
icon: 'idcard',
path: '/AdminCompany/AdminCompanyList',
component: () => import('@/pages/Middle/Admin/AdminCompany/CompanyList'),
authority: {
permission:[''],
}
},
AdminCompanyDetail:{
name: '企业详情',
icon: 'idcard',
path: '/AdminCompany/AdminCompanyDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminCompany/CompanyDetail'),
authority: {
permission:[''],
},
},
AdminCompanyAdd:{
name: '添加企业',
icon: 'idcard',
path: '/AdminCompany/AdminCompanyAdd',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminCompany/CompanyAdd'),
authority: {
permission:[''],
},
},
AdminCompanyUpdate:{
name: '修改企业',
icon: 'idcard',
path: '/AdminCompany/AdminCompanyUpdate',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminCompany/CompanyUpdate'),
authority: {
permission:[''],
},
},
}
export default AdminCompanyRouterMap

View File

@ -0,0 +1,71 @@
// 中台项目路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminConfigRouterMap = {
AdminConfig:{
name: '项目管理',
icon: 'idcard',
component: view.page,
meta: {
invisible:false, // 不在菜单中显示
},
authority: {
permission:[''],
}
},
AdminConfigList:{
name: '项目列表',
icon: 'idcard',
path: '/AdminConfig/AdminConfigList',
component: () => import('@/pages/Middle/Admin/AdminConfig/ConfigList'),
authority: {
permission:[''],
}
},
AdminConfigDetail:{
name: '项目详情',
icon: 'idcard',
path: '/AdminConfig/AdminConfigDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminConfig/ConfigDetail'),
authority: {
permission:[''],
},
},
AdminConfigAdd:{
name: '添加项目',
icon: 'idcard',
path: '/AdminConfig/AdminConfigAdd',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminConfig/ConfigAdd'),
authority: {
permission:[''],
},
},
AdminConfigUpdate:{
name: '修改项目',
icon: 'idcard',
path: '/AdminConfig/AdminConfigUpdate',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminConfig/ConfigUpdate'),
authority: {
permission:[''],
},
},
}
export default AdminConfigRouterMap

View File

@ -0,0 +1,47 @@
// 中台日志路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminLogRouterMap = {
AdminLog:{
name: '日志管理',
icon: 'idcard',
component: view.page,
meta: {
invisible:false, // 不在菜单中显示
},
authority: {
permission:[''],
}
},
AdminLogList:{
name: '日志列表',
icon: 'idcard',
path: '/AdminLog/AdminLogList',
component: () => import('@/pages/Middle/Admin/AdminLog/LogList'),
authority: {
permission:[''],
}
},
AdminLogDetail:{
name: '日志详情',
icon: 'idcard',
path: '/AdminLog/AdminLogDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminLog/LogDetail'),
authority: {
permission:[''],
},
},
}
export default AdminLogRouterMap

View File

@ -0,0 +1,68 @@
// 中台权限路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminPermissionRouterMap = {
AdminPermission:{
name: '权限管理',
icon: 'idcard',
component: view.page,
authority: {
permission:[''],
}
},
AdminPermissionList:{
name: '权限列表',
icon: 'idcard',
path: '/AdminPermission/AdminPermissionList',
component: () => import('@/pages/Middle/Admin/AdminPermission/PermissionList'),
authority: {
permission:[''],
}
},
AdminPermissionDetail:{
name: '权限详情',
icon: 'idcard',
path: '/AdminPermission/AdminPermissionDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminPermission/PermissionDetail'),
authority: {
permission:[''],
},
},
AdminPermissionAdd:{
name: '添加权限',
icon: 'idcard',
path: '/AdminPermission/AdminPermissionAdd',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminPermission/PermissionAdd'),
authority: {
permission:[''],
},
},
AdminPermissionUpdate:{
name: '修改权限',
icon: 'idcard',
path: '/AdminPermission/AdminPermissionUpdate',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminPermission/PermissionUpdate'),
authority: {
permission:[''],
},
},
}
export default AdminPermissionRouterMap

View File

@ -0,0 +1,68 @@
// 中台服务路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminServiceRouterMap = {
AdminService:{
name: '服务管理',
icon: 'idcard',
component: view.page,
authority: {
permission:[''],
}
},
AdminServiceList:{
name: '服务列表',
icon: 'idcard',
path: '/AdminService/AdminServiceList',
component: () => import('@/pages/Middle/Admin/AdminService/ServiceList'),
authority: {
permission:[''],
}
},
AdminServiceDetail:{
name: '服务详情',
icon: 'idcard',
path: '/AdminService/AdminServiceDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminService/ServiceDetail'),
authority: {
permission:[''],
},
},
AdminServiceAdd:{
name: '添加服务',
icon: 'idcard',
path: '/AdminService/AdminServiceAdd',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminService/ServiceAdd'),
authority: {
permission:[''],
},
},
AdminServiceUpdate:{
name: '修改服务',
icon: 'idcard',
path: '/AdminService/AdminServiceUpdate',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminService/ServiceUpdate'),
authority: {
permission:[''],
},
},
}
export default AdminServiceRouterMap

View File

@ -0,0 +1,68 @@
// 中台门店路由
// 视图组件
const view = {
tabs: () => import('@/layouts/tabs'),
blank: () => import('@/layouts/BlankView'),
page: () => import('@/layouts/PageView')
}
// 路由组件注册
const AdminStoreRouterMap = {
AdminStore:{
name: '门店管理',
icon: 'idcard',
component: view.page,
authority: {
Store:[''],
}
},
AdminStoreList:{
name: '门店列表',
icon: 'idcard',
path: '/AdminStore/AdminStoreList',
component: () => import('@/pages/Middle/Admin/AdminStore/StoreList'),
authority: {
Store:[''],
}
},
AdminStoreDetail:{
name: '门店详情',
icon: 'idcard',
path: '/AdminStore/AdminStoreDetail',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminStore/StoreDetail'),
authority: {
Store:[''],
},
},
AdminStoreAdd:{
name: '添加门店',
icon: 'idcard',
path: '/AdminStore/AdminStoreAdd',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminStore/StoreAdd'),
authority: {
Store:[''],
},
},
AdminStoreUpdate:{
name: '修改门店',
icon: 'idcard',
path: '/AdminStore/AdminStoreUpdate',
meta: {
invisible:true, // 不在菜单中显示
},
component: () => import('@/pages/Middle/Admin/AdminStore/StoreUpdate'),
authority: {
Store:[''],
},
},
}
export default AdminStoreRouterMap

View File

@ -9,15 +9,51 @@ const view = {
}
// 路由组件注册
const BaseAdminRouterMap = {
Admin:{
const AdminUserRouterMap = {
AdminUser:{
name: '用户管理',
icon: 'idcard',
component: view.page,
meta: {
invisible:true, // 不在菜单中显示
},
authority: {
permission:[''],
}
},
AdminUserList:{
name: '用户列表',
icon: 'idcard',
path: '/AdminUser/AdminUserList',
component: () => import('@/pages/Middle/Admin/AdminUser/UserList'),
authority: {
permission:[''],
}
},
AdminUserAdd:{
name: '添加用户',
icon: 'idcard',
path: '/AdminUser/AdminUserAdd',
component: () => import('@/pages/Middle/Admin/AdminUser/UserAdd'),
meta: {
invisible:true, // 不在菜单中显示
},
authority: {
permission:[''],
},
},
AdminUserUpdate:{
name: '修改用户',
icon: 'idcard',
path: '/AdminUser/AdminUserUpdate',
component: () => import('@/pages/Middle/Admin/AdminUser/UserUpdate'),
meta: {
invisible:true, // 不在菜单中显示
},
authority: {
permission:[''],
},
},
}
export default BaseAdminRouterMap
export default AdminUserRouterMap

View File

@ -10,7 +10,7 @@ const view = {
// 路由组件注册
const BaseAdminRouterMap = {
Admin:{
BaseAdmin:{
name: '用户管理',
icon: 'idcard',
component: view.page,

View File

@ -20,6 +20,7 @@ const view = {
},
dashboard: {
name: '仪表盘',
redirect: '/dashboard/workplace',
component: view.blank
},
workplace: {

View File

@ -1,5 +1,15 @@
import BaseRouterMap from './base.map.js'
// 以下为中台服务的路由配置
import AdminUserRouterMap from '@/router/Middle/Admin/AdminUser/router.map.js'
import AdminConfigRouterMap from '@/router/Middle/Admin/AdminConfig/router.map.js'
import AdminServiceRouterMap from '@/router/Middle/Admin/AdminService/router.map.js'
import AdminPermissionRouterMap from '@/router/Middle/Admin/AdminPermission/router.map.js'
import AdminCompanyRouterMap from '@/router/Middle/Admin/AdminCompany/router.map.js'
import AdminLogRouterMap from '@/router/Middle/Admin/AdminLog/router.map.js'
import AdminAgentRouterMap from '@/router/Middle/Admin/AdminAgent/router.map.js'
import BaseConfigRouterMap from '@/router/Middle/Base/BaseConfig/router.map.js'
import BaseServiceRouterMap from '@/router/Middle/Base/BaseService/router.map.js'
import BaseCompanyRouterMap from '@/router/Middle/Base/BaseCompany/router.map.js'
@ -7,14 +17,21 @@ import BaseAdminRouterMap from '@/router/Middle/Base/BaseAdmin/router.map.js'
// 合并BaseRouterMap ConfigRouterMap ServiceRouterMap
const routerMap = Object.assign({},
BaseRouterMap,
AdminUserRouterMap,
AdminConfigRouterMap,
AdminServiceRouterMap,
AdminPermissionRouterMap,
AdminCompanyRouterMap,
AdminLogRouterMap,
AdminAgentRouterMap,
BaseAdminRouterMap,
BaseConfigRouterMap,
BaseServiceRouterMap,
BaseCompanyRouterMap,
BaseAdminRouterMap,
)

View File

@ -95,7 +95,9 @@ const redirectGuard = (to, from, next, options) => {
if (store.state.setting.layout === 'mix') { // 如果是混合导航模式
console.log("==混合导航模式==")
const firstMenu = store.getters['setting/firstMenu'] // 获取第一个菜单
// console.log("store.getters['setting/firstMenu']", store.getters['setting/firstMenu'])
if (firstMenu.find(item => item.fullPath === to.fullPath)) { // 如果是第一个菜单列表,
store.commit('setting/setActivatedFirst', to.fullPath) // 设置激活的第一个菜单
@ -103,6 +105,8 @@ const redirectGuard = (to, from, next, options) => {
// console.log("store.getters['setting/subMenu']", store.getters['setting/subMenu'])
if (subMenu.length > 0) { // 如果有子菜单
const redirect = getFirstChild(subMenu) // 获取第一个子菜单
console.log("subMenu.length", subMenu.length)
console.log("redirect", redirect)
return next({path: redirect.fullPath}) // 重定向到第一个子菜单
}
}

View File

@ -3,15 +3,15 @@ export default {
state: {
uid: 0,
routesConfig: undefined, // 路由配置
user: [], // 用户信息
permissions: [], // 权限
settings: [], // 用户配置
project: [], // 项目信息
company: [], // 公司信息
user: undefined, // 用户信息
permissions: undefined, // 权限
settings: undefined, // 用户配置
project: undefined, // 项目信息
company: undefined, // 公司信息
},
getters: {
uid: state => { // 用户id
if (!state.uid) { // 如果没有用户uid
if (state.uid == 0) { // 如果没有用户uid
try {
const uid = localStorage.getItem(process.env.VUE_APP_UID_KEY) // 获取用户id
state.uid = uid // 将用户信息赋值给state.user
@ -19,6 +19,7 @@ export default {
console.error(e)
}
}
state.uid = localStorage.getItem(process.env.VUE_APP_UID_KEY) // 获取用户id
return state.uid // 如果有用户信息,直接返回
},
user: state => { // 用户信息
@ -80,6 +81,8 @@ export default {
console.error(e.message)
}
}
console.log("gggggggggggggggggggggggggggggggggggggggggggggggggggggggg")
return state.project // 如果有项目信息,则返回项目信息
},
company: state => { // 公司信息
if (!state.company) { // 如果没有公司信息
@ -92,6 +95,8 @@ export default {
console.error(e.message)
}
}
state.company = JSON.parse(state.company) // 将字符串转换为json对象
return state.company // 如果有公司信息,则返回公司信息
},
},

View File

@ -67,6 +67,13 @@ function setAuthorization(auth, authType = AUTH_TYPE.BEARER) { // 设置认证
}
}
/**
* 设置企业信息
*/
function setCompany(company) {
Cookie.set('company', company)
}
/**
* 移出认证信息
* @param authType {AUTH_TYPE} 认证类型
@ -173,5 +180,6 @@ export {
removeAuthorization,
checkAuthorization,
loadInterceptors,
parseUrlParams
parseUrlParams,
setCompany
}

View File

@ -139,15 +139,12 @@ function loadRoutes(routesConfig) { // 加载路由
const { router, store, i18n } = appOptions
const Permission = store.getters['account/permissions'] // 获取权限
console.log("======Permission:",Permission)
if (routesConfig) { // 如果routesConfig已经存在
store.commit('account/setRoutesConfig', routesConfig) // 通过store的account模块的setRoutesConfig方法更新路由配置
} else {
routesConfig = store.getters['account/routesConfig'] // 通过store的account模块的routesConfig方法获取路由配置
}
// 如果 routesConfig 有值,则更新到本地,否则从本地获取
console.log("=====setRoutesConfig:", routesConfig)
// 根据权限过滤路由配置
const filteredRoutesConfig = filterRoutesConfig(routesConfig, Permission) // 根据权限过滤路由配置