Commit 2e50db52 authored by jiangqihao's avatar jiangqihao

权限登录

parent 47978b48
......@@ -8,7 +8,9 @@ import { role } from '@/api/account'
* @param route
*/
function hasPermission(route, paths) {
// console.log("route",route)
if (route.name) {
// console.log('name',route.name)
return paths.includes(route.name)
}
}
......@@ -77,6 +79,8 @@ const mutations = {
const actions = {
generateRoutes({ commit }) {
console.log('2')
console.log(JSON.parse(localStorage.getItem('PATHS')))
return new Promise(resolve => {
const paths = JSON.parse(localStorage.getItem('PATHS'))
let accessedRoutes
......@@ -90,13 +94,14 @@ const actions = {
resolve(accessedRoutes)
})
},
getPermissions({ commit }, roleId) {
console.log(roleId)
normalRequest(role.searchOneUrl, { id: roleId }).then(res => {
async getPermissions({ commit }, roleId) {
console.log("1")
await normalRequest(role.searchOneUrl, { id: roleId }).then(res => {
var menus = res.results.data.results[0].RoleToMenuMenuList
var permissions = []
var paths = []
treeToArray(menus, permissions, paths)
console.log(paths)
localStorage.setItem('PERMISSIONS', JSON.stringify(permissions))
localStorage.setItem('PATHS', JSON.stringify(paths))
commit('SET_PERMISSIONS', permissions)
......
......@@ -12,7 +12,6 @@
<el-button
type="primary"
icon="el-icon-plus"
v-permission='20101'
@click="handleAdd"
>添加</el-button>
</template>
......
<template>
<div class="dashboard-editor-container">
<panel-group @handleSetLineChartData="handleSetLineChartData" />
<div class="two-column">
<div class="left" />
<SystemNotice />
</div>
<div class="two-column">
<div class="left" />
</div>
<el-row style="background:#fff;padding:16px 16px 0;margin-bottom:32px;">
<line-chart :chart-data="lineChartData" />
</el-row>
<el-row :gutter="32">
<el-col
:xs="24"
:sm="24"
:lg="8"
>
<div class="chart-wrapper">
<raddar-chart />
</div>
</el-col>
<el-col
:xs="24"
:sm="24"
:lg="8"
>
<div class="chart-wrapper">
<pie-chart />
</div>
</el-col>
<el-col
:xs="24"
:sm="24"
:lg="8"
>
<div class="chart-wrapper">
<bar-chart />
</div>
</el-col>
</el-row>
<el-row :gutter="8">
<el-col
:xs="{span: 24}"
:sm="{span: 24}"
:md="{span: 24}"
:lg="{span: 12}"
:xl="{span: 12}"
style="padding-right:8px;margin-bottom:30px;"
>
<transaction-table />
</el-col>
<el-col
:xs="{span: 24}"
:sm="{span: 12}"
:md="{span: 12}"
:lg="{span: 6}"
:xl="{span: 6}"
style="margin-bottom:30px;"
>
<todo-list />
</el-col>
<el-col
:xs="{span: 24}"
:sm="{span: 12}"
:md="{span: 12}"
:lg="{span: 6}"
:xl="{span: 6}"
style="margin-bottom:30px;"
>
<box-card />
</el-col>
</el-row>
<div>
<h2>首页</h2>
</div>
</template>
<script>
import SystemNotice from './components/SystemNotice'
// import ComplaintsAndSuggestions from './components/ComplaintsAndSuggestions'
import PanelGroup from './components/PanelGroup'
import LineChart from './components/LineChart'
import RaddarChart from './components/RaddarChart'
import PieChart from './components/PieChart'
import BarChart from './components/BarChart'
import TransactionTable from './components/TransactionTable'
import TodoList from './components/TodoList'
import BoxCard from './components/BoxCard'
const lineChartData = {
newVisitis: {
expectedData: [100, 120, 161, 134, 105, 160, 165],
actualData: [120, 82, 91, 154, 162, 140, 145]
},
messages: {
expectedData: [200, 192, 120, 144, 160, 130, 140],
actualData: [180, 160, 151, 106, 145, 150, 130]
},
purchases: {
expectedData: [80, 100, 121, 104, 105, 90, 100],
actualData: [120, 90, 100, 138, 142, 130, 130]
},
shoppings: {
expectedData: [130, 140, 141, 142, 145, 150, 160],
actualData: [120, 82, 91, 154, 162, 140, 130]
}
}
export default {
name: 'DashboardAdmin',
components: {
SystemNotice,
// ComplaintsAndSuggestions,
PanelGroup,
LineChart,
RaddarChart,
PieChart,
BarChart,
TransactionTable,
TodoList,
BoxCard
},
data() {
return {
lineChartData: lineChartData.newVisitis
}
},
methods: {
handleSetLineChartData(type) {
this.lineChartData = lineChartData[type]
}
}
}
</script>
<style lang="scss" scoped>
.dashboard-editor-container {
padding: 32px;
background-color: rgb(240, 242, 245);
position: relative;
.github-corner {
position: absolute;
top: 0px;
border: 0;
right: 0;
}
.chart-wrapper {
background: #fff;
padding: 16px 16px 0;
margin-bottom: 32px;
}
}
</script>
@media (max-width: 1024px) {
.chart-wrapper {
padding: 8px;
}
}
<style>
.two-column {
display: flex;
justify-content: space-between;
margin-bottom: 30px;
> div {
width: 49%;
background-color: #fff;
}
}
</style>
</style>
\ No newline at end of file
......@@ -251,6 +251,8 @@ export default {
},
created() {
localStorage.removeItem('USERINFO')
localStorage.removeItem('PERMISSIONS')
localStorage.removeItem('PATHS')
// this.userInfo = JSON.parse(localStorage.getItem('CEINFO'))
// window.addEventListener('storage', this.afterQRScan)
},
......@@ -290,7 +292,6 @@ export default {
this.$store.dispatch('user/login', params)
.then(() => {
const start = JSON.parse(localStorage.getItem('CEINFO')).ExtIsFistTime_SDK ? true : false
console.log(start)
if (start) {
this.$confirm('首次登录请修改密码', '提示', {
confirmButtonText: '确定',
......@@ -302,7 +303,9 @@ export default {
this.loading = false
})
} else {
this.$router.push({ path: this.redirect || '/', query: this.otherQuery })
// localStorage.setItem('PATHS', JSON.parse(localStorage.getItem('PATHS')))
this.$router.push({ path: '/', query: this.otherQuery })
// this.$router.push({ path: this.redirect || '/', query: this.otherQuery })
this.loading = false
}
})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment