var m_List = []; //查询的所有授权组数据
var m_QrGroupId = "";//选中的快捷回复组ID
var m_type = "";//储存选中组时的下标
$(function () {
    //加载菜单内容
    $("#myPageAlert").hide();
    $("#divDeptOperBtn").hide();
    $(".loading").show();
    $(".loadingcover").show();
    manageObj.getauthlist();
    PageLoadTrees();
    manageObj.getdepartment();
});

//获取授权列表回调方法
function AsyncGetAuthListResult(jsonTree) {

    if (jsonTree.success) {
        var strTreeContent = "";//树型菜单内容
        m_List = jsonTree.result.list;
        for (var i = 0; i < jsonTree.result.list.length; i++) {
            var jsonItem = jsonTree.result.list[i];
            strTreeContent += "<ul class=\"yiji-m\">";
            strTreeContent += "<li id=\"" + jsonItem.agid + "\" onclick=\"SetEditGroupBind('" + jsonItem.agid + "'," + "'"+ i + "');\">";
            strTreeContent += "<a href=\"#divEditDept\" class=\"inactive-m active\" data-toggle=\"tab\">" + jsonItem.agname + "</a>";
            strTreeContent += "</li>";
            strTreeContent += "</ul>";
        }

        $("#divTree").html(strTreeContent);
    } else {
        ShowError("myPageAlert", "操作失败：" + jsonTree.error);
    }

    PageLoadTrees();
    $(".loading").hide();
    $(".historyzhezhao").hide();
    $(".loadingcover").hide();
    $(".loading").hide();
}

//树形菜单高度设置
function PageLoadTrees() {
    $(".left-list-l").css({
        height: $(window).height() - 40
    });
    $(".talklist-l").css({
        height: $(window).height() - 100
    });
    $("#right").css({
        height: $(window).height() - 40
    });
    $("#left").css({
        height: $(window).height() - 40
    });
  

   
    initTree();
}
$(window).resize(function () {
    PageLoadTrees()
});

