Browse Source

fix:app端附件下载页面新增兑换权益等相关

zhangsiya 1 year ago
parent
commit
22cedb0192

+ 162 - 10
src/jfw/modules/app/src/web/templates/frontRouter/fileRecord/sess/index.html

@@ -72,6 +72,99 @@
           opacity: 0;
           transition: all 0.2s;
       }
+      .t-bg .view-detail{
+          position: absolute;
+          color: #2ABED1;
+          font-size: .24rem;
+          right: .24rem;
+          top: .24rem;
+          line-height: .32rem;
+      }
+      .t-bg .view-detail .icon-arrow-right {
+          width: .32rem;
+          height: .32rem;
+          vertical-align: bottom;
+      }
+      .highlight-color{
+         color: #2ABED1;
+      }
+      .rights-box{
+          margin: -1.4rem .32rem .24rem;
+      }
+      .subscribe-box{
+          border-radius: .16rem;
+          background: linear-gradient(281deg, #14A7D6 3.53%, #1EC2DB 98.32%);
+          box-shadow: 0 .08rem .32rem 0 rgba(8, 31, 38, 0.08);
+          padding: .24rem .04rem .04rem;
+      }
+      .subscribe-title{
+          display: flex;
+          justify-content: flex-start;
+          align-items: center;
+          margin-bottom: .24rem;
+          color: #FFF;
+          font-size: .2rem;
+          line-height: .32rem;
+      }
+      .subscribe-box .subscribe-title img{
+          width: .96rem;
+          height: .84rem;
+          margin-right:2px;
+      }
+      .subscribe-box .subscribe-title strong{
+          font-size: .28rem;
+      }
+      .rights-box .box-container{
+          background: #fff;
+          padding: .32rem .24rem .24rem;
+          border-radius: .16rem;
+      }
+      .subscribe-box .box-container{
+          background: linear-gradient(90deg, #F3FEFF 0%, #DEFBFF 100%);
+      }
+      .subscribe-box .free-title{
+          margin-left: 18px;
+      }
+      .rights-box .box-title{
+          text-align: center;
+          color: #171826;
+          font-size: .24rem;
+          line-height: .48rem;
+          padding: .08rem 0;
+          border-bottom: .01rem solid rgba(0, 0, 0, 0.10);
+      }
+      .rights-box .p-row {
+          margin-top: .24rem;
+      }
+      .rights-box .box-content {
+          color: #5F5E64;
+          font-size: .22rem;
+          line-height: .32rem;
+      }
+      .rights-box .row-top{
+          display: flex;
+          align-items: center;
+          justify-content: space-between;
+          color: #1B1A2A;
+          font-size: .28rem;
+          line-height: .4rem;
+          margin-bottom: .08rem;
+      }
+      .rights-box .handle-text{
+          color: #2ABED1;
+          text-align: right;
+          font-size: .24rem;
+          line-height: .36rem;
+          cursor: pointer;
+      }
+      .rights-box .icon-arrow-right{
+          width: .24rem;
+          height: .24rem;
+          vertical-align: middle;
+      }
+      .rights-box em.highlight-color{
+          font-size: .28rem;
+      }
     </style>
 </head>
 <body>
@@ -80,16 +173,74 @@
     <div class="j-main portraited" id="proRecord" v-cloak>
       <div class="j-container">
         <div class="j-main">
-          <div class="t-bg flex" style="min-height:3.28rem;">
-            <div class="nums">
-              <span v-if="points.total>=0">{points.total}</span>个
-              <img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/portraitRecord/image/help-p.png?v={{Msg "seo" "version"}}' @click="helpTiped" alt="">
-            </div>
-            <div class="btns flex">
-              <span>当月附件下载余额</span>
-              <van-button round type="primary"  @click="setBook">立即充值</van-button>
-            </div>
-          </div>
+<!--            大会员且有附件下载权益不展示头部-->
+            <template v-if="!(userPower.memberStatus && hasDownloadPower)">
+                <div class="t-bg flex" style="min-height:3.28rem;">
+                    <span class="view-detail" @click="viewDetail">兑换/购买附件下载明细<em class="j-icon icon-arrow-right"></em></span>
+                    <div class="nums">
+                        <span v-if="points.total>=0">{points.total}</span>个
+<!--                        <img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/portraitRecord/image/help-p.png?v={{Msg "seo" "version"}}' @click="helpTiped" alt="">-->
+                    </div>
+                    <div class="btns flex">
+                        <span>当月附件下载余额</span>
+                        <!-- <van-button round type="primary"  @click="setBook">立即充值</van-button>-->
+                    </div>
+                </div>
+                <div  class="rights-box" :class="{'subscribe-box': showSubscribeBox }">
+                    <div class="subscribe-title" v-if="showSubscribeBox">
+                        <template v-if="userPower.vipStatus > 0">
+                            <img src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/collection/image/subscribe-icon.png?v={{Msg "seo" "version"}}' alt="">
+                            <span>
+                                <strong>您当前是超级订阅用户</strong>,您每月享有 <em>10</em> 个附件下载权益。每月1号上余额清零重新计算。本月剩余 <em>{ accountInfo.number3 || 0} </em> 个权益。
+                            </span>
+                       </template>
+                        <span class="free-title" v-if="userPower.isFree">
+                            <strong>您当前是免费用户</strong>,可免费下载附件 <em>{ accountInfo.number4 || 0}</em> 次。
+                        </span>
+                    </div>
+                    <div class="box-container">
+                        <div class="box-title">不够用这么办?你有以下两种途径补充余额</div>
+                        <div class="box-content">
+                            <template v-if="!userPower.isFree">
+                                <!-- 大会员-->
+                                <div class="p-row upgrade-row" v-if="userPower.memberStatus">
+                                    <p class="row-top">
+                                        <span><em>1</em>、服务升级</span>
+                                        <span class="handle-text"   @click="consultKf">咨询客服 <em class="j-icon icon-arrow-right"></em></span>
+                                    </p>
+                                    <p>您当前是大会员用户,目前不享有附件下载权益。您可以联系客服进行服务升级后获得。</p>
+                                </div>
+                                <!--非大会员-->
+                                <div class="p-row upgrade-row" v-else>
+                                    <p class="row-top">
+                                        <span><em>1</em>、服务升级</span>
+                                        <span class="handle-text" @click="knowMore">了解详情 <em class="j-icon icon-arrow-right"></em></span>
+                                    </p>
+                                    <p>您可购买大会员,获得每个月不限量附件下载。</p>
+                                </div>
+                            </template>
+                            <div class="p-row recharge-row" v-if="!userPower.memberStatus">
+                                <p class="row-top">
+                                    <span>
+                                        <em>{userPower.isFree ? 1 : 2}</em>、充值</span><span class="handle-text" @click="setBook">去充值 <em class="j-icon icon-arrow-right"></em>
+                                    </span>
+                                </p>
+                                <p>您购买了附加下载包,当月有效。本月剩余权益 <em class="highlight-color">{ accountInfo.number1 || 0 }</em> 个权益。</p>
+                            </div>
+                            <div class="p-row exchange-row">
+                                <p class="row-top">
+                                    <span>
+                                        <em>{ (userPower.memberStatus || userPower.isFree) ? 2 : 3  }</em>
+                                        、兑换</span><span class="handle-text"  @click="exchangeHandle">去兑换 <em class="j-icon icon-arrow-right"></em>
+                                    </span>
+                                </p>
+                                <p>您当月剩余剑鱼币兑换附件下载权益 <em class="highlight-color">{ accountInfo.number2 || 0 }</em> 个。</p>
+                                <p><em>350</em> 剑鱼币可兑换查看一个附件下载权益。兑换后30天内有效。</p>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </template>
           <div class="p1-date">
             <div class="d-box flex">
               使用记录
@@ -157,6 +308,7 @@
   {{include "/big-member/commonjs.html"}}
   <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/public/js/china-map-data.js?v={{Msg "seo" "version"}}'></script>
   <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/file-pack/js/index.js?v={{Msg "seo" "version"}}'></script>
+<!--  <script src='{{Cdns .Host "seo" "cdn"|SafeUrl}}/common-module/file-pack/js/rights-box.js?v={{Msg "seo" "version"}}'></script>-->
   {{include "/common/baiducc.html"}}
 </body>
 

BIN
src/web/staticres/common-module/collection/image/subscribe-icon.png


+ 74 - 11
src/web/staticres/common-module/file-pack/js/index.js

@@ -53,8 +53,8 @@ var vm = new Vue({
       minDate: '',
       maxTime: '',
       points: {
-    	total: 0,
-		usage: 0
+    	  total: 0,
+		    usage: 0
       },
       years: '',
       months: '',
@@ -70,7 +70,38 @@ var vm = new Vue({
       statusEnum: ['存续', '吊销', '停业', '撤销'],
       statusColors: ['#2CB7CA', '#F5AF5C', '#58A1E7', '#51CEA2'],
       list: [],
-      ptype: ""
+      ptype: "",
+      userPower: {
+        // 免费用户
+        isFree: false,
+        // 超级订阅(超级订阅默认一定有附件下载权益)
+        vipStatus: 0,
+        // 大会员
+        memberStatus: 0,
+        // 大会员power包含3, 则表示大会员有附件下载权益
+        power: []
+      },
+      // 附件下载相关权益信息
+      accountInfo: {
+        // 购买数量(充值)
+        number1: 0,
+        // 兑换数量
+        number2: 0,
+        // 定期投放数量(超级订阅剩余权益个数)
+        number3: 0,
+        // 留资数量(免费用户权益个数)
+        number4: 0
+      }
+    }
+  },
+  computed: {
+    // 大会员是否拥有附件下载权益
+    hasDownloadPower () {
+      return this.userPower.power.indexOf(3) > -1
+    },
+    // 展示外层边框(权益)(非大会员、免费用户且有免费群益、或者为超级订阅)
+    showSubscribeBox () {
+      return (this.userPower.vipStatus > 0 || (this.userPower.isFree && this.accountInfo.number4)) && !this.userPower.memberStatus
     }
   },
   created: function () {
@@ -81,18 +112,49 @@ var vm = new Vue({
     this.curDate = new Date()
     this.minDate = new Date(2021, 0)
     this.maxTime = new Date(this.years, this.months - 1)
+    this.getUserPower()
     this.subPoint()
     this.onLoad()
-    this.initHtml()
   },
   methods: {
-    initHtml () {
-      if (this.ptype == "1") {
-        document.title = '采购单位画像记录'
-        typeof setHeaderTitle === 'function' ? setHeaderTitle(document.title) : null
-        $(".btns span").text("当月采购单位画像剩余数")
-        $(".emptytext").text("暂无采购单位画像记录")
+    // 获取用户权限
+    getUserPower() {
+      var _this = this
+      $.ajax({
+        url: '/bigmember/use/isAdd',
+        type: 'POST',
+        success: function (res) {
+          console.log(res)
+          if (res.data) {
+            var resData = res.data
+            _this.userPower.isFree = resData.isFree
+            _this.userPower.vipStatus = resData.vipStatus
+            _this.userPower.memberStatus = resData.memberStatus
+            _this.userPower.power = resData.power
+          }
+        }
+      })
+    },
+    // 超级订阅-了解详情
+    knowMore () {
+      var temp = {
+        wx: '/weixin/frontPage/bigmember/free/perfect_info?source=wx_test',
+        app: '/jyapp/frontPage/bigmember/free/perfect_info?source=app_test'
       }
+      var isWeixin = navigator.userAgent.toLowerCase().indexOf('micromessenger') !== -1
+      location.href = temp[isWeixin ? 'wx' : 'app']
+    },
+    // 咨询客服
+    consultKf () {
+      console.log('咨询客服')
+    },
+    // 去兑换
+    exchangeHandle() {
+      location.href = '/jy_mobile/points/my_points'
+    },
+    // 兑换明细
+    viewDetail () {
+
     },
     getPType (paraName) {
       let _this = this
@@ -126,8 +188,8 @@ var vm = new Vue({
           if (res.error_msg === '' && res.data && res.data.data) {
             try {
               var tempInfo = res.data.data[0]
+              this.accountInfo = tempInfo
               this.points.total = tempInfo.number
-
             } catch (e) {
               console.warn(e)
             }
@@ -286,6 +348,7 @@ var vm = new Vue({
       //   console.log(error)
       // }
     },
+    // 去充值
     setBook() {
       var temp = {
         wx: '/jy_mobile/common/order/create/filepack?type=0',

+ 11 - 9
src/web/staticres/common-module/perfect-info/js/perfect-info.js

@@ -196,14 +196,17 @@ var tipMap = {
   app_supermarket_details_IndustryFields:'请留下您的联系方式及定制数据字段需求,我们将安排专业的数据经理与您对接,为您打造专属的数据服务方案,可快速交付!',
   wx_supermarket_details_IndustryFields:'请留下您的联系方式及定制数据字段需求,我们将安排专业的数据经理与您对接,为您打造专属的数据服务方案,可快速交付!',
   h5_supermarket_details_IndustryFields:'请留下您的联系方式及定制数据字段需求,我们将安排专业的数据经理与您对接,为您打造专属的数据服务方案,可快速交付!',
-  // 
+  //
   app_supermarket_details_AnalysisCase:'请留下您的联系方式,免费获取领域客户应用案例。如有其他业务需求请联系客服:<a onclick="appcallPhone()" class="tips_tel">400-108-6670</a>',
   wx_supermarket_details_AnalysisCase:'请留下您的联系方式,免费获取领域客户应用案例。如有其他业务需求请联系客服:<a href="tel:400-108-6670" class="tips_tel">400-108-6670</a>',
   h5_supermarket_details_AnalysisCase:'请留下您的联系方式,免费获取领域客户应用案例。如有其他业务需求请联系客服:<a href="tel:400-108-6670" class="tips_tel">400-108-6670</a>',
   // 标书制作
   bid_document_Introduction_page: '请留下联系方式,我们会尽快联系您!',
-  // 电信行业解决方案 
-  telecom_solution: '请留下您的信息,我们会尽快和您联系'
+  // 电信行业解决方案
+  telecom_solution: '请留下您的信息,我们会尽快和您联系',
+  // 附件下载记录
+  app_test: '请留下联系方式,我们会尽快联系您!部分招标公告信息等相关文件资料自主下载,帮助企业投标,客户分析、市场挖掘更高效。',
+  wx_test: '请留下联系方式,我们会尽快联系您!部分招标公告信息等相关文件资料自主下载,帮助企业投标,客户分析、市场挖掘更高效。'
 }
 
 // 留资来源(数据库新增字段,记录留资对应的来源,之前未记录的不考虑,新增的source要记录)
@@ -395,7 +398,7 @@ var vNode = {
           if(source?.toLowerCase().indexOf('supermarket') > -1){
             this.moduleShow.data_requirement = true
             this.moduleShow.email = true
-          }  
+          }
         }
 
         if (source.indexOf('_freeuser') > -1 && infoText.indexOf('【') > -1) {
@@ -425,7 +428,6 @@ var vNode = {
             _that.moduleShow[k] = false
         }
       }
-
       switch (source) {
         case 'article_collection': {
           hideLabel()
@@ -470,7 +472,7 @@ var vNode = {
         case 'h5_DataSupermarket_Customization':
         case 'app_supermarket_details_customization':
         case 'wx_supermarket_details_customization':
-        case 'h5_supermarket_details_customization': 
+        case 'h5_supermarket_details_customization':
         case 'h5_DataSupermarket_IndustryFields':
         case 'app_DataSupermarket_IndustryFields':
         case 'wx_DataSupermarket_IndustryFields':
@@ -1159,7 +1161,7 @@ var vNode = {
                 case 'h5_DataSupermarket_Customization':
                 case 'app_supermarket_details_customization':
                 case 'wx_supermarket_details_customization':
-                case 'h5_supermarket_details_customization': 
+                case 'h5_supermarket_details_customization':
                 case 'h5_DataSupermarket_IndustryFields':
                 case 'app_DataSupermarket_IndustryFields':
                 case 'wx_DataSupermarket_IndustryFields':
@@ -1300,10 +1302,10 @@ var vNode = {
       'h5_supermarket_details_AnalysisCase'
       ]
       if(notit_group_list.includes(source)){
-     
+
         this.notit_group = true
       } else {
-    
+
         this.notit_group = false
       }
     },