bding 5 місяців тому
батько
коміт
e5627b4b30

+ 132 - 0
components/ItemComponent/ficcReport.vue

@@ -0,0 +1,132 @@
+<template>
+  <view class="container-ficc-report-item" @click="goDetail(list)">
+    <view class="content-img">
+      <image :src="list.ImgUrl"></image>
+    </view>
+    <view class="content-test">
+      <text>{{ list.Title }}</text>
+      <text>{{ list.SecondTitle }}</text>
+    </view>
+    <u-modal
+      v-model="showhasPermission"
+      :content-style="{ fontSize: '32rpx' }"
+      @confirm="showhasPermissionBtn"
+      :show-cancel-button="true"
+      confirm-text="提交申请"
+      @cancel="showhasPermissionCancel"
+      :show-title="false"
+      :cancel-style="{ borderRight: '1rpx solid #EBEBEB' }"
+      :confirm-style="{ fontWeight: '700' }"
+    >
+      <view class="slot-content">
+        <text class="noauth-title">暂无权限</text>
+        <text>{{ list.HasPermission == 6 || list.HasPermission == 7 ? "您可申请开通试用" : "点击提交申请,提醒对口销售为你开通试用" }}</text>
+      </view>
+    </u-modal>
+  </view>
+</template>
+
+<script>
+import { User, Reports } from "@/config/api.js";
+
+export default {
+  name: "",
+  components: {},
+  props: {
+    list: {
+      type: Object,
+      default: {},
+      required: true,
+    },
+  },
+  data() {
+    return { showhasPermission: false, reportId: 0, hasPermission: 0 };
+  },
+  methods: {
+    async goDetail(item) {
+      if (!this.isUserBindingPhoneNumber) {
+        this.pleaseGoLogin();
+        return;
+      }
+      if (item.HasPermission == 1) {
+        const res = await Reports.postFiccXCXHistory();
+        if (res.Ret !== 200) return;
+        uni.navigateToMiniProgram({
+          appId: item.Appid,
+          path: item.SourceUrl + item.ThirdCode,
+        });
+      } else {
+        this.showhasPermission = true;
+        this.reportId = item.ReportId;
+        this.hasPermission = item.HasPermission;
+      }
+    },
+    async showhasPermissionBtn() {
+      if (this.hasPermission == 3 || this.hasPermission == 5) {
+        const res = await User.applyTry({
+          ApplyMethod: 3,
+          TryType: "ficcreportxcx",
+          DetailId: 0,
+        });
+        if (res.Ret === 200) {
+          uni.showModal({
+            title: "",
+            content: "申请已提交,请等待销售人员与您联系",
+            showCancel: false,
+            confirmColor: "#365595",
+            success: function (res) {},
+          });
+        }
+      } else if (this.hasPermission == 7) {
+        uni.navigateTo({
+          url: "/pageMy/applyTrial/applyTrial?tryType=ficcreportxcx&detailId=" + 0,
+        });
+      } else {
+        uni.showModal({
+          title: "",
+          content: "您已经提交过申请了,请耐心等待",
+          showCancel: false,
+          confirmColor: "#365595",
+          success: function (res) {},
+        });
+      }
+    },
+    showhasPermissionCancel() {
+      this.showhasPermission = false;
+    },
+  },
+};
+</script>
+<style scoped lang="scss">
+.container-ficc-report-item {
+  min-height: 220rpx;
+  width: 100%;
+  border-radius: 8rpx;
+  overflow: hidden;
+  margin-bottom: 20rpx;
+  box-shadow: 0rpx 3rpx 8rpx 0rpx rgba(0, 0, 0, 0.16);
+  .content-img {
+    width: 100%;
+    height: 60rpx;
+    image {
+      width: 100%;
+      height: 100%;
+    }
+  }
+  .content-test {
+    width: 100%;
+    padding: 12rpx;
+    text {
+      font-size: 24rpx;
+      line-height: 36rpx;
+      color: #333;
+      margin-bottom: 10rpx;
+    }
+  }
+  .noauth-title {
+    font-size: 32rpx;
+    font-weight: 600;
+    margin-bottom: 15rpx;
+  }
+}
+</style>

+ 7 - 2
components/ItemComponent/reportItem.vue

