|  | @@ -1,39 +1,29 @@
 | 
	
		
			
				|  |  |  <template>
 | 
	
		
			
				|  |  | -  <div class="video-detail">
 | 
	
		
			
				|  |  | +  <div class="video-detail" v-loading="loading">
 | 
	
		
			
				|  |  |      <div class="main">
 | 
	
		
			
				|  |  |          <div class="main-left">
 | 
	
		
			
				|  |  |              <div class="video" id="video-box"></div>
 | 
	
		
			
				|  |  |              <div class="mian-left-center">
 | 
	
		
			
				|  |  |                  <div class="mian-left-center-left">
 | 
	
		
			
				|  |  | -                    <h2>{{data.title}}</h2>
 | 
	
		
			
				|  |  | +                    <h2>{{data.name}}</h2>
 | 
	
		
			
				|  |  |                      <div class="main-top">
 | 
	
		
			
				|  |  |                          <svg-icon icon-class="facetime" className="icon-headset"></svg-icon>
 | 
	
		
			
				|  |  |                          <span class="playsNumber">{{data.playsNumber}}</span>
 | 
	
		
			
				|  |  | -                        <span class="progress">已更新{{data.updateLessons}}课时/共{{data.totalLessons}}课时</span>
 | 
	
		
			
				|  |  | +                        <span class="progress">已更新{{data.cs_item_count_valid}}课时/共{{data.cs_item_count}}课时</span>
 | 
	
		
			
				|  |  |                      </div>
 | 
	
		
			
				|  |  |                  </div>
 | 
	
		
			
				|  |  | -                <div class="navBar-right">
 | 
	
		
			
				|  |  | -                    <a @click="handlelike">
 | 
	
		
			
				|  |  | -                        <svg-icon icon-class="like-line" className="icon-like"></svg-icon>
 | 
	
		
			
				|  |  | -                        <span>收藏</span>
 | 
	
		
			
				|  |  | -                    </a>
 | 
	
		
			
				|  |  | -                    <a @click="handleShare">
 | 
	
		
			
				|  |  | -                        <svg-icon icon-class="share-personal" className="icon-share"></svg-icon>
 | 
	
		
			
				|  |  | -                        <span>分享</span>
 | 
	
		
			
				|  |  | -                    </a>
 | 
	
		
			
				|  |  | -                </div>
 | 
	
		
			
				|  |  |              </div>
 | 
	
		
			
				|  |  |              
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  | -        <lesson-catalog :data="data.lessonCatalog" class="main-right"></lesson-catalog>
 | 
	
		
			
				|  |  | +        <lesson-catalog :data="lessonCatalog" :lessonCatalogEdsc="lessonCatalogEdsc" @getInfo="getInfo" class="main-right"></lesson-catalog>
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  | -    <div class="main-bottom">
 | 
	
		
			
				|  |  | +    <div class="main-bottom" v-if="info">
 | 
	
		
			
				|  |  |          <div class="tabs-box">
 | 
	
		
			
				|  |  |              <a class="info-btn" :class="[infoIndex===0?'active':'']" @click="handleChangeInfo(0)">课节信息</a>
 | 
	
		
			
				|  |  |              <a class="info-btn" :class="[infoIndex===1?'active':'']" @click="handleChangeInfo(1)">课节资源</a>
 | 
	
		
			
				|  |  |          </div>
 | 
	
		
			
				|  |  | -        <div class="info-detail" v-html="data.lessonInfo" v-if="infoIndex===0"></div>
 | 
	
		
			
				|  |  | -        <resources-list :data="data.resourcesList" v-if="infoIndex===1"></resources-list>
 | 
	
		
			
				|  |  | +        <div class="info-detail" v-html="info.lb_course_cs_item.intro" v-if="infoIndex===0"></div>
 | 
	
		
			
				|  |  | +        <resources-list :data="info.resource_file_list" v-if="infoIndex===1"></resources-list>
 | 
	
		
			
				|  |  |      </div>
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  </template>
 | 
	
	
		
			
				|  | @@ -45,114 +35,21 @@ import LessonCatalog from "./components/LessonCatalog.vue"
 | 
	
		
			
				|  |  |  import ResourcesList from "./components/ResourcesList.vue"
 | 
	
		
			
				|  |  |  import Player from 'xgplayer';
 | 
	
		
			
				|  |  |  import 'xgplayer/dist/index.min.css';
 | 
	
		
			
				|  |  | +import { getLogin } from "@/api/ajax";
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |    //import引入的组件需要注入到对象中才能使用
 | 
	
		
			
				|  |  |    components: { LessonCatalog, ResourcesList},
 | 
	
		
			
				|  |  | -  props: [],
 | 
	
		
			
				|  |  | +  props: ["lessonCatalog", "data", "lessonCatalogEdsc"],
 | 
	
		
			
				|  |  |    data() {
 | 
	
		
			
				|  |  |      //这里存放数据
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  | -        previousPage: '课程详情',
 | 
	
		
			
				|  |  | -        data:{
 | 
	
		
			
				|  |  | -            navTitle:'2023 新高一阅读暑期训练营',
 | 
	
		
			
				|  |  | -            title:'2023 新高一英语素养暑期训练营(基础级)',
 | 
	
		
			
				|  |  | -            playsNumber: '3.2万',
 | 
	
		
			
				|  |  | -            updateLessons: '56',
 | 
	
		
			
				|  |  | -            totalLessons: '120',
 | 
	
		
			
				|  |  | -            number: '1.',
 | 
	
		
			
				|  |  | -            lessonTitle: '第一讲 英语阅读核心素养',
 | 
	
		
			
				|  |  | -            teacher: '王琦',
 | 
	
		
			
				|  |  | -            lessonInfo: '课节信息介绍',
 | 
	
		
			
				|  |  | -            lessonCatalog: [
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'1',
 | 
	
		
			
				|  |  | -                    title:'课程介绍',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'8分钟'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'2',
 | 
	
		
			
				|  |  | -                    title:'基本阅读技能',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'10分钟'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'3',
 | 
	
		
			
				|  |  | -                    title:'高级阅读技能',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'10分钟'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'4',
 | 
	
		
			
				|  |  | -                    title:'主题语境·人与自然',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'10分钟'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'5',
 | 
	
		
			
				|  |  | -                    title:'课程主题语境·人与自我介绍',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'14分钟'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'6',
 | 
	
		
			
				|  |  | -                    title:'主题语境·人与自我',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'10分钟'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    number:'7',
 | 
	
		
			
				|  |  | -                    title:'主题语境·人与自我',
 | 
	
		
			
				|  |  | -                    teacher:'王琦',
 | 
	
		
			
				|  |  | -                    length:'10分钟'
 | 
	
		
			
				|  |  | -                }
 | 
	
		
			
				|  |  | -            ],
 | 
	
		
			
				|  |  | -            resourcesList: [
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'txt',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.txt'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'mp3',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.mp3'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'jpg',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.jpg'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'mp4',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.mp4'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'zip',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.zip'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'pdf',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.pdf'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'doc',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.doc'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'xlsx',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.xlsx'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'ppt',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.ppt'
 | 
	
		
			
				|  |  | -                },
 | 
	
		
			
				|  |  | -                {
 | 
	
		
			
				|  |  | -                    type: 'ppt',
 | 
	
		
			
				|  |  | -                    name: 'employeelist.ppt'
 | 
	
		
			
				|  |  | -                }
 | 
	
		
			
				|  |  | -            ]
 | 
	
		
			
				|  |  | -        },
 | 
	
		
			
				|  |  |          player: null,
 | 
	
		
			
				|  |  | -        infoIndex: 0 // 课节信息tabs
 | 
	
		
			
				|  |  | +        infoIndex: 0, // 课节信息tabs
 | 
	
		
			
				|  |  | +        info: null,
 | 
	
		
			
				|  |  | +        id: this.$route.query.id?this.$route.query.id:'',
 | 
	
		
			
				|  |  | +        lessonIndex: 0, // 课节索引
 | 
	
		
			
				|  |  | +        loading: false
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    //计算属性 类似于data概念
 | 
	
	
		
			
				|  | @@ -161,32 +58,47 @@ export default {
 | 
	
		
			
				|  |  |    watch: {},
 | 
	
		
			
				|  |  |    //方法集合
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | -    // 分享
 | 
	
		
			
				|  |  | -    handleShare(){
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | -    // 收藏
 | 
	
		
			
				|  |  | -    handlelike(){
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  |      // 切换infotabs
 | 
	
		
			
				|  |  |      handleChangeInfo(value){
 | 
	
		
			
				|  |  |          this.infoIndex = value
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    // 获取课节信息
 | 
	
		
			
				|  |  | +    getInfo(index){
 | 
	
		
			
				|  |  | +        this.loading = true
 | 
	
		
			
				|  |  | +        let MethodName = "/CourseServer/Manager/LBCourseManager/GetLBCourseCSItemInfo";
 | 
	
		
			
				|  |  | +        let data = {
 | 
	
		
			
				|  |  | +            id: index||index===0?this.lessonCatalog[index].id:this.lessonCatalog[this.lessonIndex].id
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        getLogin(MethodName, data)
 | 
	
		
			
				|  |  | +        .then((res) => {
 | 
	
		
			
				|  |  | +            this.loading = false
 | 
	
		
			
				|  |  | +            if(res.status===1){
 | 
	
		
			
				|  |  | +                this.info = res
 | 
	
		
			
				|  |  | +                this.lessonIndex = index||index===0?index:this.lessonIndex
 | 
	
		
			
				|  |  | +                this.player = new Player({
 | 
	
		
			
				|  |  | +                    id: 'video-box',
 | 
	
		
			
				|  |  | +                    url: res.lb_course_cs_item.file_url,
 | 
	
		
			
				|  |  | +                    height: '100%',
 | 
	
		
			
				|  |  | +                    width: '100%',
 | 
	
		
			
				|  |  | +                    cssFullscreen: false,
 | 
	
		
			
				|  |  | +                    poster: '', // 封面图
 | 
	
		
			
				|  |  | +                });
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +        .catch(() => {
 | 
	
		
			
				|  |  | +            this.loading = false
 | 
	
		
			
				|  |  | +        });
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    //生命周期 - 创建完成(可以访问当前this实例)
 | 
	
		
			
				|  |  |    created() {
 | 
	
		
			
				|  |  | +    if(this.lessonCatalog.length>0){
 | 
	
		
			
				|  |  | +        this.getInfo()
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    //生命周期 - 挂载完成(可以访问DOM元素)
 | 
	
		
			
				|  |  |    mounted() {
 | 
	
		
			
				|  |  | -    this.player = new Player({
 | 
	
		
			
				|  |  | -        id: 'video-box',
 | 
	
		
			
				|  |  | -        url: '//sf1-cdn-tos.huoshanstatic.com/obj/media-fe/xgplayer_doc_video/mp4/xgplayer-demo-360p.mp4',
 | 
	
		
			
				|  |  | -        height: '100%',
 | 
	
		
			
				|  |  | -        width: '100%',
 | 
	
		
			
				|  |  | -        cssFullscreen: false,
 | 
	
		
			
				|  |  | -        poster: '', // 封面图
 | 
	
		
			
				|  |  | -    });
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |    //生命周期-创建之前
 | 
	
		
			
				|  |  |    beforeCreated() { },
 |