bding 2 years ago
parent
commit
84f9325c43

+ 28 - 13
components/ItemComponent/chartItem.vue

@@ -1,5 +1,5 @@
 <template>
-  <view class="container-chart-item">
+  <view class="container-chart-item" @click="goDetail(list)">
     <text class="chart-title text_twoLine">{{ list.Title }}</text>
     <view class="item-content-img">
       <image :src="list.BodyHtml" mode=""></image>
@@ -8,11 +8,11 @@
       <text class="tag-item" v-if="list.PtagName">{{ list.PtagName }}</text>
       <text class="tag-item" v-if="list.CtagName">{{ list.CtagName }}</text>
     </view>
-    <!-- <view class="chart-collect" v-if="topTabsActive == 3 && secondActive == 0">
+    <view class="chart-collect" v-if="isMyChartCollection">
       <text class="cancel" @click.stop="myChartIsTop(list.ChartId)">{{ list.IsTop ? "取消置顶" : "置顶" }}</text>
       <text class="remove" @click.stop="myChartCollect(list.ChartId)">移除</text>
     </view>
-    <view class="my-chart-collect" v-if="topTabsActive == 3 && secondActive == 0 && list.IsTop"></view> -->
+    <view class="my-chart-collect" v-if="isMyChartCollection && list.IsTop"></view>
   </view>
 </template>
 
@@ -26,6 +26,10 @@ export default {
       default: {},
       required: true,
     },