//选中组时
function SetEditGroupBind(id, type) {
	m_type = type;
    //id=""是点击创建组时,赋给初始值
    if (id == "") {
        $("#radK3").prop("checked", true);
        $("#radK4").prop("checked", false);
        $("#radK6").prop("checked", true);
        $("#radK7").prop("checked", false);
        $("#radK9").prop("checked", true);
        $("#radK10").prop("checked", false);
        $("#radK12").prop("checked", true);
        $("#radK13").prop("checked", false);
        $("#radK14").prop("checked", false);
        $("#chkK16").prop("checked", false);
        $("#chkK17").prop("checked", false);
        $("#chkK18").prop("checked", false);
        $("#chkK19").prop("checked", false);
        $("#radK1a").prop("checked", false);
        $("#radK1b").prop("checked", true);
        $("#chkK20").prop("checked", true);//机器人回复功能
        $("#chkK21").prop("checked", false);//是否开启敏感词汇
        var chkList = $("#ulDeptList").find("input");
        chkList.each(function (i) {
            $(this).prop("checked", false);
        });
    }

    m_QrGroupId = id;//标签组ID
    if (m_QrGroupId.length > 0) {
        for (var i = 0; i < m_List.length; i++) {
            if (m_List[i].agid == id) {
                if (m_List[i].val == -1) {
                    $("#divDeptOperBtn").hide();
                    $("#btnEdit").hide();
                }
                else {
                    $("#divDeptOperBtn").show();
                    $("#btnEdit").show();
                }
                $("#txtGroupName").val(m_List[i].agname);
                $("#spDeleteGroupName").html(m_List[i].agname);
                var jsonAuth = m_List[i].auth;

                $("#radK3").prop("checked", jsonAuth.k3);
                $("#radK4").prop("checked", jsonAuth.k4);
                $("#radK6").prop("checked", jsonAuth.k6);
                $("#radK7").prop("checked", jsonAuth.k7);
                $("#radK9").prop("checked", jsonAuth.k9);
                $("#radK10").prop("checked", jsonAuth.k10);
                $("#radK12").prop("checked", jsonAuth.k12);
                $("#radK13").prop("checked", jsonAuth.k13);
                $("#radK14").prop("checked", jsonAuth.k14);
                $("#chkK16").prop("checked", jsonAuth.k16);
                $("#chkK17").prop("checked", jsonAuth.k17);
                $("#chkK18").prop("checked", jsonAuth.k18);
                $("#chkK19").prop("checked", jsonAuth.k19);
                $("#radK1a").prop("checked", jsonAuth.k1);
                $("#chkK20").prop("checked", jsonAuth.k20);//机器人回复功能
                $("#chkK21").prop("checked", jsonAuth.k21);//是否开启敏感词汇

                $("#divTree").find("li[class='active']").removeClass("active");
                $("#" + id).addClass("active");

                var mydept = [];
                if (m_List[i].grantval != null && m_List[i].grantval != "") {
                    mydept = $.parseJSON(m_List[i].grantval);
                }
                //管理员的情况下children 
                if (type == "0") {
                    $("#ulDeptList input").prop("checked", true);
                    $("#ulDeptList input").prop("disabled", true);
                    //选中管理员按钮不可更改
                    $("#chkK20").prop("disabled", true);
                    $("#chkK16").prop("disabled", true);
                    $("#chkK17").prop("disabled", true); 
                    $("#chkK18").prop("disabled", true);
                    $("#chkK19").prop("disabled", true);
                    $("#radK3").prop("disabled", true);
                    $("#radK4").prop("disabled", true);
                    $("#radK6").prop("disabled", true);
                    $("#radK7").prop("disabled", true); 
                    $("#radK9").prop("disabled", true);
                    $("#radK10").prop("disabled", true);
                    $("#radK12").prop("disabled", true);
                    $("#radK13").prop("disabled", true);
                    $("#radK14").prop("disabled", true);
                    $("#radK1a").prop("disabled", true);
                    $("#radK1b").prop("disabled", true);
                    $("#rad33").prop("disabled", true);
                    $("#rad55").prop("disabled", true);
                    $("#chkK21").prop("disabled", true);
                } else {
                    //没有选中管理员按钮可更改
                    $("#chkK20").prop("disabled", false);
                    $("#chkK16").prop("disabled", false);
                    $("#chkK17").prop("disabled", false);
                    $("#chkK18").prop("disabled", false);
                    $("#chkK19").prop("disabled", false);
                    $("#radK3").prop("disabled", false);
                    $("#radK4").prop("disabled", false);
                    $("#radK6").prop("disabled", false);
                    $("#radK7").prop("disabled", false);
                    $("#radK9").prop("disabled", false);
                    $("#radK10").prop("disabled", false);
                    $("#radK12").prop("disabled", false);
                    $("#radK13").prop("disabled", false);
                    $("#radK14").prop("disabled", false);
                    $("#radK1a").prop("disabled", false);
                    $("#radK1b").prop("disabled", false);
                    $("#rad33").prop("disabled", false);
                    $("#rad55").prop("disabled", false);
                    $("#chkK21").prop("disabled", false);
                                
                }
                if (type != "0") {
                    var chkList = $("#ulDeptList").find("input");
                    chkList.each(function (i) {
                        if (mydept.indexOf($(this).val()) > -1) {
                            $(this).prop("checked", true);
                        } else {
                            $(this).prop("checked", false);
                        }
                    });
                    break;
                } else {
                    //$("#ulDeptList : input").prop("disabled", true);
                    var chkList = $("#ulDeptList").find("input");
                    chkList.each(function (i) {
                        $(this).prop("checked", true);
                        $(this).attr("disabled", "disabled");
                    });
                    return;
                }
                
            }
        }
    } else {
        $("#txtGroupName").val("");
        $("#spDeleteGroupName").html("");
        $("#divDeptOperBtn").hide();
        $("#btnEdit").show();
    }
    $("#txtGroupName").focus();
    //$("#divEditGroup").removeClass("tab-pane fade").addClass("tab-pane fade active in");//显示
    selectAllDept(0);
    $("#rad33").prop("checked", false);
}

