新零售支付全家桶


监听键盘输入

扫码器被PC电脑识别成键盘,它就是把扫码内容转换成文字,输入到PC电脑上面,所以我们获得手机付款码文字之后,可以通过键盘手工输入到PC电脑上面,所以我们需要给页面添加键盘监听事件。

编写payment.js

$(".pay-btn").click(function(){
    $(this).attr("disabled",true)
    $(".message").text("扫码中,请不要做其他操作")
    let authCode=""
    $(document).bind("keydown",function(event){
        if(event.keyCode==13){
            let orderId=$(".pay-btn").data("order-id")
            $.ajax({
                url:wxUrl.scanCodePayOrder,
                type:"post",
                dataType:"json",
                contentType:"application/json",
                beforeSend: function(request) {
                    request.setRequestHeader("token", localStorage.getItem("token"));
                },
                data:JSON.stringify({
                    "orderId":orderId,
                    "authCode":authCode
                }),
                success:function(resp){
                    let msg=resp.msg
                    if(msg=="付款成功"){
                        $(document).unbind("keydown")
                        $(".message").text("付款成功")
                        setTimeout(function(){
                            location.reload()
                        },1000)
                    }
                    else{
                        $(".message").text("付款失败")
                    }
                }
            })
        }
        else if(event.keyCode==27){
            $(document).unbind("keydown")
            $(".message").text("支付设备已经准备好")
            $(".pay-btn").removeAttr("disabled")
        }
        let ch=String.fromCharCode(event.keyCode)
        authCode+=ch
    })
})

页面列表

ITEM_HTML