@@ -1,8 +1,8 @@
 <template>
   <view class="container-report-item global_card_content" @click="goDetail(list)">
-    <image v-if="list.CategoryId == '0'" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/new_cygx/Research_normal.png" class="yan-xuan-tag"></image>
+    <image v-if="list.CategoryId == '0' && !(list.ReportId && list.ReportId > 0)" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/new_cygx/Research_normal.png" class="yan-xuan-tag"></image>
     <image v-if="list.Source == 'yanxuanspecial'" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/new_cygx/YX_zl.png" class="yan-xuan-tag"></image>
-    <view v-if="list.CategoryId == '0' || list.Source == 'yanxuanspecial'" class="yan-xuan-tag-box"></view>
+    <view v-if="(list.CategoryId == '0' || list.Source == 'yanxuanspecial') && !(list.ReportId && list.ReportId > 0)" class="yan-xuan-tag-box"></view>
     <view class="global_title" v-if="list.Title">
       <mp-html :content="richTextClamp(3) + isTypeTitle(list) + list.Title + '</div>'" />
     </view>
@@ -53,6 +53,10 @@ export default {
       if (item.Source === "yanxuanspecial") {
         uni.navigateTo({ url: "/pages-purchaser/noteAndViewpoint/noteAndViewpoint?id=" + item.Id });
         return;
+      }
+       if (!item.Source && item.ReportId && item.ReportId > 0) {
+        uni.navigateTo({ url: "/pages-ficc/reportDetail/reportDetail?id=" + item.ReportId });
+        return;
       }
       if (item.HomeType !== 1) {
         /* 无需授权且已绑定 检验是或否有权限 */
@@ -84,6 +88,7 @@ export default {
   margin-bottom: 20rpx;
   overflow: hidden;
   position: relative;
+  min-height: 220rpx;
   .yan-xuan-tag {
     position: absolute;
     top: 0;

+ 1 - 0
components/ItemComponent/roadshowItem.vue

@@ -238,6 +238,7 @@ export default {
   overflow: hidden;
   padding-top: 25rpx;
   margin-bottom: 20rpx;
+  min-height: 220rpx;
   .cover-item {
     margin-top: 10rpx;
     width: calc(100% + 28rpx);

+ 11 - 4
config/config.js

@@ -6,7 +6,8 @@ let baseUrl = "http://8.136.199.33:8500/api",
   pcUrl,
   reportLinkUrl,
   intemalLinkUrl,
-  reportStrategyUrl;
+  reportStrategyUrl,
+  ficcReport;
 
 if (env.envVersion === "develop") {
   //开发
@@ -15,6 +16,7 @@ if (env.envVersion === "develop") {
   reportLinkUrl = "http://xcxh5test.hzinsights.com/xcx_h5/raiReportDtl";
   intemalLinkUrl = "http://xcxh5test.hzinsights.com/xcx_h5/internalDetials";
   reportStrategyUrl = "http://xcxh5test.hzinsights.com/xcx_h5/strategyReport";
+  ficcReport = "http://xcxh5test.hzinsights.com/xcx_h5/ficcReportDtl";
 } else if (env.envVersion === "trial") {
   //体验版
 
@@ -31,13 +33,17 @@ if (env.envVersion === "develop") {
 
   reportStrategyUrl = "http://xcxh5test.hzinsights.com/xcx_h5/strategyReport"; //测试
   //reportStrategyUrl = "https://details.hzinsights.com/strategyReport"; //生产
+
+  ficcReport = "http://xcxh5test.hzinsights.com/xcx_h5/ficcReportDtl";
 } else if (env.envVersion === "release") {
   //正式版
   baseUrl = "https://cygx.hzinsights.com/api";
   pcUrl = "https://cygxpc.hzinsights.com/cygx_pc"; //生产
   reportLinkUrl = "https://details.hzinsights.com/raiReportDtl"; //生产
-  intemalLinkUrl = "https://details.hzinsights.com/internalDetials";//生产
+  intemalLinkUrl = "https://details.hzinsights.com/internalDetials"; //生产
   reportStrategyUrl = "https://details.hzinsights.com/strategyReport"; //生产
+  ficcReport = "https://details.hzinsights.com/ficcReportDtl";
+
 }
 
 module.exports = {
@@ -45,5 +51,6 @@ module.exports = {
   pcUrl,
   reportLinkUrl,
   reportStrategyUrl,
-  intemalLinkUrl
-};
+  intemalLinkUrl,
+  ficcReport,
+};

+ 9 - 0
config/modules/Reports.js

@@ -183,4 +183,13 @@ export const Reports = {
   microRoadshowTrainingList: (params) => {
     return getHttp("/micro_roadshow/training/list", params, 0);
   },
+
+  // 获取ficc 报告
+  getFiccYbReportDetails: (params) => {
+    return getHttp("/ficc_report/detail", params, 0);
+  },
+  //
+  postFiccXCXHistory: (params) => {
+    return postHttp("/ficc_report/add/xcx/history", params, 0);
+  },
 };

+ 1 - 1
pageMy/reportDetail/reportDetail.vue

@@ -109,7 +109,7 @@ export default {
       readTiem: 0,
       setIntervalTiem: null,
       isShowAlert: false,
-      haveAuth: false,
+      haveAuth: 1,
       isSpecialArticle_report: false,
       isSendWx: "",
     };

+ 1 - 1
pageMy/reportPage/reportPage.vue

@@ -191,7 +191,7 @@ export default {
       isInterviewApply: false,
       isShowTip: false,
       showNav: false,
-      haveAuth: false,
+      haveAuth: 1,
       isSendWx: "",
       lableListForm: {
         CategoryName: "",

+ 517 - 0
pages-ficc/reportDetail/reportDetail.vue

@@ -0,0 +1,517 @@
+<template>
+  <block>
+    <view class="container reportDetail-container">
+      <block v-if="haveAuth == 1">
+        <web-view :src="strategyUrl + '&isBinding=' + isUserBindingPhoneNumber"> </web-view>
+      </block>
+      <view class="noauth-cont" v-else>
+        <image src="https://hzstatic.hzinsights.com/cygx/czbk/noauth.png" class="noauth-ico"></image>
+        <view class="noauth-title">暂无权限查看此文章</view>
+        <view v-if="haveAuth == 6 || haveAuth == 7" class="tip">您可申请开通试用</view>
+        <view class="tip" v-else> 点击提交申请,提醒对口销售为你开通试用 </view>
+        <view class="btn-cont" @click="applyAuth"> 提交申请</view>
+        <view class="btn-cont back-btn" @click="backIndex"> 返回 </view>
+      </view>
+    </view>
+    <Loading />
+  </block>
+</template>
+
+<script>
+import { Report, User, Reports, FreeButton } from "@/config/api.js";
+import freeCharge from "@/components/freeCharge";
+import { ficcReport } from "@/config/config";
+let app = getApp({ allowDefault: true });
+export default {
+  data() {
+    return {
+      readTiem: 0,
+      access_token: "", //用户标识
+      reportInfo: "",
+      id: "",
+      linkurl: "",
+      setIntervalTiem: null,
+      fileLink: false,
+      isCollection: false,
+      isInterviewApply: false,
+      isShowTip: false,
+      showNav: false,
+      haveAuth: 1,
+      isSendWx: "",
+      lableListForm: {
+        CategoryName: "",
+        FieldName: "",
+        Frequency: "月度",
+        SubCategoryName: "渠道新声",
+      },
+      shareTitle: "",
+    };
+  },
+  components: {
+    freeCharge,
+  },
+  computed: {
+    strategyUrl() {
+      let token = this.$db.get("access_token");
+      let link = `?id=${this.id}&fromType=mpwechat&token=${token}`;
+      return ficcReport + link;
+    },
+  },
+  methods: {
+    /* 获取详情 */
+    getDetail() {
+      Reports.getFiccYbReportDetails({
+        ReportId: this.id,
+      }).then((res) => {
+        if (res.Ret === 200) {
+          this.haveAuth = res.Data.HasPermission;
+          this.reportInfo = res.Data;
+          this.shareTitle = this.reportInfo.report_info.title;
+        }
+      });
+    },
+    /* 无权限申请开通权限 */
+    applyAuth() {
+      /* 区分是否是潜在用户 */
+      this.haveAuth === 3 || this.haveAuth === 5
+        ? User.applyTry({
+            ApplyMethod: 3,
+            TryType: "ficcreport",
+            DetailId: this.id,
+          }).then((res) => {
+            if (res.Ret === 200) {
+              uni.navigateTo({
+                url: "/pageMy/applyResult/applyResult",
+              });
+            }
+          })
+        : this.haveAuth === 7
+        ? uni.navigateTo({
+            url: "/pageMy/applyTrial/applyTrial?tryType=ficcreport&detailId=" + this.id,
+          })
+        : uni.showModal({
+            title: "",
+            content: "您已经提交过申请了,请耐心等待",
+            showCancel: false,
+            confirmColor: "#365595",
+            success: function (res) {},
+          });
+    },
+
+    // 返回首頁
+    backIndex() {
+      uni.navigateBack({
+        fail() {
+          uni.switchTab({
+            url: "/pages/index/index",
+          });
+        },
+      });
+    },
+
+    /* 错误 */
+    errorDetails() {
+      uni.showModal({
+        confirmText: "知道了",
+        showCancel: false,
+        confirmColor: "#376cbb",
+        content: "网络不好,请刷新重试",
+        success: (res) => {
+          uni.navigateBack({
+            fail() {
+              uni.switchTab({
+                url: "/pages/index/index",
+              });
+            },
+          });
+        },
+      });
+    },
+    Search() {
+      uni.navigateTo({ url: "/pages-search/indedxSearch/indedxSearch?source=报告详情页面" });
+    },
+
+    setDisableCapture() {
+      wx.setVisualEffectOnCapture({
+        visualEffect: "hidden",
+        complete: (res) => {
+          console.log(res);
+        },
+      });
+    },
+    closeDisableCapture() {
+      wx.setVisualEffectOnCapture({
+        visualEffect: "none",
+      });
+    },
+  },
+  async onShow() {
+    this.readTiem = 0;
+    this.setIntervalTiem = setInterval(() => {
+      this.readTiem++;
+    }, 1000);
+    let page = getCurrentPages(); //查看路径
+    if (page.length === 1) {
+      this.getDetail();
+    } else {
+      // 跳转入口
+      this.id > 0 && this.getDetail();
+    }
+  },
+  onLoad(option) {
+    uni.setNavigationBarTitle({
+      title: "报告详情",
+    });
+    this.id = option.id ? +option.id : "";
+    this.isSendWx = option.IsSendWx || "";
+    if (!this.id && !this.id > 0) {
+      this.errorDetails();
+    }
+  },
+  /**
+   * 用户点击分享
+   */
+  onShareAppMessage: function (res) {
+    if (this.id) {
+      return {
+        title: this.isHorzMobile ? "好友向您推荐此内容,上传名片享查研观向免费月卡!" : this.shareTitle,
+        path: "/pages-ficc/reportDetail/reportDetail?id=" + this.id,
+        success: (res) => {},
+        fail: (err) => {},
+      };
+    }
+  },
+  onHide() {
+    //页面退出
+    if (this.id && this.id > 0) {
+      clearInterval(this.setIntervalTiem);
+      Reports.addStopTime({
+        ArticleId: this.reportInfo.report_info.ArticleId,
+        StopTime: this.readTiem,
+        OutType: 2,
+        Source: "MOBILE",
+      }).then((res) => {});
+    }
+    this.closeDisableCapture();
+  },
+  onUnload() {
+    if (this.id && this.id > 0) {
+      //页面返回
+      clearInterval(this.setIntervalTiem);
+      Reports.addStopTime({
+        ArticleId: this.reportInfo.report_info.ArticleId,
+        StopTime: this.readTiem,
+        OutType: 1,
+        Source: "MOBILE",
+      }).then((res) => {});
+    }
+    this.closeDisableCapture();
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.reportDetail-container {
+  background-color: #fff;
+
+  .search-view {
+    position: fixed;
+    width: 100%;
+    height: 60rpx;
+    background: #fff;
+    z-index: 99999;
+    font-size: 24rpx;
+    box-sizing: border-box;
+    .search-view-box {
+      display: flex;
+      align-items: center;
+      justify-content: center;
+      background: #376cbb;
+      color: #fff;
+      height: 60rpx;
+      z-index: 99999;
+    }
+    .search-icon {
+      width: 147rpx;
+      height: 40rpx;
+      margin: 0 15rpx;
+      z-index: 99999;
+    }
+  }
+  .footer-con {
+    position: fixed;
+    z-index: 99999;
+    bottom: 0;
+    padding-bottom: constant(safe-area-inset-bottom);
+    padding-bottom: env(safe-area-inset-bottom);
+    left: 0;
+    width: 100%;
+    background-color: #ffffff;
+    display: flex;
+    justify-content: space-around;
+    height: 100rpx;
+    border-top: 1px solid #dddddd;
+    .handle-item {
+      align-items: center;
+      display: flex;
+      flex-direction: column;
+      justify-content: center;
+      position: relative;
+      z-index: 99999;
+      .download-img {
+        width: 44rpx;
+        height: 44rpx;
+        margin-bottom: 4rpx;
+      }
+    }
+  }
+  .footer-free-charge {
+    .img {
+      width: 156rpx;
+      height: 156rpx;
+    }
+    .remove-icon {
+      width: 31rpx;
+      height: 31rpx;
+      position: absolute;
+      right: 0;
+      top: 0;
+    }
+  }
+  .noauth-cont {
+    padding-top: 170rpx;
+    text-align: center;
+    font-size: 28rpx;
+    .noauth-ico {
+      width: 365rpx;
+      height: 229rpx;
+      margin-bottom: 70rpx;
+    }
+    .tip {
+      width: 532rpx;
+      margin: 0 auto 100rpx;
+      .contract {
+        padding: 40rpx 90rpx 0;
+        line-height: 44rpx;
+        text {
+          display: inline-block;
+        }
+      }
+    }
+    .btn-cont {
+      width: 500rpx;
+      height: 52rpx;
+      background: $uni-color-new;
+      color: #fff;
+      font-size: 24rpx;
+      font-weight: 600;
+      border-radius: 8rpx;
+      margin: 0 auto;
+      text-align: center;
+      line-height: 52rpx;
+      &.back-btn {
+        background: #e5efff !important;
+        color: $uni-color-new;
+        margin-top: 30rpx;
+      }
+      .btn_bg {
+        width: 100%;
+        height: 80rpx;
+        position: absolute;
+        left: 0;
+        top: 0;
+      }
+      .btn-txt {
+        width: 100%;
+        position: absolute;
+        z-index: 1;
+      }
+    }
+    .product-introduction-box {
+      background-color: $uni-bg-color;
+      padding-top: 10rpx;
+      margin-top: 60rpx;
+      .product-introduction {
+        padding: 60rpx 0 0 60rpx;
+        background-color: white;
+        .introduction-header {
+          margin-bottom: 40rpx;
+          display: flex;
+          .introduction-header-left {
+            background-color: #caaf8b;
+            height: 90rpx;
+            width: 14rpx;
+            margin-right: 20rpx;
+          }
+          .introduction-header-right {
+            text-align: left;
+            .introduction-title-CN {
+              font-weight: 500;
+              font-size: 34rpx;
+              color: #333333;
+              line-height: 42rpx;
+              margin-bottom: 8rpx;
+            }
+            .introduction-title-US {
+              font-weight: 400;
+              font-size: 28rpx;
+              color: #c0c4cc;
+              line-height: 42rpx;
+            }
+          }
+        }
+        .introduction-body {
+          .introduction-body-box {
+            text-align: left;
+            margin-bottom: 40rpx;
+            .body-row-content {
+              margin-bottom: 40rpx;
+              font-size: 34rpx;
+              line-height: 48rpx;
+              font-weight: 600;
+              color: #caaf8b;
+              .body-row-title {
+                margin-left: 40rpx;
+              }
+            }
+            .body-box-title {
+              font-weight: 600;
+              font-size: 34rpx;
+              line-height: 48rpx;
+              padding-left: 40rpx;
+              position: relative;
+              margin-bottom: 22rpx;
+              &::before {
+                content: "";
+                height: 20rpx;
+                width: 20rpx;
+                background-color: #caaf8b;
+                border-radius: 20rpx;
+                position: absolute;
+                left: 0;
+                top: 16rpx;
+              }
+            }
+            .introduction-body-row {
+              margin-left: 40rpx;
+              font-weight: 400;
+              font-size: 26rpx;
+              color: #333333;
+              line-height: 36rpx;
+            }
+            .highHight-text {
+              color: #caaf8b;
+            }
+          }
+        }
+      }
+    }
+  }
+  .month_card {
+    width: 100%;
+    height: 565rpx;
+    padding-left: -20rpx;
+  }
+  .btn-dl {
+    background: linear-gradient(253deg, #fcf3e9 0%, #eedec8 100%) !important;
+    color: #333 !important;
+    margin: 30rpx auto !important;
+  }
+  .month-back {
+    background: #f6f6f6 !important;
+    color: #999 !important;
+  }
+  .moneh-text {
+    text-align: center;
+    width: 632rpx;
+    margin: 0 auto 20rpx;
+    color: #999999;
+  }
+  .research-noauth {
+    color: #333;
+    font-size: 36rpx;
+    width: calc(100% + 80rpx);
+    margin-left: -40rpx;
+    .strong-text {
+      display: inline-block;
+      padding: 0 10rpx;
+      font-weight: 500;
+    }
+    text:last-child {
+      font-size: 32rpx;
+      font-size: 34rpx;
+      color: #999999;
+      margin-top: 10rpx;
+    }
+  }
+}
+.no-binding {
+  padding: 30rpx;
+  background-color: #f0f1f5;
+  .lable-content {
+    display: flex;
+    flex-wrap: wrap;
+    .item {
+      font-size: 24rpx;
+      height: 34rpx;
+      padding: 0 16rpx;
+      display: flex;
+      align-items: center;
+      border: 1rpx solid #ccc;
+      border-radius: 2rpx;
+      margin-right: 20rpx;
+      margin-bottom: 20rpx;
+    }
+  }
+  .no-binding-content {
+    width: 100%;
+    background-color: #fff;
+    padding: 40rpx 20rpx;
+    .title {
+      font-size: 34rpx;
+      font-weight: 500;
+      line-height: 48rpx;
+      color: #333;
+    }
+    .tiem {
+      font-size: 24rpx;
+      color: #999999;
+      margin: 20rpx 0;
+    }
+    .content {
+      display: flex;
+      .content-line {
+        width: 4rpx;
+        background-color: #333;
+        margin-right: 20rpx;
+      }
+      .content-text {
+        font-size: 34rpx;
+        font-weight: 500;
+        color: #333;
+      }
+      .describe {
+        margin-top: 20rpx;
+      }
+    }
+  }
+  .please-login {
+    margin: 50rpx auto 150rpx;
+    width: 556rpx;
+    height: 64rpx;
+    color: #fff;
+    font-size: 24rpx;
+    font-weight: 600;
+    background-color: #376cbb;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    border-radius: 9rpx;
+  }
+}
+.noauth-title {
+  font-size: 32rpx;
+  font-weight: 600;
+  margin-bottom: 15rpx;
+}
+</style>

+ 20 - 10
pages.json

@@ -605,17 +605,15 @@
             "navigationBarTitleText": "我的专栏",
             "enablePullDownRefresh": false
           }
+        },
+        {
+          "path": "editColumnReport/editColumnReport",
+          "style": {
+            "navigationBarTitleText": "修改",
+            "enablePullDownRefresh": false
+          }
         }
-          ,{
-                    "path" : "editColumnReport/editColumnReport",
-                    "style" :                                                                                    
-                {
-                    "navigationBarTitleText": "修改",
-                    "enablePullDownRefresh": false
-                }
-                
-                }
-            ]
+      ]
     },
     {
       "root": "pages-message",
@@ -642,6 +640,18 @@
           }
         }
       ]
+    },
+    {
+      "root": "pages-ficc",
+      "pages": [
+        {
+          "path": "reportDetail/reportDetail",
+          "style": {
+            "navigationBarTitleText": "",
+            "enablePullDownRefresh": false
+          }
+        }
+      ]
     }
   ],
   "globalStyle": {

+ 9 - 5
pages/index/index.vue

@@ -70,7 +70,7 @@
             <view class="item-ul">
               <block v-for="(item, index) in newDataList" :key="index">
                 <view v-if="index % 2 == 0 && item.IsShowData">
-                  <block v-if="item.Source === 'article' || item.Source === 'yanxuanspecial'"> <ReportItem :list="item.Article" /></block>
+                  <block v-if="item.Source === 'article' || item.Source === 'yanxuanspecial' || item.Source === 'ficcreport'"> <ReportItem :list="item.Article" /></block>
                   <block v-if="item.Source === 'newchart'">
                     <ChartItem :list="item.Newchart" :isMyChartCollection="isMyChartCollection" @myChartIsTop="myChartIsTop" @myChartCollect="myChartCollect" />
                   </block>
@@ -83,13 +83,14 @@
                   <block v-if="['researchsummary', 'minutessummary', 'meetingreviewchapt', 'productinterior', 'reportselection'].includes(item.Source)">
                     <item-content :list="dataListItem(item)" @showMorningDialog="showMorningDialog" />
                   </block>
+                  <FiccReport v-if="item.Source === 'ficcreportxcx'"  :list="item.FiccReportXcx"  />
                 </view>
               </block>
             </view>
             <view class="item-ul">
               <block v-for="(item, index) in newDataList" :key="index">
                 <view v-if="index % 2 !== 0 && item.IsShowData">
-                  <block v-if="item.Source === 'article' || item.Source === 'yanxuanspecial'"> <ReportItem :list="item.Article" /></block>
+                  <block v-if="item.Source === 'article' || item.Source === 'yanxuanspecial' || item.Source === 'ficcreport'"> <ReportItem :list="item.Article" /></block>
                   <block v-if="item.Source === 'newchart'">
                     <ChartItem :list="item.Newchart" :isMyChartCollection="isMyChartCollection" @myChartIsTop="myChartIsTop" @myChartCollect="myChartCollect" />
                   </block>
@@ -102,6 +103,7 @@
                   <block v-if="['researchsummary', 'minutessummary', 'meetingreviewchapt', 'productinterior', 'reportselection'].includes(item.Source)">
                     <item-content :list="dataListItem(item)" @showMorningDialog="showMorningDialog" />
                   </block>
+                  <FiccReport v-if="item.Source === 'ficcreportxcx'" :list="item.FiccReportXcx" />
                 </view>
               </block>
             </view>
@@ -149,7 +151,7 @@ import ItemContent from "./components/ItemContent.vue";
 import videoModule from "@/components/videoModule/index";
 import suspenButton from "@/components/suspen_button.vue";
 import audioModule from "@/components/audioModule/index";
-
+import FiccReport from "@/components/ItemComponent/ficcReport.vue";
 export default {
   data() {
     return {
@@ -222,6 +224,7 @@ export default {
     videoModule,
     suspenButton,
     audioModule,
+    FiccReport,
   },
   methods: {
     // 获取最先数据
@@ -239,13 +242,14 @@ export default {
           res.Data.List.forEach((item) => {
             let obj = {
               Source: item.Source,
-              Article: item.Article || item.YanxuanSpecial,
+              Article: item.Article || item.YanxuanSpecial || item.FiccReport,
               Newchart: item.Newchart,
               Activity: item.Activity || item.Activityspecial,
               Roadshow: item.Roadshow || item.Activityvideo || item.Activityvoice || item.AskserieVideo,
               ThreeSummary: item.Researchsummary || item.Minutessummary || item.Meetingreviewchapt || item.ProductInterior || item.ReportSelection,
+              FiccReportXcx: item.FiccReportXcx,
             };
-            listArr.push({ ...obj, IsShowData: obj.Article || obj.Newchart || obj.Roadshow || obj.Activity || obj.ThreeSummary || item.YanxuanSpecial });
+            listArr.push({ ...obj, IsShowData: obj.Article || obj.Newchart || obj.Roadshow || obj.Activity || obj.ThreeSummary || item.YanxuanSpecial || obj.FiccReportXcx });
           });
         this.newDataList = this.page_no === 1 ? listArr : [...this.newDataList, ...listArr];
         if (this.refresh) {

+ 2 - 0
pages/reportForm/components/strategy.vue

@@ -149,6 +149,8 @@ export default {
         });
       } else if (item.Resource === 1) {
         uni.navigateTo({ url: "/pageMy/reportDetail/reportDetail?id=" + item.ArticleId });
+      }else if (item.Resource === 3) {
+        uni.navigateTo({ url: "/pages-ficc/reportDetail/reportDetail?id=" + item.ReportId });
       }
     },
   },