//添加、修改组(提交按钮)
function EditGroup() {
    var objtxtGroupName = $("#txtGroupName");
    if ($.trim(objtxtGroupName.val()) == "管理员") {
        ShowError("myPageAlert", "权限组名称不能为管理员!");
        objtxtGroupName.focus();
        return;
    }
    objtxtGroupName.val($.trim(Canceller(objtxtGroupName.val())));
    var jsonAuth = {};
    var autoreplay;//机器人自动回复是否选中 选中为1，不选中为0
    jsonAuth.k2 = true;//个人设置默认开放

    jsonAuth.k3 = $("#radK3").is(":checked");
    jsonAuth.k4 = $("#radK4").is(":checked");
    jsonAuth.k5 = false;
    jsonAuth.k6 = $("#radK6").is(":checked");
    jsonAuth.k7 = $("#radK7").is(":checked");
    jsonAuth.k8 = false;
    jsonAuth.k9 = $("#radK9").is(":checked");
    jsonAuth.k10 = $("#radK10").is(":checked");
    jsonAuth.k11 = false;
    jsonAuth.k12 = $("#radK12").is(":checked");
    jsonAuth.k13 = $("#radK13").is(":checked");
    jsonAuth.k14 = $("#radK14").is(":checked");
    jsonAuth.k15 = false;
    jsonAuth.k16 = $("#chkK16").is(":checked");
    jsonAuth.k17 = $("#chkK17").is(":checked");
    jsonAuth.k18 = $("#chkK18").is(":checked");
    jsonAuth.k19 = $("#chkK19").is(":checked");
    jsonAuth.k20 = $("#chkK20").is(":checked");//机器人回复
    jsonAuth.k1 = $("#radK1a").is(":checked");//参数设置
    jsonAuth.k21 = $("#chkK21").is(":checked");//是否开启敏感词汇
    if (jsonAuth.k20) {
        autoreplay = 1;//选中是1
    }
    else {
        autoreplay = 0;//不选中是0
    }
    if (objtxtGroupName.val() == "") {
        ShowError("myPageAlert", "请输入权限组名称！");
        objtxtGroupName.focus();
        return;
    }

    var hasChecked = false;
    var grantval = [];
    var chkList = $("#ulDeptList").find("input");
    chkList.each(function (i) {
        if ($(this).is(":checked")) {
            grantval.push($(this).val());
            hasChecked = true;
        }
    });

    if (jsonAuth.k4 || jsonAuth.k7 || jsonAuth.k10 || jsonAuth.k14) {
        if (!hasChecked) {
            ShowError("myPageAlert", "使用部门权限时请至少勾选一个部门！");
            return;
        }
    }

    var jsonResult;
    if (m_QrGroupId.length == 0) {
    	//添加
    	for (var i = 0; i < m_List.length; i++) {
    		if ($.trim($("#txtGroupName").val()) == m_List[i].agname) {
    			ShowError("myPageAlert", "已存在该权限组！");
    			return;
    		}
    	}
        var strParaJson = $.toJSON({
            agname: objtxtGroupName.val(), val: jsonAuth, grantval: grantval
        });
        manageObj.addauth(strParaJson);
    }
    else {
    	//修改
    	for (var i = 0; i < m_List.length; i++) {
    		if ($.trim($("#txtGroupName").val()) == m_List[i].agname && i != m_type) {
    			ShowError("myPageAlert", "已存在该权限组！");
    			return;
    		}
    	}
        var strParaJson = $.toJSON({
            agid: m_QrGroupId,
            agname: objtxtGroupName.val(),
            val: jsonAuth, grantval: grantval,
            autoreplay: autoreplay//机器人自动回复
        });
        manageObj.updateauth(strParaJson);
    }
}
//添加权限组回调
function AsyncAddAuthResult(jsonResult) {
	if (jsonResult.success) {
		m_QrGroupId = "";
		SetEditGroupBind("", "-1");
        $("#txtGroupName").val("");
        $("#DeleteGroupModal").modal("hide");
        //$("#divEditGroup").removeClass("tab-pane fade active in").addClass("tab-pane fade");//隐藏
        ShowMsg("myPageAlert", "操作成功！");
        $("#cbxK1").prop("checked", false);
        //$("#cbxK2").prop("checked", false);
        manageObj.getauthlist();
      
    }
    else {
        //错误信息
        ShowError("myPageAlert", "操作失败：" + jsonResult.error);
    }
}
//修改权限组回调
function AsyncUpdateAuthResult(jsonResult) {
	if (jsonResult.success) {
		m_QrGroupId = "";
		SetEditGroupBind("", "-1");
        $("#txtGroupName").val("");
        $("#DeleteGroupModal").modal("hide");
        //$("#divEditGroup").removeClass("tab-pane fade active in").addClass("tab-pane fade");//隐藏
        ShowMsg("myPageAlert", "操作成功！");
        $("#cbxK1").prop("checked", false);
        //$("#cbxK2").prop("checked", false);
        manageObj.getauthlist();
    }
    else {
        //错误信息
        ShowError("myPageAlert", "操作失败：" + jsonResult.error);
    }
}
//显示删除组对话框
function ShowDeleteGroup() {
    if (m_QrGroupId.length == 0) {
        return;
    }
    $("#DeleteGroupModal").modal("show");
}

