﻿PeccancyQuery = {
    IsShowInfo: false,
    PcyUrl: 'Public/PcyQuery.ashx',
    AjaxPost: function(url, postData, callBack) {
        $.ajax({
            url: url,
            data: postData,
            type: 'GET',
            dataType: 'json',
            success: function(data) {
                callBack(data);
            },
            error: function(xhr) {
                alert("系统发生错误，请稍后重试");
            }
        });
    },
    GetProvince: function() {
        this.AjaxPost(this.PcyUrl, 'act=0', function(data) {
            for (var i = 0; i < data.length; i++) {
                $("<option value='" + data[i].pid
                                    + "' code='"
                                    + data[i].pcode + "'>"
                                    + data[i].pname
                                    + "</option>").appendTo("#province");
            }
            if ($("#province option:first").val() != undefined) {
                PeccancyQuery.GetCity($("#province option:first").val());
            }
        });
    },
    GetCity: function(pid) {
        this.AjaxPost(this.PcyUrl, 'act=1&pid=' + pid, function(data) {
            for (var i = 0; i < data.length; i++) {
                $("<option value='" + data[i].cid
                                    + "' code='"
                                    + data[i].carchar + "'>"
                                    + data[i].cname
                                    + "</option>").appendTo("#city");
            }
            if ($("#city option:first").val() != undefined) {
                PeccancyQuery.GetQueryPars($("#city option:first").val());
            }
        });
    },
    GetQueryPars: function(cid) {
        this.AjaxPost(this.PcyUrl, 'act=2&qtype=1&cid=' + cid, function(data) {
            var i = 0;
            if (data.select) {
                var s = "<select id='ctype' tname='" + data.select.name + "'>";
                for (i = 0; i < data.select.items.length; i++) {
                    s += "<option value='" + data.select.items[i].value + "' >" + data.select.items[i].name + "</option>";
                }
                s += "</select>";
                $("#cbo").append("<span id=\"scp\">汽车类型：" + s + "</span>");
            }
            if (data.inputName) {
                $("#paras").append("车牌号码：<input type='text' id='" + data.inputName + "' tname='车牌号码' />");
                $("#query #qryCar").val(data.inputName);
            }
            if (data.inputValue) {
                document.getElementById(data.inputName).value = data.inputValue;
            }
            if (data.usePro) {
                $("#paras").append("<input type='hidden' id='usePro' value='" + data.usePro + "' />");
            }
            for (i = 0; i < data.paras.length; i++) {
                $("#paras").append(data.paras[i].title + "：<input id='" + data.paras[i].name + "' type='text' tname='" + data.paras[i].title + "' />");
                if(data.paras[i].title.indexOf('识别') >= 0){
                    $("#query #qryCode").val(data.paras[i].name);
                }
            }
            if (data.valicode) {
                $("#paras").append("验证码：<input type='text' id='valicode' tname='验证码' value='点击获取验证码' style='color:#ccc' onfocus='if(this.value != \"点击获取验证码\")return;this.style.color=\"#000\";this.value=\"\";if(!document.getElementById(\"codeimg\")){var r=Math.random();PeccancyQuery.SetValiCode(\"" + data.valicode + "\",\"Public/PcyImage.ashx?cid=" + cid + "&qtype=1&random=\"+r);}' />");
            }
        });
    },
    SetValiCode: function(tname, src) {
        $("#paras #codeimg").remove();
        $("#paras").append("<img id='codeimg' tname='" + tname + "' src='" + src + "'" + " alt='点击刷新验证码' style='cursor:pointer' onclick='this.src=this.src+\"&random=\"+Math.random()' />");
    },
    Submit: function() {
        var ret = true;
        var s = "";
        if ($("#cbo #scp #ctype")) {
            s += $("#cbo #scp #ctype").attr("tname") + "=" + $("#cbo #scp #ctype option:selected").val() + "&";
        }
        $("#query input[type=text]").each(function() {
            if ($(this).val() == "" || $(this).val() == "点击获取验证码") {
                alert($(this).attr("tname") + "不能为空");
                $(this).focus();
                ret = false;
                return false;
            }
            if ($(this).attr("id") == 'valicode') {
                s += $('#codeimg').attr('tname') + "=" + $(this).val() + "&";
            } else {
                if ($(this).attr("tname") == '车牌号码') {
                    if (document.getElementById('usePro')) {
                        var p = "京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼渝川贵云藏陕甘青宁新";
                        var v = $(this).val();
                        if (p.indexOf(v.substr(0, 1)) >= 0) {
                            s += $('#usePro').attr('value') + "=" + v.substr(0, 1) + "&";
                            v = v.substr(1, v.length - 1);
                        }
                        s += $(this).attr("id") + "=" + v + "&";
                        return true;
                    }
                }
                s += $(this).attr("id") + "=" + $(this).val() + "&";
            }
        });
        if (!ret) return;
        if (s.substr(s.length - 1, 1) == '&') {
            s = s.substring(0, s.length - 1);
        }
        var car = document.getElementById($("#query #qryCar").val()).value;
        var code = document.getElementById($("#query #qryCode").val()).value;
        var postdata = 'act=3&qtype=1&paras=' +  escape(s) + '&cid=' + $('#city option:selected').attr('value') + "&qryCar=" + escape(car) + "&qryCode=" + escape(code);
        this.AjaxPost(this.PcyUrl, postdata, function(data) {
            if(PeccancyQuery.IsShowInfo == true){
                $("#resBox").css("display","block");
                $("#resBox #res").html("<table width='100%' border='0' cellspacing='0' cellpadding='0' class='maintable' style='width:100%'>" + data.data + "</table>");
            }else{
                var f = document.createElement("form");
                document.body.appendChild(f);
                var i = document.createElement("input");
                i.type = "hidden";
                i.id = "data";
                i.name = "data";
                i.value = data.data;
                f.appendChild(i);
                var ss = document.createElement("input");
                ss.type = "hidden";
                ss.id = "save";
                ss.name = "save";
                f.appendChild(ss);
                var h = $("#query").html().replace(/(^\s*)|(\s*$)/g, "");
                h = h.substr(0,h.length-6);
                ss.value = h;
                f.action = "PcyQuery.aspx";
                f.method = "post";
                f.submit();
            }
        });
        $('#paras #valicode').val('');
    }
};

$(document).ready(function() {
    var save = $("#Query1_hidSave").val();
    if(save != 1){
        PeccancyQuery.GetProvince();        
    }
    $('#province').change(function() {
        $("#res").empty();
        $("#paras").empty();
        $("#city").empty();
        $("#cbo #scp").remove();
        $("#resBox").css("display","none");
        var p = $("#province option:selected").val();
        PeccancyQuery.GetCity(p);
    });
    $('#city').change(function() {
        $("#res").empty();
        $("#paras").empty();
        $("#cbo #scp").remove();
        $("#resBox").css("display","none");
        var c = $("#city option:selected").val();
        PeccancyQuery.GetQueryPars(c);
    });
    $('#submit').bind('click', function() { PeccancyQuery.Submit(); });   
}); 