Prechádzať zdrojové kódy

Merge branch 'yb11.7'

cxmo 2 rokov pred
rodič
commit
9361856e38

BIN
src/assets/video/report-btn.png


+ 15 - 0
src/components/VideoComment.vue

@@ -5,9 +5,11 @@ import teaseIcon from '@/assets/question/tease.png'
 import teaseactIcon from '@/assets/question/tease_act.png'
 
 import {reactive,ref} from 'vue'
+import {useRouter} from 'vue-router'
 import {apiSetLike,apiHotComment,apiMyComment,apiPublishComment,apiDelComment} from '@/api/question'
 import { ElMessage, ElMessageBox } from 'element-plus'
 
+const router=useRouter()
 const props=defineProps({
     videoInfo:null
 })
@@ -140,6 +142,16 @@ const handleDelMyComment=(item)=>{
     }).catch(()=>{})
 }
 
+//跳转至报告详情
+const goReportDetail = (item)=>{
+  router.push({
+        path:'/report/detail',
+        query:{
+            reportId:item.report_id,
+            frompage:'video'
+        }
+    })
+}
 </script>
 
 <template>
@@ -157,6 +169,9 @@ const handleDelMyComment=(item)=>{
                 <img src="@/assets/question/comment.png" alt="">
                 <span>{{info.comment_total>0?info.comment_total:''}}</span>
             </div>
+            <div class="item" @click="goReportDetail(info)" v-if="info.report_id">
+                <img src="@/assets/video/report-btn.png" alt="">
+            </div>
         </div>
         <div class="list-comment-wrap" v-if="info.comment_list.length>0">
             <template v-for="(item,index) in info.comment_list" :key="index">

+ 12 - 0
src/views/report/Detail.vue

@@ -27,6 +27,17 @@ const waterMarkEl=ref('')//水印盒子
 
 let reportId=ref(route.query.reportId||'')
 
+//跳转线上路演
+const goVideoPage = (item)=>{
+  router.push({
+    path:'/roadshow/video/list',
+    query:{
+      videoId:item.road_video_id,
+      fromPage:'reportDetail'
+    }
+  })
+}
+
 //获取报告对应的ppt图片
 let pptImgs=ref([])
 let showPreViewPPT=ref(false)
@@ -440,6 +451,7 @@ const formatTitle=(e)=>{
                     </div>
                     <div class="flex tips" style="position:relative">
                         <div>
+                            <div v-if="info.road_video_id">点击<span style="color: #F3A52F;cursor: pointer;" @click="goVideoPage(info)">查看视频</span></div>
                             <div class="abstract" v-if="info.report_info.abstract">摘要:{{info.report_info.abstract}}</div>
                             <div>
                                 <span>*注:请务必阅读</span>

+ 28 - 2
src/views/roadShow/video/List.vue

@@ -9,7 +9,7 @@ import {apiApplyPermission} from '@/api/user'
 import SelfList from '@/components/SelfList.vue'
 import VideoComment from '@/components/VideoComment.vue'
 import VideoBox from '@/components/VideoBox.vue'
-import { useRoute, useRouter } from 'vue-router'
+import { useRoute, useRouter,onBeforeRouteUpdate  } from 'vue-router'
 import { useStore } from 'vuex'
 
 import CollectBox from '@/components/CollectBox.vue'
@@ -101,7 +101,12 @@ const getVideoList=async ()=>{
     }
     if(res.code===200){
         let arr=res.data.list||[]
-        listState.list=[...listState.list,...arr]
+        if(!videoId.value){
+          listState.list=[...listState.list,...arr]
+        }else{
+          listState.list = arr
+        }
+        
         if(res.data.paging.is_end){
             listState.finished=true
         }
@@ -293,8 +298,29 @@ onActivated(()=>{
         //无权限时每次进页面都刷新列表
         getVideoList()
     }
+    //从报告详情跳转进入页面
+    const {fromPage} = route.query
+    if(fromPage=='reportDetail'){
+      videoId.value = route.query.videoId
+      permissionState.sFirst=''
+      listState.list=[]
+      getVideoList() 
+    }
 })
 
+/* onBeforeRouteUpdate((to,from)=>{
+    //console.log('update','to',to,'from',from)
+    console.log('beforeRouteUpdate')
+    //从报告详情跳转进入页面
+    const {fromPage} = to.query
+    if(fromPage=='reportDetail'){
+      videoId.value = to.query.videoId
+      permissionState.sFirst=''
+      listState.list=[]
+      getVideoList() 
+    }
+}) */
+
 </script>
 
 <template>