immediatepaycs.html 10.9 KB
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>支付</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <meta name="format-detection" content="telephone=no" />
    <meta name="format-detection" content="email=no" />
    <meta name="apple-mobile-web-app-status-bar-style" content="black" />
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-title" content="">
    <meta name="google" value="notranslate"><!-- 禁止Chrome 浏览器中自动提示翻译 -->
    <link rel="stylesheet" href="//cdn.bootcss.com/weui/1.1.1/style/weui.min.css">
    <link rel="stylesheet" href="//cdn.bootcss.com/jquery-weui/1.0.1/css/jquery-weui.min.css">
    <link rel="stylesheet" href="../css/reset.css">
    <style>
        .all_told,.platen_number{
            text-align: center;
        }
        .all_told{
            padding: 30px 0 10px 0;
        }
        .all_told span{
            margin-right: 5px;
            font-size: 22px;
        }
        .countdown_time_con {
            text-align: center;
            color: #1aad19;
        }
    </style>
</head>
<body ontouchstart>
<header class="demos-header">
    <p class="all_told"><span id="unpaid"></span></p>
    <p class="platen_number" id="carnum"></p>
</header>
<div class="weui-cells">
    <label class="weui-cell">
        <div class="weui-cell__hd weixin_icon">
        </div>
        <div class="weui-cell__bd">
            <p>微信支付</p>
        </div>
        <div class="weui-cell__hd checked_icon">
        </div>
    </label>
    <!--<label class="weui-cell" onclick="zhifubao()">
        <div class="weui-cell__hd weixin_icon">
        </div>
        <div class="weui-cell__bd">
            <p>支付宝</p>
        </div>
        <div class="weui-cell__hd checked_icon">
        </div>
    </label>-->
</div>

<div class="weui-cells__title">请在支付完成后15分钟内出场,如超出15分钟,会继续产生费用!</div>

<div class="pay-content-padded">
    <a class="weui-btn weui-btn_primary" href="javascript:" id="showTooltips">立即支付</a>
</div>
<div class="weui-cells__title countdown_time_con">支付剩余时间
    <span id="minute_show"></span>
    :
    <span id="second_show"></span>
</div>

<script src="../js/jquery-3.2.1.min.js"></script>
<script src="//cdn.bootcss.com/jquery-weui/1.0.1/js/jquery-weui.min.js"></script>
<!--md5 start-->
<script src="../js/md5.min.js"></script>
<!--md5 end-->
<script src="../js/url.js"></script>
<script src="../js/ajax.js"></script>