//提交删除组
function CommitGroupDelete() {
    var strParaJson = $.toJSON({
        agid: m_QrGroupId,
    });
    manageObj.deleteauth(strParaJson);
}
//删除权限回调
function AsyncDeleteAuthResult(jsonResult) {
	if (jsonResult.success) {
		m_QrGroupId = "";
		SetEditGroupBind("", "-1");
        $("#txtGroupName").val("");
        ShowMsg("myPageAlert", "操作成功！");
        $("#cbxK1").prop("checked", false);
        manageObj.getauthlist();
    }
    else {
        //错误信息
        if (jsonResult.error.indexOf("has") >= 0) {
            ShowError("myPageAlert", "操作失败：权限正在被使用！");
        } else {
            ShowError("myPageAlert", "操作失败：" + jsonResult.error);
        }
    }
    $("#DeleteGroupModal").modal("hide");
}

//修改授权记录结果回调方法
function AsyncEditAuthResult(jsonResult) {
    if (jsonResult.success) {
        $("#txtGroupName").val("");
        $("#DeleteGroupModal").modal("hide");
        //$("#divEditGroup").removeClass("tab-pane fade active in").addClass("tab-pane fade");//隐藏
        ShowMsg("myPageAlert", "操作成功！");
        manageObj.queryauth();
    }
    else {
        //错误信息
        ShowError("myPageAlert", "操作失败：" + jsonResult.error);
    }
}

function AsyncGetDepartmentResult(jsonResult) {
    if (jsonResult.success) {
        $("#ulDeptList").empty();
        var list = jsonResult.result.list;
        var optionStr = '';
        for (var index in list) {
            var item = list[index];
            optionStr += '\
                <li>\
                     <div class="checkbox checkbox-success checkbox-inline">\
                                <input type="checkbox" class="styled" value="' + item.dgid + '" id="chk' + item.dgid + '">\
                                <label for="chk' + item.dgid + '"> ' + item.dgname + '</label>\
                            </div>\
                </li>\
            ';
        }
        $("#ulDeptList").html(optionStr);
    }
    else {
        ShowError("myPageAlert", "操作失败：" + jsonResult.error);
    }
}

function selectAllDept(ischecked) {
    var chkList = $("#ulDeptList").find("input");
    chkList.each(function (i) {
        if (ischecked == 1) {
            $(this).prop("checked", true);
            $(this).attr("disabled", "disabled");
        } else if (ischecked == 0) {
            $(this).removeAttr("disabled");
        }
    });
}

function Backstage(type) {
  
    if (type == 1) {
        //前台权限
        $("#Other").show();
        $("#RobotResponse").show();
    } else {
        //后台权限
        $("#Other").hide();
        $("#RobotResponse").hide();
    }
}