/*******************************************************************************
 * 自动装配下拉列表，并进行渲染
 ******************************************************************************/
$(function () {
    // $('.select2').select2();
    // alert(gl_language)
    if (gl_language == 'en') {
        $("#search").html('Query');
        $("#reset").html('Reset');
        $("#btn_submit").html('Submit');
        $("#btn_close").html('Close');
        // $('.btn-primary').not('#search').html("Submit");
        // $('.btn-default').not('#reset').html("Close");
        // $('.btn-success').not('#btn_upload_fj').html("Submit");
        $("#btn_upload_fj").html('Upload');
        $("#btn_delete_fj").html('Delete Attachment');
    } else {
        // $("#search").html('查询');
        // $("#reset").html('重置');
        // $("#btn_submit").html('提交');
        // $("#btn_close").html('关闭');
        // $('.btn-primary').not('#search').html("提交");
        // $('.btn-default').not('#reset').html("关闭");
        // $('.btn-success').not('#btn_upload_fj').not('#btn_delete_fj').html("提交");
    }
    $(".select2").each(function () {
        // 是否自动装载，默认为自动装载
        var autoLoad = $(this).attr("autoload") || "1";
        if (autoLoad == "0")
            return true;
        // 待装载数据字典类型
        var stype = $(this).attr("stype");
        if (stype == undefined || $.trim(stype) == "")
            return true;

        var hassearch = $(this).attr("hassearch");
        var isblank = $(this).attr("isblank");  //是否有请选择 默认是有请选择
        var _this = $(this);

        $.getJSON(g.ctx + "pc/sys/dict/getDicByType?type=" + stype, function (data) {
            if (isblank == 1) {
                $(_this).append("<option value=\"\">请选择</option>");
            } else {
                if (gl_language == 'en')
                    $(_this).append("<option value=\"0\">Please Select</option>");
                else
                    $(_this).append("<option value=\"0\">请选择</option>");

            }
            $.each(data, function (i, item) {
                $(_this).append("<option value='" + item.code + "'>" + item.name + "</option>");
            });

            // 设置默认选中项目
            var val = $(_this).attr("val");
            if (val != undefined && $.trim(val) != "") {
                var valArr = val.split(',');
                if (valArr.length > 1) {
                    $.each(valArr, function (index, item) {
                        $(_this).find("option[value=" + item + "]").attr("selected", true);
                    });
                } else {
                    $(_this).find("option[value=" + val + "]").attr("selected", true);
                }
            }

            //是否有查询框 默认是没有查询框
            // if (hassearch==1){
            // 	$(_this).select2();
            // }else{
            // 	$(_this).select2({
            // 		minimumResultsForSearch: -1
            // 	});
            // }
        });
    });

    $(".easyui-select2").each(function () {
        // 待装载数据字典类型
        var stype = $(this).attr("stype");

        var options = $(this).data("options");
        if (options) {
            if (options.substring(0, 1) != "{") {
                options = "{" + options + "}";
            }
            options = new Function("return " + options)();
        } else {
            options = {}
        }

        if (stype == undefined || $.trim(stype) == "")
            return true;
        var isblank = $(this).attr("isblank");  //是否有请选择 默认是有请选择
        var _this = $(this);

        let panelHeight = _this.data("height") ? _this.data("height") : "auto";
        options = $.extend({
            editable: false,
            required: false,
            valueField: 'dicCode',
            textField: 'dicTxt',
            prompt: '-- 请选择 --',
            panelHeight: panelHeight,
            url: g.ctx + 'pc/sys/dict/getDicByType',
            queryParams: {
                type: stype
            },
        }, options)
        $(this).combobox(options);
    });
    /**
     * 级联下拉框
     */
    $("select[ltype]").each(function () {
        var ltype = $(this).attr("ltype") || "";
        if (ltype == "")
            return true;

        var pId = $(this).attr("pid") || "";
        if (pId == "")
            return true;

        var _this = $(this);
        $.getJSON("/dic/getLinkDicByType.do?type=" + ltype + "&pId=" + pId, function (data) {
            $(_this).append("<option value=\"\">请选择</option>");
            $.each(data, function (i, item) {
                $(_this).append("<option value='" + item.code + "'>&nbsp;" + item.dicText + "</option>");
            });

            // 设置默认选中项目
            var val = $(_this).attr("val");
            if (val != undefined && $.trim(val) != "") {
                $(_this).find("option[value=" + val + "]").attr("selected", true);
            }

            $(_this).select2();

        });
    });

    //避免按钮多次点击
    $('button').each(function () {
        var _this = $(this);
        _this.click(function () {
            var _this1 = $(this);
            _this1.attr("disabled", true);
            setTimeout(function () {

                _this.attr("disabled", false);
            }, 500)
        });
    });
    $("select[ltype]").change(function () {
        var child = $(this).attr("child") || "";
        if (child == "")
            return true;

        var pId = $(this).val() || "";
        if (pId == "") {
            $("#" + child).empty();
            $("#" + child).append("<option value=\"\">请选择</option>");
            $("#" + child).trigger("change");
            return true;
        }

        var ltype = $("#" + child).attr("ltype") || "";
        if (ltype == "")
            return true;

        $.getJSON("/dic/getLinkDicByType.do?type=" + ltype + "&pId=" + pId, function (data) {
            $("#" + child).empty();
            $("#" + child).append("<option value=\"\">请选择</option>");
            $.each(data, function (i, item) {
                $("#" + child).append("<option value='" + item.code + "'>&nbsp;" + item.dicText + "</option>");
            });

            $("#" + child).select2();
            $("#" + child).trigger("change");
        });
    });


    //不是select2的下拉框数据获得
    // $(".select").each(function() {
    // 	// 是否自动装载，默认为自动装载
    // 	var autoLoad = $(this).attr("autoload") || "1";
    // 	if (autoLoad == "0")
    // 		return true;
    //
    // 	// 待装载数据字典类型
    // 	var stype = $(this).attr("stype");
    // 	if (stype == undefined || $.trim(stype) == "")
    // 		return true;
    //
    // 	var _this = $(this);
    // 	$.getJSON( g.ctx+"pc/sys/dict/getDicByType?type=" + stype, function(data) {
    // 		$(_this).append("<option value=\"\">请选择</option>");
    // 		$.each(data, function(i, item) {
    // 			$(_this).append("<option value='" + item.code + "'>&nbsp;" + item.name + "</option>");
    // 		});
    //
    // 		// 设置默认选中项目
    // 		var val = $(_this).attr("val");
    // 		if (val != undefined && $.trim(val) != "") {
    // 			$(_this).find("option[value="+val+"]").attr("selected",true);
    // 		}
    //
    // 		//$(_this).select2();
    // 	});
    // });
});