+    isMyChartCollection: {
+      type: Boolean,
+      default: false,
+    },
   },
   data() {
     return {};
@@ -34,13 +38,28 @@ export default {
   watch: {},
   created() {},
   mounted() {},
-  methods: {},
+  methods: {
+    goDetail(item) {
+      if (item.HomeType !== 1) {
+        /* 无需授权且已绑定 检验是或否有权限 */
+        this.$store.dispatch("checkHandle", "/pageMy/chartPage/chartPage?id=" + item.ChartId);
+      }
+    },
+    myChartIsTop(id){
+      console.log('子组件');
+      this.$emit("myChartIsTop", id)
+    },
+    myChartCollect(id){
+      this.$emit("myChartCollect", id)
+    }
+  },
 };
 </script>
 <style scoped lang="scss">
 .container-chart-item {
-  width: 350rpx;
-  padding: 20rpx 20rpx 0 ;
+  position: relative;
+  width: 100%;
+  padding: 20rpx 20rpx 0;
   background: #ffffff;
   box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0, 0, 0, 0.16);
   border-radius: 8rpx;
@@ -62,12 +81,10 @@ export default {
     }
   }
   .chart-collect {
-    margin-top: 20rpx;
-    padding-top: 20rpx;
-    padding: 20rpx 0 0 20rpx;
-    border-top: 1rpx solid #dcdfe6;
     display: flex;
     align-items: center;
+    justify-content: space-between;
+    padding-bottom: 20rpx;
     .cancel {
       background: #3385ff;
       margin-right: 20rpx;
@@ -78,7 +95,7 @@ export default {
       color: #3385ff;
     }
     text {
-      width: 130rpx;
+      width: 150rpx;
       height: 46rpx;
       line-height: 46rpx;
       border-radius: 4rpx;
@@ -87,8 +104,6 @@ export default {
     }
   }
   .my-chart-collect {
-    content: "";
-    display: block;
     position: absolute;
     top: 0;
     left: 0;

+ 10 - 3
components/ItemComponent/reportItem.vue

@@ -1,5 +1,5 @@
 <template>
-  <view class="container-report-item">
+  <view class="container-report-item" @click="goDetail(list)">
     <view class="item-title text-Line">{{ list.Title }}</view>
     <view class="item-content">
       <text>核心观点:</text>
@@ -35,12 +35,19 @@ export default {
   watch: {},
   created() {},
   mounted() {},
-  methods: {},
+  methods: {
+    goDetail(item) {
+      if (item.HomeType !== 1) {
+        /* 无需授权且已绑定 检验是或否有权限 */
+        this.$store.dispatch("checkHandle", "/pageMy/reportDetail/reportDetail?id=" + item.ArticleId);
+      }
+    },
+  },
 };
 </script>
 <style scoped lang="scss">
 .container-report-item {
-  width: 350rpx;
+  width: 100%;
   background: #ffffff;
   box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0, 0, 0, 0.16);
   border-radius: 8rpx;

+ 295 - 0
components/ItemComponent/roadshowItem.vue

@@ -0,0 +1,295 @@
+<template>
+  <view class="container-roadshow-item">
+    <view class="title text_twoLine">{{ list.Title }}</view>
+    <view class="cover-item" :style="{ 'background-image': 'url(' + list.BackgroundImg + ')' }">
+      <block v-if="list.Type == 2 || list.Type == 3">
+        <image class="img-bg" @click="handelPlay(list)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/play_icon_index.png"></image>
+      </block>
+      <block v-else>
+        <image
+          class="img-bg"
+          @click.stop="handelPlay(list)"
+          :src="
+            curVoiceId === list.ActivityId && !curAudioPaused
+              ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
+              : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
+          "
+        ></image>
+      </block>
+      <text class="time">{{ list.PublishTime }}</text>
+      <view :class="['identification', list.Type != 1 && 'identification-video']"> </view>
+      <image
+        class="identification-img"
+        :src="list.Type == 1 ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/video-iocn.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/audio-icon.png'"
+      ></image>
+    </view>
+    <view class="title-share">
+      <view class="share share-collected">
+        <image @click="myLeavingMessageHandler(list)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/leaving_message.png"></image>
+        <image
+          @click="isCollectionHandeler(list)"
+          :src="list.IsCollect ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/collected_icon.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/not_collected.png'"
+        ></image>
+        <button class="share-icon" open-type="share" :data-item="list">
+          <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
+        </button>
+      </view>
+    </view>
+     <view v-if="showAudioBox">
+      <audioModule :showAudioPop.sync="showAudioPop" />
+    </view>
+    <videoModule :showVideoPop="showVideoPop" :curVideoId="curVideoId" :videoPopList="videoPopList" />
+  </view>
+</template>
+
+<script>
+import { Home } from "@/config/api.js";
+import { color_word_bg, MultimediaIcon } from "@/utils/styleClassify";
+import audioModule from "@/components/audioModule/index";
+import videoModule from "@/components/videoModule/index";
+export default {
+  name: "",
+  props: {
+    list: {
+      type: Object,
+      default: {},
+      required: true,
+    },
+  },
+  data() {
+    return {};
+  },
+  components: {
+        audioModule,
+    videoModule,
+  },
+  computed: {},
+  watch: {},
+  created() {},
+  mounted() {},
+  methods: {
+    //播放的权限判断
+    handelPlay(item) {
+      let content_item = null;
+      if (item.AudioActivityId) {
+        content_item = {
+          ActivityId: item.AudioActivityId,
+          PlaySeconds: item.AudioPlaySeconds,
+          ResourceUrl: item.AudioResourceUrl,
+          Title: item.AudioTitle,
+          Type: item.AudioType,
+        };
+      }
+      if (!this.$store.state.isAuth && !this.$store.state.isBind) {
+        if (item.AuthInfo.HasPermission == 1) {
+          item.Type == 1 || item.AudioType == 1 ? this.audioPlayBack(content_item ? content_item : item) : this.handelVideoPlay(item);
+        } else {
+          this.hasPermission = item.AuthInfo.HasPermission;
+          this.jurisdictionList.ActivityId = item.Id;
+          this.jurisdictionList.isAudioVideo = item.Type;
+          if (this.hasPermission == 2) {
+            this.jurisdictionList.SellerMobile = item.AuthInfo.SellerMobile;
+            this.jurisdictionList.SellerName = item.AuthInfo.SellerName;
+            this.jurisdictionList.PopupMsg = item.AuthInfo.PopupMsg;
+            this.isShowhasPermission = true;
+          } else if (this.hasPermission == 3 || this.hasPermission == 4 || this.hasPermission == 5) {
+            this.jurisdictionList.PopupMsg = item.AuthInfo.PopupMsg;
+            this.applyForIsShow = true;
+          }
+        }
+      } else {
+        this.$store.dispatch("checkHandle");
+      }
+    },
+    //视频的播放事件
+    handelVideoPlay(item) {
+      if (this.$store.state.videoPlay.playVideoId != item.Id) {
+        this.$store.commit("videoPlay/palyTimeUpdate", 0);
+        console.log(this.$store.state.videoPlay.palyCurrentTime);
+        this.$store.commit("videoPlay/playVideo", item.Id);
+      }
+      this.globalBgAudioManager.stop();
+      this.videoPopList = item;
+      this.showVideoPop = true;
+    },
+    //音频的播放事件
+    async audioPlayBack(item) {
+      console.log(item);
+      this.curVideoId = 0;
+      this.$store.commit("audioBg/parseIntAudio", true);
+      // 判断是否为同一个音频
+      if (this.$store.state.audioBg.indexId == item.ActivityId) {
+        if (this.globalBgAudioManager.paused) {
+          this.globalBgAudioManager.play();
+        } else {
+          this.globalBgAudioManager.pause();
+        }
+      } else {
+        let VoiceList = {
+          Url: item.ResourceUrl,
+          Name: item.Title,
+          PlaySeconds: item.PlaySeconds,
+        };
+        this.$store.commit("audioBg/addAudio", { list: VoiceList, indexId: item.ActivityId, activityTitle: item.Title });
+      }
+      this.showAudioPop = true;
+    },
+    //音视频的背景色 文字颜色
+    classifyColor(item) {
+      let text_color = color_word_bg.color_word.find((key) => key.name == item).color;
+      let back_ground = color_word_bg.color_bg.find((key) => key.name == item).color;
+      let _isColor = { color: text_color, "background-color": back_ground };
+      return _isColor;
+    },
+    //音视频的图标
+    classifyIcon(item) {
+      let srcItem = MultimediaIcon.find((key) => key.name == (item.AudioChartPermissionName || item.ChartPermissionName));
+      let imgSrc = item.Type == 1 || item.AudioType == 1 ? srcItem.audio : srcItem.video;
+      return imgSrc;
+    },
+    // 微路演留言
+    myLeavingMessageHandler(item) {
+      uni.navigateTo({
+        url: "/activityPages/generationAsk/generationAsk?id=" + (item.Type == 3 ? item.Id : item.ActivityId) + "&type=文章&roadshow=" + item.Type + "&roadshowTitle=" + item.Title,
+      });
+    },
+
+    // 微路演收藏
+    async isCollectionHandeler(item) {
+      this.$emit("isCollectionHandeler", item);
+      // const res = await Home.microRoadshowCollect({
+      //   Id: item.Id,
+      //   SourceType: item.Type,
+      // });
+      // if (res.Ret === 200) {
+      //   let index = this.$parent.roadshowPageList.findIndex((key) => key.Id == item.Id);
+      //   res.Data.Status == 1 ? (this.$parent.roadshowPageList[index].IsCollect = true) : (this.$parent.roadshowPageList[index].IsCollect = false);
+      //   uni.showToast({
+      //     title: res.Msg,
+      //     duration: 2000,
+      //   });
+      // }
+    },
+  },
+};
+</script>
+<style scoped lang="scss">
+.container-roadshow-item {
+  width: 100%;
+  background: #ffffff;
+  box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0, 0, 0, 0.05);
+  padding: 20rpx 14rpx;
+  border-radius: 8rpx;
+  margin-bottom: 20rpx;
+  .cover-item {
+    width: calc(100% + 28rpx);
+    height: 250rpx;
+    display: flex;
+    flex-direction: column-reverse;
+    position: relative;
+    background-repeat: no-repeat;
+    background-size: 100% 100%;
+    font-size: 24rpx;
+    color: #fff;
+    margin-left: -14rpx;
+    .identification {
+      display: flex;
+      align-items: center;
+      justify-content: center;
+      position: absolute;
+      top: 0;
+      right: 0;
+      width: 0;
+      height: 0;
+      border-top: 90rpx solid #3385ff;
+      border-left: 90rpx solid transparent;
+    }
+
+    .identification-img {
+      position: absolute;
+      top: 15rpx;
+      right: 10rpx;
+      width: 30rpx;
+      height: 30rpx;
+    }
+
+    .identification-video {
+      border-top: 90rpx solid #ffab31 !important;
+    }
+
+    .img-bg {
+      position: absolute;
+      top: 50%;
+      left: 50%;
+      transform: translate(-50%, -50%);
+      width: 80rpx;
+      height: 80rpx;
+
+      image {
+        width: 80rpx;
+        height: 80rpx;
+      }
+    }
+
+    .time {
+      position: absolute;
+      bottom: 8rpx;
+      left: 15rpx;
+      font-size: 24rpx;
+      font-weight: 400;
+      color: #ffffff;
+      line-height: 46rpx;
+    }
+  }
+
+  .title {
+    height: 88rpx;
+    font-size: 32rpx;
+    font-weight: 500;
+    color: #333333;
+    line-height: 40rpx;
+    padding-bottom: 10rpx;
+    border-bottom: 1rpx solid #dcdfe6;
+    margin-bottom: 20rpx;
+  }
+  .title-share {
+    margin-top: 20rpx;
+    padding-top: 20rpx;
+    border-top: 1rpx solid #dcdfe6;
+    .share {
+      display: flex;
+      align-items: center;
+      justify-content: space-between;
+
+      .share-icon {
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        width: 50rpx;
+        height: 50rpx;
+      }
+
+      image {
+        width: 44rpx;
+        height: 44rpx;
+      }
+
+      .share-text {
+        position: flex;
+        align-items: center;
+        padding: 0 10rpx;
+
+        image {
+          width: 20rpx;
+          height: 20rpx;
+          margin-right: 5rpx;
+        }
+      }
+    }
+
+    .share-collected {
+      justify-content: space-around;
+    }
+  }
+}
+</style>

+ 3 - 33
pageMy/myCollection/myCollection.vue

@@ -9,39 +9,7 @@
     <view class="collect-ul" v-if="haveData">
       <view class="audio-video-content" v-if="tabsActive == 2">
         <view class="audio-item" v-for="item in collectList" :key="item.Id">
-          <view class="cover-item" :style="{ 'background-image': 'url(' + item.BackgroundImg + ')' }">
-            <block v-if="item.Type == 2 || item.Type == 3">
-              <image class="img-bg" @click="handelPlay(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/play_icon_index.png"></image>
-            </block>
-            <block v-else>
-              <image
-                class="img-bg"
-                @click.stop="handelPlay(item)"
-                :src="
-                  curVoiceId === item.ActivityId && !curAudioPaused
-                    ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                    : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                "
-              ></image>
-            </block>
-            <text class="time">{{ item.PublishTime }}</text>
-            <view :class="['identification', item.Type != 1 && 'identification-video']"> </view>
-            <image
-              class="identification-img"
-              :src="item.Type == 1 ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/video-iocn.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/audio-icon.png'"
-            ></image>
-          </view>
-          <view class="title-share">
-            <view class="title text_twoLine">{{ item.Title }}</view>
-            <view class="share share-collected">
-              <image @click="myLeavingMessageHandler(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/leaving_message.png"></image>
-              <image v-if="item.IsCollect" @click="isCollectionHandeler(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/collected_icon.png"></image>
-              <image v-else @click="isCollectionHandeler(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/not_collected.png"></image>
-              <button class="share-icon" open-type="share" :data-item="item">
-                <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-              </button>
-            </view>
-          </view>
+        <RoadshowItem :list="item" @handelPlay="handelPlay" />
         </view>
       </view>
       <block v-else>
@@ -90,6 +58,7 @@
 import { Mine, Report, Home, User } from "@/config/api.js";
 import videoModule from "@/components/videoModule/index";
 import audioModule from "@/components/audioModule/index";
+import RoadshowItem from "@/components/ItemComponent/roadshowItem.vue";
 import freeCharge from "@/components/freeCharge";
 export default {
   data() {
@@ -126,6 +95,7 @@ export default {
     freeCharge,
     audioModule,
     videoModule,
+    RoadshowItem
   },
   methods: {
     /* 获取列表 */

+ 15 - 35
pages-search/components/roadshow.vue

@@ -1,9 +1,9 @@
 <template>
   <view :class="['roadshow-search', tabsRoadshowSearch == 5 && 'roadshow-search-top']">
-    <view class="audio-video-content">
+    <!-- <view class="audio-video-content">
       <view class="audio-item" v-for="item in roadshowPageList" :key="item.Id">
         <view class="cover-item" :style="{ 'background-image': 'url(' + item.BackgroundImg + ')' }">
-          <!-- type:3 -- 产业视频 -->
+          type:3 -- 产业视频
           <block v-if="item.Type == 2 || item.Type == 3">
             <image class="img-bg" @click="handelPlay(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/play_icon_index.png"></image>
           </block>
@@ -41,6 +41,11 @@
           </view>
         </view>
       </view>
+    </view> -->
+    <view class="audio-video-content">
+      <view style="width: 49%" v-for="item in roadshowPageList" :key="item.Id">
+        <RoadshowItem :list="item" @handelPlay="handelPlay" />
+      </view>
     </view>
     <view v-if="showAudioBox">
       <audioModule :showAudioPop.sync="showAudioPop" />
@@ -54,6 +59,8 @@ import { Search, activity, Report, Home } from "@/config/api";
 import { color_word_bg, MultimediaIcon } from "@/utils/styleClassify";
 import audioModule from "@/components/audioModule/index";
 import videoModule from "@/components/videoModule/index";
+import RoadshowItem from "@/components/ItemComponent/roadshowItem.vue";
+
 export default {
   props: {
     roadshowPageList: {
@@ -86,7 +93,7 @@ export default {
       return this.$store.state.audioBg.parseIntShow;
     },
   },
-  components: { audioModule, videoModule },
+  components: { audioModule, videoModule, RoadshowItem },
   methods: {
     //播放的权限判断
     handelPlay(item) {
@@ -134,7 +141,7 @@ export default {
     },
     //音频的播放事件
     async audioPlayBack(item) {
-        this.curVideoId = 0;
+      this.curVideoId = 0;
       this.$store.commit("audioBg/parseIntAudio", true);
       // 判断是否为同一个音频
       if (this.$store.state.audioBg.indexId == item.ActivityId) {
@@ -153,26 +160,6 @@ export default {
       }
       this.showAudioPop = true;
     },
-    //音视频的背景色 文字颜色
-    classifyColor(item) {
-      let text_color = color_word_bg.color_word.find((key) => key.name == item).color;
-      let back_ground = color_word_bg.color_bg.find((key) => key.name == item).color;
-      let _isColor = { color: text_color, "background-color": back_ground };
-      return _isColor;
-    },
-    //音视频的图标
-    classifyIcon(item) {
-      let srcItem = MultimediaIcon.find((key) => key.name == (item.AudioChartPermissionName || item.ChartPermissionName));
-      let imgSrc = item.Type == 1 || item.AudioType == 1 ? srcItem.audio : srcItem.video;
-      return imgSrc;
-    },
-    // 微路演留言
-    myLeavingMessageHandler(item) {
-      uni.navigateTo({
-        url: "/activityPages/generationAsk/generationAsk?id=" + (item.Type == 3 ? item.Id : item.ActivityId) + "&type=文章&roadshow=" + item.Type + "&roadshowTitle=" + item.Title,
-      });
-    },
-
     // 微路演收藏
     async isCollectionHandeler(item) {
       const res = await Home.microRoadshowCollect({
@@ -195,19 +182,12 @@ export default {
 
 <style lang="scss" scoped>
 .roadshow-search {
-  padding: 35rpx;
+  padding: 35rpx 12rpx;
   .audio-video-content {
-    width: calc(100% + 40rpx);
-    height: calc(100% + 25rpx);
-    margin: -20rpx 0 0 -20rpx;
-    padding: 0 !important;
-    .audio-item {
-      width: 100%;
-      height: auto;
-      box-shadow: none;
-    }
+    display: flex;
+    flex-wrap: wrap;
+    justify-content: space-between;
   }
-  @import "@/components/audioVideo.scss";
 }
 .roadshow-search-top {
   padding-top: 90rpx !important;

+ 31 - 118
pages-search/components/summaryChart.vue

@@ -1,6 +1,6 @@
 <template>
   <view :class="['result-data-search-summary', 'content-padding']">
-    <view class="report-ul">
+    <!-- <view class="report-ul">
       <view class="report-item" v-for="(report, index) in resultList" :key="index" v-if="index % 2 === 0" @click="goDetail(report)">
         <view class="item-content-img" v-if="report.BodyHtml">
           <image :src="report.BodyHtml" mode=""></image>
@@ -29,11 +29,31 @@
           <text class="tag-item" v-if="report.CtagName">{{ report.CtagName }}</text>
         </view>
       </view>
+    </view> -->
+    <view class="content-ul">
+      <view class="report-ul" style="margin-right:10rpx">
+        <block v-for="(item, index) in resultList" :key="index">
+          <view v-if="index % 2 == 0">
+            <ReportItem v-if="item.Source == 1" :list="item" />
+            <ChartItem v-else :list="item" :isMyChartCollection="false" />
+          </view>
+        </block>
+      </view>
+      <view class="report-ul">
+        <block v-for="(item, index) in resultList" :key="index">
+          <view v-if="index % 2 != 0">
+            <ReportItem v-if="item.Source == 1" :list="item" />
+            <ChartItem v-else :list="item" :isMyChartCollection="false" />
+          </view>
+        </block>
+      </view>
     </view>
   </view>
 </template>
 
 <script>
+import ChartItem from "@/components/ItemComponent/chartItem.vue";
+import ReportItem from "@/components/ItemComponent/reportItem.vue";
 export default {
   props: {
     resultList: {
@@ -45,135 +65,28 @@ export default {
     },
   },
   data() {
-    return {
-    };
+    return {};
   },
-
-  methods: {
-    /* 进入详情 校验是否有该品种权限 */
-    goDetail(item) {
-      if (item.Source == 2) {
-        /* 无需授权且已绑定 检验是或否有权限 */
-        this.$store.dispatch("checkHandle", "/pageMy/chartPage/chartPage?id=" + item.ChartId);
-      } else {
-        /* 无需授权且已绑定 检验是或否有权限 */
-        this.$store.dispatch("checkHandle", "/pageMy/reportDetail/reportDetail?id=" + item.ArticleId);
-      }
-    },
+  components: {
+    ChartItem,
+    ReportItem,
   },
+
+  methods: {},
 };
 </script>
 
 <style lang="scss">
 .result-data-search-summary {
-  padding: 0rpx 34rpx;
+  padding: 0rpx 12rpx;
   display: flex;
+  justify-content: space-between;
   background-color: #f5f6fa;
   .report-ul {
-    width: 50%;
-    &:first-child {
-      margin-right: 10rpx;
-    }
-    .report-item {
-      padding: 20rpx 20rpx 24rpx 20rpx;
-      margin-bottom: 20rpx;
-      border-radius: 8rpx;
-      box-shadow: 0 3rpx 6rpx rgba($color: #000000, $alpha: 0.16);
-      background: #fff;
-      .item-content {
-        font-size: 24rpx;
-        line-height: 40rpx;
-        color: #7f7f7f;
-        display: -webkit-box;
-        word-break: break-all;
-        text {
-          display: inline !important;
-        }
-      }
-      .line {
-        margin: 18rpx 0;
-        content: "";
-        width: 100%;
-        height: 1px;
-        padding: 0 32rpx;
-        box-sizing: border-box;
-        background-color: #e5e5e5;
-        -webkit-transform: scale(1, 0.5);
-        transform: scale(1, 0.5);
-        -webkit-transform-origin: center bottom;
-        transform-origin: center bottom;
-      }
-      .item-title {
-        font-size: 28rpx;
-        color: #4a4a4a;
-        margin-bottom: 10rpx;
-        position: relative;
-        text-indent: 0.5em;
-        &::before {
-          content: "";
-          position: absolute;
-          top: 5rpx;
-          left: 0;
-          width: 6rpx;
-          height: 31rpx;
-          background-color: #3385ff;
-        }
-        text {
-          display: inline;
-        }
-      }
-      .chart-title {
-        height: 72rpx;
-        padding-bottom: 10rpx;
-        text-indent: 0em;
-        &::before {
-          display: none;
-        }
-      }
-      .item-abstract {
-        font-size: 26rpx;
-        color: #6a6a6a;
-        margin-bottom: 10rpx;
-        .report_ico {
-          width: 32rpx;
-          height: 26rpx;
-          margin-right: 20rpx;
-          display: inline-block;
-        }
-      }
-      .item-createtime {
-        color: #acacac;
-        font-size: 24rpx;
-      }
-    }
-  }
-  .chart-tag {
-    display: flex;
-    align-items: center;
-    justify-content: space-between;
-    padding-top: 1rpx;
-    height: 36rpx;
-    .tag-item {
-      width: 148rpx;
-      border-radius: 28rpx;
-      border: 2rpx solid rgba(49, 137, 255, 1);
-      overflow: hidden;
-      color: #3385ff;
-      text-align: center;
-      line-height: 32rpx;
-    }
+    width: 48%;
   }
-  .item-content-img {
+  .content-ul {
     display: flex;
-    align-items: center;
-    width: 330rpx;
-    margin-left: -15rpx;
-    margin-bottom: -20rpx;
-    image {
-      width: 100%;
-      height: 262rpx;
-      vertical-align: middle;
-    }
   }
 }
 .content-padding {

+ 6 - 1
pages/index/index.vue

@@ -2,7 +2,7 @@
   <view class="container New-container">
     <view class="top-content-box">
       <view class="nav-bar-wrap" :style="{ height: navBarStyle.height, paddingTop: navBarStyle.paddingTop, paddingBottom: navBarStyle.paddingBottom }">
-        <view class="box-img">
+        <view class="box-img" @click="goMyInfo">
           <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/logo.png" class="avatar"></image>
         </view>
         <view class="content" @click="goSearch">
@@ -29,6 +29,11 @@ export default {
         paddingBottom: "4px",
       };
     },
+    goMyInfo(){
+      uni.navigateTo({
+        url:'/pageMy/myPage/myPage'
+      })
+    }
   },
   onLoad() {
     this.initNavBar();

+ 46 - 274
pages/material/material.vue

@@ -43,19 +43,31 @@
       </view>
     </view>
     <block v-if="haveData">
-      <view style="display:flex; flex-wrap:wrap">
-      <block v-for="(report, index) in dataList" :key="index">
-        <view style="width: 50%" v-if="index % 2 == 0">
-          <!-- <ChartItem :list="report" :key="index" /> -->
-          <ReportItem :list="report"/>
-        </view>
-        <view style="width: 50%" v-else>
-          <!-- <ChartItem :list="report" :key="index" /> -->
-        </view>
-      </block>
-        </view>
-      
-
+      <view class="content-ul">
+        <block v-if="topTabsActive == 4">
+          <view v-for="item in roadshowPageList" :key="item.Id">
+            <RoadshowItem :list="item" @handelPlay="handelPlay" />
+          </view>
+        </block>
+        <block v-else>
+          <view class="report-ul" style="width:49%">
+            <block v-for="(item, index) in dataList" :key="index">
+              <view v-if="index % 2 == 0">
+                <ChartItem v-if="topTabsActive == 3" :list="item" :isMyChartCollection="isMyChartCollection" @myChartIsTop="myChartIsTop" @myChartCollect="myChartCollect" />
+                <ReportItem v-if="topTabsActive == 2" :list="item" />
+              </view>
+            </block>
+          </view>
+          <view class="report-ul" style="width:49%">
+            <block v-for="(item, index) in dataList" :key="index">
+              <view v-if="index % 2 !== 0">
+                <ChartItem v-if="topTabsActive == 3" :list="item" :isMyChartCollection="isMyChartCollection" @myChartIsTop="myChartIsTop" @myChartCollect="myChartCollect" />
+                <ReportItem v-if="topTabsActive == 2" :list="item" />
+              </view>
+            </block>
+          </view>
+        </block>
+      </view>
       <u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="pageNum > 1" />
     </block>
     <view class="nodata" v-else-if="haveData === false" style="padding-top: 400rpx">
@@ -83,19 +95,19 @@ import { Home, Reports, Chart, activity } from "@/config/api.js";
 import { Throttle, deepCopy } from "@/config/util.js";
 import freeCharge from "@/components/freeCharge";
 import suspenButton from "@/components/suspen_button.vue";
-import { color_word_bg, MultimediaIcon } from "@/utils/styleClassify";
 import audioModule from "@/components/audioModule/index";
 import modalDialog from "@/components/modalDialog.vue";
 import videoModule from "@/components/videoModule/index";
+
 import ChartItem from "@/components/ItemComponent/chartItem.vue";
 import ReportItem from "@/components/ItemComponent/reportItem.vue";
-
+import RoadshowItem from "@/components/ItemComponent/roadshowItem.vue";
 let app = getApp();
 export default {
   data() {
     return {
       topTabBars: [],
-      topTabsActive: 1, //一级top的tabs
+      topTabsActive: 2, //一级top的tabs
       secondActive: "", //二级的tabs
       secondBars: [], //二级的tabs数组
       chartChildren: [], //二级的tabs下的标签
@@ -124,7 +136,7 @@ export default {
       audioShareId: "", //通过分享单个音频点进页面时使用
       videoShareId: "", //通过分享单个视频点进页面时使用
       activityShareId: "",
-      videoAudioList: [], //音频  视频 list
+      roadshowPageList: [], //音频  视频 list
       curVideoId: 0, //音频Id
       showVideoPop: false,
       videoPopList: {},
@@ -142,8 +154,10 @@ export default {
     modalDialog,
     audioModule,
     videoModule,
+
     ChartItem,
     ReportItem,
+    RoadshowItem,
   },
   watch: {},
   onLoad(optios) {
@@ -164,9 +178,8 @@ export default {
       this.videoShareId = optios.videoShareId;
       this.audioShareId = optios.audioShareId;
       this.activityShareId = optios.activityId;
-      console.log(this.activityShareId);
-      this.getTabs();
     }
+    this.getTabs();
     this.initNavBar();
     this.getReportList();
     this.$store.dispatch("checkHandle", "noGO");
@@ -191,6 +204,9 @@ export default {
     showAudioBox() {
       return this.$store.state.audioBg.parseIntShow;
     },
+    isMyChartCollection() {
+      return this.topTabsActive == "3" && this.secondActive == 0;
+    },
   },
   methods: {
     //获取胶囊位置
@@ -324,14 +340,14 @@ export default {
         if (res.Ret === 200) {
           this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
           if (this.pageNum == 1) {
-            this.videoAudioList = res.Data.List || [];
-            this.haveData = this.videoAudioList.length > 0 ? true : false;
+            this.roadshowPageList = res.Data.List || [];
+            this.haveData = this.roadshowPageList.length > 0 ? true : false;
             if (this.refresh) {
               uni.stopPullDownRefresh();
               this.refresh = false;
             }
           } else {
-            this.videoAudioList = this.videoAudioList.concat(res.Data.List);
+            this.roadshowPageList = this.roadshowPageList.concat(res.Data.List);
           }
         }
       } else {
@@ -426,6 +442,7 @@ export default {
     },
     //我的收藏 置顶
     async myChartIsTop(id) {
+      console.log("myChartIsTop");
       const res = await Chart.myChartTop({
         ChartId: id,
       });
@@ -434,18 +451,6 @@ export default {
         this.$util.toast(res.Msg);
       }
     },
-    /* 进入详情 校验是否有该品种权限 */
-    goDetail(item) {
-      if (item.HomeType !== 1) {
-        if (item.Source == 2) {
-          /* 无需授权且已绑定 检验是或否有权限 */
-          this.$store.dispatch("checkHandle", "/pageMy/chartPage/chartPage?id=" + item.ChartId);
-        } else {
-          /* 无需授权且已绑定 检验是或否有权限 */
-          this.$store.dispatch("checkHandle", "/pageMy/reportDetail/reportDetail?id=" + item.ArticleId);
-        }
-      }
-    },
     /* 搜索 */
     goSearch() {
       this.$store.dispatch("checkHandle", "/pages-search/indedxSearch/indedxSearch?isType=" + this.topTabsActive);
@@ -523,19 +528,6 @@ export default {
       }
       this.showAudioPop = true;
     },
-    //音视频的背景色 文字颜色
-    classifyColor(item) {
-      let text_color = color_word_bg.color_word.find((key) => key.name == item).color;
-      let back_ground = color_word_bg.color_bg.find((key) => key.name == item).color;
-      let _isColor = { color: text_color, "background-color": back_ground };
-      return _isColor;
-    },
-    //音视频的图标
-    classifyIcon(item) {
-      let srcItem = MultimediaIcon.find((key) => key.name == (item.AudioChartPermissionName || item.ChartPermissionName));
-      let imgSrc = item.Type == 1 || item.AudioType == 1 ? srcItem.audio : srcItem.video;
-      return imgSrc;
-    },
     //获取顶部导航
     async getHeaderTab() {
       const res = await Home.headerTab();
@@ -543,28 +535,6 @@ export default {
         this.topTabBars = res.Data || [];
       }
     },
-
-    // 微路演留言
-    myLeavingMessageHandler(item) {
-      uni.navigateTo({
-        url: "/activityPages/generationAsk/generationAsk?id=" + (item.Type == 3 ? item.Id : item.ActivityId) + "&type=文章&roadshow=" + item.Type + "&roadshowTitle=" + item.Title,
-      });
-    },
-
-    // 微路演收藏
-    async isCollectionHandeler(item) {
-      const res = await Home.microRoadshowCollect({
-        Id: item.Id,
-        SourceType: item.Type,
-      });
-      if (res.Ret === 200) {
-        res.Data.Status == 1 ? (item.IsCollect = true) : (item.IsCollect = false);
-        uni.showToast({
-          title: res.Msg,
-          duration: 2000,
-        });
-      }
-    },
   },
   onHide() {
     this.$store.commit("audioBg/parseIntAudio", false);
@@ -626,6 +596,12 @@ export default {
 .Index-container {
   background-color: #f7f7f7;
   font-size: 30rpx;
+  .content-ul {
+    display: flex;
+    flex-wrap: wrap;
+    justify-content: space-between;
+    padding: 20rpx 15rpx;
+  }
   .top-content-box {
     position: sticky;
     top: 0;
@@ -686,10 +662,9 @@ export default {
       height: 63rpx;
       font-size: 30rpx;
       color: #8d8d8d;
-      background-color: #f3f3f3;
+      background-color: #f6f6f6;
       padding-left: 33rpx;
       border-radius: 70rpx;
-      // border: 1rpx solid #e5e5e5;
       .sea_ipt {
         padding-left: 15rpx;
       }
@@ -779,208 +754,6 @@ export default {
       font-weight: 500;
     }
   }
-  .data-cont {
-    padding: 28rpx 20rpx 10rpx;
-    display: flex;
-    .report-ul {
-      width: 50%;
-      &:first-child {
-        margin-right: 10rpx;
-      }
-      .report-item {
-        padding: 20rpx 20rpx 24rpx 20rpx;
-        margin-bottom: 20rpx;
-        border-radius: 8rpx;
-        box-shadow: 0 3rpx 6rpx rgba($color: #000000, $alpha: 0.16);
-        background: #fff;
-        position: relative;
-        overflow: hidden;
-        .audio-video-content {
-          width: calc(100% + 40rpx);
-          height: calc(100% + 25rpx);
-          margin: -20rpx 0 0 -20rpx;
-          padding: 0 !important;
-          .audio-item {
-            width: 100%;
-            height: auto;
-            box-shadow: none;
-          }
-        }
-        .my-chart-collect {
-          content: "";
-          display: block;
-          position: absolute;
-          top: 0;
-          left: 0;
-          width: 0;
-          height: 0;
-          border-top: 60rpx solid #3385ff;
-          border-right: 60rpx solid transparent;
-        }
-        .item-content-img {
-          display: flex;
-          align-items: center;
-          width: 330rpx;
-          margin-left: -6rpx;
-          margin-bottom: -20rpx;
-          image {
-            width: 100%;
-            height: 262rpx;
-            vertical-align: middle;
-          }
-        }
-        .item-content {
-          height: 273rpx;
-          font-size: 24rpx;
-          line-height: 40rpx;
-          color: #7f7f7f;
-          overflow: hidden;
-          text-overflow: ellipsis;
-          display: -webkit-box;
-          -webkit-line-clamp: 7;
-          -webkit-box-orient: vertical;
-          image {
-            width: 100% !important;
-          }
-        }
-        .line {
-          margin: 18rpx 0;
-          content: "";
-          width: 100%;
-          height: 1px;
-          padding: 0 32rpx;
-          box-sizing: border-box;
-          background-color: #e5e5e5;
-          -webkit-transform: scale(1, 0.5);
-          transform: scale(1, 0.5);
-          -webkit-transform-origin: center bottom;
-          transform-origin: center bottom;
-        }
-        .item-title {
-          font-size: 28rpx;
-          color: #4a4a4a;
-          margin-bottom: 10rpx;
-          position: relative;
-          text-indent: 0.5em;
-          &::before {
-            content: "";
-            position: absolute;
-            top: 5rpx;
-            left: 0;
-            width: 6rpx;
-            height: 31rpx;
-            background-color: #3385ff;
-          }
-        }
-        .chart-title {
-          height: 72rpx;
-          padding-bottom: 10rpx;
-          text-indent: 0em;
-          &::before {
-            display: none;
-          }
-        }
-        .item-abstract {
-          font-size: 26rpx;
-          color: #6a6a6a;
-          margin-bottom: 10rpx;
-          .report_ico {
-            width: 32rpx;
-            height: 26rpx;
-            margin-right: 20rpx;
-            display: inline-block;
-          }
-        }
-        .item-createtime {
-          display: flex;
-          align-items: center;
-          justify-content: space-between;
-          color: #acacac;
-          font-size: 24rpx;
-          .item-examine {
-            display: flex;
-            align-items: center;
-            image {
-              width: 30rpx;
-              height: 24rpx;
-              margin: 0 10rpx 0 15rpx;
-            }
-          }
-        }
-        .chart-tag {
-          padding-top: 1rpx;
-          height: 36rpx;
-          .tag-item {
-            width: 148rpx;
-            border-radius: 28rpx;
-            border: 2rpx solid rgba(49, 137, 255, 1);
-            overflow: hidden;
-            color: #3385ff;
-            text-align: center;
-            line-height: 30rpx;
-          }
-        }
-        .chart-collect {
-          margin-top: 20rpx;
-          padding-top: 20rpx;
-          padding: 20rpx 0 0 20rpx;
-          border-top: 1rpx solid #dcdfe6;
-          display: flex;
-          align-items: center;
-          .cancel {
-            background: #3385ff;
-            margin-right: 20rpx;
-            color: #ffffff;
-          }
-          .remove {
-            border: 1px solid #3385ff;
-            color: #3385ff;
-          }
-          text {
-            width: 130rpx;
-            height: 46rpx;
-            line-height: 46rpx;
-            border-radius: 4rpx;
-            text-align: center;
-            font-size: 24rpx;
-          }
-        }
-      }
-    }
-  }
-  .content-intimate {
-    position: fixed;
-    display: flex;
-    align-items: center;
-    bottom: 96rpx;
-    right: 41rpx;
-    height: 156rpx;
-    .content {
-      width: 432rpx;
-      height: 112rpx;
-      background-color: #fff;
-      display: flex;
-      border-radius: 56rpx;
-      overflow: hidden;
-      .cont-border {
-        margin: 0 2rpx;
-      }
-      view {
-        flex: 1;
-        background-color: #3385ff;
-        font-size: 30rpx;
-        color: #fff;
-        padding-top: 15rpx;
-        text-align: center;
-      }
-    }
-
-    image {
-      width: 156rpx;
-      height: 100%;
-      z-index: 99;
-    }
-  }
   .tabs-img {
     width: 46rpx;
     height: 26rpx;
@@ -999,6 +772,5 @@ export default {
       margin: 50rpx auto;
     }
   }
-  @import "@/components/audioVideo.scss";
 }
 </style>

+ 0 - 990
pages/my/1.vue

@@ -1,990 +0,0 @@
-<template>
-  <view class="container Index-container">
-    <view class="top-content-box">
-      <view class="nav-bar-wrap" :style="{ height: navBarStyle.height, paddingTop: navBarStyle.paddingTop, paddingBottom: navBarStyle.paddingBottom }">
-        <view class="content" @click="goSearch">
-          <icon type="search" size="15" class="search_ico" />
-          <text class="sea_ipt">{{ searchPlaceholderList.SummarySearch || "" }}</text>
-        </view>
-      </view>
-      <view class="top-tabs">
-        <block v-for="item in topTabBars" :key="item.Id">
-          <view v-if="item.IsShow" :class="['item', item.val == topTabsActive && 'tabs-active']" @click="topTabsChange(item)">
-            {{ item.Name }}
-            <block v-if="(item.Id === 3 || item.Name == '图表') && wholeShowListData.IsShowChart">
-              <image class="limit-img tabs-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/limit_icon.png" mode=""></image>
-            </block>
-            <view class="active" v-if="item.Id == topTabsActive"></view>
-          </view>
-        </block>
-      </view>
-      <view class="tabs-content">
-        <view class="second-tabs" v-if="topTabsActive == '2' || topTabsActive == '3'">
-          <view :class="['item', item.ChartPermissionId == secondActive && 'tabs-active']" v-for="(item, index) in secondBars" :key="item.ChartPermissionId" @click="handleClickTopSub(item)">
-            {{ item.PermissionName }}
-            <block v-if="wholeShowListData.IsShowResearch && index === secondBars.length - 1 && topTabsActive == '2'">
-              <image class="limit-img tabs-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/limit_icon.png" mode=""></image>
-            </block>
-            <view class="active" v-if="item.ChartPermissionId == secondActive"></view>
-          </view>
-        </view>
-        <block v-if="topTabsActive == '3'">
-          <view class="children-ul">
-            <view :class="['chart-children', chartChildrenActive == item.CtagId ? 'children-active' : '']" v-for="item in chartChildren" :key="item.CtagId" @click="handleChartChildren(item)">{{
-              item.Name
-            }}</view>
-          </view>
-        </block>
-        <view v-if="topTabsActive == '4'" class="medium-ul">
-          <view class="item-content">
-            <view @click="mediumClickHandler(item)" :class="['item', mediumActive === item.value && 'item-act']" v-for="item in mediumSelect" :key="item.value">{{ item.name }}</view>
-          </view>
-        </view>
-      </view>
-    </view>
-    <block v-if="haveData">
-      <ChartItem :dataList="dataList" />
-      <u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="pageNum > 1" />
-    </block>
-    <view class="nodata" v-else-if="haveData === false" style="padding-top: 400rpx">
-      <block class="nodata" v-if="!isBindingMobile && secondActive == 0">
-        <text>请先绑定联系方式</text>
-        <view class="bind-mobile" @click="bindingMobile">绑定联系方式</view>
-      </block>
-      <block v-else>
-        <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/act_search.png" mode="" class="nodata_ico"></image>
-        <text>{{ topTabsActive == 3 && secondActive == 0 ? "暂无收藏的图表" : "暂时没有数据" }}</text>
-      </block>
-    </view>
-    <freeCharge class="free-charge" :isShowFreeBtn="isShowFree" />
-    <view v-if="showAudioBox">
-      <audioModule :showAudioPop.sync="showAudioPop" />
-    </view>
-    <videoModule :showVideoPop="showVideoPop" :curVideoId="curVideoId" :videoPopList="videoPopList" />
-    <suspenButton :show.sync="wholeShowListData.IsShow" v-if="wholeShowListData.IsShow" />
-    <modalDialog :isShowhasPermission="isShowhasPermission" :applyForIsShow="applyForIsShow" :jurisdictionList="jurisdictionList" :hasPermission="hasPermission" />
-  </view>
-</template>
-
-<script>
-import { Home, Reports, Chart, activity } from "@/config/api.js";
-import { Throttle, deepCopy } from "@/config/util.js";
-import freeCharge from "@/components/freeCharge";
-import suspenButton from "@/components/suspen_button.vue";
-import { color_word_bg, MultimediaIcon } from "@/utils/styleClassify";
-import audioModule from "@/components/audioModule/index";
-import modalDialog from "@/components/modalDialog.vue";
-import videoModule from "@/components/videoModule/index";
-import ChartItem from '@/components/ItemComponent/chartItem.vue';
-
-let app = getApp();
-export default {
-  data() {
-    return {
-      topTabBars: [],
-      topTabsActive: 1, //一级top的tabs
-      secondActive: "", //二级的tabs
-      secondBars: [], //二级的tabs数组
-      chartChildren: [], //二级的tabs下的标签
-      chartChildrenActive: 0,
-      refresh: false,
-      pageSize: 10, //条数
-      pageNum: 1, //页码
-      haveMore: true, //是否有更多数据
-      haveData: null, //是否有数据
-      //数据列表
-      dataList: [],
-      status: "loadmore",
-      loadText: {
-        loadmore: "上拉加载更多",
-        loading: "加载中",
-        nomore: "已经到底了",
-      },
-      showTransition: false, //点击绝密后的隐现
-      isBindingMobile: true, //图表我的收藏是否绑定手机号
-      videoContext: null,
-      showAudioPop: false, //播放音频
-      isShowhasPermission: false, //  联系销售的提交申请
-      applyForIsShow: false, // 提交申请
-      jurisdictionList: {},
-      hasPermission: "", //权限
-      audioShareId: "", //通过分享单个音频点进页面时使用
-      videoShareId: "", //通过分享单个视频点进页面时使用
-      activityShareId: "",
-      videoAudioList: [], //音频  视频 list
-      curVideoId: 0, //音频Id
-      showVideoPop: false,
-      videoPopList: {},
-      mediumSelect: [
-        { name: "全部", value: 0 },
-        { name: "视频", value: 1 },
-        { name: "音频", value: 2 },
-      ],
-      mediumActive: 0,
-    };
-  },
-  components: {
-    freeCharge,
-    suspenButton,
-    modalDialog,
-    audioModule,
-    videoModule,
-    ChartItem,
-  },
-  watch: {},
-  onLoad(optios) {
-    this.getHeaderTab();
-    uni.getSystemInfo({
-      success: function (res) {
-        if (res.windowWidth > 700) {
-          uni.reLaunch({
-            url: "/pages/pcWebViev/pcWebViev",
-          });
-        }
-      },
-    });
-    if (optios.topTabsActive) {
-      this.topTabsActive = optios.topTabsActive;
-      this.secondActive = optios.secondActive;
-      this.chartChildrenActive = optios.childrenActive;
-      this.videoShareId = optios.videoShareId;
-      this.audioShareId = optios.audioShareId;
-      this.activityShareId = optios.activityId;
-      console.log(this.activityShareId);
-      this.getTabs();
-    }
-    this.initNavBar();
-    this.getReportList();
-    this.$store.dispatch("checkHandle", "noGO");
-  },
-  onShow() {
-    //进入页面的记录
-    this.$store.dispatch("statistics", { PageType: "Activit" });
-    // #ifdef MP-WEIXIN
-    uni.hideHomeButton();
-    // #endif
-    this.$store.commit("audioBg/parseIntAudio", true);
-  },
-  computed: {
-    curVoiceId() {
-      //当前正在播放的音频id
-      return this.$store.state.audioBg.indexId;
-    },
-    curAudioPaused() {
-      //当前音频是否暂停状态
-      return this.$store.state.audioBg.paused;
-    },
-    showAudioBox() {
-      return this.$store.state.audioBg.parseIntShow;
-    },
-  },
-  methods: {
-    //获取胶囊位置
-    initNavBar() {
-      let menuButtonInfo = uni.getMenuButtonBoundingClientRect();
-      this.navBarStyle = {
-        height: menuButtonInfo.height + menuButtonInfo.top + 8 + "px",
-        paddingTop: menuButtonInfo.top - 4 + "px",
-        paddingBottom: "4px",
-      };
-    },
-    //点击顶部一级分类
-    topTabsChange(item) {
-      this.topTabsActive = item.Id;
-      this.chartChildren = [];
-      this.chartChildrenActive = 0;
-      this.secondActive = "";
-      this.pageNum = 1;
-      this.dataList = [];
-      this.audioShareId = "";
-      this.videoShareId = "";
-      uni.pageScrollTo({
-        scrollTop: 0,
-        duration: 0,
-      });
-      if (this.topTabsActive == "2" || this.topTabsActive == "3") {
-        this.getTabs();
-      } else {
-        this.initData();
-      }
-    },
-    //点击顶部二级分类
-    handleClickTopSub(item) {
-      this.secondActive = item.ChartPermissionId;
-      this.chartChildren = [];
-      this.chartChildrenActive = 0;
-      this.childrenChartData();
-      this.initData();
-    },
-    //点击图标的二级分类 处理数据
-    childrenChartData() {
-      if (this.topTabsActive == 3 && this.secondActive != 0) {
-        let arr = [];
-        this.secondBars &&
-          this.secondBars.forEach((item) => {
-            if (this.secondActive == item.ChartPermissionId) {
-              deepCopy(arr, item.List);
-              arr.unshift({
-                CtagId: 0,
-                Name: "全部",
-              });
-              this.chartChildren = arr;
-            }
-          });
-        this.chartChildrenActive > 0 ? "" : (this.chartChildrenActive = 0);
-      }
-    },
-    //点击图标的三级分类
-    handleChartChildren(item) {
-      this.chartChildrenActive = item.CtagId;
-      this.initData();
-    },
-    // 点击为路演的筛选
-    mediumClickHandler(item) {
-      this.mediumActive = item.value;
-      this.initData();
-    },
-    //点击
-    initData() {
-      this.pageNum = 1;
-      this.dataList = [];
-      uni.pageScrollTo({
-        scrollTop: 0,
-        duration: 0,
-      });
-      this.getReportList();
-    },
-    /* 获取tab分类 */
-    getTabs() {
-      this.secondBars = [];
-      this.topTabsActive == "2"
-        ? Home.Tab().then((res) => {
-            if (res.Ret === 200) {
-              this.secondBars = res.Data.List;
-              this.secondActive > 0 ? "" : (this.secondActive = this.secondBars[0].ChartPermissionId);
-              this.getReportList();
-            }
-          })
-        : this.topTabsActive == "3"
-        ? Chart.getChartPatg().then((res) => {
-            if (res.Ret === 200) {
-              let arr = res.Data;
-              arr.unshift({
-                ChartPermissionId: 0,
-                PermissionName: "我的收藏",
-              });
-              this.secondBars = arr;
-              this.secondActive ? "" : (this.secondActive = 0);
-              this.secondActive > 0 && this.childrenChartData();
-              this.getReportList();
-            }
-          })
-        : "";
-    },
-    /* 获取列表 */
-    async getReportList() {
-      if (this.topTabsActive == "3" && this.secondActive == 0) {
-        const res = await Chart.getChartcollection({
-          PageSize: this.pageSize,
-          CurrentIndex: this.pageNum,
-        });
-        if (res.Ret === 200) {
-          this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
-          this.isBindingMobile = res.Data.IsBindingMobile;
-          if (this.pageNum === 1) {
-            this.dataList = res.Data.List || [];
-            this.haveData = this.dataList.length > 0 ? true : false;
-          } else {
-            this.dataList = this.dataList.concat(res.Data.List);
-          }
-        }
-      } else if (this.topTabsActive == 4) {
-        const res = await Home.microRoadshowList({
-          PageSize: this.pageSize,
-          CurrentIndex: this.pageNum,
-          AudioId: this.audioShareId,
-          VideoId: this.activityShareId ? "" : this.videoShareId,
-          ActivityVideoId: this.activityShareId && this.videoShareId,
-          Filter: this.mediumActive,
-        });
-        if (res.Ret === 200) {
-          this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
-          if (this.pageNum == 1) {
-            this.videoAudioList = res.Data.List || [];
-            this.haveData = this.videoAudioList.length > 0 ? true : false;
-            if (this.refresh) {
-              uni.stopPullDownRefresh();
-              this.refresh = false;
-            }
-          } else {
-            this.videoAudioList = this.videoAudioList.concat(res.Data.List);
-          }
-        }
-      } else {
-        const res = await Home.getList({
-          PageSize: this.pageSize,
-          CurrentIndex: this.pageNum,
-          ChartPermissionId: this.secondActive,
-          CtagId: this.chartChildrenActive,
-          ListType: this.topTabsActive,
-        });
-        if (res.Ret === 200) {
-          this.processingData(res);
-        }
-      }
-    },
-    //处理数据
-    processingData(res) {
-      if (!res.Data.HaveResearch) {
-        this.$util.modalShow("", "您暂无查看买方研选权限", "", () => {
-          uni.reLaunch({
-            url: "/pages/index/index",
-          });
-        });
-      }
-      this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
-      res.Data.List &&
-        res.Data.List.forEach((item) => {
-          if (item.BodyHtml) {
-            item.BodyHtml = item.BodyHtml.replace(/'\'/g, "");
-          }
-        });
-      if (this.topTabsActive == "2") {
-        if (this.pageNum === 1) {
-          this.dataList = res.Data.List || [];
-          this.haveData = this.dataList.length ? true : false;
-        } else {
-          this.dataList = this.dataList.concat(res.Data.List);
-        }
-      } else {
-        if (this.pageNum === 1) {
-          this.haveData = res.Data.List ? true : res.Data.ChartList ? true : false;
-        }
-        if (!res.Data.List) {
-          this.dataList = this.dataList.concat(res.Data.ChartList);
-        } else if (!res.Data.ChartList) {
-          this.dataList = this.dataList.concat(res.Data.List);
-        } else {
-          this.dataList.push(res.Data.List.shift());
-          let newArr = [];
-          let newArrTwo = [];
-          for (let i = 0; i < res.Data.List.length; i += 2) {
-            newArr.push(res.Data.List.slice(i, i + 2));
-          }
-          for (let i = 0; i < res.Data.ChartList.length; i += 2) {
-            newArrTwo.push(res.Data.ChartList.slice(i, i + 2));
-          }
-          let arr = [];
-          newArr.forEach((item, index) => {
-            if (newArrTwo[index]) {
-              arr.push(newArrTwo[index], item);
-            } else {
-              arr.push(item);
-            }
-          });
-          this.dataList = this.dataList.concat(arr.flat(Infinity));
-        }
-      }
-
-      if (this.refresh) {
-        uni.stopPullDownRefresh();
-        this.refresh = false;
-      }
-    },
-    //我的收藏的删除
-    myChartCollect(id) {
-      uni.showModal({
-        content: "确认要将该图表移除我的收藏吗?",
-        confirmColor: "#3385FF",
-        cancelColor: "#606266",
-        success: async (res) => {
-          if (res.confirm) {
-            const res = await Chart.myChartCollect({
-              ChartId: id,
-            });
-            if (res.Ret === 200) {
-              this.initData();
-              this.$util.toast("已取消收藏");
-            }
-          }
-        },
-      });
-    },
-    //我的收藏 置顶
-    async myChartIsTop(id) {
-      const res = await Chart.myChartTop({
-        ChartId: id,
-      });
-      if (res.Ret === 200) {
-        this.initData();
-        this.$util.toast(res.Msg);
-      }
-    },
-    /* 进入详情 校验是否有该品种权限 */
-    goDetail(item) {
-      if (item.HomeType !== 1) {
-        if (item.Source == 2) {
-          /* 无需授权且已绑定 检验是或否有权限 */
-          this.$store.dispatch("checkHandle", "/pageMy/chartPage/chartPage?id=" + item.ChartId);
-        } else {
-          /* 无需授权且已绑定 检验是或否有权限 */
-          this.$store.dispatch("checkHandle", "/pageMy/reportDetail/reportDetail?id=" + item.ArticleId);
-        }
-      }
-    },
-    /* 搜索 */
-    goSearch() {
-      this.$store.dispatch("checkHandle", "/pages-search/indedxSearch/indedxSearch?isType=" + this.topTabsActive);
-    },
-    /* 绑定联系方式 */
-    bindingMobile() {
-      uni.navigateTo({
-        url: "/pageMy/login/login",
-      });
-    },
-
-    //播放的权限判断
-    handelPlay(item) {
-      let content_item = null;
-      if (item.AudioActivityId) {
-        content_item = {
-          ActivityId: item.AudioActivityId,
-          PlaySeconds: item.AudioPlaySeconds,
-          ResourceUrl: item.AudioResourceUrl,
-          Title: item.AudioTitle,
-          Type: item.AudioType,
-        };
-      }
-      if (!this.$store.state.isAuth && !this.$store.state.isBind) {
-        if (item.AuthInfo.HasPermission == 1) {
-          item.Type == 1 || item.AudioType == 1 ? this.audioPlayBack(content_item ? content_item : item) : this.handelVideoPlay(item);
-        } else {
-          this.hasPermission = item.AuthInfo.HasPermission;
-          this.jurisdictionList.ActivityId = item.Id;
-          this.jurisdictionList.isAudioVideo = item.Type;
-          if (this.hasPermission == 2) {
-            this.jurisdictionList.SellerMobile = item.AuthInfo.SellerMobile;
-            this.jurisdictionList.SellerName = item.AuthInfo.SellerName;
-            this.jurisdictionList.PopupMsg = item.AuthInfo.PopupMsg;
-            this.isShowhasPermission = true;
-          } else if (this.hasPermission == 3 || this.hasPermission == 4 || this.hasPermission == 5) {
-            this.jurisdictionList.PopupMsg = item.AuthInfo.PopupMsg;
-            this.applyForIsShow = true;
-          }
-        }
-      } else {
-        this.$store.dispatch("checkHandle");
-      }
-    },
-    //视频的播放事件
-    handelVideoPlay(item) {
-      if (this.$store.state.videoPlay.playVideoId != item.Id) {
-        this.$store.commit("videoPlay/palyTimeUpdate", 0);
-        console.log(this.$store.state.videoPlay.palyCurrentTime);
-        this.$store.commit("videoPlay/playVideo", item.Id);
-      }
-      this.globalBgAudioManager.stop();
-      this.videoPopList = item;
-      this.showVideoPop = true;
-    },
-    //音频的播放事件
-    async audioPlayBack(item) {
-      console.log(item);
-      this.curVideoId = 0;
-      this.$store.commit("audioBg/parseIntAudio", true);
-      // 判断是否为同一个音频
-      if (this.$store.state.audioBg.indexId == item.ActivityId) {
-        if (this.globalBgAudioManager.paused) {
-          this.globalBgAudioManager.play();
-        } else {
-          this.globalBgAudioManager.pause();
-        }
-      } else {
-        let VoiceList = {
-          Url: item.ResourceUrl,
-          Name: item.Title,
-          PlaySeconds: item.PlaySeconds,
-        };
-        this.$store.commit("audioBg/addAudio", { list: VoiceList, indexId: item.ActivityId, activityTitle: item.Title });
-      }
-      this.showAudioPop = true;
-    },
-    //音视频的背景色 文字颜色
-    classifyColor(item) {
-      let text_color = color_word_bg.color_word.find((key) => key.name == item).color;
-      let back_ground = color_word_bg.color_bg.find((key) => key.name == item).color;
-      let _isColor = { color: text_color, "background-color": back_ground };
-      return _isColor;
-    },
-    //音视频的图标
-    classifyIcon(item) {
-      let srcItem = MultimediaIcon.find((key) => key.name == (item.AudioChartPermissionName || item.ChartPermissionName));
-      let imgSrc = item.Type == 1 || item.AudioType == 1 ? srcItem.audio : srcItem.video;
-      return imgSrc;
-    },
-    //获取顶部导航
-    async getHeaderTab() {
-      const res = await Home.headerTab();
-      if (res.Ret === 200) {
-        this.topTabBars = res.Data || [];
-      }
-    },
-
-    // 微路演留言
-    myLeavingMessageHandler(item) {
-      uni.navigateTo({
-        url: "/activityPages/generationAsk/generationAsk?id=" + (item.Type == 3 ? item.Id : item.ActivityId) + "&type=文章&roadshow=" + item.Type + "&roadshowTitle=" + item.Title,
-      });
-    },
-
-    // 微路演收藏
-    async isCollectionHandeler(item) {
-      const res = await Home.microRoadshowCollect({
-        Id: item.Id,
-        SourceType: item.Type,
-      });
-      if (res.Ret === 200) {
-        res.Data.Status == 1 ? (item.IsCollect = true) : (item.IsCollect = false);
-        uni.showToast({
-          title: res.Msg,
-          duration: 2000,
-        });
-      }
-    },
-  },
-  onHide() {
-    this.$store.commit("audioBg/parseIntAudio", false);
-    this.curVideoId = 0;
-  },
-  mounted() {
-    uni.$on("updateAudioVideo", (data) => {
-      console.log("执行了");
-      this.$store.dispatch("checkHandle", "noGO");
-      this.getReportList();
-    });
-  },
-  /* 下拉刷新 */
-  onPullDownRefresh: Throttle(function () {
-    this.audioShareId = "";
-    this.videoShareId = "";
-    this.activityShareId = "";
-    this.status = "loadmore";
-    this.refresh = true;
-    this.dataList = [];
-    this.pageNum = 1;
-    this.getReportList();
-  }),
-  // 上拉加载
-  onReachBottom: Throttle(function () {
-    if (this.status === "nomore") return;
-    this.status = "loading";
-    this.pageNum++;
-    this.getReportList();
-  }),
-  /** 用户点击分享*/
-  onShareAppMessage: function ({ from, target }) {
-    if (from === "button") {
-      let item = target.dataset.item;
-      let audio_id = item.Type == 1 || item.AudioType == 1 ? item.Id : "";
-      // type=2 -- 活动视频 type=3 -- 产业视频
-      let video_id = item.Type == 2 || item.Type == 3 ? item.Id : "";
-      let activity_id = item.Type == 2 && item.ActivityId > 0 ? item.ActivityId : "";
-      let title_share = item.AudioTitle || item.Title;
-      return {
-        title: this.isHorzMobile ? "好友向您推荐此内容,上传名片享查研观向免费月卡!" : title_share,
-        path: "/pages/index/index?topTabsActive=4" + "&audioShareId=" + audio_id + "&videoShareId=" + video_id + "&activityId=" + activity_id,
-        imageUrl: item.AudioShareImg || item.ShareImg,
-      };
-    } else {
-      return {
-        title: this.isHorzMobile ? "好友向您推荐此内容,上传名片享查研观向免费月卡!" : "您手边的弘则研究素材检索库",
-        path: "/pages/index/index?topTabsActive=" + this.topTabsActive + "&secondActive=" + this.secondActive + "&childrenActive=" + this.chartChildrenActive,
-        imageUrl: this.topTabsActive == 1 ? "https://hzstatic.hzinsights.com/cygx/czbk/home_share.png" : "",
-        success: (res) => {},
-        fail: (err) => {},
-      };
-    }
-  },
-};
-</script>
-
-<style lang="scss">
-.Index-container {
-  background-color: #f7f7f7;
-  font-size: 30rpx;
-  .top-content-box {
-    position: sticky;
-    top: 0;
-    left: 0;
-    width: 100%;
-    z-index: 9;
-    .top-tabs {
-      width: 100%;
-      display: flex;
-      align-items: center;
-      justify-content: center;
-      font-size: 34rpx;
-      background-color: #fff;
-      padding: 35rpx 0 10rpx;
-      &::-webkit-scrollbar {
-        width: 0;
-        height: 0;
-        display: none;
-      }
-      .item {
-        position: relative;
-        padding-bottom: 8rpx;
-        margin-right: 60rpx;
-        flex-shrink: 0;
-        .limit-img {
-          position: absolute;
-          top: -15rpx;
-          right: -50rpx;
-          z-index: 99;
-        }
-        .active {
-          position: absolute;
-          left: 0;
-          bottom: 0;
-          height: 4rpx;
-          width: 100%;
-          border-radius: 1rpx;
-          background: linear-gradient(90deg, #2e85ff 0%, #7eeaf6 100%);
-        }
-      }
-      .tabs-active {
-        color: #3385ff;
-        font-weight: 500;
-      }
-    }
-  }
-  .nav-bar-wrap {
-    background-color: #fff;
-    width: 100%;
-    padding-left: 35rpx;
-    display: flex;
-    align-items: center;
-    .content {
-      position: relative;
-      display: flex;
-      align-items: center;
-      width: 70%;
-      height: 63rpx;
-      font-size: 30rpx;
-      color: #8d8d8d;
-      background-color: #f3f3f3;
-      padding-left: 33rpx;
-      border-radius: 70rpx;
-      // border: 1rpx solid #e5e5e5;
-      .sea_ipt {
-        padding-left: 15rpx;
-      }
-    }
-  }
-  .tabs-content {
-    padding: 0 30rpx;
-    background-color: #fff;
-    .children-ul {
-      display: flex;
-      flex-wrap: wrap;
-      .children-active {
-        background-color: #3385ff;
-        color: #fff;
-      }
-    }
-    .medium-ul {
-      display: flex;
-      justify-content: flex-end;
-      padding: 10px 0;
-      .item-content {
-        display: flex;
-        height: 51rpx;
-        background: #f8f8fa;
-        width: 345rpx;
-        border-radius: 64rpx;
-        color: #999999;
-      }
-      .item {
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        width: 115rpx;
-        height: 51rpx;
-        border-radius: 47rpx;
-      }
-      .item-act {
-        background-color: #3385ff;
-        color: #fff;
-      }
-    }
-    .chart-children {
-      padding: 10rpx 20rpx;
-      margin: 0rpx 20rpx 20rpx 0;
-      background-color: #f9f9f9;
-      color: #666666;
-      font-size: 26rpx;
-      border-radius: 4rpx;
-    }
-  }
-  .second-tabs {
-    width: 100%;
-    display: flex;
-    overflow-x: auto;
-    background-color: #fff;
-    font-size: 30rpx;
-    color: #999999;
-    padding: 20rpx 0;
-    &::-webkit-scrollbar {
-      width: 0;
-      height: 0;
-      display: none;
-    }
-    .item {
-      position: relative;
-      padding-bottom: 16rpx;
-      margin-right: 50rpx;
-      flex-shrink: 0;
-      .limit-img {
-        position: absolute;
-        top: -15rpx;
-        right: -50rpx;
-        z-index: 99;
-      }
-      .active {
-        position: absolute;
-        left: 0;
-        bottom: 0;
-        height: 4rpx;
-        width: 100%;
-        border-radius: 1rpx;
-        background: linear-gradient(90deg, #2e85ff 0%, #7eeaf6 100%);
-      }
-    }
-    .tabs-active {
-      color: #3385ff;
-      font-weight: 500;
-    }
-  }
-  .data-cont {
-    padding: 28rpx 20rpx 10rpx;
-    display: flex;
-    .report-ul {
-      width: 50%;
-      &:first-child {
-        margin-right: 10rpx;
-      }
-      .report-item {
-        padding: 20rpx 20rpx 24rpx 20rpx;
-        margin-bottom: 20rpx;
-        border-radius: 8rpx;
-        box-shadow: 0 3rpx 6rpx rgba($color: #000000, $alpha: 0.16);
-        background: #fff;
-        position: relative;
-        overflow: hidden;
-        .audio-video-content {
-          width: calc(100% + 40rpx);
-          height: calc(100% + 25rpx);
-          margin: -20rpx 0 0 -20rpx;
-          padding: 0 !important;
-          .audio-item {
-            width: 100%;
-            height: auto;
-            box-shadow: none;
-          }
-        }
-        .my-chart-collect {
-          content: "";
-          display: block;
-          position: absolute;
-          top: 0;
-          left: 0;
-          width: 0;
-          height: 0;
-          border-top: 60rpx solid #3385ff;
-          border-right: 60rpx solid transparent;
-        }
-        .item-content-img {
-          display: flex;
-          align-items: center;
-          width: 330rpx;
-          margin-left: -6rpx;
-          margin-bottom: -20rpx;
-          image {
-            width: 100%;
-            height: 262rpx;
-            vertical-align: middle;
-          }
-        }
-        .item-content {
-          height: 273rpx;
-          font-size: 24rpx;
-          line-height: 40rpx;
-          color: #7f7f7f;
-          overflow: hidden;
-          text-overflow: ellipsis;
-          display: -webkit-box;
-          -webkit-line-clamp: 7;
-          -webkit-box-orient: vertical;
-          image {
-            width: 100% !important;
-          }
-        }
-        .line {
-          margin: 18rpx 0;
-          content: "";
-          width: 100%;
-          height: 1px;
-          padding: 0 32rpx;
-          box-sizing: border-box;
-          background-color: #e5e5e5;
-          -webkit-transform: scale(1, 0.5);
-          transform: scale(1, 0.5);
-          -webkit-transform-origin: center bottom;
-          transform-origin: center bottom;
-        }
-        .item-title {
-          font-size: 28rpx;
-          color: #4a4a4a;
-          margin-bottom: 10rpx;
-          position: relative;
-          text-indent: 0.5em;
-          &::before {
-            content: "";
-            position: absolute;
-            top: 5rpx;
-            left: 0;
-            width: 6rpx;
-            height: 31rpx;
-            background-color: #3385ff;
-          }
-        }
-        .chart-title {
-          height: 72rpx;
-          padding-bottom: 10rpx;
-          text-indent: 0em;
-          &::before {
-            display: none;
-          }
-        }
-        .item-abstract {
-          font-size: 26rpx;
-          color: #6a6a6a;
-          margin-bottom: 10rpx;
-          .report_ico {
-            width: 32rpx;
-            height: 26rpx;
-            margin-right: 20rpx;
-            display: inline-block;
-          }
-        }
-        .item-createtime {
-          display: flex;
-          align-items: center;
-          justify-content: space-between;
-          color: #acacac;
-          font-size: 24rpx;
-          .item-examine {
-            display: flex;
-            align-items: center;
-            image {
-              width: 30rpx;
-              height: 24rpx;
-              margin: 0 10rpx 0 15rpx;
-            }
-          }
-        }
-        .chart-tag {
-          padding-top: 1rpx;
-          height: 36rpx;
-          .tag-item {
-            width: 148rpx;
-            border-radius: 28rpx;
-            border: 2rpx solid rgba(49, 137, 255, 1);
-            overflow: hidden;
-            color: #3385ff;
-            text-align: center;
-            line-height: 30rpx;
-          }
-        }
-        .chart-collect {
-          margin-top: 20rpx;
-          padding-top: 20rpx;
-          padding: 20rpx 0 0 20rpx;
-          border-top: 1rpx solid #dcdfe6;
-          display: flex;
-          align-items: center;
-          .cancel {
-            background: #3385ff;
-            margin-right: 20rpx;
-            color: #ffffff;
-          }
-          .remove {
-            border: 1px solid #3385ff;
-            color: #3385ff;
-          }
-          text {
-            width: 130rpx;
-            height: 46rpx;
-            line-height: 46rpx;
-            border-radius: 4rpx;
-            text-align: center;
-            font-size: 24rpx;
-          }
-        }
-      }
-    }
-  }
-  .content-intimate {
-    position: fixed;
-    display: flex;
-    align-items: center;
-    bottom: 96rpx;
-    right: 41rpx;
-    height: 156rpx;
-    .content {
-      width: 432rpx;
-      height: 112rpx;
-      background-color: #fff;
-      display: flex;
-      border-radius: 56rpx;
-      overflow: hidden;
-      .cont-border {
-        margin: 0 2rpx;
-      }
-      view {
-        flex: 1;
-        background-color: #3385ff;
-        font-size: 30rpx;
-        color: #fff;
-        padding-top: 15rpx;
-        text-align: center;
-      }
-    }
-
-    image {
-      width: 156rpx;
-      height: 100%;
-      z-index: 99;
-    }
-  }
-  .tabs-img {
-    width: 46rpx;
-    height: 26rpx;
-  }
-  .nodata {
-    font-size: 40rpx;
-    .bind-mobile {
-      width: 244rpx;
-      height: 58rpx;
-      background: #3385ff;
-      border-radius: 8rpx;
-      font-size: 28rpx;
-      line-height: 58rpx;
-      text-align: center;
-      color: #fff;
-      margin: 50rpx auto;
-    }
-  }
-  @import "@/components/audioVideo.scss";
-}
-</style>

+ 0 - 1159
pages/my/2.vue

@@ -1,1159 +0,0 @@
-<template>
-  <view class="container Index-container">
-    <view class="top-content-box">
-      <view class="nav-bar-wrap" :style="{ height: navBarStyle.height, paddingTop: navBarStyle.paddingTop, paddingBottom: navBarStyle.paddingBottom }">
-        <view class="content" @click="goSearch">
-          <icon type="search" size="15" class="search_ico" />
-          <text class="sea_ipt">{{ searchPlaceholderList.SummarySearch || "" }}</text>
-        </view>
-      </view>
-      <view class="top-tabs">
-        <block v-for="item in topTabBars" :key="item.Id">
-          <view v-if="item.IsShow" :class="['item', item.val == topTabsActive && 'tabs-active']" @click="topTabsChange(item)">
-            {{ item.Name }}
-            <block v-if="(item.Id === 3 || item.Name == '图表') && wholeShowListData.IsShowChart">
-              <image class="limit-img tabs-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/limit_icon.png" mode=""></image>
-            </block>
-            <view class="active" v-if="item.Id == topTabsActive"></view>
-          </view>
-        </block>
-      </view>
-      <view class="tabs-content">
-        <view class="second-tabs" v-if="topTabsActive == '2' || topTabsActive == '3'">
-          <view :class="['item', item.ChartPermissionId == secondActive && 'tabs-active']" v-for="(item, index) in secondBars" :key="item.ChartPermissionId" @click="handleClickTopSub(item)">
-            {{ item.PermissionName }}
-            <block v-if="wholeShowListData.IsShowResearch && index === secondBars.length - 1 && topTabsActive == '2'">
-              <image class="limit-img tabs-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/limit_icon.png" mode=""></image>
-            </block>
-            <view class="active" v-if="item.ChartPermissionId == secondActive"></view>
-          </view>
-        </view>
-        <block v-if="topTabsActive == '3'">
-          <view class="children-ul">
-            <view :class="['chart-children', chartChildrenActive == item.CtagId ? 'children-active' : '']" v-for="item in chartChildren" :key="item.CtagId" @click="handleChartChildren(item)">{{
-              item.Name
-            }}</view>
-          </view>
-        </block>
-        <view v-if="topTabsActive == '4'" class="medium-ul">
-          <view class="item-content">
-            <view @click="mediumClickHandler(item)" :class="['item', mediumActive === item.value && 'item-act']" v-for="item in mediumSelect" :key="item.value">{{ item.name }}</view>
-          </view>
-        </view>
-      </view>
-    </view>
-    <block v-if="haveData">
-      <view class="audio-video-content" v-if="topTabsActive == 4">
-        <view class="audio-item" v-for="item in videoAudioList" :key="item.Id">
-          <view class="cover-item" :style="{ 'background-image': 'url(' + item.BackgroundImg + ')' }">
-            <!-- type:3 -- 产业视频 -->
-            <block v-if="item.Type == 2 || item.Type == 3">
-              <image class="img-bg" @click="handelPlay(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/play_icon_index.png"></image>
-            </block>
-            <block v-else>
-              <image
-                class="img-bg"
-                @click.stop="handelPlay(item)"
-                :src="
-                  curVoiceId === item.ActivityId && !curAudioPaused
-                    ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                    : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                "
-              ></image>
-            </block>
-            <text class="time">{{ item.PublishTime }}</text>
-            <view :class="['identification', item.Type != 1 && 'identification-video']"> </view>
-            <image
-              class="identification-img"
-              :src="item.Type == 1 ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/video-iocn.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/audio-icon.png'"
-            ></image>
-          </view>
-          <view class="title-share">
-            <view class="title text_twoLine">{{ item.Title }}</view>
-            <view class="share share-collected">
-              <image @click="myLeavingMessageHandler(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/leaving_message.png"></image>
-              <image  @click="isCollectionHandeler(item)" :src="item.IsCollect ?'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/collected_icon.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/not_collected.png'"></image>
-              <button class="share-icon" open-type="share" :data-item="item">
-                <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-              </button>
-            </view>
-          </view>
-        </view>
-      </view>
-      <view class="data-cont" v-else>
-        <view class="report-ul">
-          <block v-for="(report, index) in dataList" :key="index">
-            <view class="report-item" v-if="index % 2 === 0" @click="goDetail(report)">
-              <block v-if="report.HomeType === 1">
-                <view class="audio-video-content">
-                  <view class="audio-item">
-                    <view class="cover-item" :style="{ 'background-image': 'url(' + report.MicroAudio.AudioImgUrl + ')' }">
-                      <image
-                        class="img-bg"
-                        @click.stop="handelPlay(report.MicroAudio)"
-                        :src="
-                          curVoiceId === report.MicroAudio.AudioActivityId && !curAudioPaused
-                            ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                            : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                        "
-                      ></image>
-                      <text class="time">{{ report.MicroAudio.AudioPublishTime }}</text>
-                    </view>
-                    <view class="title-share">
-                      <view class="title text_twoLine">{{ report.MicroAudio.AudioTitle }}</view>
-                      <view class="share">
-                        <view class="share-text" :style="[classifyColor(report.MicroAudio.AudioChartPermissionName)]">
-                          <image :src="classifyIcon(report.MicroAudio)"></image>
-                          音频|{{ report.MicroAudio.AudioChartPermissionName }}
-                        </view>
-                        <button class="share-icon" open-type="share" :data-item="report.MicroAudio">
-                          <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-                        </button>
-                      </view>
-                    </view>
-                  </view>
-                </view>
-              </block>
-              <block v-else>
-                <view class="item-content-img" v-if="report.BodyHtml">
-                  <image :src="report.BodyHtml" mode=""></image>
-                </view>
-                <view class="item-content" v-else>{{ report.Body }}</view>
-                <view class="line"></view>
-                <text :class="['item-title', report.Source != 1 && 'chart-title text_twoLine']">{{ report.Title }}</text>
-                <view class="item-abstract text_twoLine" v-if="report.ExpertBackground">
-                  {{ report.ExpertBackground }}
-                </view>
-                <block v-if="report.Source == 1">
-                  <view class="item-createtime">
-                    <text>{{ report.PublishDate }}</text>
-                    <view class="item-examine" v-if="report.IsResearch">
-                      <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/examine_icon.png"></image>
-                      <text>{{ report.Pv }}</text>
-                    </view>
-                  </view>
-                </block>
-                <block v-else>
-                  <view class="item-createtime chart-tag">
-                    <text class="tag-item" v-if="report.PtagName">{{ report.PtagName }}</text>
-                    <text class="tag-item" v-if="report.CtagName">{{ report.CtagName }}</text>
-                  </view>
-                  <view class="chart-collect" v-if="topTabsActive == 3 && secondActive == 0">
-                    <text class="cancel" @click.stop="myChartIsTop(report.ChartId)">{{ report.IsTop ? "取消置顶" : "置顶" }}</text>
-                    <text class="remove" @click.stop="myChartCollect(report.ChartId)">移除</text>
-                  </view>
-                  <view class="my-chart-collect" v-if="topTabsActive == 3 && secondActive == 0 && report.IsTop"></view>
-                </block>
-              </block>
-            </view>
-          </block>
-        </view>
-        <view class="report-ul">
-          <block v-for="(report, index) in dataList" :key="index">
-            <view class="report-item" v-if="index % 2 !== 0" @click="goDetail(report)">
-              <block v-if="report.HomeType === 1">
-                <view class="audio-video-content">
-                  <view class="audio-item">
-                    <view class="cover-item" :style="{ 'background-image': 'url(' + report.MicroAudio.AudioImgUrl + ')' }">
-                      <image
-                        class="img-bg"
-                        @click.stop="handelPlay(report.MicroAudio)"
-                        :src="
-                          curVoiceId === report.MicroAudio.AudioActivityId && !curAudioPaused
-                            ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                            : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                        "
-                      ></image>
-                      <text class="time">{{ report.MicroAudio.AudioPublishTime }}</text>
-                    </view>
-                    <view class="title-share">
-                      <view class="title text_twoLine">{{ report.MicroAudio.AudioTitle }}</view>
-                      <view class="share">
-                        <view class="share-text" :style="[classifyColor(report.MicroAudio.AudioChartPermissionName)]">
-                          <image :src="classifyIcon(report.MicroAudio)"></image>
-                          音频|{{ report.MicroAudio.AudioChartPermissionName }}
-                        </view>
-                        <button class="share-icon" open-type="share" :data-item="report">
-                          <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-                        </button>
-                      </view>
-                    </view>
-                  </view>
-                </view>
-              </block>
-              <block v-else>
-                <view class="item-content-img" v-if="report.BodyHtml">
-                  <image :src="report.BodyHtml"></image>
-                </view>
-                <view class="item-content" v-else>{{ report.Body }}</view>
-                <view class="line"></view>
-                <text :class="['item-title', report.Source != 1 && 'chart-title text_twoLine']">{{ report.Title }}</text>
-                <view class="item-abstract text_twoLine" v-if="report.ExpertBackground">
-                  {{ report.ExpertBackground }}
-                </view>
-                <block v-if="report.Source == 1">
-                  <view class="item-createtime">
-                    <text>{{ report.PublishDate }}</text>
-                    <view class="item-examine" v-if="report.IsResearch">
-                      <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/examine_icon.png"></image>
-                      <text>{{ report.Pv }}</text>
-                    </view>
-                  </view>
-                </block>
-                <block v-else>
-                  <view class="item-createtime chart-tag">
-                    <text class="tag-item" v-if="report.PtagName">{{ report.PtagName }}</text>
-                    <text class="tag-item" v-if="report.CtagName">{{ report.CtagName }}</text>
-                  </view>
-                  <view class="chart-collect" v-if="topTabsActive == 3 && secondActive == 0">
-                    <text class="cancel" @click.stop="myChartIsTop(report.ChartId)">{{ report.IsTop ? "取消置顶" : "置顶" }}</text>
-                    <text class="remove" @click.stop="myChartCollect(report.ChartId)">移除</text>
-                  </view>
-                  <view class="my-chart-collect" v-if="topTabsActive == 3 && secondActive == 0 && report.IsTop"></view>
-                </block>
-              </block>
-            </view>
-          </block>
-        </view>
-      </view>
-      <u-loadmore :status="status" icon-type="flower" :load-text="loadText" margin-top="20" v-if="pageNum > 1" />
-    </block>
-    <view class="nodata" v-else-if="haveData === false" style="padding-top: 400rpx">
-      <block class="nodata" v-if="!isBindingMobile && secondActive == 0">
-        <text>请先绑定联系方式</text>
-        <view class="bind-mobile" @click="bindingMobile">绑定联系方式</view>
-      </block>
-      <block v-else>
-        <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/act_search.png" mode="" class="nodata_ico"></image>
-        <text>{{ topTabsActive == 3 && secondActive == 0 ? "暂无收藏的图表" : "暂时没有数据" }}</text>
-      </block>
-    </view>
-    <freeCharge class="free-charge" :isShowFreeBtn="isShowFree" />
-    <view v-if="showAudioBox">
-      <audioModule :showAudioPop.sync="showAudioPop" />
-    </view>
-    <videoModule :showVideoPop="showVideoPop" :curVideoId="curVideoId" :videoPopList="videoPopList" />
-    <suspenButton :show.sync="wholeShowListData.IsShow" v-if="wholeShowListData.IsShow" />
-    <modalDialog :isShowhasPermission="isShowhasPermission" :applyForIsShow="applyForIsShow" :jurisdictionList="jurisdictionList" :hasPermission="hasPermission" />
-  </view>
-</template>
-
-<script>
-import { Home, Reports, Chart, activity } from "@/config/api.js";
-import { Throttle, deepCopy } from "@/config/util.js";
-import freeCharge from "@/components/freeCharge";
-import suspenButton from "@/components/suspen_button.vue";
-import { color_word_bg, MultimediaIcon } from "@/utils/styleClassify";
-import audioModule from "@/components/audioModule/index";
-import modalDialog from "@/components/modalDialog.vue";
-import videoModule from "@/components/videoModule/index";
-
-let app = getApp();
-export default {
-  data() {
-    return {
-      topTabBars: [],
-      topTabsActive: 1, //一级top的tabs
-      secondActive: "", //二级的tabs
-      secondBars: [], //二级的tabs数组
-      chartChildren: [], //二级的tabs下的标签
-      chartChildrenActive: 0,
-      refresh: false,
-      pageSize: 10, //条数
-      pageNum: 1, //页码
-      haveMore: true, //是否有更多数据
-      haveData: null, //是否有数据
-      //数据列表
-      dataList: [],
-      status: "loadmore",
-      loadText: {
-        loadmore: "上拉加载更多",
-        loading: "加载中",
-        nomore: "已经到底了",
-      },
-      showTransition: false, //点击绝密后的隐现
-      isBindingMobile: true, //图表我的收藏是否绑定手机号
-      videoContext: null,
-      showAudioPop: false, //播放音频
-      isShowhasPermission: false, //  联系销售的提交申请
-      applyForIsShow: false, // 提交申请
-      jurisdictionList: {},
-      hasPermission: "", //权限
-      audioShareId: "", //通过分享单个音频点进页面时使用
-      videoShareId: "", //通过分享单个视频点进页面时使用
-      activityShareId: "",
-      videoAudioList: [], //音频  视频 list
-      curVideoId: 0, //音频Id
-      showVideoPop: false,
-      videoPopList: {},
-      mediumSelect: [
-        { name: "全部", value: 0 },
-        { name: "视频", value: 1 },
-        { name: "音频", value: 2 },
-      ],
-      mediumActive: 0,
-    };
-  },
-  components: {
-    freeCharge,
-    suspenButton,
-    modalDialog,
-    audioModule,
-    videoModule,
-  },
-  watch: {},
-  onLoad(optios) {
-    this.getHeaderTab();
-    uni.getSystemInfo({
-      success: function (res) {
-        if (res.windowWidth > 700) {
-          uni.reLaunch({
-            url: "/pages/pcWebViev/pcWebViev",
-          });
-        }
-      },
-    });
-    if (optios.topTabsActive) {
-      this.topTabsActive = optios.topTabsActive;
-      this.secondActive = optios.secondActive;
-      this.chartChildrenActive = optios.childrenActive;
-      this.videoShareId = optios.videoShareId;
-      this.audioShareId = optios.audioShareId;
-      this.activityShareId = optios.activityId;
-      console.log(this.activityShareId);
-      this.getTabs();
-    }
-    this.initNavBar();
-    this.getReportList();
-    this.$store.dispatch("checkHandle", "noGO");
-  },
-  onShow() {
-    //进入页面的记录
-    this.$store.dispatch("statistics", { PageType: "Activit" });
-    // #ifdef MP-WEIXIN
-    uni.hideHomeButton();
-    // #endif
-    this.$store.commit("audioBg/parseIntAudio", true);
-  },
-  computed: {
-    curVoiceId() {
-      //当前正在播放的音频id
-      return this.$store.state.audioBg.indexId;
-    },
-    curAudioPaused() {
-      //当前音频是否暂停状态
-      return this.$store.state.audioBg.paused;
-    },
-    showAudioBox() {
-      return this.$store.state.audioBg.parseIntShow;
-    },
-  },
-  methods: {
-    //获取胶囊位置
-    initNavBar() {
-      let menuButtonInfo = uni.getMenuButtonBoundingClientRect();
-      this.navBarStyle = {
-        height: menuButtonInfo.height + menuButtonInfo.top + 8 + "px",
-        paddingTop: menuButtonInfo.top - 4 + "px",
-        paddingBottom: "4px",
-      };
-    },
-    //点击顶部一级分类
-    topTabsChange(item) {
-      this.topTabsActive = item.Id;
-      this.chartChildren = [];
-      this.chartChildrenActive = 0;
-      this.secondActive = "";
-      this.pageNum = 1;
-      this.dataList = [];
-      this.audioShareId = "";
-      this.videoShareId = "";
-      uni.pageScrollTo({
-        scrollTop: 0,
-        duration: 0,
-      });
-      if (this.topTabsActive == "2" || this.topTabsActive == "3") {
-        this.getTabs();
-      } else {
-        this.initData();
-      }
-    },
-    //点击顶部二级分类
-    handleClickTopSub(item) {
-      this.secondActive = item.ChartPermissionId;
-      this.chartChildren = [];
-      this.chartChildrenActive = 0;
-      this.childrenChartData();
-      this.initData();
-    },
-    //点击图标的二级分类 处理数据
-    childrenChartData() {
-      if (this.topTabsActive == 3 && this.secondActive != 0) {
-        let arr = [];
-        this.secondBars &&
-          this.secondBars.forEach((item) => {
-            if (this.secondActive == item.ChartPermissionId) {
-              deepCopy(arr, item.List);
-              arr.unshift({
-                CtagId: 0,
-                Name: "全部",
-              });
-              this.chartChildren = arr;
-            }
-          });
-        this.chartChildrenActive > 0 ? "" : (this.chartChildrenActive = 0);
-      }
-    },
-    //点击图标的三级分类
-    handleChartChildren(item) {
-      this.chartChildrenActive = item.CtagId;
-      this.initData();
-    },
-    // 点击为路演的筛选
-    mediumClickHandler(item) {
-      this.mediumActive = item.value;
-      this.initData();
-    },
-    //点击
-    initData() {
-      this.pageNum = 1;
-      this.dataList = [];
-      uni.pageScrollTo({
-        scrollTop: 0,
-        duration: 0,
-      });
-      this.getReportList();
-    },
-    /* 获取tab分类 */
-    getTabs() {
-      this.secondBars = [];
-      this.topTabsActive == "2"
-        ? Home.Tab().then((res) => {
-            if (res.Ret === 200) {
-              this.secondBars = res.Data.List;
-              this.secondActive > 0 ? "" : (this.secondActive = this.secondBars[0].ChartPermissionId);
-              this.getReportList();
-            }
-          })
-        : this.topTabsActive == "3"
-        ? Chart.getChartPatg().then((res) => {
-            if (res.Ret === 200) {
-              let arr = res.Data;
-              arr.unshift({
-                ChartPermissionId: 0,
-                PermissionName: "我的收藏",
-              });
-              this.secondBars = arr;
-              this.secondActive ? "" : (this.secondActive = 0);
-              this.secondActive > 0 && this.childrenChartData();
-              this.getReportList();
-            }
-          })
-        : "";
-    },
-    /* 获取列表 */
-    async getReportList() {
-      if (this.topTabsActive == "3" && this.secondActive == 0) {
-        const res = await Chart.getChartcollection({
-          PageSize: this.pageSize,
-          CurrentIndex: this.pageNum,
-        });
-        if (res.Ret === 200) {
-          this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
-          this.isBindingMobile = res.Data.IsBindingMobile;
-          if (this.pageNum === 1) {
-            this.dataList = res.Data.List || [];
-            this.haveData = this.dataList.length > 0 ? true : false;
-          } else {
-            this.dataList = this.dataList.concat(res.Data.List);
-          }
-        }
-      } else if (this.topTabsActive == 4) {
-        const res = await Home.microRoadshowList({
-          PageSize: this.pageSize,
-          CurrentIndex: this.pageNum,
-          AudioId: this.audioShareId,
-          VideoId: this.activityShareId ? "" : this.videoShareId,
-          ActivityVideoId: this.activityShareId && this.videoShareId,
-          Filter: this.mediumActive,
-        });
-        if (res.Ret === 200) {
-          this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
-          if (this.pageNum == 1) {
-            this.videoAudioList = res.Data.List || [];
-            this.haveData = this.videoAudioList.length > 0 ? true : false;
-            if (this.refresh) {
-              uni.stopPullDownRefresh();
-              this.refresh = false;
-            }
-          } else {
-            this.videoAudioList = this.videoAudioList.concat(res.Data.List);
-          }
-        }
-      } else {
-        const res = await Home.getList({
-          PageSize: this.pageSize,
-          CurrentIndex: this.pageNum,
-          ChartPermissionId: this.secondActive,
-          CtagId: this.chartChildrenActive,
-          ListType: this.topTabsActive,
-        });
-        if (res.Ret === 200) {
-          this.processingData(res);
-        }
-      }
-    },
-    //处理数据
-    processingData(res) {
-      if (!res.Data.HaveResearch) {
-        this.$util.modalShow("", "您暂无查看买方研选权限", "", () => {
-          uni.reLaunch({
-            url: "/pages/index/index",
-          });
-        });
-      }
-      this.status = this.pageNum < res.Data.Paging.Pages ? "loadmore" : "nomore";
-      res.Data.List &&
-        res.Data.List.forEach((item) => {
-          if (item.BodyHtml) {
-            item.BodyHtml = item.BodyHtml.replace(/'\'/g, "");
-          }
-        });
-      if (this.topTabsActive == "2") {
-        if (this.pageNum === 1) {
-          this.dataList = res.Data.List || [];
-          this.haveData = this.dataList.length ? true : false;
-        } else {
-          this.dataList = this.dataList.concat(res.Data.List);
-        }
-      } else {
-        if (this.pageNum === 1) {
-          this.haveData = res.Data.List ? true : res.Data.ChartList ? true : false;
-        }
-        if (!res.Data.List) {
-          this.dataList = this.dataList.concat(res.Data.ChartList);
-        } else if (!res.Data.ChartList) {
-          this.dataList = this.dataList.concat(res.Data.List);
-        } else {
-          this.dataList.push(res.Data.List.shift());
-          let newArr = [];
-          let newArrTwo = [];
-          for (let i = 0; i < res.Data.List.length; i += 2) {
-            newArr.push(res.Data.List.slice(i, i + 2));
-          }
-          for (let i = 0; i < res.Data.ChartList.length; i += 2) {
-            newArrTwo.push(res.Data.ChartList.slice(i, i + 2));
-          }
-          let arr = [];
-          newArr.forEach((item, index) => {
-            if (newArrTwo[index]) {
-              arr.push(newArrTwo[index], item);
-            } else {
-              arr.push(item);
-            }
-          });
-          this.dataList = this.dataList.concat(arr.flat(Infinity));
-        }
-      }
-
-      if (this.refresh) {
-        uni.stopPullDownRefresh();
-        this.refresh = false;
-      }
-    },
-    //我的收藏的删除
-    myChartCollect(id) {
-      uni.showModal({
-        content: "确认要将该图表移除我的收藏吗?",
-        confirmColor: "#3385FF",
-        cancelColor: "#606266",
-        success: async (res) => {
-          if (res.confirm) {
-            const res = await Chart.myChartCollect({
-              ChartId: id,
-            });
-            if (res.Ret === 200) {
-              this.initData();
-              this.$util.toast("已取消收藏");
-            }
-          }
-        },
-      });
-    },
-    //我的收藏 置顶
-    async myChartIsTop(id) {
-      const res = await Chart.myChartTop({
-        ChartId: id,
-      });
-      if (res.Ret === 200) {
-        this.initData();
-        this.$util.toast(res.Msg);
-      }
-    },
-    /* 进入详情 校验是否有该品种权限 */
-    goDetail(item) {
-      if (item.HomeType !== 1) {
-        if (item.Source == 2) {
-          /* 无需授权且已绑定 检验是或否有权限 */
-          this.$store.dispatch("checkHandle", "/pageMy/chartPage/chartPage?id=" + item.ChartId);
-        } else {
-          /* 无需授权且已绑定 检验是或否有权限 */
-          this.$store.dispatch("checkHandle", "/pageMy/reportDetail/reportDetail?id=" + item.ArticleId);
-        }
-      }
-    },
-    /* 搜索 */
-    goSearch() {
-      this.$store.dispatch("checkHandle", "/pages-search/indedxSearch/indedxSearch?isType=" + this.topTabsActive);
-    },
-    /* 绑定联系方式 */
-    bindingMobile() {
-      uni.navigateTo({
-        url: "/pageMy/login/login",
-      });
-    },
-
-    //播放的权限判断
-    handelPlay(item) {
-      let content_item = null;
-      if (item.AudioActivityId) {
-        content_item = {
-          ActivityId: item.AudioActivityId,
-          PlaySeconds: item.AudioPlaySeconds,
-          ResourceUrl: item.AudioResourceUrl,
-          Title: item.AudioTitle,
-          Type: item.AudioType,
-        };
-      }
-      if (!this.$store.state.isAuth && !this.$store.state.isBind) {
-        if (item.AuthInfo.HasPermission == 1) {
-          item.Type == 1 || item.AudioType == 1 ? this.audioPlayBack(content_item ? content_item : item) : this.handelVideoPlay(item);
-        } else {
-          this.hasPermission = item.AuthInfo.HasPermission;
-          this.jurisdictionList.ActivityId = item.Id;
-          this.jurisdictionList.isAudioVideo = item.Type;
-          if (this.hasPermission == 2) {
-            this.jurisdictionList.SellerMobile = item.AuthInfo.SellerMobile;
-            this.jurisdictionList.SellerName = item.AuthInfo.SellerName;
-            this.jurisdictionList.PopupMsg = item.AuthInfo.PopupMsg;
-            this.isShowhasPermission = true;
-          } else if (this.hasPermission == 3 || this.hasPermission == 4 || this.hasPermission == 5) {
-            this.jurisdictionList.PopupMsg = item.AuthInfo.PopupMsg;
-            this.applyForIsShow = true;
-          }
-        }
-      } else {
-        this.$store.dispatch("checkHandle");
-      }
-    },
-    //视频的播放事件
-    handelVideoPlay(item) {
-      if (this.$store.state.videoPlay.playVideoId != item.Id) {
-        this.$store.commit("videoPlay/palyTimeUpdate", 0);
-        console.log(this.$store.state.videoPlay.palyCurrentTime);
-        this.$store.commit("videoPlay/playVideo", item.Id);
-      }
-      this.globalBgAudioManager.stop();
-      this.videoPopList = item;
-      this.showVideoPop = true;
-    },
-    //音频的播放事件
-    async audioPlayBack(item) {
-      console.log(item);
-      this.curVideoId = 0;
-      this.$store.commit("audioBg/parseIntAudio", true);
-      // 判断是否为同一个音频
-      if (this.$store.state.audioBg.indexId == item.ActivityId) {
-        if (this.globalBgAudioManager.paused) {
-          this.globalBgAudioManager.play();
-        } else {
-          this.globalBgAudioManager.pause();
-        }
-      } else {
-        let VoiceList = {
-          Url: item.ResourceUrl,
-          Name: item.Title,
-          PlaySeconds: item.PlaySeconds,
-        };
-        this.$store.commit("audioBg/addAudio", { list: VoiceList, indexId: item.ActivityId, activityTitle: item.Title });
-      }
-      this.showAudioPop = true;
-    },
-    //音视频的背景色 文字颜色
-    classifyColor(item) {
-      let text_color = color_word_bg.color_word.find((key) => key.name == item).color;
-      let back_ground = color_word_bg.color_bg.find((key) => key.name == item).color;
-      let _isColor = { color: text_color, "background-color": back_ground };
-      return _isColor;
-    },
-    //音视频的图标
-    classifyIcon(item) {
-      let srcItem = MultimediaIcon.find((key) => key.name == (item.AudioChartPermissionName || item.ChartPermissionName));
-      let imgSrc = item.Type == 1 || item.AudioType == 1 ? srcItem.audio : srcItem.video;
-      return imgSrc;
-    },
-    //获取顶部导航
-    async getHeaderTab() {
-      const res = await Home.headerTab();
-      if (res.Ret === 200) {
-        this.topTabBars = res.Data || [];
-      }
-    },
-
-    // 微路演留言
-    myLeavingMessageHandler(item) {
-      uni.navigateTo({
-        url: "/activityPages/generationAsk/generationAsk?id=" + (item.Type == 3 ? item.Id : item.ActivityId) + "&type=文章&roadshow=" + item.Type + "&roadshowTitle=" + item.Title,
-      });
-    },
-
-    // 微路演收藏
-    async isCollectionHandeler(item) {
-      const res = await Home.microRoadshowCollect({
-        Id: item.Id,
-        SourceType: item.Type,
-      });
-      if (res.Ret === 200) {
-        res.Data.Status == 1 ? (item.IsCollect = true) : (item.IsCollect = false);
-        uni.showToast({
-          title: res.Msg,
-          duration: 2000,
-        });
-      }
-    },
-  },
-  onHide() {
-    this.$store.commit("audioBg/parseIntAudio", false);
-    this.curVideoId = 0;
-  },
-  mounted() {
-    uni.$on("updateAudioVideo", (data) => {
-      console.log("执行了");
-      this.$store.dispatch("checkHandle", "noGO");
-      this.getReportList();
-    });
-  },
-  /* 下拉刷新 */
-  onPullDownRefresh: Throttle(function () {
-    this.audioShareId = "";
-    this.videoShareId = "";
-    this.activityShareId = "";
-    this.status = "loadmore";
-    this.refresh = true;
-    this.dataList = [];
-    this.pageNum = 1;
-    this.getReportList();
-  }),
-  // 上拉加载
-  onReachBottom: Throttle(function () {
-    if (this.status === "nomore") return;
-    this.status = "loading";
-    this.pageNum++;
-    this.getReportList();
-  }),
-  /** 用户点击分享*/
-  onShareAppMessage: function ({ from, target }) {
-    if (from === "button") {
-      let item = target.dataset.item;
-      let audio_id = item.Type == 1 || item.AudioType == 1 ? item.Id : "";
-      // type=2 -- 活动视频 type=3 -- 产业视频
-      let video_id = item.Type == 2 || item.Type == 3 ? item.Id : "";
-      let activity_id = item.Type == 2 && item.ActivityId > 0 ? item.ActivityId : "";
-      let title_share = item.AudioTitle || item.Title;
-      return {
-        title: this.isHorzMobile ? "好友向您推荐此内容,上传名片享查研观向免费月卡!" : title_share,
-        path: "/pages/index/index?topTabsActive=4" + "&audioShareId=" + audio_id + "&videoShareId=" + video_id + "&activityId=" + activity_id,
-        imageUrl: item.AudioShareImg || item.ShareImg,
-      };
-    } else {
-      return {
-        title: this.isHorzMobile ? "好友向您推荐此内容,上传名片享查研观向免费月卡!" : "您手边的弘则研究素材检索库",
-        path: "/pages/index/index?topTabsActive=" + this.topTabsActive + "&secondActive=" + this.secondActive + "&childrenActive=" + this.chartChildrenActive,
-        imageUrl: this.topTabsActive == 1 ? "https://hzstatic.hzinsights.com/cygx/czbk/home_share.png" : "",
-        success: (res) => {},
-        fail: (err) => {},
-      };
-    }
-  },
-};
-</script>
-
-<style lang="scss">
-.Index-container {
-  background-color: #f7f7f7;
-  font-size: 30rpx;
-  .top-content-box {
-    position: sticky;
-    top: 0;
-    left: 0;
-    width: 100%;
-    z-index: 9;
-    .top-tabs {
-      width: 100%;
-      display: flex;
-      align-items: center;
-      justify-content: center;
-      font-size: 34rpx;
-      background-color: #fff;
-      padding: 35rpx 0 10rpx;
-      &::-webkit-scrollbar {
-        width: 0;
-        height: 0;
-        display: none;
-      }
-      .item {
-        position: relative;
-        padding-bottom: 8rpx;
-        margin-right: 60rpx;
-        flex-shrink: 0;
-        .limit-img {
-          position: absolute;
-          top: -15rpx;
-          right: -50rpx;
-          z-index: 99;
-        }
-        .active {
-          position: absolute;
-          left: 0;
-          bottom: 0;
-          height: 4rpx;
-          width: 100%;
-          border-radius: 1rpx;
-          background: linear-gradient(90deg, #2e85ff 0%, #7eeaf6 100%);
-        }
-      }
-      .tabs-active {
-        color: #3385ff;
-        font-weight: 500;
-      }
-    }
-  }
-  .nav-bar-wrap {
-    background-color: #fff;
-    width: 100%;
-    padding-left: 35rpx;
-    display: flex;
-    align-items: center;
-    .content {
-      position: relative;
-      display: flex;
-      align-items: center;
-      width: 70%;
-      height: 63rpx;
-      font-size: 30rpx;
-      color: #8d8d8d;
-      background-color: #f6f6f6;
-      padding-left: 33rpx;
-      border-radius: 70rpx;
-      // border: 1rpx solid #e5e5e5;
-      .sea_ipt {
-        padding-left: 15rpx;
-      }
-    }
-  }
-  .tabs-content {
-    padding: 0 30rpx;
-    background-color: #fff;
-    .children-ul {
-      display: flex;
-      flex-wrap: wrap;
-      .children-active {
-        background-color: #3385ff;
-        color: #fff;
-      }
-    }
-    .medium-ul {
-      display: flex;
-      justify-content: flex-end;
-      padding: 10px 0;
-      .item-content {
-        display: flex;
-        height: 51rpx;
-        background: #f8f8fa;
-        width: 345rpx;
-        border-radius: 64rpx;
-        color: #999999;
-      }
-      .item {
-        display: flex;
-        align-items: center;
-        justify-content: center;
-        width: 115rpx;
-        height: 51rpx;
-        border-radius: 47rpx;
-      }
-      .item-act {
-        background-color: #3385ff;
-        color: #fff;
-      }
-    }
-    .chart-children {
-      padding: 10rpx 20rpx;
-      margin: 0rpx 20rpx 20rpx 0;
-      background-color: #f9f9f9;
-      color: #666666;
-      font-size: 26rpx;
-      border-radius: 4rpx;
-    }
-  }
-  .second-tabs {
-    width: 100%;
-    display: flex;
-    overflow-x: auto;
-    background-color: #fff;
-    font-size: 30rpx;
-    color: #999999;
-    padding: 20rpx 0;
-    &::-webkit-scrollbar {
-      width: 0;
-      height: 0;
-      display: none;
-    }
-    .item {
-      position: relative;
-      padding-bottom: 16rpx;
-      margin-right: 50rpx;
-      flex-shrink: 0;
-      .limit-img {
-        position: absolute;
-        top: -15rpx;
-        right: -50rpx;
-        z-index: 99;
-      }
-      .active {
-        position: absolute;
-        left: 0;
-        bottom: 0;
-        height: 4rpx;
-        width: 100%;
-        border-radius: 1rpx;
-        background: linear-gradient(90deg, #2e85ff 0%, #7eeaf6 100%);
-      }
-    }
-    .tabs-active {
-      color: #3385ff;
-      font-weight: 500;
-    }
-  }
-  .data-cont {
-    padding: 28rpx 20rpx 10rpx;
-    display: flex;
-    .report-ul {
-      width: 50%;
-      &:first-child {
-        margin-right: 10rpx;
-      }
-      .report-item {
-        padding: 20rpx 20rpx 24rpx 20rpx;
-        margin-bottom: 20rpx;
-        border-radius: 8rpx;
-        box-shadow: 0 3rpx 6rpx rgba($color: #000000, $alpha: 0.16);
-        background: #fff;
-        position: relative;
-        overflow: hidden;
-        .audio-video-content {
-          width: calc(100% + 40rpx);
-          height: calc(100% + 25rpx);
-          margin: -20rpx 0 0 -20rpx;
-          padding: 0 !important;
-          .audio-item {
-            width: 100%;
-            height: auto;
-            box-shadow: none;
-          }
-        }
-        .my-chart-collect {
-          content: "";
-          display: block;
-          position: absolute;
-          top: 0;
-          left: 0;
-          width: 0;
-          height: 0;
-          border-top: 60rpx solid #3385ff;
-          border-right: 60rpx solid transparent;
-        }
-        .item-content-img {
-          display: flex;
-          align-items: center;
-          width: 330rpx;
-          margin-left: -6rpx;
-          margin-bottom: -20rpx;
-          image {
-            width: 100%;
-            height: 262rpx;
-            vertical-align: middle;
-          }
-        }
-        .item-content {
-          height: 273rpx;
-          font-size: 24rpx;
-          line-height: 40rpx;
-          color: #7f7f7f;
-          overflow: hidden;
-          text-overflow: ellipsis;
-          display: -webkit-box;
-          -webkit-line-clamp: 7;
-          -webkit-box-orient: vertical;
-          image {
-            width: 100% !important;
-          }
-        }
-        .line {
-          margin: 18rpx 0;
-          content: "";
-          width: 100%;
-          height: 1px;
-          padding: 0 32rpx;
-          box-sizing: border-box;
-          background-color: #e5e5e5;
-          -webkit-transform: scale(1, 0.5);
-          transform: scale(1, 0.5);
-          -webkit-transform-origin: center bottom;
-          transform-origin: center bottom;
-        }
-        .item-title {
-          font-size: 28rpx;
-          color: #4a4a4a;
-          margin-bottom: 10rpx;
-          position: relative;
-          text-indent: 0.5em;
-          &::before {
-            content: "";
-            position: absolute;
-            top: 5rpx;
-            left: 0;
-            width: 6rpx;
-            height: 31rpx;
-            background-color: #3385ff;
-          }
-        }
-        .chart-title {
-          height: 72rpx;
-          padding-bottom: 10rpx;
-          text-indent: 0em;
-          &::before {
-            display: none;
-          }
-        }
-        .item-abstract {
-          font-size: 26rpx;
-          color: #6a6a6a;
-          margin-bottom: 10rpx;
-          .report_ico {
-            width: 32rpx;
-            height: 26rpx;
-            margin-right: 20rpx;
-            display: inline-block;
-          }
-        }
-        .item-createtime {
-          display: flex;
-          align-items: center;
-          justify-content: space-between;
-          color: #acacac;
-          font-size: 24rpx;
-          .item-examine {
-            display: flex;
-            align-items: center;
-            image {
-              width: 30rpx;
-              height: 24rpx;
-              margin: 0 10rpx 0 15rpx;
-            }
-          }
-        }
-        .chart-tag {
-          padding-top: 1rpx;
-          height: 36rpx;
-          .tag-item {
-            width: 148rpx;
-            border-radius: 28rpx;
-            border: 2rpx solid rgba(49, 137, 255, 1);
-            overflow: hidden;
-            color: #3385ff;
-            text-align: center;
-            line-height: 30rpx;
-          }
-        }
-        .chart-collect {
-          margin-top: 20rpx;
-          padding-top: 20rpx;
-          padding: 20rpx 0 0 20rpx;
-          border-top: 1rpx solid #dcdfe6;
-          display: flex;
-          align-items: center;
-          .cancel {
-            background: #3385ff;
-            margin-right: 20rpx;
-            color: #ffffff;
-          }
-          .remove {
-            border: 1px solid #3385ff;
-            color: #3385ff;
-          }
-          text {
-            width: 130rpx;
-            height: 46rpx;
-            line-height: 46rpx;
-            border-radius: 4rpx;
-            text-align: center;
-            font-size: 24rpx;
-          }
-        }
-      }
-    }
-  }
-  .content-intimate {
-    position: fixed;
-    display: flex;
-    align-items: center;
-    bottom: 96rpx;
-    right: 41rpx;
-    height: 156rpx;
-    .content {
-      width: 432rpx;
-      height: 112rpx;
-      background-color: #fff;
-      display: flex;
-      border-radius: 56rpx;
-      overflow: hidden;
-      .cont-border {
-        margin: 0 2rpx;
-      }
-      view {
-        flex: 1;
-        background-color: #3385ff;
-        font-size: 30rpx;
-        color: #fff;
-        padding-top: 15rpx;
-        text-align: center;
-      }
-    }
-
-    image {
-      width: 156rpx;
-      height: 100%;
-      z-index: 99;
-    }
-  }
-  .tabs-img {
-    width: 46rpx;
-    height: 26rpx;
-  }
-  .nodata {
-    font-size: 40rpx;
-    .bind-mobile {
-      width: 244rpx;
-      height: 58rpx;
-      background: #3385ff;
-      border-radius: 8rpx;
-      font-size: 28rpx;
-      line-height: 58rpx;
-      text-align: center;
-      color: #fff;
-      margin: 50rpx auto;
-    }
-  }
-  @import "@/components/audioVideo.scss";
-}

+ 0 - 173
pages/my/ces.vue

@@ -1,173 +0,0 @@
-      <view class="audio-video-content" v-if="topTabsActive == 4">
-        <view class="audio-item" v-for="item in videoAudioList" :key="item.Id">
-          <view class="cover-item" :style="{ 'background-image': 'url(' + item.BackgroundImg + ')' }">
-            <!-- type:3 -- 产业视频 -->
-            <block v-if="item.Type == 2 || item.Type == 3">
-              <image class="img-bg" @click="handelPlay(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/play_icon_index.png"></image>
-            </block>
-            <block v-else>
-              <image
-                class="img-bg"
-                @click.stop="handelPlay(item)"
-                :src="
-                  curVoiceId === item.ActivityId && !curAudioPaused
-                    ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                    : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                "
-              ></image>
-            </block>
-            <text class="time">{{ item.PublishTime }}</text>
-            <view :class="['identification', item.Type != 1 && 'identification-video']"> </view>
-            <image
-              class="identification-img"
-              :src="item.Type == 1 ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/video-iocn.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/audio-icon.png'"
-            ></image>
-          </view>
-          <view class="title-share">
-            <view class="title text_twoLine">{{ item.Title }}</view>
-            <view class="share share-collected">
-              <image @click="myLeavingMessageHandler(item)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/leaving_message.png"></image>
-              <image  @click="isCollectionHandeler(item)" :src="item.IsCollect ?'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/collected_icon.png' : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/not_collected.png'"></image>
-              <button class="share-icon" open-type="share" :data-item="item">
-                <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-              </button>
-            </view>
-          </view>
-        </view>
-      </view>
-      <view class="data-cont" v-else>
-        <view class="report-ul">
-          <block v-for="(report, index) in dataList" :key="index">
-            <view class="report-item" v-if="index % 2 === 0" @click="goDetail(report)">
-              <block v-if="report.HomeType === 1">
-                <view class="audio-video-content">
-                  <view class="audio-item">
-                    <view class="cover-item" :style="{ 'background-image': 'url(' + report.MicroAudio.AudioImgUrl + ')' }">
-                      <image
-                        class="img-bg"
-                        @click.stop="handelPlay(report.MicroAudio)"
-                        :src="
-                          curVoiceId === report.MicroAudio.AudioActivityId && !curAudioPaused
-                            ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                            : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                        "
-                      ></image>
-                      <text class="time">{{ report.MicroAudio.AudioPublishTime }}</text>
-                    </view>
-                    <view class="title-share">
-                      <view class="title text_twoLine">{{ report.MicroAudio.AudioTitle }}</view>
-                      <view class="share">
-                        <view class="share-text" :style="[classifyColor(report.MicroAudio.AudioChartPermissionName)]">
-                          <image :src="classifyIcon(report.MicroAudio)"></image>
-                          音频|{{ report.MicroAudio.AudioChartPermissionName }}
-                        </view>
-                        <button class="share-icon" open-type="share" :data-item="report.MicroAudio">
-                          <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-                        </button>
-                      </view>
-                    </view>
-                  </view>
-                </view>
-              </block>
-              <block v-else>
-                <view class="item-content-img" v-if="report.BodyHtml">
-                  <image :src="report.BodyHtml" mode=""></image>
-                </view>
-                <view class="item-content" v-else>{{ report.Body }}</view>
-                <view class="line"></view>
-                <text :class="['item-title', report.Source != 1 && 'chart-title text_twoLine']">{{ report.Title }}</text>
-                <view class="item-abstract text_twoLine" v-if="report.ExpertBackground">
-                  {{ report.ExpertBackground }}
-                </view>
-                <block v-if="report.Source == 1">
-                  <view class="item-createtime">
-                    <text>{{ report.PublishDate }}</text>
-                    <view class="item-examine" v-if="report.IsResearch">
-                      <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/examine_icon.png"></image>
-                      <text>{{ report.Pv }}</text>
-                    </view>
-                  </view>
-                </block>
-                <block v-else>
-                  <view class="item-createtime chart-tag">
-                    <text class="tag-item" v-if="report.PtagName">{{ report.PtagName }}</text>
-                    <text class="tag-item" v-if="report.CtagName">{{ report.CtagName }}</text>
-                  </view>
-                  <view class="chart-collect" v-if="topTabsActive == 3 && secondActive == 0">
-                    <text class="cancel" @click.stop="myChartIsTop(report.ChartId)">{{ report.IsTop ? "取消置顶" : "置顶" }}</text>
-                    <text class="remove" @click.stop="myChartCollect(report.ChartId)">移除</text>
-                  </view>
-                  <view class="my-chart-collect" v-if="topTabsActive == 3 && secondActive == 0 && report.IsTop"></view>
-                </block>
-              </block>
-            </view>
-          </block>
-        </view>
-        <view class="report-ul">
-          <block v-for="(report, index) in dataList" :key="index">
-            <view class="report-item" v-if="index % 2 !== 0" @click="goDetail(report)">
-              <block v-if="report.HomeType === 1">
-                <view class="audio-video-content">
-                  <view class="audio-item">
-                    <view class="cover-item" :style="{ 'background-image': 'url(' + report.MicroAudio.AudioImgUrl + ')' }">
-                      <image
-                        class="img-bg"
-                        @click.stop="handelPlay(report.MicroAudio)"
-                        :src="
-                          curVoiceId === report.MicroAudio.AudioActivityId && !curAudioPaused
-                            ? 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_stop_index.png'
-                            : 'https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/back_group_index.png'
-                        "
-                      ></image>
-                      <text class="time">{{ report.MicroAudio.AudioPublishTime }}</text>
-                    </view>
-                    <view class="title-share">
-                      <view class="title text_twoLine">{{ report.MicroAudio.AudioTitle }}</view>
-                      <view class="share">
-                        <view class="share-text" :style="[classifyColor(report.MicroAudio.AudioChartPermissionName)]">
-                          <image :src="classifyIcon(report.MicroAudio)"></image>
-                          音频|{{ report.MicroAudio.AudioChartPermissionName }}
-                        </view>
-                        <button class="share-icon" open-type="share" :data-item="report">
-                          <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/multimedia/share-btn-icon.png"></image>
-                        </button>
-                      </view>
-                    </view>
-                  </view>
-                </view>
-              </block>
-              <block v-else>
-                <view class="item-content-img" v-if="report.BodyHtml">
-                  <image :src="report.BodyHtml"></image>
-                </view>
-                <view class="item-content" v-else>{{ report.Body }}</view>
-                <view class="line"></view>
-                <text :class="['item-title', report.Source != 1 && 'chart-title text_twoLine']">{{ report.Title }}</text>
-                <view class="item-abstract text_twoLine" v-if="report.ExpertBackground">
-                  {{ report.ExpertBackground }}
-                </view>
-                <block v-if="report.Source == 1">
-                  <view class="item-createtime">
-                    <text>{{ report.PublishDate }}</text>
-                    <view class="item-examine" v-if="report.IsResearch">
-                      <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/examine_icon.png"></image>
-                      <text>{{ report.Pv }}</text>
-                    </view>
-                  </view>
-                </block>
-                <block v-else>
-                  <view class="item-createtime chart-tag">
-                    <text class="tag-item" v-if="report.PtagName">{{ report.PtagName }}</text>
-                    <text class="tag-item" v-if="report.CtagName">{{ report.CtagName }}</text>
-                  </view>
-                  <view class="chart-collect" v-if="topTabsActive == 3 && secondActive == 0">
-                    <text class="cancel" @click.stop="myChartIsTop(report.ChartId)">{{ report.IsTop ? "取消置顶" : "置顶" }}</text>
-                    <text class="remove" @click.stop="myChartCollect(report.ChartId)">移除</text>
-                  </view>
-                  <view class="my-chart-collect" v-if="topTabsActive == 3 && secondActive == 0 && report.IsTop"></view>
-                </block>
-              </block>
-            </view>
-          </block>
-        </view>
-      </view>

+ 0 - 440
pages/my/my.vue

@@ -1,440 +0,0 @@
-<template>
-  <view class="container my-container" v-if="haveData">
-    <view class="my-background">
-      <view class="my-notice" v-if="myNotice">
-        添加到我的小程序,做您手边的研究素材库👆
-        <van-icon @click="myNotice = false" class="my-icon" name="cross" />
-      </view>
-    </view>
-    <view class="my-info">
-      <view class="my-top-info">
-        <view class="info">
-          <view class="info-img">
-            <button class="avatar-wrapper" open-type="chooseAvatar" @chooseavatar="onChooseAvatar">
-              <image class="avatar" v-if="headimgurl" :src="headimgurl"></image>
-              <image src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/logo.png" class="avatar" v-else></image>
-            </button>
-          </view>
-          <view class="info-list">
-            <block v-if="isLogin">
-              <text class="name">{{ userInfo.RealName || "--" }}</text>
-              <text class="mobile">{{ userInfo.Mobile || userInfo.Email }}</text>
-              <text class="company-name">{{ userInfo.CompanyName || "--" }}</text>
-            </block>
-            <block v-else>
-              <text class="name">Hi,请绑定联系方式~</text>
-              <text class="bind-btn" @click="loginHandle">绑定联系方式</text>
-            </block>
-          </view>
-        </view>
-        <view class="auth-info">
-          <template v-if="isLogin">
-            <scroll-view scroll-x="true" scroll-with-animation class="auth-ul" v-if="userInfo.HasPermission === 0">
-              <text class="auth-li" v-for="item in authList" :key="item">{{ item }}</text>
-            </scroll-view>
-            <block v-else>
-              <button class="auth-btn" @click="applyAuth" v-if="userInfo.HasPermission != 3">申请开通权限</button>
-            </block>
-          </template>
-          <text v-else class="no-auth">暂无品种权限信息</text>
-        </view>
-        <view class="info-item">
-          <view class="item" @click="itemClickHandle('mySchedulepage')">
-            <text class="item-number">{{ userInfo.ScheduleNum }}</text>
-            <text class="item-text">活动日程</text>
-          </view>
-          <view class="item item-label" @click="itemClickHandle('myCollection')">
-            <text class="item-number">{{ userInfo.ConNum }}</text>
-            <text class="item-text">收藏</text>
-          </view>
-          <view class="item" @click="itemClickHandle('browseHistory')">
-            <text class="item-number">{{ userInfo.HistoryNum }}</text>
-            <text class="item-text">足迹</text>
-          </view>
-        </view>
-      </view>
-      <view class="info-bot">
-        <view class="list-item border_bottom" v-for="type in typeArr" :key="type" @click="itemClickHandle(type)">
-          <text>{{ type }}</text>
-          <view class="my-bot-box">
-            <block v-if="type == '外呼号码'">
-              <text v-if="userInfo.OutboundCountryCode && userInfo.OutboundMobile" style="margin-right: 40rpx; font-size: 28rpx">{{ userInfo.OutboundCountryCode }}-{{ userInfo.OutboundMobile }}</text>
-              <text v-else style="margin-right: 40rpx; font-size: 28rpx">未设置</text>
-            </block>
-            <block v-if="type == '关注公众号'">
-              <text style="margin-right: 20rpx; font-size: 28rpx">查研观向小助手</text>
-            </block>
-            <u-icon name="arrow-right" color="#BDBDBD" size="34"></u-icon>
-          </view>
-        </view>
-      </view>
-      <view class="bottom-text">您手边的研究素材库</view>
-    </view>
-
-    <freeCharge class="free-charge" :isShowFreeBtn="isShowFree" />
-  </view>
-</template>
-
-<script>
-import { uploadurl, Mine, checkToken, User } from "@/config/api.js";
-import freeCharge from "@/components/freeCharge";
-let app = getApp();
-export default {
-  components: {
-    freeCharge,
-  },
-  data() {
-    return {
-      isLogin: false, //是否绑定且授权
-      haveData: null, //显示页面
-      typeArr: ["外呼号码", "访谈申请", "活动提问", "我的留言", "优化建议", "关注公众号"],
-      typeObj: new Map([
-        ["外呼号码", "editOutbound"],
-        ["访谈申请", "applyInterview"],
-        ["活动提问", "myAskPage"],
-        ["我的留言", "myLeavingMessage"],
-        ["优化建议", "advice"],
-        ["关注公众号", "accountsOfficial"],
-      ]),
-      userInfo: {},
-      authList: [],
-      myNotice: true,
-      headimgurl: "",
-    };
-  },
-  async onShow() {
-    await this.$store.dispatch("checkHandle", "noGO");
-    this.haveData = true;
-    if (!this.$store.state.isAuth && !this.$store.state.isBind) {
-      //已授权已绑定
-      this.isLogin = true;
-      this.getUser();
-    } else {
-      this.isLogin = false;
-    }
-  },
-  methods: {
-    //点击了头像
-    onChooseAvatar(e) {
-      let token = this.$db.get("access_token");
-      let authHeader = token || "";
-      let that = this;
-      uni.uploadFile({
-        url: uploadurl,
-        filePath: e.detail.avatarUrl,
-        header: {
-          "Content-Type": "multipart/form-data",
-          Authorization: authHeader,
-        },
-        name: "file",
-        success(res) {
-          let data = JSON.parse(res.data);
-          that.headimgurl = data.Data.ResourceUrl;
-          User.headimgurlUpdate({ Headimgurl: data.Data.ResourceUrl });
-        },
-      });
-    },
-    /* 检查状态 */
-    /* 获取用户信息 */
-    getUser() {
-      Mine.getInfo().then((res) => {
-        if (res.Ret === 200) {
-          this.authList = res.Data.PermissionName && res.Data.PermissionName.split(",");
-          this.userInfo = res.Data;
-          this.headimgurl = res.Data.Headimgurl;
-          res.Data.Mobile && this.$db.set("mobile", res.Data.Mobile);
-        }
-      });
-    },
-    /* 点击登录 检验是否绑定或是否授权*/
-    loginHandle() {
-      /* 先授权再绑定 */
-      if (this.$store.state.isAuth) {
-        uni.navigateTo({
-          url: "/pageMy/authGuide/authGuide",
-        });
-      } else {
-        this.$store.state.isBind &&
-          uni.navigateTo({
-            url: "/pageMy/login/login",
-          });
-      }
-    },
-    /* 申请开通权限 */
-    applyAuth() {
-      /* 查看是否是潜在用户 */
-      this.userInfo.HasPermission === 1
-        ? User.applyTry({
-            ApplyMethod: 3,
-          }).then((res) => {
-            if (res.Ret === 200) {
-              uni.navigateTo({
-                url: "/pageMy/applyResult/applyResult",
-              });
-            }
-          })
-        : this.userInfo.HasPermission === 2
-        ? uni.navigateTo({
-            url: "/pageMy/applyTrial/applyTrial",
-          })
-        : this.userInfo.HasPermission === 3
-        ? uni.showModal({
-            title: "",
-            content: "您已经提交过申请了,请耐心等待",
-            showCancel: false,
-            confirmColor: "#365595",
-            success: function (res) {},
-          })
-        : "";
-    },
-    /* 路径跳转 */
-    itemClickHandle(type) {
-      /* 是否登录 */
-      if (this.isLogin) {
-        switch (type) {
-          case "外呼号码":
-            uni.navigateTo({
-              url: "/activityPages/editOutbound/editOutbound?title=设置外呼号码&identification=我的",
-            });
-            break;
-          case "活动提问":
-            uni.navigateTo({
-              url: "/reportPages/myAskPage/myAskPage",
-            });
-            break;
-          case "我的留言":
-            uni.navigateTo({
-              url: "/pageMy/myLeavingMessage/myLeavingMessage",
-            });
-            break;
-          case "关注公众号":
-            uni.navigateTo({
-              url: "/activityPages/accountsOfficial/accountsOfficial",
-            });
-            break;
-          case "myCollection":
-            uni.navigateTo({
-              url: `/pageMy/myCollection/myCollection`,
-            });
-            break;
-          case "browseHistory":
-            uni.navigateTo({
-              url: `/pageMy/browseHistory/browseHistory`,
-            });
-            break;
-          case "mySchedulepage":
-            uni.navigateTo({
-              url: `/pageMy/mySchedulepage/mySchedulepage`,
-            });
-            break;
-          default:
-            let path = this.typeObj.get(type);
-            uni.navigateTo({
-              url: `/pageMy/${path}/${path}`,
-            });
-        }
-      } else {
-        this.loginHandle();
-      }
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped>
-.my-container {
-  background: #f9f9f9;
-  position: relative;
-  .nav-bar-wrap {
-    color: #fff;
-    position: fixed;
-    top: 0;
-    left: 0;
-    width: 100%;
-    z-index: 999;
-  }
-  .my-background {
-    height: 480rpx;
-    width: 100%;
-    background: url("https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/my_bg.jpg") no-repeat;
-    background-size: 100% 100%;
-    padding-top: 206rpx;
-    .my-notice {
-      height: 55rpx;
-      width: 690rpx;
-      margin: 0 auto;
-      background: rgba(255, 255, 255, 0.5);
-      border-radius: 8px;
-      line-height: 55rpx;
-      text-align: center;
-      color: #ffffff;
-      position: relative;
-      padding-right: 20rpx;
-      .my-icon {
-        position: absolute;
-        right: 20rpx;
-        top: 50%;
-        transform: translateY(-50%);
-        font-weight: bold;
-        font-size: 16px;
-      }
-    }
-  }
-  .my-info {
-    position: absolute;
-    top: 301rpx;
-    left: 50%;
-    transform: translateX(-50%);
-    .my-top-info {
-      width: 690rpx;
-      margin: 0 auto;
-      height: 436rpx;
-      background: url("https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/my_log.png") no-repeat;
-      background-color: #ffffff;
-      background-position: right top;
-      background-size: 267rpx 274rpx;
-      box-sizing: border-box;
-      box-shadow: 0px 0rpx 7rpx 1rpx #f0f3f5;
-      border-radius: 8rpx;
-      .info {
-        padding: 61rpx 0 0 30rpx;
-        display: flex;
-        .info-img {
-          width: 126rpx;
-          height: 126rpx;
-          background: #c4c4c4;
-          border-radius: 50%;
-          overflow: hidden;
-          .avatar-wrapper {
-            width: 126rpx;
-            height: 126rpx;
-          }
-          .avatar {
-            width: 126rpx;
-            height: 126rpx;
-            border-radius: 50%;
-          }
-        }
-        .info-list {
-          display: flex;
-          flex-direction: column;
-          justify-content: space-between;
-          margin-left: 32rpx;
-          font-size: 24rpx;
-          font-weight: 400;
-          color: #666666;
-          .name {
-            font-size: 30rpx;
-            color: #000000;
-            line-height: 35rpx;
-            font-weight: 500;
-          }
-          .bind-btn {
-            color: #3385ff;
-            width: 181rpx;
-            height: 49rpx;
-            background: #ffffff;
-            border-radius: 8rpx;
-            border: 2rpx solid #3385ff;
-            text-align: center;
-            line-height: 47rpx;
-          }
-        }
-      }
-      .auth-info {
-        width: 100%;
-        overflow: hidden;
-        margin-top: 36rpx;
-        .auth-ul {
-          white-space: nowrap;
-          padding: 0 30rpx;
-          color: #3385ff;
-          .auth-li {
-            display: inline-block;
-            padding: 1rpx 20rpx;
-            border: 1rpx solid #3385ff;
-            border-radius: 4rpx;
-            font-size: 24rpx;
-            margin-right: 20rpx;
-            background: #edf4ff;
-            &:last-child {
-              margin-right: 50rpx;
-            }
-          }
-        }
-        .no-auth {
-          text-align: center;
-          font-size: 28rpx;
-          color: #999999;
-        }
-        .auth-btn {
-          width: 181rpx;
-          height: 49rpx;
-          margin: 0 auto;
-          color: #3385ff;
-          font-size: 24rpx;
-          line-height: 47rpx;
-          border: 2rpx solid #3385ff;
-        }
-      }
-      .info-item {
-        display: flex;
-        padding-left: 30rpx;
-        margin: 36rpx auto 0;
-        .item {
-          width: 208rpx;
-          height: 76rpx;
-          display: flex;
-          flex-direction: column;
-          justify-content: space-between;
-          text-align: center;
-          .item-number {
-            font-size: 40rpx;
-            font-weight: 500;
-          }
-        }
-        .item-label {
-          border-right: 1rpx solid #ececec;
-          border-left: 1rpx solid #ececec;
-        }
-      }
-    }
-
-    .info-bot {
-      padding: 0 20rpx;
-      background-color: #fff;
-      box-shadow: 0px 0rpx 7rpx 1rpx #f0f3f5;
-      border-radius: 8rpx;
-      margin-top: 20rpx;
-      .list-item {
-        display: flex;
-        align-items: center;
-        justify-content: space-between;
-        font-size: 34rpx;
-        color: #4a4a4a;
-        padding: 33rpx 34rpx;
-        .icon-area {
-          width: 100rpx;
-        }
-        &:last-child {
-          position: static;
-        }
-      }
-      .my-bot-box {
-        display: flex;
-      }
-    }
-  }
-  .bottom-text {
-    position: absolute;
-    bottom: -80rpx;
-    right: 0;
-    z-index: 9;
-    margin-top: 30px;
-    font-size: 20rpx;
-    color: #999999;
-    width: 100%;
-    text-align: center;
-  }
-}
-</style>