bd преди 3 години
родител
ревизия
33a7b69d00
променени са 6 файла, в които са добавени 375 реда и са изтрити 17 реда
  1. 4 0
      config/api.js
  2. 2 2
      config/config.js
  3. 7 2
      pageMy/reportDetail/reportDetail.vue
  4. 344 0
      pageMy/reportPage/reportPage.vue
  5. 16 11
      pages.json
  6. 2 2
      pages/pcWebViev/pcWebViev.vue

+ 4 - 0
config/api.js

@@ -29,6 +29,10 @@ export const Report = {
   articleAskAdd: (params) => {
     return postHttp("/article/askAdd", params, 0);
   },
+   /* 下载PDF打水印接口*/
+   articlePdfwatermark: params => {
+    return getHttp('/article/pdfwatermark',params,1)
+},
 };
 
 /* 用户 */

+ 2 - 2
config/config.js

@@ -1,5 +1,5 @@
-//export const baseUrl = 'http://8.136.199.33:8500/api';//小程序开发接口地址
-export const baseUrl = 'https://cygx.hzinsights.com/api';//小程序线上接口地址
+export const baseUrl = 'http://8.136.199.33:8500/api';//小程序开发接口地址
+//export const baseUrl = 'https://cygx.hzinsights.com/api';//小程序线上接口地址
 // #ifdef H5
 export const H5baseUrl=process.env.NODE_ENV === 'development'?window.location.origin+'/':baseUrl
 // #endif

+ 7 - 2
pageMy/reportDetail/reportDetail.vue