<script>
    var func = {
        openid:'',
        token:'',
        orgId:''//获取组织ID
    };
    var intDiff = parseInt(5*60);//倒计时总秒数量
    function timer(intDiff){
        window.setInterval(function(){
            var minute=0,
                second=0;//时间默认
            if(intDiff > 0){
                minute = Math.floor(intDiff / 60);
                second = Math.floor(intDiff)   - (minute * 60);
            }
            if (minute <= 9) minute = '0' + minute;
            if (second <= 9) second = '0' + second;
            $('#minute_show').html(minute);
            $('#second_show').html(second);
            intDiff--;
            console.log(intDiff)
            if(intDiff == '0'){
                //倒计时结束调整页面
                //window.location.href
            }
        }, 1000);
    };
    function onBridgeReady(appId,timeStamp,nonceStr,package,paySign,openid){
        if (typeof WeixinJSBridge == "undefined"){
            if( document.addEventListener ){
                document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
            }else if (document.attachEvent){
                document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
                document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
            }
        }else{
            WeixinJSBridge.invoke(
                'getBrandWCPayRequest', {
                    "appId":appId,     //公众号名称,由商户传入
                    "timeStamp":timeStamp,         //时间戳,自1970年以来的秒数
                    "nonceStr":nonceStr, //随机串
                    "package":package,
                    "signType":"MD5",         //微信签名方式:
                    "paySign":paySign //微信签名
                },
                function(res){
                    //JSON.stringify();
                    if(res.err_msg == "get_brand_wcpay_request:ok" ) {
                        /*var salt = jsajax.salt(32);
                        var sortdata = [
                            {keyname:'app_id',value:'0eca8f5373ca4866aec2f8e9d9367104'},
                            {keyname:'deviceInfo',value:'BC0703A4-AFB0-4B51-9089-9B7487C0CC6E'},
                            {keyname:'salt',value:salt},
                            {keyname:'sign_type',value:'md5'},
                            {keyname:'success',value:'1'},
                            {keyname:'orderId',value:orderID}
                            //{keyname:'token',value:token}
                        ];
                        var md5json = jsajax.getsign(sortdata);
                        var jsondata = {
                            app_id:'0eca8f5373ca4866aec2f8e9d9367104',
                            deviceInfo:'BC0703A4-AFB0-4B51-9089-9B7487C0CC6E',
                            salt:salt,
                            sign_type:'md5',
                            success:'1',
                            sign:md5json,
                            orderId:orderID,
                            //token:token
                        };
                        jsondata = JSON.stringify(jsondata);*/
                        $.toptip('正常离场', 'success');
	                       setTimeout(function(){
	                       		window.history.go(-2);
		                       	//var src = mUrl.Uri+'/WEB-INF/pages/select.html?openid='+func.openid+'&token='+func.token+"&";//mUrl.myParkCardView;
		                    	//window.location.href = src;
	                       },3000);
                        //orlive(jsondata);
                    }else if(res.err_msg == "get_brand_wcpay_request:cancel" ){
                        $.toptip('用户取消', 'warning');
                        $(this).removeClass('weui-btn_disabled');
                        $(this).removeAttr('disabled');
                    } else{
                        //$.toptip('支付失败,请重试', 'error');
                        //alert("调用失败 "+JSON.stringify(res));
                        //console.log("支付失败等等等"+JSON.stringify(res) );
                    }     // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回    ok,但并不保证它绝对可靠。
                }
            );
        }
    }

    function orlive(jsondata){
        //alert("can "+jsondata);
        jsajax.defaultReq(
            mUrl.tcpaysuccess,
            jsondata,
            function(data){
                if(data.code==0){
                    $.toptip('正常离场', 'success');
                    $('#showTooltips').css('display','none');
                    setTimeout(function () {
                        var src = '../Temporarystop.html?';//.myParkCardView;
                        window.location.assign(encodeURI(src));
                    },500);
                }else{
                    //alert(JSON.stringify(data));
                    console.log(JSON.stringify(data));
                }
            }
        );
    }
    var orderID = '';//订单id
    $(function(){
        var url=decodeURI(location.href);
        var order = url.split("?")[1];
        var strurl = order.split("&");
        orderID= strurl[0].split('=')[1];
        var carnum = strurl[1].split('=')[1];
        var unpaid = strurl[2].split('=')[1];
        func.orgId = strurl[4].split('=')[1] || "";
        $("#carnum").text(carnum);
        $("#unpaid").text(unpaid);
        func.openid = mUrl.GetOpenid();
        //点击立即支付
        $("#showTooltips").on('click',function () {
            var salt = jsajax.salt(6);
            var jsondata = {
                appId:jsajax.appID,
                orderId:orderID,
                openId:func.openid,
                payType:'4',//2微信支付
                paySource:'3',
                paySrcType:'101',
                couponPersonId:'',
                terminalSource: '3',//微信公众号
                orgId: func.orgId //组织ID
            };
                
           jsondata = JSON.stringify(jsondata);
            console.log("数据"+jsondata);
            if(orderID&&func.openid){
                $(this).addClass('weui-btn_disabled');
                $(this).attr('disabled','disabled');
            }
            jsajax.defaultReq(
                mUrl.tcwxpay,
                jsondata,
                function (data) {
                    //alert(JSON.stringify(data));
                    console.log('调用微信支付   '+JSON.stringify(data));
                    if(data.code==0) {
                        var datas = data.data;
                        //datas = JSON.parse(datas);
                        var timeStamp = datas.timeStamp;
                        var appId = datas.appId;
                        var nonceStr = datas.nonceStr;
                        var package = datas.package;
                        var paySign = datas.paySign;
                        onBridgeReady(appId,timeStamp,nonceStr,package,paySign,func.openid);
                        //alert("支付获取的信息 "+JSON.stringify(data));
                    }else{
                        $.toptip("支付失败", 2000, "error");
                    }
                }
            );
        });
        timer(intDiff);
    });
    
    //支付宝支付
    function zhifubao(){
    	var salt = jsajax.salt(32);
        var sortdata = [
            {keyname:'app_id',value:'0eca8f5373ca4866aec2f8e9d9367104'},
            {keyname:'deviceInfo',value:'BC0703A4-AFB0-4B51-9089-9B7487C0CC6E'},
            {keyname:'salt',value:salt},
            {keyname:'sign_type',value:'md5'},
            {keyname:'orderId',value:orderID},
            {keyname:'payType',value:'1'},
            {keyname:'paySrcType',value:'101'},
            {keyname:'paySource',value:'3'}
        ];
        var md5json = jsajax.getsign(sortdata);
        var jsondata = {
            app_id:'0eca8f5373ca4866aec2f8e9d9367104',
            deviceInfo:'BC0703A4-AFB0-4B51-9089-9B7487C0CC6E',
            salt:salt,
            sign_type:'md5',
            sign:md5json,
            orderId:orderID,
            payType:'1',
            paySrcType:'101',
            paySource:'3'
            //token:token
        };
        jsondata = JSON.stringify(jsondata);
        jsajax.defaultReq(
        	mUrl.ZFbao,
        	jsondata,
        	function(data){
        		console.log(JSON.stringify(data));
        	}
        );
    }
    
    
 
           
    
</script>
</body>
</html>