desc: 删除多余文件, 调整路径配置
This commit is contained in:
parent
834d4e30cd
commit
7ec68a75e3
@ -48,6 +48,7 @@ import ScriptDisplay from '@/views/scriptManage/display/index';
|
|||||||
import TeachDetail from '@/views/teach/detail/index';
|
import TeachDetail from '@/views/teach/detail/index';
|
||||||
import TeachHome from '@/views/teach/index';
|
import TeachHome from '@/views/teach/index';
|
||||||
import Pay from '@/views/components/pay/index';
|
import Pay from '@/views/components/pay/index';
|
||||||
|
|
||||||
import ExamDetail from '@/views/exam/detail/examDetail';
|
import ExamDetail from '@/views/exam/detail/examDetail';
|
||||||
import ExamHome from '@/views/exam/index';
|
import ExamHome from '@/views/exam/index';
|
||||||
import ExamCourseDetail from '@/views/exam/detail/courseDetail';
|
import ExamCourseDetail from '@/views/exam/detail/courseDetail';
|
||||||
@ -57,8 +58,6 @@ import DemonstrationDetail from '@/views/demonstration/detail/index';
|
|||||||
|
|
||||||
import PlanMonitorEditTool from '@/views/planMonitor/editTool/index';
|
import PlanMonitorEditTool from '@/views/planMonitor/editTool/index';
|
||||||
import PlanMonitorEditUserTool from '@/views/planMonitor/editTool/userindex';
|
import PlanMonitorEditUserTool from '@/views/planMonitor/editTool/userindex';
|
||||||
// import PlanMonitor from '@/views/planMonitor/index';
|
|
||||||
// import PlanMonitorHome from '@/views/planMonitor/home';
|
|
||||||
import PlanMonitorDetail from '@/views/planMonitor/detail';
|
import PlanMonitorDetail from '@/views/planMonitor/detail';
|
||||||
|
|
||||||
import DesignPlatformHome from '@/views/designPlatform/home';
|
import DesignPlatformHome from '@/views/designPlatform/home';
|
||||||
@ -484,56 +483,56 @@ export const asyncRouter = [
|
|||||||
component: TeachDetail,
|
component: TeachDetail,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
{
|
{ // 试卷列表
|
||||||
path: 'examHome/:subSystem',
|
|
||||||
component: ExamHome,
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'exam/:examId',
|
|
||||||
component: ExamDetail,
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'pay/:lessonId',
|
|
||||||
component: Pay,
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'course/:subSystem',
|
path: 'course/:subSystem',
|
||||||
component: ExamCourseDetail,
|
component: ExamCourseDetail,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
{
|
{ // 考试系统 课程列表
|
||||||
path: 'result/:userExamId',
|
path: 'examHome/:subSystem',
|
||||||
component: ExamResult,
|
component: ExamHome,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
{
|
{ // 试卷详情
|
||||||
path: 'permission/:mapId',
|
path: 'exam/:examId',
|
||||||
component: Package,
|
component: ExamDetail,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
{
|
{ // 试卷列表
|
||||||
path: 'permission/detail/:id',
|
|
||||||
component: PackageDetail,
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'draft',
|
|
||||||
component: PackageDraft,
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'examRule/manage',
|
path: 'examRule/manage',
|
||||||
component: PublishExamRule,
|
component: PublishExamRule,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
{
|
{ // 创建试卷
|
||||||
path: 'examRule/draft/:mode/:ruleId/:lessonId',
|
path: 'examRule/draft/:mode/:ruleId/:lessonId',
|
||||||
component: PublishExamRuleDraft,
|
component: PublishExamRuleDraft,
|
||||||
hidden: true
|
hidden: true
|
||||||
},
|
},
|
||||||
|
{ // 购买
|
||||||
|
path: 'pay/:lessonId',
|
||||||
|
component: Pay,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
|
{ // 考试结果
|
||||||
|
path: 'result/:userExamId',
|
||||||
|
component: ExamResult,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
|
{ // 线路权限列表
|
||||||
|
path: 'permission/:mapId',
|
||||||
|
component: Package,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
|
{ // 打包详情
|
||||||
|
path: 'permission/detail/:id',
|
||||||
|
component: PackageDetail,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
|
{ // 权限打包
|
||||||
|
path: 'draft',
|
||||||
|
component: PackageDraft,
|
||||||
|
hidden: true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: 'runPlan/manage/:mapId',
|
path: 'runPlan/manage/:mapId',
|
||||||
component: PlanMonitorDetail,
|
component: PlanMonitorDetail,
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-card v-loading="loading">
|
<div v-loading="loading" class="joylink-card">
|
||||||
<div slot="header" style="text-align: center;">
|
<div class="card-title">
|
||||||
<span><b>{{ $t('demonstration.simulationName') + courseModel.name }}</b></span>
|
<span><b>{{ $t('demonstration.simulationName') + courseModel.name }}</b></span>
|
||||||
</div>
|
</div>
|
||||||
<div class="simulation-detail" :style="{ height: height-230 +'px' }">
|
<div class="simulation-detail">
|
||||||
<p class="list-item">
|
<p class="list-item">
|
||||||
<span class="list-label">{{ $t('demonstration.productDescription') }}</span>
|
<span class="list-label">{{ $t('demonstration.productDescription') }}</span>
|
||||||
<span class="list-elem">{{ courseModel.remarks }}</span>
|
<span class="list-elem">{{ courseModel.remarks }}</span>
|
||||||
@ -21,8 +21,9 @@
|
|||||||
<el-button v-show="isCreateRoom" :loading="buttonLoading" type="primary" @click="start">{{ $t('demonstration.createRoom') }}</el-button>
|
<el-button v-show="isCreateRoom" :loading="buttonLoading" type="primary" @click="start">{{ $t('demonstration.createRoom') }}</el-button>
|
||||||
<el-button v-show="isInRoom" :loading="buttonLoading" type="primary" @click="joinRoom">{{ $t('demonstration.enterRoom') }}</el-button>
|
<el-button v-show="isInRoom" :loading="buttonLoading" type="primary" @click="joinRoom">{{ $t('demonstration.enterRoom') }}</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// import { getPublishMapInfo } from '@/api/jmap/map';
|
// import { getPublishMapInfo } from '@/api/jmap/map';
|
||||||
import { getGoodsTryUse } from '@/api/management/goods';
|
import { getGoodsTryUse } from '@/api/management/goods';
|
||||||
@ -82,12 +83,6 @@ export default {
|
|||||||
},
|
},
|
||||||
mapId() {
|
mapId() {
|
||||||
return this.$route.query.mapId;
|
return this.$route.query.mapId;
|
||||||
},
|
|
||||||
// prodId() {
|
|
||||||
// return this.$route.query.prodId;
|
|
||||||
// },
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height - 50;
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
@ -261,15 +256,23 @@ export default {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
|
||||||
::-webkit-scrollbar {
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
width: 3px;
|
.joylink-card{
|
||||||
height: 3px;
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
.card-title{
|
||||||
|
height: 47px;
|
||||||
|
line-height: 47px;
|
||||||
|
text-align: center;
|
||||||
|
border-bottom: 1px solid #d6d6d6;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
|
||||||
<style>
|
|
||||||
.simulation-detail {
|
.simulation-detail {
|
||||||
margin: 50px;
|
padding: 50px;
|
||||||
|
padding-bottom: 0;
|
||||||
|
height: calc(100% - 107px);
|
||||||
|
overflow: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.list-item {
|
.list-item {
|
||||||
@ -289,10 +292,8 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.btn-buy {
|
.btn-buy {
|
||||||
position: relative;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
justify-content: center;
|
padding: 10px 0;
|
||||||
transform: translateY(-20px);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-tabs--border-card>.el-tabs__header .el-tabs__item {
|
.el-tabs--border-card>.el-tabs__header .el-tabs__item {
|
||||||
|
@ -1,97 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-card :style="{height: height+'px'}">
|
|
||||||
<div class="home-box" :style="{height: height+'px'}">
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper">
|
|
||||||
<h1 class="title">
|
|
||||||
{{ $t('demonstration.simulationSystem') }}
|
|
||||||
<img :src="logo" alt="" class="logo-img">
|
|
||||||
</h1>
|
|
||||||
<div class="card-box">
|
|
||||||
<el-carousel :interval="4000" type="card" height="380px">
|
|
||||||
<el-carousel-item v-for="(item, index) in listImg" :key="index">
|
|
||||||
<img :src="item.src" alt="" height="100%" width="100%">
|
|
||||||
</el-carousel-item>
|
|
||||||
</el-carousel>
|
|
||||||
</div>
|
|
||||||
<div class="brief-box">{{ $t('demonstration.simulationSystemDescription') }}</div>
|
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
</el-card>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import logo from '@/assets/logo.png';
|
|
||||||
import home1 from '@/assets/home/home1.png';
|
|
||||||
import home2 from '@/assets/home/home2.png';
|
|
||||||
import home3 from '@/assets/home/demon1.jpg';
|
|
||||||
import home4 from '@/assets/home/tring1.png';
|
|
||||||
import home5 from '@/assets/home/tring4.jpg';
|
|
||||||
import home6 from '@/assets/home/demon2.jpg';
|
|
||||||
export default {
|
|
||||||
name: 'Home',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
listImg: [
|
|
||||||
{ src: home1 },
|
|
||||||
{ src: home2 },
|
|
||||||
{ src: home3 },
|
|
||||||
{ src: home4 },
|
|
||||||
{ src: home5 },
|
|
||||||
{ src: home6 }
|
|
||||||
],
|
|
||||||
logo: logo
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height - 50;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
||||||
@import "src/styles/mixin.scss";
|
|
||||||
|
|
||||||
/deep/ .el-carousel {
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.home-box {
|
|
||||||
padding: 15px 100px;
|
|
||||||
float: left;
|
|
||||||
width: 100%;
|
|
||||||
font-family: 'Microsoft YaHei';
|
|
||||||
|
|
||||||
.title {
|
|
||||||
font-size: 35px;
|
|
||||||
width: 100%;
|
|
||||||
text-align: center;
|
|
||||||
font-weight: 400;
|
|
||||||
margin-top: 55px;
|
|
||||||
border-bottom: 2px dashed #333;
|
|
||||||
padding-bottom: 15px;
|
|
||||||
margin-bottom: 70px;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
.logo-img {
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
width: 55px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-box {
|
|
||||||
width: 100%;
|
|
||||||
padding: 0 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.brief-box {
|
|
||||||
font-size: 18px;
|
|
||||||
text-indent: 2em;
|
|
||||||
line-height: 32px;
|
|
||||||
padding: 40px 20px 0;
|
|
||||||
font-family: unset;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,74 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class="app-wrapper">
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper">
|
|
||||||
<div v-show="listShow" class="examList" :style="{width: widthLeft+'px'}">
|
|
||||||
<demon-list ref="demonList" :height="height" />
|
|
||||||
</div>
|
|
||||||
<drap-left :width-left="widthLeft" @drapWidth="drapWidth" />
|
|
||||||
<transition>
|
|
||||||
<router-view :product-list="productList" />
|
|
||||||
</transition>
|
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { mapGetters } from 'vuex';
|
|
||||||
import demonList from './list/demonList';
|
|
||||||
import drapLeft from '@/views/components/drapLeft/index';
|
|
||||||
import localStore from 'storejs';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'Exam',
|
|
||||||
components: {
|
|
||||||
demonList,
|
|
||||||
drapLeft
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
listShow: true,
|
|
||||||
widthLeft: 450,
|
|
||||||
productList: []
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
...mapGetters([
|
|
||||||
'lessonbar'
|
|
||||||
]),
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height - 50;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
'lessonbar.opened': function (val) {
|
|
||||||
this.listShow = val;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.widthLeft = Number(localStore.get('LeftWidth'));
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
refresh() {
|
|
||||||
this.$refs && this.$refs.demonList && this.$refs.demonList.refresh();
|
|
||||||
},
|
|
||||||
drapWidth(width) {
|
|
||||||
this.widthLeft = Number(width);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
||||||
@import "src/styles/mixin.scss";
|
|
||||||
|
|
||||||
.app-wrapper {
|
|
||||||
@include clearfix;
|
|
||||||
position: relative;
|
|
||||||
height: 100%;
|
|
||||||
width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.examList {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,146 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-card v-loading="loading" class="map-list-main">
|
|
||||||
<div slot="header" class="clearfix">
|
|
||||||
<span>{{ $t('global.mapList') }}</span>
|
|
||||||
</div>
|
|
||||||
<filter-city ref="filerCity" filter-empty :query-function="queryFunction" @filterSelectChange="refresh" />
|
|
||||||
<el-input v-model="filterText" :placeholder="this.$t('global.filteringKeywords')" clearable />
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper" :style="{ height: (height-125) +'px' }">
|
|
||||||
<el-tree
|
|
||||||
ref="tree"
|
|
||||||
:data="treeList"
|
|
||||||
node-key="id"
|
|
||||||
:props="defaultProps"
|
|
||||||
highlight-current
|
|
||||||
:span="22"
|
|
||||||
:filter-node-method="filterNode"
|
|
||||||
@node-click="clickEvent"
|
|
||||||
@node-contextmenu="showContextMenu"
|
|
||||||
>
|
|
||||||
<span slot-scope="{ node:tnode, data }">
|
|
||||||
<span
|
|
||||||
class="el-icon-tickets"
|
|
||||||
:style="{color: data.valid ? 'green':''}"
|
|
||||||
/>
|
|
||||||
<span :style="{color: data.valid ? 'green':''}"> {{ tnode.label }}</span>
|
|
||||||
</span>
|
|
||||||
</el-tree>
|
|
||||||
</el-scrollbar>
|
|
||||||
</el-card>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import { getPublishMapTree } from '@/api/management/mapprd';
|
|
||||||
import { UrlConfig } from '@/router/index';
|
|
||||||
import { getSessionStorage, setSessionStorage, removeSessionStorage } from '@/utils/auth';
|
|
||||||
import FilterCity from '@/views/components/filterCity';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'ExamDetailList',
|
|
||||||
components: {
|
|
||||||
FilterCity
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
height: {
|
|
||||||
type: Number,
|
|
||||||
required: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
loading: true,
|
|
||||||
defaultShowKeys: [],
|
|
||||||
queryFunction: getPublishMapTree,
|
|
||||||
filterText: '',
|
|
||||||
treeData: [],
|
|
||||||
treeList: [],
|
|
||||||
selected: {},
|
|
||||||
defaultProps: {
|
|
||||||
children: 'children',
|
|
||||||
label: 'name'
|
|
||||||
},
|
|
||||||
node: {
|
|
||||||
}
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
role() {
|
|
||||||
return this.$store.state.user.roles.includes('04') ||
|
|
||||||
this.$store.state.user.roles.includes('05') ||
|
|
||||||
this.$store.state.user.roles.includes('01');
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
filterText(val) {
|
|
||||||
this.treeList = this.treeData.filter((res) => {
|
|
||||||
return res.name.includes(val);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
beforeDestroy () {
|
|
||||||
removeSessionStorage('demonList');
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
filterNode(value, data) {
|
|
||||||
if (!value) return true;
|
|
||||||
return data.name.indexOf(value) !== -1;
|
|
||||||
},
|
|
||||||
showContextMenu(e, obj, node, vueElem) {
|
|
||||||
if (obj) {
|
|
||||||
this.node = node;
|
|
||||||
this.selected = obj;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
clickEvent(obj, data, ele) {
|
|
||||||
if (obj.type == 'Map') {
|
|
||||||
setSessionStorage('demonList', obj.id);
|
|
||||||
this.$router.push({ path: `${UrlConfig.demonstration.detail}/${obj.id}` });
|
|
||||||
}
|
|
||||||
},
|
|
||||||
async refresh(filterSelect) {
|
|
||||||
this.loading = true;
|
|
||||||
this.treeData = this.treeList = [];
|
|
||||||
try {
|
|
||||||
const res = await getPublishMapTree(filterSelect);
|
|
||||||
this.treeData = res.data;
|
|
||||||
this.treeList = this.filterText
|
|
||||||
? res.data.filter(elem => { return elem.name.includes(this.filterText); })
|
|
||||||
: res.data;
|
|
||||||
|
|
||||||
if (this.treeData.length > 0) {
|
|
||||||
this.treeData.forEach(v => {
|
|
||||||
v.children = [];
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
this.$nextTick(() => {
|
|
||||||
const mapId = getSessionStorage('demonList') || null;
|
|
||||||
this.$refs.tree.setCurrentKey(mapId);
|
|
||||||
this.loading = false;
|
|
||||||
});
|
|
||||||
} catch (error) {
|
|
||||||
this.loading = false;
|
|
||||||
this.$messageBox(this.$t('error.refreshFailed'));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
||||||
.back-home {
|
|
||||||
float: right;
|
|
||||||
cursor: pointer;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
color: #3ea726;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<style>
|
|
||||||
.el-tree {
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.el-tree-node.is-current>.el-tree-node__content {
|
|
||||||
background-color: #e4e3e3 !important;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,10 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-card>
|
<div class="joylink-card">
|
||||||
<div slot="header" style="text-align: center;">
|
<div class="card-title">
|
||||||
<b>{{ $t('exam.nameOfTestPaper') +': ' + examDetails.name }}</b>
|
<b>{{ $t('exam.nameOfTestPaper') +': ' + examDetails.name }}</b>
|
||||||
</div>
|
</div>
|
||||||
<div style="margin:50px; overflow-y: auto;">
|
<div style="padding:50px; padding-right: 0; height: 100%;">
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper" :style="{ height: height - 190 +'px' }">
|
<el-scrollbar wrap-class="scrollbar-wrapper">
|
||||||
<p class="list-item">
|
<p class="list-item">
|
||||||
<span class="list-label">{{ $t('exam.examStartTime') +':' }}</span>
|
<span class="list-label">{{ $t('exam.examStartTime') +':' }}</span>
|
||||||
<span v-if="examDetails.startTime" class="list-elem">
|
<span v-if="examDetails.startTime" class="list-elem">
|
||||||
@ -40,13 +40,13 @@
|
|||||||
</p>
|
</p>
|
||||||
</span>
|
</span>
|
||||||
</p>
|
</p>
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
<div class="btn-start">
|
<div class="btn-start">
|
||||||
<el-button :loading="loading" type="primary" @click="exmaStart">{{ $t('exam.startTheExam') }}</el-button>
|
<el-button :loading="loading" type="primary" @click="exmaStart">{{ $t('exam.startTheExam') }}</el-button>
|
||||||
<el-button @click="back">{{ $t('global.back') }}</el-button>
|
<el-button @click="back">{{ $t('global.back') }}</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-scrollbar>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { examNotify } from '@/api/simulation';
|
import { examNotify } from '@/api/simulation';
|
||||||
@ -223,6 +223,16 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
@import "src/styles/mixin.scss";
|
@import "src/styles/mixin.scss";
|
||||||
|
.joylink-card{
|
||||||
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
.card-title{
|
||||||
|
height: 47px;
|
||||||
|
line-height: 47px;
|
||||||
|
text-align: center;
|
||||||
|
border-bottom: 1px solid #e6e6e6;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.menu li {
|
.menu li {
|
||||||
border-right: solid white 1px;
|
border-right: solid white 1px;
|
||||||
@ -279,7 +289,7 @@ export default {
|
|||||||
.list-table {
|
.list-table {
|
||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
padding-left: 120px;
|
padding-left: 120px;
|
||||||
width: calc(100%);
|
width: calc(100% - 80px);
|
||||||
}
|
}
|
||||||
|
|
||||||
.list-elem {
|
.list-elem {
|
||||||
@ -287,9 +297,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.btn-start {
|
.btn-start {
|
||||||
position: relative;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
justify-content: center;
|
margin-bottom: 20px;
|
||||||
transform: translateY(-20px);
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -68,7 +68,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
goLesson(row) {
|
goLesson(row) {
|
||||||
localStore.set('examDetail'+this.$route.params.subSystem, `${UrlConfig.trainingPlatform.course}/${this.$route.params.subSystem}?lessonId=${row.id}`);
|
localStore.set('examDetail' + this.$route.params.subSystem, `${UrlConfig.trainingPlatform.course}/${this.$route.params.subSystem}?lessonId=${row.id}`);
|
||||||
this.$router.push({ path: `${UrlConfig.trainingPlatform.course}/${this.$route.params.subSystem}`, query: {lessonId: row.id}});
|
this.$router.push({ path: `${UrlConfig.trainingPlatform.course}/${this.$route.params.subSystem}`, query: {lessonId: row.id}});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -877,16 +877,17 @@ export default {
|
|||||||
section.trainPosType = model.trainPosType;
|
section.trainPosType = model.trainPosType;
|
||||||
edits.push(section);
|
edits.push(section);
|
||||||
}
|
}
|
||||||
if (section.linkCode == model.linkCode && model.code != section.code) {
|
if (section.linkCode == model.linkCode && model.code != section.code && section.type == '01') {
|
||||||
// debugger;
|
|
||||||
const lastIndex = this.oldPoint.length - 1;
|
const lastIndex = this.oldPoint.length - 1;
|
||||||
if (this.oldPoint[0].x == section.points[section.points.length - 1].x && this.oldPoint[0].y == section.points[section.points.length - 1].y) {
|
if (this.oldPoint[0].x == section.points[section.points.length - 1].x && this.oldPoint[0].y == section.points[section.points.length - 1].y) {
|
||||||
section.points[section.points.length - 1].x = model.points[0].x;
|
section.points[section.points.length - 1].x = model.points[0].x;
|
||||||
section.points[section.points.length - 1].y = model.points[0].y;
|
section.points[section.points.length - 1].y = model.points[0].y;
|
||||||
|
section.offsetRight = model.offsetLeft;
|
||||||
}
|
}
|
||||||
if (this.oldPoint[lastIndex].x == section.points[0].x && this.oldPoint[lastIndex].y == section.points[0].y) {
|
if (this.oldPoint[lastIndex].x == section.points[0].x && this.oldPoint[lastIndex].y == section.points[0].y) {
|
||||||
section.points[0].x = model.points[model.points.length - 1].x;
|
section.points[0].x = model.points[model.points.length - 1].x;
|
||||||
section.points[0].y = model.points[model.points.length - 1].y;
|
section.points[0].y = model.points[model.points.length - 1].y;
|
||||||
|
section.offsetLeft = model.offsetRight;
|
||||||
}
|
}
|
||||||
edits.push(section);
|
edits.push(section);
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div style="height: 100%; overflow: auto;">
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
<div class="draft">
|
<div class="draft">
|
||||||
<el-button-group>
|
<el-button-group>
|
||||||
|
@ -1,20 +1,18 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-card>
|
<div class="joylink-card pack-box">
|
||||||
<div class="pack-box" :style="{ height: height +'px' }">
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper" style="">
|
<el-scrollbar wrap-class="scrollbar-wrapper" style="">
|
||||||
<el-steps class="steps" :active="display">
|
<el-steps class="steps" :active="display">
|
||||||
<el-step :title="$t('permission.customPackageRules')" icon="el-icon-edit" />
|
<el-step :title="$t('permission.customPackageRules')" icon="el-icon-edit" />
|
||||||
<el-step icon="el-icon-setting" />
|
<el-step icon="el-icon-setting" />
|
||||||
</el-steps>
|
</el-steps>
|
||||||
<el-card class="forms pack-rule">
|
<div class="joylink-card forms pack-rule">
|
||||||
<el-button class="addList" size="small" @click="dialogAdd">{{ $t('permission.addRules') }}</el-button>
|
<el-button class="addList" size="small" @click="dialogAdd">{{ $t('permission.addRules') }}</el-button>
|
||||||
<el-table
|
<el-table
|
||||||
:data="ruleList"
|
:data="ruleList"
|
||||||
border
|
border
|
||||||
show-summary
|
show-summary
|
||||||
:summary-method="getSummaries"
|
:summary-method="getSummaries"
|
||||||
style="width: 100%"
|
style="width: 100%; min-height: 300px;"
|
||||||
:height="height-300"
|
|
||||||
>
|
>
|
||||||
<el-table-column prop="permissionType" :label="$t('permission.permissionType')" width="80">
|
<el-table-column prop="permissionType" :label="$t('permission.permissionType')" width="80">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@ -46,7 +44,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
</el-card>
|
</div>
|
||||||
<div class="draft">
|
<div class="draft">
|
||||||
<el-button-group>
|
<el-button-group>
|
||||||
<el-button v-if="!urlInfo.url" type="primary" @click="packForm">{{ $t('permission.package') }}</el-button>
|
<el-button v-if="!urlInfo.url" type="primary" @click="packForm">{{ $t('permission.package') }}</el-button>
|
||||||
@ -63,10 +61,9 @@
|
|||||||
@addRuleForm="addRuleForm"
|
@addRuleForm="addRuleForm"
|
||||||
/>
|
/>
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
</div>
|
|
||||||
<qr-code ref="qrCode" />
|
<qr-code ref="qrCode" />
|
||||||
<can-transfer ref="canDistribute" @distribute="distribute" />
|
<can-transfer ref="canDistribute" @distribute="distribute" />
|
||||||
</el-card>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@ -96,11 +93,6 @@ export default {
|
|||||||
ruleList: []
|
ruleList: []
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height - 63;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.loadInitData();
|
this.loadInitData();
|
||||||
},
|
},
|
||||||
@ -262,6 +254,8 @@ export default {
|
|||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
.pack-box {
|
.pack-box {
|
||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
|
||||||
/deep/ {
|
/deep/ {
|
||||||
.el-step__icon.is-icon {
|
.el-step__icon.is-icon {
|
||||||
@ -289,6 +283,8 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.pack-rule {
|
.pack-rule {
|
||||||
|
width: 980px;
|
||||||
|
margin: 0 auto;
|
||||||
.addList {
|
.addList {
|
||||||
float: right;
|
float: right;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div style="height: 100%; overflow: auto;">
|
||||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||||
<select-role ref="selectRole" @reloadTable="reloadTable" />
|
<select-role ref="selectRole" @reloadTable="reloadTable" />
|
||||||
</div>
|
</div>
|
||||||
|
@ -23,13 +23,13 @@
|
|||||||
/>
|
/>
|
||||||
<edit-smooth-run-time ref="editSmoothRunTime" @dispatchDialog="dispatchDialog" />
|
<edit-smooth-run-time ref="editSmoothRunTime" @dispatchDialog="dispatchDialog" />
|
||||||
<add-smooth-run-time ref="addSmoothRunTime" @dispatchDialog="dispatchDialog" />
|
<add-smooth-run-time ref="addSmoothRunTime" @dispatchDialog="dispatchDialog" />
|
||||||
<duplicate-train ref="duplicateTrain" @dispatchDialog="dispatchDialog" @dispatchOperate="dispatchOperate" @refresh="refresh"/>
|
<duplicate-train ref="duplicateTrain" @dispatchDialog="dispatchDialog" @dispatchOperate="dispatchOperate" @refresh="refresh" />
|
||||||
<modifying-routing ref="modifyingRouting" @dispatchDialog="dispatchDialog" />
|
<modifying-routing ref="modifyingRouting" @dispatchDialog="dispatchDialog" />
|
||||||
<modifying-begin-time ref="modifyingBeginTime" />
|
<modifying-begin-time ref="modifyingBeginTime" />
|
||||||
|
|
||||||
<systerm-out ref="systermOut" />
|
<systerm-out ref="systermOut" />
|
||||||
<add-task ref="addTask" @dispatchOperate="dispatchOperate" @refresh="refresh"/>
|
<add-task ref="addTask" @dispatchOperate="dispatchOperate" @refresh="refresh" />
|
||||||
<delete-task ref="deleteTask" @dispatchOperate="dispatchOperate" @refresh="refresh"/>
|
<delete-task ref="deleteTask" @dispatchOperate="dispatchOperate" @refresh="refresh" />
|
||||||
<modifying-task ref="modifyingTask" @dispatchOperate="dispatchOperate" />
|
<modifying-task ref="modifyingTask" @dispatchOperate="dispatchOperate" />
|
||||||
|
|
||||||
<edit-station-between-time ref="editStationBetweenTime" />
|
<edit-station-between-time ref="editStationBetweenTime" />
|
||||||
@ -163,7 +163,7 @@ export default {
|
|||||||
this.$refs.schedule.displayTrain();
|
this.$refs.schedule.displayTrain();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
refresh(){
|
refresh() {
|
||||||
this.$store.dispatch('runPlan/refresh');
|
this.$store.dispatch('runPlan/refresh');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,94 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-card :style="{height: height+'px'}">
|
|
||||||
<div class="home-box" :style="{height: height+'px'}">
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper" style="margin-top:5px;">
|
|
||||||
<h1 class="title">
|
|
||||||
{{ $t('planMonitor.lianPlanSystem') }}
|
|
||||||
<img :src="logo" alt="" class="logo-img">
|
|
||||||
</h1>
|
|
||||||
<div class="card-box">
|
|
||||||
<el-carousel :interval="4000" type="card" height="370px">
|
|
||||||
<el-carousel-item v-for="(item, index) in listImg" :key="index">
|
|
||||||
<img :src="item.src" alt="" height="100%" width="100%">
|
|
||||||
</el-carousel-item>
|
|
||||||
</el-carousel>
|
|
||||||
</div>
|
|
||||||
<div class="brief-box">
|
|
||||||
{{ $t('planMonitor.lianPlanDescription') }}
|
|
||||||
</div>
|
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
</el-card>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import logo from '@/assets/logo.png';
|
|
||||||
import home1 from '@/assets/home/plan1.png';
|
|
||||||
import home2 from '@/assets/home/plan2.png';
|
|
||||||
import home3 from '@/assets/home/plan3.png';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'Home',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
listImg: [
|
|
||||||
{ src: home1 },
|
|
||||||
{ src: home2 },
|
|
||||||
{ src: home3 }
|
|
||||||
],
|
|
||||||
logo: logo
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
||||||
@import "src/styles/mixin.scss";
|
|
||||||
|
|
||||||
/deep/ .el-carousel {
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.home-box {
|
|
||||||
padding: 15px 100px;
|
|
||||||
float: left;
|
|
||||||
width: 100%;
|
|
||||||
font-family: 'Microsoft YaHei';
|
|
||||||
|
|
||||||
.title {
|
|
||||||
font-size: 35px;
|
|
||||||
width: 100%;
|
|
||||||
text-align: center;
|
|
||||||
font-weight: 400;
|
|
||||||
margin-top: 55px;
|
|
||||||
border-bottom: 2px dashed #333;
|
|
||||||
padding-bottom: 15px;
|
|
||||||
margin-bottom: 70px;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
.logo-img {
|
|
||||||
position: absolute;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
width: 55px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-box {
|
|
||||||
width: 100%;
|
|
||||||
padding: 0 50px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.brief-box {
|
|
||||||
font-size: 18px;
|
|
||||||
text-indent: 2em;
|
|
||||||
line-height: 32px;
|
|
||||||
padding: 40px 20px 0;
|
|
||||||
font-family: unset;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,70 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class="app-wrapper">
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper">
|
|
||||||
<div v-show="listShow" class="map-list" :style="{width: widthLeft+'px'}">
|
|
||||||
<plan-list ref="planList" :height="height" />
|
|
||||||
</div>
|
|
||||||
<drap-left :width-left="widthLeft" @drapWidth="drapWidth" />
|
|
||||||
<transition>
|
|
||||||
<router-view />
|
|
||||||
</transition>
|
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { mapGetters } from 'vuex';
|
|
||||||
import planList from './planmanage/planList';
|
|
||||||
import drapLeft from '@/views/components/drapLeft/index';
|
|
||||||
import localStore from 'storejs';
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'Exam',
|
|
||||||
components: {
|
|
||||||
planList,
|
|
||||||
drapLeft
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
listShow: true,
|
|
||||||
widthLeft: Number(localStore.get('LeftWidth')) || 450
|
|
||||||
};
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
...mapGetters([
|
|
||||||
'lessonbar'
|
|
||||||
]),
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
watch: {
|
|
||||||
'lessonbar.opened': function (val) {
|
|
||||||
this.listShow = val;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
refresh() {
|
|
||||||
this.$refs && this.$refs.planList && this.$refs.planList.refresh();
|
|
||||||
},
|
|
||||||
drapWidth(width) {
|
|
||||||
this.widthLeft = Number(width);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
|
||||||
@import "src/styles/mixin.scss";
|
|
||||||
|
|
||||||
.app-wrapper {
|
|
||||||
@include clearfix;
|
|
||||||
position: relative;
|
|
||||||
height: 100%;
|
|
||||||
width: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.map-list {
|
|
||||||
float: left;
|
|
||||||
}
|
|
||||||
</style>
|
|
@ -1,12 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-card>
|
<div class="joylink-card card_hidden_box">
|
||||||
<div slot="header" style="text-align: center;">
|
<div class="card-title">
|
||||||
<b>{{ $t('teach.courseName') }}: {{ courseModel.name }}</b>
|
<b>{{ $t('teach.courseName') }}: {{ courseModel.name }}</b>
|
||||||
</div>
|
</div>
|
||||||
<div style="margin:50px" :style="{ height: height - 230 +'px' }">
|
<div class="content_box" style="">
|
||||||
<el-tabs v-model="activeName">
|
<el-tabs v-model="activeName">
|
||||||
<el-tab-pane :label="$t('teach.courseDetails')" name="first">
|
<el-tab-pane :label="$t('teach.courseDetails')" name="first">
|
||||||
<div :style="{ height: height - 270 +'px' }">
|
<div>
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper">
|
<el-scrollbar wrap-class="scrollbar-wrapper">
|
||||||
<el-tree
|
<el-tree
|
||||||
ref="tree"
|
ref="tree"
|
||||||
@ -32,11 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane :label="$t('teach.permissionsDetails')" name="second">
|
<el-tab-pane :label="$t('teach.permissionsDetails')" name="second">
|
||||||
<div :style="{ height: height - 270 +'px' }">
|
|
||||||
<el-scrollbar wrap-class="scrollbar-wrapper">
|
|
||||||
<limit-list ref="limitList" :course-model="courseModel" @initLoadPage="initLoadPage" />
|
<limit-list ref="limitList" :course-model="courseModel" @initLoadPage="initLoadPage" />
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</div>
|
</div>
|
||||||
@ -46,7 +42,7 @@
|
|||||||
<el-button v-if="hasPermssion" type="primary" @click="transfer">{{ $t('teach.authorityTransferred') }}</el-button>
|
<el-button v-if="hasPermssion" type="primary" @click="transfer">{{ $t('teach.authorityTransferred') }}</el-button>
|
||||||
<el-button type="primary" @click="backLessonList">{{ $t('teach.returnCourseList') }}</el-button>
|
<el-button type="primary" @click="backLessonList">{{ $t('teach.returnCourseList') }}</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@ -86,9 +82,6 @@ export default {
|
|||||||
computed: {
|
computed: {
|
||||||
hasPermssion() {
|
hasPermssion() {
|
||||||
return this.courseModel.pmsList.length > 0;
|
return this.courseModel.pmsList.length > 0;
|
||||||
},
|
|
||||||
height() {
|
|
||||||
return this.$store.state.app.height - 50;
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
@ -214,6 +207,24 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||||
@import "src/styles/mixin.scss";
|
@import "src/styles/mixin.scss";
|
||||||
|
.joylink-card{
|
||||||
|
height: 100%;
|
||||||
|
.card-title{
|
||||||
|
height: 47px;
|
||||||
|
line-height: 47px;
|
||||||
|
text-align: center;
|
||||||
|
border-bottom: 1px solid #e6e6e6;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.content_box{
|
||||||
|
padding: 50px;
|
||||||
|
height: calc(100% - 107px);
|
||||||
|
overflow: auto;
|
||||||
|
padding-bottom: 0;
|
||||||
|
}
|
||||||
|
.card_hidden_box{
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
.menu li {
|
.menu li {
|
||||||
border-right: solid white 1px;
|
border-right: solid white 1px;
|
||||||
@ -225,10 +236,8 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.btn-buy {
|
.btn-buy {
|
||||||
position: relative;
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
justify-content: center;
|
padding: 10px 0;
|
||||||
transform: translateY(-20px);
|
|
||||||
}
|
}
|
||||||
.custom-tree-node {
|
.custom-tree-node {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
@ -6,23 +6,10 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
<el-card v-loading="loading">
|
<el-card v-loading="loading">
|
||||||
<el-table
|
<el-table :data="tableData" border style="width: 100%">
|
||||||
:data="tableData"
|
<el-table-column prop="name" :label="this.$t('teach.courseName')" />
|
||||||
border
|
<el-table-column prop="remarks" show-overflow-tooltip :label="this.$t('teach.courseDescription')" />
|
||||||
style="width: 100%"
|
<el-table-column :label="this.$t('global.operate')">
|
||||||
>
|
|
||||||
<el-table-column
|
|
||||||
prop="name"
|
|
||||||
:label="this.$t('teach.courseName')"
|
|
||||||
/>
|
|
||||||
<el-table-column
|
|
||||||
prop="remarks"
|
|
||||||
show-overflow-tooltip
|
|
||||||
:label="this.$t('teach.courseDescription')"
|
|
||||||
/>
|
|
||||||
<el-table-column
|
|
||||||
:label="this.$t('global.operate')"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button size="mini" type="primary" @click="goLesson(scope.row)">
|
<el-button size="mini" type="primary" @click="goLesson(scope.row)">
|
||||||
{{ $t('teach.enterTheCourse') }}
|
{{ $t('teach.enterTheCourse') }}
|
||||||
|
Loading…
Reference in New Issue
Block a user