@@ -40,9 +40,9 @@ export default {
       access_token: "", //用户标识
       isIphoneX: false, //判断机型
       reportInfo: "",
-      linkurl:'https://details.hzinsights.com/raiReportDtl',//线上链接地址
+      //linkurl:'https://details.hzinsights.com/raiReportDtl',//线上链接地址
       //linkurl:'http://192.168.20.72:3000/xcx_h5/raiReportDtl',//线上链接地址
-     // linkurl: "http://advisoryadmin.brilliantstart.cn/xcx_h5/raiReportDtl", //链接地址
+      linkurl: "http://advisoryadmin.brilliantstart.cn/xcx_h5/raiReportDtl", //链接地址
       showNav: false,
       id: "",
       isShowTip: false,
@@ -70,6 +70,11 @@ export default {
           this.sale_number = res.Data.Detail.SellerMobile;
           if (res.Data.HasPermission === 1) {
             //有访问权限
+            if(res.Data.Detail.IsNeedJump){
+              uni.redirectTo({
+                  url: "/pageMy/reportPage/reportPage?id=" + this.id,
+              })
+            }
             this.reportInfo = res.Data.Detail;
             this.access_token = this.access_token || this.$db.get("access_token");
             this.$store.dispatch("statistics", { PageType: "ReportParticulars", DetailId: this.id });

+ 344 - 0
pageMy/reportPage/reportPage.vue

@@ -0,0 +1,344 @@
+<template>
+  <view class="container reportDetail-container">
+    <block v-if="haveAuth === 1">
+      <web-view :src="linkurl">
+        <cover-view bindtap="searchViewTap" class="search-view">
+          <cover-view class="search-view-box" @click="btnSearch">
+            <cover-image class="search-icon" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/search.png"></cover-image>
+            <cover-view class="search-text">搜索您想要的纪要</cover-view>
+          </cover-view>
+        </cover-view>
+        <cover-view class="footer-con">
+          <cover-view class="handle-item" @click="applyHandle">
+            <cover-image class="download-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/apply_act.png" v-if="reportInfo.IsInterviewApply"></cover-image>
+            <cover-image class="download-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/apply_ico.png" v-else></cover-image>
+            <cover-view>{{ reportInfo.IsInterviewApply ? "已申请访谈" : "申请访谈" }}</cover-view>
+          </cover-view>
+          <cover-view class="handle-item" @click="collectHandle">
+            <cover-image class="download-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/collect_act.png" v-if="reportInfo.IsCollect"></cover-image>
+            <cover-image class="download-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/collect_ico.png" v-else></cover-image>
+            <cover-view>{{ reportInfo.IsCollect ? "已收藏" : "收藏" }}</cover-view>
+          </cover-view>
+          <cover-view class="handle-item" v-if="fileLink" @click="downloadFile">
+            <cover-image class="download-img" src="https://hzchart.oss-cn-shanghai.aliyuncs.com/cygx/czbk/down_ico.png"></cover-image>
+            <cover-view>下载</cover-view>
+          </cover-view>
+        </cover-view>
+      </web-view>
+    </block>
+  </view>
+</template>
+
+<script>
+import { Report, User, Reports } from "@/config/api.js";
+let app = getApp({ allowDefault: true });
+export default {
+  data() {
+    return {
+      haveAuth: false,
+      // haveFree:false,//是否付费
+      access_token: "", //用户标识
+      isIphoneX: false, //判断机型
+      reportInfo: "",
+      showNav: false,
+      id: "",
+      linkurl:'',
+      isShowTip: false,
+      sale_name: "", //可联系销售名称
+      sale_number: "", //可联系销售电话
+      industry: "", //行业
+      readTiem: 0,
+      setIntervalTiem: null,
+      fileLink: false,
+    };
+  },
+  computed: {},
+  methods: {
+    /* 获取详情 */
+    getDetail() {
+      Report.reportDtl({
+        ArticleId: Number(this.id),
+      }).then((res) => {
+        if (res.Ret === 200) {
+          uni.setNavigationBarTitle({
+            title: res.Data.Detail.IsSummary == 1 ? "纪要详情" : "报告详情",
+          });
+          this.haveAuth = res.Data.HasPermission;
+          this.industry = res.Data.Detail.CategoryName;
+          this.sale_name = res.Data.Detail.SellerName;
+          this.sale_number = res.Data.Detail.SellerMobile;
+          if (res.Data.HasPermission === 1) {
+            //有访问权限
+            this.reportInfo = res.Data.Detail;
+            this.linkurl = res.Data.Detail.HttpUrl;
+            this.fileLink = res.Data.Detail.FileLink;
+            this.access_token = this.access_token || this.$db.get("access_token");
+            this.$store.dispatch("statistics", { PageType: "ReportParticulars", DetailId: this.id });
+          }
+        }
+      });
+    },
+    /* 无权限申请开通权限 */
+    applyAuth() {
+      /* 区分是否是潜在用户 */
+      this.haveAuth === 2
+        ? User.applyTry({
+            ApplyMethod: 3,
+            TryType: "Article",
+            DetailId: Number(this.id),
+          }).then((res) => {
+            if (res.Ret === 200) {
+              uni.navigateTo({
+                url: "/pageMy/applyResult/applyResult",
+              });
+            }
+          })
+        : this.haveAuth === 4
+        ? uni.navigateTo({
+            url: "/pageMy/applyTrial/applyTrial?tryType=Article&detailId=" + this.id,
+          })
+        : uni.showModal({
+            title: "",
+            content: "您已经提交过申请了,请耐心等待",
+            showCancel: false,
+            confirmColor: "#365595",
+            success: function (res) {},
+          });
+    },
+    //销售的立即申请
+    sellerApplyAuth() {
+      User.applyTry({
+        TryType: "Article",
+        DetailId: Number(this.id),
+      }).then((res) => {
+        if (res.Ret === 200) {
+          uni.showModal({
+            title: "",
+            content: "提交申请成功,请耐心等待",
+            showCancel: false,
+            confirmColor: "#365595",
+            success: function (res) {
+              this.backIndex();
+            },
+          });
+        }
+      });
+    },
+    // 返回首頁
+    backIndex() {
+      uni.navigateBack({
+        fail() {
+          uni.switchTab({
+            url: "/pages/index/index",
+          });
+        },
+      });
+    },
+    callPhone(num) {
+      uni.makePhoneCall({
+        phoneNumber: num,
+      });
+    },
+    /* 申请访谈 */
+    applyHandle() {
+      // 申请访谈
+      !this.reportInfo.IsInterviewApply &&
+        this.$util.modal("", "专家访谈申请会提交给您的对口销售,销售会线下与您取得联系,确定申请吗?", () => {
+          this.interviewApi();
+        });
+      // 取消申请访谈 区分状态 '待邀请','待访谈','已完成','已取消'
+      if (this.reportInfo.IsInterviewApply) {
+        this.$util.modal(
+          "",
+          this.reportInfo.InterviewApplyStatus == "待访谈"
+            ? "当前无法取消访谈,若有疑问,请联系对口销售"
+            : this.reportInfo.InterviewApplyStatus == "待邀请"
+            ? "您要取消此次访谈申请吗?"
+            : "该访谈已完成",
+          () => {
+            this.reportInfo.InterviewApplyStatus == "待邀请"
+              ? this.interviewApi()
+              : this.reportInfo.InterviewApplyStatus == "待访谈"
+              ? uni.makePhoneCall({
+                  phoneNumber: "18767183922",
+                })
+              : "";
+          }
+        );
+      }
+    },
+    /* 访谈接口 */
+    interviewApi() {
+      Report.applyRpt({
+        ArticleId: Number(this.id),
+      }).then((res) => {
+        this.reportInfo.IsInterviewApply = !this.reportInfo.IsInterviewApply;
+      });
+    },
+    /* 收藏 */
+    collectHandle() {
+      Report.collectRpt({
+        ArticleId: Number(this.id),
+      }).then((res) => {
+        this.reportInfo.IsCollect = !this.reportInfo.IsCollect;
+        this.$util.toast(res.Msg);
+      });
+    },
+    /* 错误 */
+    errorDetails() {
+      uni.showModal({
+        confirmText: "知道了",
+        showCancel: false,
+        confirmColor: "#3385FF",
+        content: "网络不好,请刷新重试",
+        success: (res) => {
+          uni.navigateBack({
+            fail() {
+              uni.switchTab({
+                url: "/pages/index/index",
+              });
+            },
+          });
+        },
+      });
+    },
+    async downloadFile() {
+      const res = await Report.articlePdfwatermark({
+        ArticleId: Number(this.id),
+      });
+      if (res.Ret === 200) {
+        uni.navigateTo({
+          url: "/pageMy/downloadFile/downloadFile?url=" + res.Data.FileLink,
+        });
+      }
+    },
+    btnSearch(){
+        uni.navigateTo({ url: "/pageMy/search/search" });
+    }
+  },
+  async onShow() {
+    this.readTiem = 0;
+    this.setIntervalTiem = setInterval(() => {
+      this.readTiem++;
+    }, 1000);
+    let page = getCurrentPages(); //查看路径
+    if (page.length === 1) {
+      await this.$store.dispatch("checkHandle");
+      if (!this.$store.state.isAuth && !this.$store.state.isBind) this.getDetail();
+    } else {
+      // 跳转入口
+      this.getDetail();
+    }
+  },
+  onLoad(option) {
+    // /* 兼容iphonex底部 */
+    uni.getSystemInfo({
+      success: (res) => {
+        let ua = res.model;
+        if (ua.search("iPhone X") != -1 || ua.search("iPhone 11") != -1 || ua.search("iPhone 11 Pro Max") != -1) {
+          this.isIphoneX = true;
+        }
+      },
+    });
+    this.id = option.id ? option.id : "";
+    if (!this.id && !+this.id > 0) {
+      this.errorDetails();
+    }
+  },
+  /**
+   * 用户点击分享
+   */
+  onShareAppMessage: function (res) {
+    if (this.id) {
+      return {
+        title: this.reportInfo.Title,
+        path: "/pageMy/reportDetail/reportDetail?id=" + this.id,
+        success: (res) => {},
+        fail: (err) => {},
+      };
+    }
+  },
+  onHide() {
+    //页面退出
+    if (this.id && +this.id > 0) {
+      clearInterval(this.setIntervalTiem);
+      Reports.addStopTime({
+        ArticleId: Number(this.id),
+        StopTime: this.readTiem,
+        OutType: 2,
+        Source: "MOBILE",
+      }).then((res) => {});
+    }
+  },
+  onUnload() {
+    if (this.id && +this.id > 0) {
+      //页面返回
+      clearInterval(this.setIntervalTiem);
+      Reports.addStopTime({
+        ArticleId: Number(this.id),
+        StopTime: this.readTiem,
+        OutType: 1,
+        Source: "MOBILE",
+      }).then((res) => {});
+    }
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.reportDetail-container {
+  background-color: #fff;
+  .search-view {
+    position: fixed;
+    width: 100%;
+    height: 110rpx;
+    padding: 15rpx 34rpx;
+    z-index: 99999;
+    font-size: 24rpx;
+    box-sizing: border-box;
+    background: #fff;
+    .search-view-box {
+      display: flex;
+      align-items: center;
+      background: #f6f6f6;
+      border: 1px solid #e5e5e5;
+      border-radius: 35rpx;
+      height: 70rpx;
+      z-index: 99999;
+    }
+    .search-icon {
+      width: 26rpx;
+      height: 26rpx;
+      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;
+      }
+    }
+  }
+}
+</style>

+ 16 - 11
pages.json

@@ -27,17 +27,15 @@
       "style": {
         "navigationBarTitleText": "我的"
       }
+    },
+    {
+      "path": "pages/pcWebViev/pcWebViev",
+      "style": {
+        "navigationBarTitleText": "",
+        "enablePullDownRefresh": false
+      }
     }
-      ,{
-            "path" : "pages/pcWebViev/pcWebViev",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-    ],
+  ],
   "subPackages": [
     {
       "root": "activityPages",
@@ -151,7 +149,7 @@
     },
     {
       "root": "pageMy",
-      "pages":[
+      "pages": [
         {
           "path": "search/search",
           "style": {
@@ -224,6 +222,13 @@
           "style": {
             "navigationBarTitleText": "绑定联系方式"
           }
+        },
+        {
+          "path": "reportPage/reportPage",
+          "style": {
+            "navigationBarTitleText": "报告详情",
+            "enablePullDownRefresh": false
+          }
         }
       ]
     }

+ 2 - 2
pages/pcWebViev/pcWebViev.vue

@@ -12,8 +12,8 @@ export default {
   data() {
     return {
       //url:"http://192.168.2.22:3000/cygx_pc/",//开发
-      //url: "https://cygxpctest.hzinsights.com/cygx_pc", //测试
-      url: 'https://cygxpc.hzinsights.com/cygx_pc', //生产
+      url: "https://cygxpctest.hzinsights.com/cygx_pc", //测试
+      //url: 'https://cygxpc.hzinsights.com/cygx_pc', //生产
       urlPath: "/index",
       queryList: "",
       urlShare: "",