//setTimeout("aa()",500)
//
//function aa() {
//	$(".select21").select2();
//    $(".select21").select2("destroy");
//}

function init_select2(_this) {
    // 是否自动装载，默认为自动装载
    var autoLoad = _this.attr("autoload") || "1";
    if (autoLoad == "0")
        return true;
    // 待装载数据字典类型
    var stype = _this.attr("stype");
    if (stype == undefined || $.trim(stype) == "")
        return true;

    var hassearch = _this.attr("hassearch");
    var isblank = _this.attr("isblank");  //是否有请选择 默认是有请选择
    var isdefault = _this.attr("isdefault"); // 默认请选择项目的value
    if (isdefault == undefined) {
        isdefault = "0";
    }
    $.getJSON(g.ctx + "pc/sys/dict/getDicByType?type=" + stype, function (data) {
        if (isblank == 1) {
//				_this.append("<option value=\"0\">无</option>");
        } else {
            if (gl_language == 'en')
                _this.append("<option value=\"" + isdefault + "\">Please Select</option>");
            else
                _this.append("<option value=\"" + isdefault + "\">请选择</option>");

        }
        $.each(data, function (i, item) {
            _this.append("<option value='" + item.code + "'>" + item.name + "</option>");
        });

        // 设置默认选中项目
        var val = _this.attr("val");
        if (val != undefined && $.trim(val) != "") {
            _this.find("option[value=" + val + "]").attr("selected", true);
        }
    });
}

//异步取消
function init_select3(_this) {
    // 是否自动装载，默认为自动装载
    var autoLoad = _this.attr("autoload") || "1";
    if (autoLoad == "0")
        return true;
    // 待装载数据字典类型
    var stype = _this.attr("stype");
    if (stype == undefined || $.trim(stype) == "")
        return true;

    var hassearch = _this.attr("hassearch");
    var isblank = _this.attr("isblank");  //是否有请选择 默认是有请选择
    var isdefault = _this.attr("isdefault"); // 默认请选择项目的value
    if (isdefault == undefined) {
        isdefault = "0";
    }
    $.ajax({
        url: g.ctx + "pc/sys/dict/getDicByType?type=" + stype,
        async: false,
        success: function (data) {
            if (isblank == 1) {
                //				_this.append("<option value=\"0\">无</option>");
            } else {
                if (gl_language == 'en')
                    _this.append("<option value=\"" + isdefault + "\">Please Select</option>");
                else
                    _this.append("<option value=\"" + isdefault + "\">请选择</option>");

            }
            $.each(data, function (i, item) {
                _this.append("<option value='" + item.code + "'>" + item.name + "</option>");
            });

            // 设置默认选中项目
            var val = _this.attr("val");
            if (val != undefined && $.trim(val) != "") {
                _this.find("option[value=" + val + "]").attr("selected", true);
            }
        }
    });
}