2019-09-23 17:49:04 +08:00
|
|
|
<template>
|
2019-10-22 13:40:42 +08:00
|
|
|
<div class="app-wrapper">
|
2020-04-15 15:06:51 +08:00
|
|
|
<div class="examList" :style="{width: widthLeft+'px'}">
|
|
|
|
<demon-list ref="demonList" @goRoutePath="goRoutePath" />
|
2019-10-31 13:57:17 +08:00
|
|
|
</div>
|
|
|
|
<drap-left :width-left="widthLeft" @drapWidth="drapWidth" />
|
|
|
|
<transition>
|
2020-11-25 13:31:36 +08:00
|
|
|
<router-view />
|
2019-10-31 13:57:17 +08:00
|
|
|
</transition>
|
2019-10-22 13:40:42 +08:00
|
|
|
</div>
|
2019-09-23 17:49:04 +08:00
|
|
|
</template>
|
|
|
|
|
|
|
|
<script>
|
2019-10-22 13:40:42 +08:00
|
|
|
import demonList from './demonList';
|
|
|
|
import drapLeft from '@/views/components/drapLeft/index';
|
|
|
|
import { launchFullscreen } from '@/utils/screen';
|
|
|
|
import localStore from 'storejs';
|
|
|
|
import { getSessionStorage, setSessionStorage } from '@/utils/auth';
|
2019-09-23 17:49:04 +08:00
|
|
|
|
2019-10-22 13:40:42 +08:00
|
|
|
export default {
|
2019-10-29 15:06:15 +08:00
|
|
|
name: 'TrainingPlatform',
|
|
|
|
components: {
|
|
|
|
demonList,
|
|
|
|
drapLeft
|
|
|
|
},
|
|
|
|
data() {
|
|
|
|
return {
|
2020-11-25 13:31:36 +08:00
|
|
|
widthLeft: 450
|
2019-10-29 15:06:15 +08:00
|
|
|
};
|
|
|
|
},
|
|
|
|
computed: {
|
|
|
|
width() {
|
|
|
|
return this.$store.state.app.width;
|
|
|
|
}
|
|
|
|
},
|
|
|
|
mounted() {
|
|
|
|
this.widthLeft = Number(localStore.get('LeftWidth')) ? Number(localStore.get('LeftWidth')) : 450;
|
|
|
|
},
|
|
|
|
methods: {
|
|
|
|
drapWidth(width) {
|
|
|
|
this.widthLeft = Number(width);
|
|
|
|
},
|
|
|
|
goRoutePath(data) {
|
|
|
|
const againEnter = getSessionStorage('againEnter') || null;
|
|
|
|
if (!againEnter) {
|
|
|
|
launchFullscreen();
|
2020-11-25 13:31:36 +08:00
|
|
|
const project = getSessionStorage('project');
|
|
|
|
const userId = this.$store.state.user.id;
|
|
|
|
const path = localStore.get('trainingPlatformRoute' + userId + project);
|
2019-10-29 15:06:15 +08:00
|
|
|
if (path && path.startsWith('/trainingPlatform')) {
|
2020-11-25 13:31:36 +08:00
|
|
|
localStore.set('orignalTrainingPlatformRoute' + userId + project, `/trainingPlatform/permission/${data[0].id}`);
|
2019-10-29 15:06:15 +08:00
|
|
|
this.$router.push(path);
|
|
|
|
} else if (data && data[0]) {
|
|
|
|
this.$router.push(`/trainingPlatform/permission/${data[0].id}`);
|
|
|
|
}
|
|
|
|
setSessionStorage('againEnter', true);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2019-10-22 13:40:42 +08:00
|
|
|
};
|
2019-09-23 17:49:04 +08:00
|
|
|
</script>
|
|
|
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
|
|
@import "src/styles/mixin.scss";
|
|
|
|
.app-wrapper {
|
|
|
|
position: relative;
|
|
|
|
height: 100%;
|
|
|
|
width: 100%;
|
|
|
|
overflow: hidden;
|
|
|
|
}
|
|
|
|
.examList {
|
2019-09-25 13:05:01 +08:00
|
|
|
height: 100%;
|
2019-10-31 13:57:17 +08:00
|
|
|
float: left;
|
2019-09-23 17:49:04 +08:00
|
|
|
}
|
|
|
|
</style>
|