提交 7a1f8841 编写于 作者: guangjun.yang's avatar guangjun.yang

三期部分页面

上级 559652f6
<template>
<el-dialog
title="预览协议"
:visible="dialogVisible"
@close="close"
center
:close-on-click-modal="false"
:close-on-press-escape="false"
width="800px"
>
<div v-html="protocolInfo.contents"></div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="close">确 定</el-button>
</div>
</el-dialog>
<div class="preview-protocol-wrapper dialog-title-border">
<el-dialog
title="用户协议"
:visible="dialogVisible"
@close="close"
center
:close-on-click-modal="false"
:close-on-press-escape="false"
width="800px"
>
<div slot="title" style="text-align: left;">
<span style="font-weight: 700;">用户协议</span>
</div>
<div v-html="protocolInfo.contents"></div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="close">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
export default {
......
<template>
<el-dialog
title="预览课程"
:visible="dialogVisible"
@close="close"
center
:close-on-click-modal="false"
:close-on-press-escape="false"
width="800px"
>
<video-player
class="video-player vjs-custom-skin"
ref="videoPlayer"
:playsinline="true"
:options="playerOptions"
@pause="onPlayerPause($event)"
/>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="close">确 定</el-button>
</div>
</el-dialog>
<div class="preview-video-wrapper dialog-title-border">
<el-dialog
title="预览课程"
:visible="dialogVisible"
@close="close"
center
:close-on-click-modal="false"
:close-on-press-escape="false"
width="800px"
>
<video-player
class="video-player vjs-custom-skin"
ref="videoPlayer"
:playsinline="true"
:options="playerOptions"
@pause="onPlayerPause($event)"
/>
<div slot="title" style="text-align: left;">
<span style="font-weight: 700;">预览课程</span>
</div>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="close">确 定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
// import video from '@/assets/test.mp4'
......
......@@ -89,6 +89,7 @@ export default {
data() {
return {
isRise: true,
isRiseOrg: true,
isShowCart: false,
dialogObj: {
title: "课程数量已达上限",
......@@ -100,14 +101,14 @@ export default {
};
},
computed: {
...mapGetters(["cartList", "courseList", "searchParam", "courseLimitCount"])
...mapGetters(["cartList", "courseList", "searchParam", "searchParamOrg", "courseLimitCount", "kind"])
},
components: {
ShoppingCart,
dialogComponet: dialog
},
methods: {
...mapActions(["setCartList", "setSearchParam"]),
...mapActions(["setCartList", "setSearchParam", "setSearchParamOrg"]),
toggleOrder() {
this.isRise = !this.isRise;
let dir = this.isRise ? 1 : 2;
......
此差异已折叠。
<template>
<div class="custom-over">
<!-- <div class="custom-select-wrapper" style="overflow:auto;">
<div class="department-label" style="width: 1200px;"> -->
<!-- <div class="custom-select-wrapper">
<div class="department-label" style="min-width:1420px;">
<span
v-for="(item, index) in allLabelList"
:key="index"
class="item"
:class="{checked: item.checked}"
@click="selectLabel(index)"
>
<span class="split" :class="{acitve: item.checked}"></span>
{{item.name}}
</span>
</div>
</div> -->
<div class="custom-select-wrapper">
<!-- 学科分类 -->
<div class="subject-level">
......@@ -27,12 +11,6 @@
:class="{active: item.checked}"
@click="selectLabel(index)"
>
<!-- <span
class="item"
v-for="(item, index) in courseLevel"
:key="index"
@click="selectLevel(index)"
> -->
<span class="name" :class="{active: item.checked}">{{item.name}}</span>
</span>
</div>
......
......@@ -2,32 +2,40 @@
<div class="select-course-wrapper">
<div class="top-line"></div>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="公共课程" name="first">
<el-tab-pane label="公共课程" name="0">
<CourseSelect></CourseSelect>
</el-tab-pane>
<el-tab-pane label="我的课程" name="second">
<el-tab-pane label="机构课程" name="1">
<CourseSelectOrg></CourseSelectOrg>
</el-tab-pane>
</el-tabs>
<CourseSelect></CourseSelect>
<div class="top-line" style="margin-top: 20px;"></div>
<CourseList></CourseList>
</div>
</template>
<script>
import CourseSelect from '@/components/education/custom/course-select'
import CourseList from '@/components/education/custom/course-list'
import CourseSelect from '@/components/education/custom/course-select';
import CourseSelectOrg from '@/components/education/custom/course-select-org';
import CourseList from '@/components/education/custom/course-list';
import { mapActions, mapGetters } from 'vuex';
export default {
data() {
return {
activeName: 'second'
activeName: '1'
}
},
computed: {
...mapGetters(['kind'])
},
components: {
CourseSelect,
CourseSelectOrg,
CourseList,
},
methods: {
...mapActions(['setKind']),
handleClick() {
this.setKind(this.activeName);
}
},
}
......
const customStore = {
// namespaced: true,
state: {
kind: 0,
searchParam: {
kind: 0,
orderBy: 2,
dir: 1,
grade: 0,
pageNo: 1,
pageSize: 10,
labelIdList: []
},
searchParamOrg: {
kind: 1,
orderBy: 2,
dir: 1,
grade: 0,
......@@ -13,12 +24,20 @@ const customStore = {
courseList: [],
allLabelList: [],
subLabelList: [],
allLabelListOrg: [],
subLabelListOrg: [],
courseLimitCount: -1 // -1: 不限制; 其它值: 限制的个数
},
mutations: {
SET_KIND: (state, kind) => {
state.kind = kind;
},
SET_SEARCH_PARAM: (state, searchParam) => {
state.searchParam = searchParam;
},
SET_SEARCH_PARAM_ORG: (state, searchParamOrg) => {
state.searchParamOrg = searchParamOrg;
},
SET_CART_LIST: (state, cartList) => {
state.cartList = cartList;
},
......@@ -31,14 +50,26 @@ const customStore = {
SET_SUB_LABEL_LIST: (state, subLabelList) => {
state.subLabelList = subLabelList;
},
SET_ALL_LABEL_LIST_ORG: (state, allLabelListOrg) => {
state.allLabelListOrg = allLabelListOrg;
},
SET_SUB_LABEL_LIST_ORG: (state, subLabelListOrg) => {
state.subLabelListOrg = subLabelListOrg;
},
SET_COURSE_LIMIT_COUNT: (state, courseLimitCount) => {
state.courseLimitCount = courseLimitCount;
},
},
actions: {
setKind({ commit }, kind) {
commit('SET_KIND', kind);
},
setSearchParam({ commit }, searchParam) {
commit('SET_SEARCH_PARAM', searchParam);
},
setSearchParamOrg({ commit }, searchParamOrg) {
commit('SET_SEARCH_PARAM_ORG', searchParamOrg);
},
setCartList({ commit }, cartList) {
commit('SET_CART_LIST', cartList);
},
......@@ -51,6 +82,12 @@ const customStore = {
setSubLabelList({ commit }, subLabelList) {
commit('SET_SUB_LABEL_LIST', subLabelList);
},
setAllLabelListOrg({ commit }, allLabelListOrg) {
commit('SET_ALL_LABEL_LIST_ORG', allLabelListOrg);
},
setSubLabelListOrg({ commit }, subLabelListOrg) {
commit('SET_SUB_LABEL_LIST_ORG', subLabelListOrg);
},
setCourseLimitCount({ commit }, courseLimitCount) {
commit('SET_COURSE_LIMIT_COUNT', courseLimitCount);
},
......
const getters = {
kind: state => state.customStore.kind,
searchParam: state => state.customStore.searchParam,
searchParamOrg: state => state.customStore.searchParamOrg,
cartList: state => state.customStore.cartList,
courseList: state => state.customStore.courseList,
allLabelList: state => state.customStore.allLabelList,
subLabelList: state => state.customStore.subLabelList,
allLabelListOrg: state => state.customStore.allLabelListOrg,
subLabelListOrg: state => state.customStore.subLabelListOrg,
courseLimitCount: state => state.customStore.courseLimitCount,
}
......
......@@ -54,7 +54,7 @@ service.interceptors.request.use(config => {
}
if( process.env.BUILD_ENV == "development" ){ // 本地开发环境
// console.log('环境变量>>>> ', process.env.BUILD_ENV);
config.headers['token'] = '37683A493D6B497AB152D87EA731CF35';
config.headers['token'] = 'F37DD4A8C9094A89A0C7EF84E4303CC9';
// config.headers['token'] = localStorage.getItem('storageToken')
}else{
config.headers['token'] = localStorage.getItem('storageToken')
......
......@@ -160,15 +160,25 @@ export default {
};
},
computed: {
...mapGetters(["searchParam", "cartList"])
...mapGetters(["searchParam", "searchParamOrg", "cartList", "kind"])
},
watch: {
kind(newKind) {
let searchParam = newKind == 0 ? this.searchParam : this.searchParamOrg;
this.getCourseList(searchParam);
},
searchParam: {
handler(val) {
this.getCourseList(val);
},
deep: true
},
searchParamOrg: {
handler(val) {
this.getCourseList(val);
},
deep: true
},
cartList(val) {
this.canNext = val.length > 0;
}
......@@ -196,22 +206,26 @@ export default {
methods: {
...mapActions([
"setSearchParam",
"setSearchParamOrg",
"setCartList",
"setCourseList",
"setAllLabelList",
"setSubLabelList",
"setAllLabelListOrg",
"setSubLabelListOrg",
"setCourseLimitCount",
]),
initPageParams(labelIdList) {
let searchParam = {
orderBy: 2,
dir: 1,
grade: 0,
pageNo: 1,
pageSize: 10,
labelIdList: labelIdList || []
};
// let searchParam = {
// kind: 0,
// orderBy: 2,
// dir: 1,
// grade: 0,
// pageNo: 1,
// pageSize: 10,
// labelIdList: labelIdList || []
// };
this.setCartList([]);
this.setCourseList([]);
this.setAllLabelList([]);
......@@ -231,13 +245,17 @@ export default {
},
// 获取所有标签(一级及二级),交做相应处理
// TODO
getLabelList() {
vm.GET("contents/diseases/labelList", {}).then(res => {
if (res.code == "000000") {
// 先将所有的标签添加checked字段
let labelList = res.data;
// let labelListOrg = res.data;
let allSubList = [];
let allSubListOrg = [];
let labelIdList = [];
let labelIdListOrg = [];
labelList.forEach((item, index) => {
item.checked = false;
item.subList.forEach((sub, subIndex) => {
......@@ -263,19 +281,24 @@ export default {
checked: true,
subList: allSubList
});
// this.initPageParams(labelIdList);
this.setAllLabelList(labelList);
this.setSubLabelList(allSubList);
this.setAllLabelListOrg(JSON.parse(JSON.stringify(labelList)));
this.setSubLabelListOrg(JSON.parse(JSON.stringify(allSubList)));
let searchParam = {
kind: 0,
orderBy: 2,
dir: 1,
grade: 0,
pageNo: 1,
pageSize: 10,
labelIdList: labelIdList || []
};
this.setSearchParam(searchParam);
};
this.setSearchParam(Object.assign({}, searchParam));
searchParam.kind = 1;
this.setSearchParamOrg(Object.assign({}, searchParam));
}
});
},
......
此差异已折叠。
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册