|
@@ -0,0 +1,789 @@
|
|
|
+<!DOCTYPE html>
|
|
|
+<html>
|
|
|
+
|
|
|
+<head>
|
|
|
+ <meta charset="utf-8">
|
|
|
+ <meta name="viewport"
|
|
|
+ content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no"/>
|
|
|
+ <title>VIP订阅</title>
|
|
|
+ <script src="/vipsubscribe/js/rem.js?v={{Msg "seo" "version"}}"></script>
|
|
|
+ <link rel="stylesheet" type="text/css" href="/vipsubscribe/css/base.css?v={{Msg "seo" "version"}}"/>
|
|
|
+ <link rel="stylesheet" href="/vipsubscribe/css/weui.min.css?v={{Msg "seo" "version"}}">
|
|
|
+ <link rel="stylesheet" href="/vipsubscribe/iconfont/iconfont.css?v={{Msg "seo" "version"}}">
|
|
|
+ <link rel="stylesheet" href="/vipsubscribe/css/vip_purchase.css?v={{Msg "seo" "version"}}">
|
|
|
+</head>
|
|
|
+<body>
|
|
|
+<div>
|
|
|
+ <div class="vip_purchase">
|
|
|
+ <div class="choose_condition">
|
|
|
+ <ul class="chooseList">
|
|
|
+ <li class="choose_item">
|
|
|
+ <a href="/front/vipsubscribe/toChooseArea">
|
|
|
+ <span class="label">区域</span>
|
|
|
+ <input type="text" disabled value="" placeholder="1个市"
|
|
|
+ class="info choose_area">
|
|
|
+ <i class="iconfont icon-arrow"></i>
|
|
|
+ </a>
|
|
|
+ <!-- 无选择时不显示 -->
|
|
|
+ <p class="add_tips area" style="display:none">已选择 0 个省级区域、0 个地市</p>
|
|
|
+ </li>
|
|
|
+ <li class="choose_item">
|
|
|
+ <a href="/front/vipsubscribe/toChooseIndustry">
|
|
|
+ <span class="label">行业</span>
|
|
|
+ <input type="text" disabled value="" placeholder="1个行业"
|
|
|
+ class="info choose_industry">
|
|
|
+ <i class="iconfont icon-arrow"></i>
|
|
|
+ </a>
|
|
|
+ <!-- 无选择时不显示 -->
|
|
|
+ <p class="add_tips industry" style="display:none">已选择 0 个行业</p>
|
|
|
+ </li>
|
|
|
+ <li class="choose_item select_cycle">
|
|
|
+ <!-- 需要选择订阅周期就用a标签,div.class="free-7day"隐藏 opacity: 1 !important; -->
|
|
|
+ <!-- 需要选择试用就用div标签,a标签隐藏 -->
|
|
|
+ <a href="javascript:;">
|
|
|
+ <span class="label">订阅周期</span>
|
|
|
+ <input type="text" readonly="readonly" disabled style="color:#000;" value="1个月"
|
|
|
+ class="info choose_time">
|
|
|
+ <i class="iconfont icon-arrow choose_time"></i>
|
|
|
+ </a>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ <div class="pay_mode">
|
|
|
+ <div class="select_payment choose_item">
|
|
|
+ <a href="javascript:;">
|
|
|
+ <span class="label">支付方式</span>
|
|
|
+ <span class="info choose_way" style="width: 6rem;">微信支付</span>
|
|
|
+ <!--<i class="iconfont"></i>-->
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ <div class="vip_rules">
|
|
|
+ <div class="vip_prise_table">
|
|
|
+ <table class="monthly">
|
|
|
+ <caption class="table_title">- VIP订阅价格 -</caption>
|
|
|
+ <tr>
|
|
|
+ <td colspan="2">按月购买</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td><span>5.8</span>元 月/市/行业</td>
|
|
|
+ <td><span>18</span>元 月/市/全行业</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td><span>11.8</span>元 月/省/行业</td>
|
|
|
+ <td><span>38</span>元 月/省/全行业</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td><span>118</span>元 月/全国/行业</td>
|
|
|
+ <td><span>388</span>元 月/全国/全行业</td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ <table class="yearly">
|
|
|
+ <tr>
|
|
|
+ <td colspan="2">按年购买</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td><span>58</span>元 年/市/行业</td>
|
|
|
+ <td><span>180</span>元 年/市/全行业</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td><span>118</span>元 年/省/行业</td>
|
|
|
+ <td><span>380</span>元 年/省/全行业</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td><span>1180</span>元 年/全国/行业</td>
|
|
|
+ <td><span>3880</span>元 年/全国/全行业</td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ <dl class="tips">
|
|
|
+ <dt>购买须知:</dt>
|
|
|
+ <dd>套餐周期内,不支持套餐降级,即将到期时续费可降级;</dd>
|
|
|
+ <dd>支持套餐升级,补差价(按月进行补差价,不足一个月按一个月计算)。</dd>
|
|
|
+ </dl>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="fixed-bottom-box">
|
|
|
+ <div class="weui-cells weui-cells_checkbox radio-form">
|
|
|
+ <label class="weui-cell weui-check__label" for="buy">
|
|
|
+ <div class="weui-cell__hd">
|
|
|
+ <input type="checkbox" class="weui-check" name="buyService" id="buy"/>
|
|
|
+ <i class="weui-icon-checked"></i>
|
|
|
+ </div>
|
|
|
+ <div class="weui-cell__bd read">
|
|
|
+ <p>
|
|
|
+ 我已阅读,理解并接受
|
|
|
+ <a href="/front/staticPage/wx-serviceterms.html">
|
|
|
+ 《剑鱼标讯线上购买与服务条款》
|
|
|
+ </a>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </label>
|
|
|
+ </div>
|
|
|
+ <div class="price">
|
|
|
+ <!-- <strong>¥1,300.00</strong> -->
|
|
|
+ <strong>¥5.80</strong>
|
|
|
+ </div>
|
|
|
+ <div class="form-btn">
|
|
|
+ <button class="btn enter" disabled id="payHandle">立即续费</button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <!-- 选择行业 -->
|
|
|
+ <div class="js_dialog time_cycle" id="time_cycle" style="display: none;">
|
|
|
+ <div class="weui-mask"></div>
|
|
|
+ <div class="box">
|
|
|
+ <div class="box_hd">
|
|
|
+ <h3>订阅周期</h3>
|
|
|
+ <span class="cancel">取消</span>
|
|
|
+ </div>
|
|
|
+ <div class="box_bd">
|
|
|
+ <div class="tips profit_tips" style="display: none">已选择10个月,建议“按年订阅”</div>
|
|
|
+ <div class="computed_price">¥58.0</div>
|
|
|
+ <div class="bd_select">
|
|
|
+ <div class="weui-cells weui-cells_checkbox choose-form">
|
|
|
+ <label class="weui-cell weui-check__label monthly_label" for="monthly">
|
|
|
+ <div class="weui-cell__hd">
|
|
|
+ <input type="radio" class="weui-check monthly" name="time" value="month"
|
|
|
+ id="monthly"/>
|
|
|
+ <i class="weui-icon-checked"></i>
|
|
|
+ </div>
|
|
|
+ <div class="weui-cell__bd">
|
|
|
+ <p>按月订阅</p>
|
|
|
+ </div>
|
|
|
+ </label>
|
|
|
+ <div class="number_box" id="number_box_month" data-numbox-step="1" data-numbox-min="1"
|
|
|
+ data-numbox-max="12">
|
|
|
+ <button class="weui-btn weui-btn_plain-default" type="button" disabled>
|
|
|
+ <div class="jy_icon decrease"></div>
|
|
|
+ </button>
|
|
|
+ <span class="month_number">1</span>
|
|
|
+ <button class="weui-btn weui-btn_plain-default add" type="button">
|
|
|
+ <div class="jy_icon increase"></div>
|
|
|
+ </button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="weui-cells weui-cells_checkbox choose-form">
|
|
|
+ <label class="weui-cell weui-check__label yearly_label" for="yearly">
|
|
|
+ <div class="weui-cell__hd">
|
|
|
+ <input type="radio" class="weui-check yearly" name="time" value="year"
|
|
|
+ id="yearly" checked/>
|
|
|
+ <i class="weui-icon-checked"></i>
|
|
|
+ </div>
|
|
|
+ <div class="weui-cell__bd">
|
|
|
+ <p>按年订阅</p>
|
|
|
+ </div>
|
|
|
+ </label>
|
|
|
+ <div class="number_box" id="number_box_year" style="border: 0;">
|
|
|
+ <span class="year_number" data-id="1">1年</span>
|
|
|
+ <span class="year_number" data-id="2">2年</span>
|
|
|
+ <span class="year_number" data-id="3">3年</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="form-btn">
|
|
|
+ <button class="btn enter" id="enter_period">确认</button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 选择支付方式 -->
|
|
|
+ <div class="js_dialog pay_way" id="pay_way" style="display: none;">
|
|
|
+ <div class="weui-mask"></div>
|
|
|
+ <div class="box">
|
|
|
+ <div class="box_hd">
|
|
|
+ <span></span>
|
|
|
+ <h3>支付方式</h3>
|
|
|
+ <span class="cancel">取消</span>
|
|
|
+ </div>
|
|
|
+ <div class="box_bd">
|
|
|
+ <div class="weui-cells weui-cells_checkbox choose-form">
|
|
|
+ <label class="weui-cell weui-check__label wx_label" for="wx">
|
|
|
+ <div class="weui-cell__bd read">
|
|
|
+ <p><img src="/vipsubscribe/image/weixin.png?v={{Msg "seo" "version"}}">微信支付</p>
|
|
|
+ </div>
|
|
|
+ <div class="weui-cell__hd">
|
|
|
+ <input type="radio" class="weui-check" name="way" value="微信支付" id="wx" checked/>
|
|
|
+ <i class="weui-icon-checked"></i>
|
|
|
+ </div>
|
|
|
+ </label>
|
|
|
+ <label class="weui-cell weui-check__label zfb_label" for="zfb">
|
|
|
+ <div class="weui-cell__bd read">
|
|
|
+ <p><img src="/vipsubscribe/image/zhifubao.png?v={{Msg "seo" "version"}}">支付宝支付</p>
|
|
|
+ </div>
|
|
|
+ <div class="weui-cell__hd">
|
|
|
+ <input type="radio" class="weui-check" name="way" value="支付宝支付" id="zfb"/>
|
|
|
+ <i class="weui-icon-checked"></i>
|
|
|
+ </div>
|
|
|
+ </label>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <script src="/vipsubscribe/js/jquery-2.1.4.js?v={{Msg "seo" "version"}}"></script>
|
|
|
+ <script src="/vipsubscribe/js/weui.min.js?v={{Msg "seo" "version"}}"></script>
|
|
|
+ <script src="/vipsubscribe/js/common.js?v={{Msg "seo" "version"}}"></script>
|
|
|
+ {{include "/common/weixin.html"}}
|
|
|
+ <script>
|
|
|
+ $(window).bind("pageshow", function (event) {
|
|
|
+ if (event.originalEvent.persisted) {
|
|
|
+ window.location.reload();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ //微信支付start
|
|
|
+ try {
|
|
|
+ var signature = {{.T.signature}};
|
|
|
+ var isConfigSuccess = true;
|
|
|
+ var id = {{.T._id}}
|
|
|
+ if (signature && signature.length == 4) {
|
|
|
+ wx.config({
|
|
|
+ debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
|
|
|
+ appId: signature[0], // 必填,公众号的唯一标识
|
|
|
+ timestamp: signature[1], // 必填,生成签名的时间戳
|
|
|
+ nonceStr: signature[2], // 必填,生成签名的随机串
|
|
|
+ signature: signature[3],// 必填,签名,见附录1
|
|
|
+ jsApiList: ['chooseWXPay', 'hideAllNonBaseMenuItem'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
|
|
|
+ });
|
|
|
+ wx.ready(function () {
|
|
|
+ if (!isConfigSuccess) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ wx.hideAllNonBaseMenuItem();
|
|
|
+ });
|
|
|
+ wx.error(function (res) {
|
|
|
+ //config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
|
|
|
+ //alert(res);
|
|
|
+ isConfigSuccess = false;
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ //调用微信支付接口
|
|
|
+ function onBridgeReady(res, ordercode) {
|
|
|
+ WeixinJSBridge.invoke('getBrandWCPayRequest', {
|
|
|
+ "appId": res["appId"],
|
|
|
+ "timeStamp": res["timestamp"],
|
|
|
+ "nonceStr": res["nonceStr"],
|
|
|
+ "package": res["prepayId"],
|
|
|
+ "signType": res["signType"],
|
|
|
+ "paySign": res["sign"]
|
|
|
+ },
|
|
|
+ function (r) {
|
|
|
+ if (r.err_msg == "get_brand_wcpay_request:ok") {
|
|
|
+ setTimeout(function () {
|
|
|
+ clearSessionStorage();
|
|
|
+ window.location.replace("/front/vipsubscribe/toPaySuccessPage?orderCode=" + ordercode);
|
|
|
+ }, 500)
|
|
|
+ } else if (r.err_msg == "get_brand_wcpay_request:cancel") {
|
|
|
+ console.log("支付已取消")
|
|
|
+ } else {
|
|
|
+ weui.toast("系统异常,请稍微再试", {
|
|
|
+ duration: 2000,
|
|
|
+ className: 'custom-toast',
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ //微信支付end
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e)
|
|
|
+ }
|
|
|
+ sessionStorage.removeItem("vipSubisTrial");//非试用界面
|
|
|
+ var purchase = {
|
|
|
+ areaSelect: {},//已选择地区 {"一个省":["一个市"]}计算价格临时变量
|
|
|
+ areaSelectFlushed: false,
|
|
|
+ industrySelect: [],// 已选择行业 一个行业(计算价格临时变量)
|
|
|
+ industrySelectFlushed: false,
|
|
|
+ timeSelect: [1, 2],//已选择时间 timeSelect[0]时长 timeSelect[1] 1:年 2:月
|
|
|
+ buyset: {},
|
|
|
+ price: {}, //价格
|
|
|
+ vipSubisTrial: false,
|
|
|
+ initData: function () {
|
|
|
+ //已选择
|
|
|
+ try {
|
|
|
+ if (sessionStorage.getItem("vipSubSelectArea")) {
|
|
|
+ this.areaSelect = JSON.parse(sessionStorage.getItem("vipSubSelectArea"));
|
|
|
+ }
|
|
|
+ if (sessionStorage.getItem("vipSubSelectIndustry")) {
|
|
|
+ this.industrySelect = JSON.parse(sessionStorage.getItem("vipSubSelectIndustry"));
|
|
|
+ }
|
|
|
+ if (sessionStorage.getItem("vipSubBuySet")) {
|
|
|
+ this.buyset = JSON.parse(sessionStorage.getItem("vipSubBuySet"));
|
|
|
+ }
|
|
|
+ if (!sessionStorage.getItem("vipSubBuySet")) {
|
|
|
+ $DoPost("/subscribepay/editSub/getSubBuyMsg", {}, function (r) {
|
|
|
+ if (r.success) {
|
|
|
+ if (!$.isEmptyObject(r.data.area)) {
|
|
|
+ purchase.areaSelect = r.data.area
|
|
|
+ } else {
|
|
|
+ purchase.areaSelect = {"全国": []}
|
|
|
+ }
|
|
|
+ if (r.data.industry.length != 0) {
|
|
|
+ purchase.industrySelect = r.data.industry
|
|
|
+ } else {
|
|
|
+ purchase.industrySelect = ["全部行业"]
|
|
|
+ }
|
|
|
+ if (!$.isEmptyObject(r.data.buyset)) {
|
|
|
+ purchase.buyset = r.data.buyset
|
|
|
+ }
|
|
|
+ sessionStorage.setItem("vipSubSelectArea", JSON.stringify(purchase.areaSelect));
|
|
|
+ sessionStorage.setItem("vipSubSelectIndustry", JSON.stringify(purchase.industrySelect));
|
|
|
+ sessionStorage.setItem("vipSubSelectArea_buyed", JSON.stringify(purchase.areaSelect));
|
|
|
+ sessionStorage.setItem("vipSubSelectIndustry_buyed", JSON.stringify(purchase.industrySelect));
|
|
|
+ sessionStorage.setItem("vipSubBuySet", JSON.stringify(purchase.buyset))
|
|
|
+ }
|
|
|
+ }, false)
|
|
|
+ }
|
|
|
+ if (sessionStorage.getItem("vipSubSelectTime")) {
|
|
|
+ this.timeSelect = JSON.parse(sessionStorage.getItem("vipSubSelectTime"));
|
|
|
+ }
|
|
|
+ //是否已经点击已读
|
|
|
+ if (sessionStorage.getItem("vipSub_read") == "true") $("#buy").prop("checked", true);
|
|
|
+ //是否试用界面
|
|
|
+ if (sessionStorage.getItem("vipSubisTrial")) this.vipSubisTrial = true;
|
|
|
+
|
|
|
+ //加载价格
|
|
|
+ $DoPost("/subscribepay/vipsubscribe/getPrice", {}, function (r) {
|
|
|
+ if (r) {
|
|
|
+ purchase.price = r;
|
|
|
+ }
|
|
|
+ }, false)
|
|
|
+
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ showArea: function () {
|
|
|
+ if (!this.areaSelectFlushed) {
|
|
|
+ if (this.buyset.areacount == -1) {
|
|
|
+ $(".choose_area").val("全国");
|
|
|
+ } else {
|
|
|
+ let tipTxt = "已购买 ";
|
|
|
+ if (this.buyset.areacount != 0) tipTxt += this.buyset.areacount + " 个省级区域";
|
|
|
+ if (!$.isEmptyObject(this.buyset.citys)) {
|
|
|
+ if (this.buyset.areacount != 0) tipTxt += "、";
|
|
|
+ let cityCount = 0;
|
|
|
+ for (var i in this.buyset.citys) {
|
|
|
+ cityCount += this.buyset.citys[i];
|
|
|
+ }
|
|
|
+ tipTxt += cityCount + " 个地市";
|
|
|
+ }
|
|
|
+ $(".choose_area").val(tipTxt);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ let cityArr = [];//城市
|
|
|
+ let provinceArr = [];//省份
|
|
|
+ let data = this.areaSelect;
|
|
|
+ for (var i in data) {
|
|
|
+ let citys = data[i];
|
|
|
+ if (citys.length > 0) {
|
|
|
+ cityArr = cityArr.concat(citys);
|
|
|
+ } else {
|
|
|
+ provinceArr.push(i)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!$.isEmptyObject(this.areaSelect) && !this.areaSelect["全国"]) { //选择有行业信息 且不是全国
|
|
|
+ var tipTxt = "已购买 ";
|
|
|
+ if (provinceArr.length > 0) tipTxt += provinceArr.length + " 个省级区域";
|
|
|
+ if (cityArr.length > 0) {
|
|
|
+ if (provinceArr.length > 0) tipTxt += "、";
|
|
|
+ tipTxt += cityArr.length + " 个地市";
|
|
|
+ }
|
|
|
+ $(".choose_area").val(tipTxt);
|
|
|
+ //$(".add_tips.area").text(tipTxt).css("display", "");
|
|
|
+ } else if (!$.isEmptyObject(this.areaSelect) && this.areaSelect["全国"]) {
|
|
|
+ $(".choose_area").val("全国");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ showPrice: function () {
|
|
|
+ $('.monthly span:eq(0)').text(purchase.price.month.oneCity_oneBuyerClass / 100);
|
|
|
+ $('.monthly span:eq(1)').text(purchase.price.month.oneCity_allBuyerClass / 100);
|
|
|
+ $('.monthly span:eq(2)').text(purchase.price.month.oneProvince_oneBuyerClass / 100);
|
|
|
+ $('.monthly span:eq(3)').text(purchase.price.month.oneProvince_allBuyerClass / 100);
|
|
|
+ $('.monthly span:eq(4)').text(purchase.price.month.allProvince_oneBuyerClass / 100);
|
|
|
+ $('.monthly span:eq(5)').text(purchase.price.month.allProvince_allBuyerClass / 100);
|
|
|
+
|
|
|
+ $('.yearly span:eq(0)').text(purchase.price.year.oneCity_oneBuyerClass / 100);
|
|
|
+ $('.yearly span:eq(1)').text(purchase.price.year.oneCity_allBuyerClass / 100);
|
|
|
+ $('.yearly span:eq(2)').text(purchase.price.year.oneProvince_oneBuyerClass / 100);
|
|
|
+ $('.yearly span:eq(3)').text(purchase.price.year.oneProvince_allBuyerClass / 100);
|
|
|
+ $('.yearly span:eq(4)').text(purchase.price.year.allProvince_oneBuyerClass / 100);
|
|
|
+ $('.yearly span:eq(5)').text(purchase.price.year.allProvince_allBuyerClass / 100);
|
|
|
+ },
|
|
|
+ showIndustry: function () {
|
|
|
+ if (!this.industrySelectFlushed) {
|
|
|
+ if (this.buyset.buyerclasscount == -1) {
|
|
|
+ $(".choose_industry").val("全部行业");
|
|
|
+ } else {
|
|
|
+ $(".choose_industry").val("已购买 " + this.buyset.buyerclasscount + " 个行业");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ let data = this.industrySelect;
|
|
|
+ if (this.industrySelect.length > 0 && this.industrySelect[0] != "全部行业" && this.industrySelect[0] != "一个行业") { //选择有行业信息
|
|
|
+ $(".choose_industry").val("已购买 " + this.industrySelect.length + " 个行业");
|
|
|
+ } else if (this.industrySelect.length > 0 && this.industrySelect[0] == "全部行业") {
|
|
|
+ $(".choose_industry").val("全部行业");
|
|
|
+ } else {
|
|
|
+ $(".choose_industry").val("");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ showTime: function () {
|
|
|
+ let tmp = this.timeSelect[0];
|
|
|
+ if (this.timeSelect[1] == 1) {
|
|
|
+ tmp += "年";
|
|
|
+ $("#yearly").prop('checked', true);
|
|
|
+ $('.year_number:eq(' + (this.timeSelect[0] - 1) + ')').addClass("active");
|
|
|
+ //$(".number_box:eq(1)").addClass("active");
|
|
|
+ } else {
|
|
|
+ tmp += "个月";
|
|
|
+ $("#monthly").prop('checked', true);
|
|
|
+ $(".number_box:eq(0)").addClass("active");
|
|
|
+ $("#number_box_month .month_number").text(this.timeSelect[0]);
|
|
|
+ if (this.timeSelect[0] >= 10) {
|
|
|
+ $('.profit_tips').text("已选择" + this.timeSelect[0] + "个月,建议“按年订阅”").show();
|
|
|
+ }
|
|
|
+ if (this.timeSelect[0] == 1) {
|
|
|
+ $('#number_box_month button:eq(0)').attr("disabled", "disabled");
|
|
|
+ } else {
|
|
|
+ $('#number_box_month button:eq(0)').removeAttr("disabled");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $(".info.choose_time").val(tmp);
|
|
|
+ },
|
|
|
+ flushPrice: function (time, flag) {
|
|
|
+ if (this.vipSubisTrial) {
|
|
|
+ $('.price strong').text('¥0.00');
|
|
|
+ } else {
|
|
|
+ let price;
|
|
|
+ if (this.industrySelectFlushed && this.areaSelectFlushed) { //地区和行业都已选择
|
|
|
+ price = getsubVipOrderPrice(this.areaSelect, this.industrySelect, time, this.price);
|
|
|
+ } else if (this.industrySelectFlushed) { //仅选择了行业
|
|
|
+ mBuyset = getBuySet({}, this.industrySelect);
|
|
|
+ mBuyset.citys = this.buyset.citys;
|
|
|
+ mBuyset.areacount = this.buyset.areacount;
|
|
|
+ price = getsubVipOrderPriceBybuyset(mBuyset, time, this.price)
|
|
|
+ } else if (this.areaSelectFlushed) { //仅选择了地区
|
|
|
+ mBuyset = getBuySet(this.areaSelect, []);
|
|
|
+ mBuyset.buyerclasscount = this.buyset.buyerclasscount;
|
|
|
+ price = getsubVipOrderPriceBybuyset(mBuyset, time, this.price);
|
|
|
+ } else { //都未选择
|
|
|
+ price = getsubVipOrderPriceBybuyset(this.buyset, time, this.price);
|
|
|
+ }
|
|
|
+ if (flag === 1) {
|
|
|
+ $('.price strong').text('¥' + price);
|
|
|
+ } else if (flag === 2) {
|
|
|
+ $('.computed_price').html('¥' + price);
|
|
|
+ } else {
|
|
|
+ $('.price strong').text('¥' + price);
|
|
|
+ $('.computed_price').html('¥' + price);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ flushCheck: function () {//检测是否修改
|
|
|
+ //地区是否改变
|
|
|
+ this.areaSelectFlushed = !this.theSameAs_area();
|
|
|
+ if (!this.areaSelectFlushed) {
|
|
|
+ sessionStorage.setItem("areaSelectNotFlushed", "1")
|
|
|
+ } else {
|
|
|
+ sessionStorage.removeItem("areaSelectNotFlushed");
|
|
|
+ }
|
|
|
+ //行业是否改变
|
|
|
+ this.industrySelectFlushed = !this.theSame_industry();
|
|
|
+ if (!this.industrySelectFlushed) {
|
|
|
+ sessionStorage.setItem("industrySelectNotFlushed", "1")
|
|
|
+ } else {
|
|
|
+ sessionStorage.removeItem("industrySelectNotFlushed");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ theSameAs_area: function () {
|
|
|
+ if (!sessionStorage.getItem("vipSubSelectArea_buyed")) {
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ let Area_buyed = JSON.parse(sessionStorage.getItem("vipSubSelectArea_buyed"));
|
|
|
+ let tmp1 = getAreaClassArr(Area_buyed);
|
|
|
+ let tmp2 = getAreaClassArr(purchase.areaSelect);
|
|
|
+ return (JSON.stringify(tmp1[0].sort()) === JSON.stringify(tmp2[0].sort())) && (JSON.stringify(tmp1[1].sort()) === JSON.stringify(tmp2[1].sort()));
|
|
|
+ },
|
|
|
+ theSame_industry: function () {
|
|
|
+ if (!sessionStorage.getItem("vipSubSelectIndustry_buyed")) {
|
|
|
+ return false
|
|
|
+ }
|
|
|
+ let industry_buyed = JSON.parse(sessionStorage.getItem("vipSubSelectIndustry_buyed"));
|
|
|
+ return JSON.stringify(industry_buyed.sort()) === JSON.stringify(purchase.industrySelect.sort());
|
|
|
+ }
|
|
|
+ };
|
|
|
+
|
|
|
+
|
|
|
+ $(function () {
|
|
|
+ purchase.initData();
|
|
|
+ purchase.flushCheck();
|
|
|
+ purchase.showArea();
|
|
|
+ purchase.showIndustry();
|
|
|
+ purchase.showPrice();
|
|
|
+ purchase.showTime();
|
|
|
+ purchase.flushPrice(purchase.timeSelect);
|
|
|
+ checkOk();
|
|
|
+ var time_limit;//定义一个周期变量
|
|
|
+ /*------ 关闭弹窗事件 点击取消或遮罩层 -----*/
|
|
|
+ $('.weui-mask').click(hideDialog);
|
|
|
+ $('.cancel').click(hideDialog);
|
|
|
+
|
|
|
+ /* ----- 订阅周期、支付方式弹窗弹出事件 -------*/
|
|
|
+ // 选择订阅周期
|
|
|
+ $('.select_cycle a').click(function (e) {
|
|
|
+ $('#time_cycle').show(200);
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ /* ----- 选择完支付方式、订阅周期 回显到页面 -------*/
|
|
|
+ // 对支付方式选择的input绑定点击事件
|
|
|
+ $('#pay_way input:radio[name="way"]').click(function () {
|
|
|
+ var checkValue = $('input:radio[name="way"]:checked').val();
|
|
|
+ $('.pay_way').hide(200);
|
|
|
+ $('.pay_mode .select_payment .choose_way.info').html(checkValue);
|
|
|
+ });
|
|
|
+ // 对订阅时间选择的input绑定点击事件
|
|
|
+ $('#time_cycle input:radio[name="time"]').on('click', function (e) {
|
|
|
+ // 解除确认按钮的锁定
|
|
|
+ $('#time_cycle .form-btn button').removeAttr('disabled');
|
|
|
+ if ($(e.target).hasClass('monthly')) {
|
|
|
+ // 按月订阅
|
|
|
+ $('#number_box_month').addClass('active');
|
|
|
+ $('#number_box_year span').removeClass('active');
|
|
|
+ } else {
|
|
|
+ // 按年订阅
|
|
|
+ $('#number_box_month').removeClass('active');
|
|
|
+ // $('#number_box_year span:eq(0)').addClass('active').siblings().removeClass('active');
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ /* --------控制月份number_box的事件 点击加减号触发的事件------- */
|
|
|
+ $('#number_box_month').on('click', 'button', function (e) {
|
|
|
+ // 点击加减号让input radio选中
|
|
|
+ $('#monthly').prop('checked', true);
|
|
|
+ $('#yearly').prop('checked', false);
|
|
|
+ $('.number_box span').removeClass('active');
|
|
|
+ $('#number_box_month').addClass('active');
|
|
|
+
|
|
|
+ var $number = $('#number_box_month span.month_number');
|
|
|
+ var $monthlyInput = $('#monthly');
|
|
|
+ // 未整理的data数组,里面的值都是字符串
|
|
|
+ var preData = e.delegateTarget.dataset;
|
|
|
+ var currentNum = parseInt($number.text());
|
|
|
+ var data = {};
|
|
|
+ // 把字符串转换成数字
|
|
|
+ for (var i in preData) {
|
|
|
+ data[i] = preData[i] - 0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!$monthlyInput.prop('checked')) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ // 判断是点击的是+ 还是-
|
|
|
+ if ($(e.target).hasClass('add')) {
|
|
|
+ if (currentNum == 11) { //12个月自动跳转1年
|
|
|
+ $("#number_box_year .year_number:eq(0)").trigger("click");
|
|
|
+ return
|
|
|
+ }
|
|
|
+ // 点的+
|
|
|
+ // currentNum = currentNum >= 12 ? 12 : currentNum + 1;
|
|
|
+ currentNum = currentNum >= data.numboxMax ? data.numboxMax : currentNum + data
|
|
|
+ .numboxStep;
|
|
|
+ } else {
|
|
|
+ // 点的-
|
|
|
+ // currentNum = currentNum <= 1 ? 1 : currentNum - 1;
|
|
|
+ currentNum = currentNum <= data.numboxMin ? data.numboxMin : currentNum - data
|
|
|
+ .numboxStep;
|
|
|
+ }
|
|
|
+ $number.text(currentNum);
|
|
|
+ purchase.timeSelect_tmp = [Number(currentNum), 2];
|
|
|
+ purchase.flushPrice(purchase.timeSelect_tmp, 2);
|
|
|
+ //var price = (5.8 * currentNum).toFixed(1);
|
|
|
+ //$('.computed_price').html('¥' + price)
|
|
|
+ var firstButton = $('#number_box_month button:first');
|
|
|
+ var lastButton = $('#number_box_month button:last');
|
|
|
+ if (currentNum >= 10) {
|
|
|
+ $('.profit_tips').text("已选择" + currentNum + "个月,建议“按年订阅”").show();
|
|
|
+ } else {
|
|
|
+ $('.profit_tips').hide();
|
|
|
+ }
|
|
|
+ // 如果为操作后的结果为1,则锁定减号按钮
|
|
|
+ if (currentNum === data.numboxMin) {
|
|
|
+ firstButton.attr('disabled', true)
|
|
|
+ } else {
|
|
|
+ firstButton.removeAttr('disabled')
|
|
|
+ }
|
|
|
+ // 如果为操作后的结果为12,则锁定加号按钮
|
|
|
+ if (currentNum === data.numboxMax) {
|
|
|
+ lastButton.attr('disabled', true)
|
|
|
+ } else {
|
|
|
+ lastButton.removeAttr('disabled')
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ /* -------- 控制年份number_box的事件 点击1年 2年 3年触发的事件------- */
|
|
|
+ $('#number_box_year').on('click', 'span', function (e) {
|
|
|
+ console.log(e.target.dataset.id);
|
|
|
+ $('#number_box_month').removeClass('active');
|
|
|
+ let id = e.target.dataset.id;
|
|
|
+ $('.profit_tips').hide();
|
|
|
+ $(this).addClass('active').siblings().removeClass('active');
|
|
|
+ $('#yearly').prop('checked', true);
|
|
|
+ $("#monthly").prop('checked', false);
|
|
|
+
|
|
|
+ // 渲染结果 保留一位小数
|
|
|
+ //let result = (Number(id) * 58).toFixed(1);
|
|
|
+ //$('.computed_price').html('¥' + result)
|
|
|
+ purchase.timeSelect_tmp = [Number(id), 1]
|
|
|
+ purchase.flushPrice(purchase.timeSelect_tmp, 2);
|
|
|
+ });
|
|
|
+
|
|
|
+ /* -------- 选择按月订阅 radio触发的事件------- */
|
|
|
+ $('#monthly').on('change', function (e) {
|
|
|
+ let isChecked = $(this).is(':checked');
|
|
|
+ let val = $('.month_number').text();
|
|
|
+ if (val >= 10) {
|
|
|
+ $('.profit_tips').show()
|
|
|
+ }
|
|
|
+ if (!isChecked) {
|
|
|
+ $('#number_box_month button').attr('disabled', true)
|
|
|
+ } else {
|
|
|
+ $('#number_box_month button').removeAttr('disabled')
|
|
|
+ }
|
|
|
+ //let result = (Number(val) * 5.8).toFixed(1);
|
|
|
+ //$('.computed_price').html('¥' + result);
|
|
|
+ purchase.timeSelect_tmp = [Number(val), 2];
|
|
|
+ purchase.flushPrice(purchase.timeSelect_tmp, 2);
|
|
|
+
|
|
|
+ });
|
|
|
+ /* -------- 选择按年订阅 radio触发的事件------- */
|
|
|
+ $('#yearly').on('change', function (e) {
|
|
|
+ $('.profit_tips').hide();
|
|
|
+ // console.log($(this).is(':checked'))
|
|
|
+ let isChecked = $(this).is(':checked');
|
|
|
+ // 按年订阅默认选择1年
|
|
|
+ let val = 1;
|
|
|
+ //$('.computed_price').html('¥' + Number(val) * 58)
|
|
|
+ if (isChecked) {
|
|
|
+ $('#number_box_year span:eq(0)').addClass('active').siblings().removeClass('active')
|
|
|
+ }
|
|
|
+ purchase.timeSelect_tmp = [Number(val), 1];
|
|
|
+ purchase.flushPrice(purchase.timeSelect_tmp, 2);
|
|
|
+ });
|
|
|
+
|
|
|
+ // 确认订阅周期
|
|
|
+ $('#enter_period').on('click', function () {
|
|
|
+ var val;
|
|
|
+ $('input[name="time"]').each(function (i, v) {
|
|
|
+ let isChecked = $(v).is(':checked');
|
|
|
+ if ($(v).is(':checked') === true && $('.year_number').hasClass('active')) {
|
|
|
+ val = $('.active').html();
|
|
|
+ $('#time_cycle').hide(function () {
|
|
|
+ $('.choose_time').val(val)
|
|
|
+ });
|
|
|
+ purchase.timeSelect_tmp = [parseInt(val[0]), 1]
|
|
|
+ } else if ($(v).is(':checked') === true) {
|
|
|
+ val = $('.month_number').html();
|
|
|
+ $('#time_cycle').hide(function () {
|
|
|
+ $('.choose_time').val(val + '个月')
|
|
|
+ });
|
|
|
+ purchase.timeSelect_tmp = [parseInt(val), 2]
|
|
|
+ }
|
|
|
+ });
|
|
|
+ purchase.timeSelect = purchase.timeSelect_tmp;
|
|
|
+ purchase.flushPrice(purchase.timeSelect, 1);
|
|
|
+ sessionStorage.setItem("vipSubSelectTime", JSON.stringify(purchase.timeSelect));
|
|
|
+ });
|
|
|
+ $("input").bind("input propertychange change", function (event) {
|
|
|
+ checkOk();
|
|
|
+ });
|
|
|
+
|
|
|
+ $('#payHandle').click(function () {
|
|
|
+ $("#payHandle").attr("disabled", "disabled");
|
|
|
+ //支付请求
|
|
|
+ var area = purchase.areaSelect;
|
|
|
+ var industry = purchase.industrySelect;
|
|
|
+ if (area["全国"]) {
|
|
|
+ area = {};
|
|
|
+ }
|
|
|
+ if (industry.length == 1 && industry[0] == "全部行业") {
|
|
|
+ industry = [];
|
|
|
+ }
|
|
|
+ //付费用户
|
|
|
+ var param = {
|
|
|
+ "area": JSON.stringify(area),
|
|
|
+ "industry": industry.join(","),
|
|
|
+ "time": $(".info:eq(2)").val().trim(),
|
|
|
+ "payWay": "wx_js",
|
|
|
+ "orderType": 5,
|
|
|
+ "selected": JSON.stringify([sessionStorage.getItem("areaSelectNotFlushed") != "1", sessionStorage.getItem("industrySelectNotFlushed") != "1"]),
|
|
|
+ };
|
|
|
+ $DoPost("/subscribepay/vipsubscribe/createOrder", param, function (r) {
|
|
|
+ if (r.success) {
|
|
|
+ onBridgeReady(JSON.parse(r.data.res), r.data.code);
|
|
|
+ }
|
|
|
+ $("#payHandle").removeAttr("disabled")
|
|
|
+ });
|
|
|
+ })
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ // 隐藏dialog选择框
|
|
|
+ function hideDialog() {
|
|
|
+ $('#pay_way').hide(200);
|
|
|
+ $('#time_cycle').hide(200);
|
|
|
+ }
|
|
|
+
|
|
|
+ //是否可点击
|
|
|
+ function checkOk() {
|
|
|
+ var area = $(".info:eq(0)").val().trim();
|
|
|
+ var industry = $(".info:eq(1)").val().trim();
|
|
|
+ var checked = $('#buy').prop('checked');
|
|
|
+ if (area != '' && industry != '' && checked == true) {
|
|
|
+ $("#payHandle").removeAttr('disabled');
|
|
|
+ } else {
|
|
|
+ $("#payHandle").attr({
|
|
|
+ 'disabled': 'true'
|
|
|
+ });
|
|
|
+ }
|
|
|
+ sessionStorage.setItem("vipSub_read", checked)
|
|
|
+ }
|
|
|
+
|
|
|
+ function clearSessionStorage() {
|
|
|
+ sessionStorage.removeItem("vipSubSelectArea");
|
|
|
+ sessionStorage.removeItem("vipSubSelectIndustry");
|
|
|
+ sessionStorage.removeItem("vipSubSelectTime");
|
|
|
+ sessionStorage.removeItem("vipSub_read");
|
|
|
+ sessionStorage.removeItem("historypushDataCache");
|
|
|
+ sessionStorage.To_introducePage = 2;
|
|
|
+ }
|
|
|
+
|
|
|
+ /******* 获取url参数(正则)********/
|
|
|
+ function getParam(name) {
|
|
|
+ var search = document.location.search;
|
|
|
+ // alert(search);
|
|
|
+ var pattern = new RegExp("[?&]" + name + "\=([^&]+)", "g");
|
|
|
+ var matcher = pattern.exec(search);
|
|
|
+ var items = null;
|
|
|
+ if (null != matcher) {
|
|
|
+ try {
|
|
|
+ items = decodeURIComponent(decodeURIComponent(matcher[1]));
|
|
|
+ } catch (e) {
|
|
|
+ try {
|
|
|
+ items = decodeURIComponent(matcher[1]);
|
|
|
+ } catch (e) {
|
|
|
+ items = matcher[1];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return items;
|
|
|
+ };
|
|
|
+
|
|
|
+ </script>
|
|
|
+</div>
|
|
|
+</body>
|
|
|
+
|
|
|
+</html>
|